tunneling: Add df_default and df_inherit tunnel options.
[sliver-openvswitch.git] / vswitchd / vswitch.xml
index 36d08a4..1db89dc 100644 (file)
       </p>
 
       <column name="ovs_version">
-        The Open vSwitch version number, e.g. <code>1.1.0pre2</code>.
+        The Open vSwitch version number, e.g. <code>1.1.0</code>.
         If Open vSwitch was configured with a build number, then it is
-        also included, e.g. <code>1.1.0pre2+build4948</code>.
+        also included, e.g. <code>1.1.0+build6579</code>.
       </column>
 
       <column name="db_version">
       </dl>
 
       <p>
-        The following mode requires the upstream switch to support 802.3ad with
+        The following modes require the upstream switch to support 802.3ad with
         successful LACP negotiation.  If LACP negotiation fails then
-        <code>balance-slb</code> mode is used as a fallback:
+        <code>balance-slb</code> style flow hashing is used as a fallback:
       </p>
 
       <dl>
         </dd>
       </dl>
 
+      <dl>
+        <dt><code>stable</code></dt>
+        <dd>
+          <p>Attempts to always assign a given flow to the same slave
+            consistently.  In an effort to maintain stability, no load
+            balancing is done.  Uses a similar hashing strategy to
+            <code>balance-tcp</code>, falling back to <code>balance-slb</code>
+            style hashing when LACP negotiations are unsuccessful.</p>
+          <p>Slave selection decisions are made based on LACP port ID when LACP
+            negotiations are successful, falling back to openflow port number
+            when unsuccessful.  Thus, decisions are consistent across all
+            ovs-vswitchd instances with equivalent port IDs.</p>
+        </dd>
+      </dl>
+
       <p>These columns apply only to bonded ports.  Their values are
         otherwise ignored.</p>
 
           <dd> The number of milliseconds between successive attempts to
             poll each interface's MII.  Only relevant on ports which use
             <code>miimon</code> to detect failures. </dd>
+          <dt><code>bond-hash-basis</code></dt>
+          <dd> An integer hashed along with flows when choosing output slaves.
+            When changed, all flows will be assigned different hash values
+            possibly causing slave selection decisions to change.</dd>
+          <dt><code>lacp-system-id</code></dt>
+          <dd> The LACP system ID of this <ref table="Port"/>.  The system ID
+            of a LACP bond is used to identify itself to its partners.  Must
+            be a nonzero MAC address.</dd>
           <dt><code>lacp-system-priority</code></dt>
           <dd> The LACP system priority of this <ref table="Port"/>.  In
             LACP negotiations, link status decisions are made by the system
             with the numerically lower priority.  Must be a number between 1
             and 65535.</dd>
           <dt><code>lacp-time</code></dt>
-          <dd> The LACP timing which should be used on this
-            <ref table="Port"/>.  Possible values are <code>fast</code> and
-            <code>slow</code>.  By default <code>slow</code> is used.  When
-            configured to be <code>fast</code> more frequent LACP heartbeats
-            will be requested causing connectivity problems to be detected more
-            quickly.</dd>
+          <dd>
+            <p>The LACP timing which should be used on this
+              <ref table="Port"/>.  Possible values are <code>fast</code>,
+              <code>slow</code> and a positive number of milliseconds.  By
+              default <code>slow</code> is used.  When configured to be
+              <code>fast</code> LACP heartbeats are requested at a rate of once
+              per second causing connectivity problems to be detected more
+              quickly.  In <code>slow</code> mode, heartbeats are requested at
+              a rate of once every 30 seconds.</p>
+
+            <p>Users may manually set a heartbeat transmission rate to increase
+              the fault detection speed further.  When manually set, OVS
+              expects the partner switch to be configured with the same
+              transmission rate.  Manually setting <code>lacp-time</code> to
+              something other than <code>fast</code> or <code>slow</code> is
+              not supported by the LACP specification.</p>
+          </dd>
+          <dt><code>lacp-strict</code></dt>
+          <dd> When <code>true</code>, configures this <ref table="Port"/> to
+            require successful LACP negotiations to enable any slaves.
+            Defaults to <code>false</code> which safely allows LACP to be used
+            with switches that do not support the protocol.</dd>
+          <dt><code>lacp-force-aggregatable</code></dt>
+          <dd> When <code>true</code>, forces all slaves managed by this
+            <ref table="Port"/> to advertise themselves as aggregatable even if
+            they normally wouldn't.  Defaults to <code>false</code>.</dd>
         </dl>
       </column>
     </group>
                 adds value for the GRE and encapsulated Ethernet headers.
                 Default is disabled, set to <code>true</code> to enable.</dd>
             </dl>
+            <dl>
+              <dt><code>df_inherit</code></dt>
+              <dd>Optional.  If enabled, the Don't Fragment bit will be copied
+                from the inner IP headers (those of the encapsulated traffic)
+                to the outer (tunnel) headers.  Default is disabled; set to
+                <code>true</code> to enable.</dd>
+            </dl>
+            <dl>
+              <dt><code>df_default</code></dt>
+              <dd>Optional.  If enabled, the Don't Fragment bit will be set by
+                default on tunnel headers if the <code>df_inherit</code> option
+                is not set, or if the encapsulated packet is not IP.  Default
+                is enabled; set to <code>false</code> to disable.</dd>
+            </dl>
             <dl>
               <dt><code>pmtud</code></dt>
               <dd>Optional.  Enable tunnel path MTU discovery.  If enabled
-                ``ICMP destination unreachable - fragmentation'' needed
+                ``ICMP Destination Unreachable - Fragmentation Needed''
                 messages will be generated for IPv4 packets with the DF bit set
                 and IPv6 packets above the minimum MTU if the packet size
-                exceeds the path MTU minus the size of the tunnel headers.  It
-                also forces the encapsulating packet DF bit to be set (it is
-                always set if the inner packet implies path MTU discovery).
+                exceeds the path MTU minus the size of the tunnel headers.
                 Note that this option causes behavior that is typically
                 reserved for routers and therefore is not entirely in
                 compliance with the IEEE 802.1D specification for bridges.
-                Default is enabled, set to <code>false</code> to disable.</dd>
+                Default is enabled; set to <code>false</code> to disable.</dd>
             </dl>
             <dl>
               <dt><code>header_cache</code></dt>
                 adds value for the GRE and encapsulated Ethernet headers.
                 Default is disabled, set to <code>true</code> to enable.</dd>
             </dl>
+            <dl>
+              <dt><code>df_inherit</code></dt>
+              <dd>Optional.  If enabled, the Don't Fragment bit will be copied
+                from the inner IP headers (those of the encapsulated traffic)
+                to the outer (tunnel) headers.  Default is disabled; set to
+                <code>true</code> to enable.</dd>
+            </dl>
+            <dl>
+              <dt><code>df_default</code></dt>
+              <dd>Optional.  If enabled, the Don't Fragment bit will be set by
+                default on tunnel headers if the <code>df_inherit</code> option
+                is not set, or if the encapsulated packet is not IP.  Default
+                is enabled; set to <code>false</code> to disable.</dd>
+            </dl>
             <dl>
               <dt><code>pmtud</code></dt>
               <dd>Optional.  Enable tunnel path MTU discovery.  If enabled
-                ``ICMP destination unreachable - fragmentation'' needed
+                ``ICMP Destination Unreachable - Fragmentation Needed''
                 messages will be generated for IPv4 packets with the DF bit set
                 and IPv6 packets above the minimum MTU if the packet size
-                exceeds the path MTU minus the size of the tunnel headers.  It
-                also forces the encapsulating packet DF bit to be set (it is
-                always set if the inner packet implies path MTU discovery).
+                exceeds the path MTU minus the size of the tunnel headers.
                 Note that this option causes behavior that is typically
                 reserved for routers and therefore is not entirely in
                 compliance with the IEEE 802.1D specification for bridges.
-                Default is enabled, set to <code>false</code> to disable.</dd>
+                Default is enabled; set to <code>false</code> to disable.</dd>
             </dl>
           </dd>
           <dt><code>capwap</code></dt>
                 (otherwise it will be the system default, typically 64).
                 Default is the system default TTL.</dd>
             </dl>
+            <dl>
+              <dt><code>df_inherit</code></dt>
+              <dd>Optional.  If enabled, the Don't Fragment bit will be copied
+                from the inner IP headers (those of the encapsulated traffic)
+                to the outer (tunnel) headers.  Default is disabled; set to
+                <code>true</code> to enable.</dd>
+            </dl>
+            <dl>
+              <dt><code>df_default</code></dt>
+              <dd>Optional.  If enabled, the Don't Fragment bit will be set by
+                default on tunnel headers if the <code>df_inherit</code> option
+                is not set, or if the encapsulated packet is not IP.  Default
+                is enabled; set to <code>false</code> to disable.</dd>
+            </dl>
             <dl>
               <dt><code>pmtud</code></dt>
               <dd>Optional.  Enable tunnel path MTU discovery.  If enabled
-                ``ICMP destination unreachable - fragmentation'' needed
+                ``ICMP Destination Unreachable - Fragmentation Needed''
                 messages will be generated for IPv4 packets with the DF bit set
                 and IPv6 packets above the minimum MTU if the packet size
-                exceeds the path MTU minus the size of the tunnel headers.  It
-                also forces the encapsulating packet DF bit to be set (it is
-                always set if the inner packet implies path MTU discovery).
+                exceeds the path MTU minus the size of the tunnel headers.
                 Note that this option causes behavior that is typically
                 reserved for routers and therefore is not entirely in
                 compliance with the IEEE 802.1D specification for bridges.
-                Default is enabled, set to <code>false</code> to disable.</dd>
+                Default is enabled; set to <code>false</code> to disable.</dd>
             </dl>
             <dl>
               <dt><code>header_cache</code></dt>
               </dd>
             </dl>
           </dd>
+          <dt><code>null</code></dt>
+          <dd>An ignored interface.</dd>
         </dl>
       </column>
 
         Connectivity monitor configuration for this interface.
       </column>
 
+      <column name="lacp_current">
+        Boolean value indicating LACP status for this interface.  If true, this
+        interface has current LACP information about its LACP partner.  This
+        information may be used to monitor the health of interfaces in a LACP
+        enabled port. This column will be empty if LACP is not enabled.
+      </column>
+
       <column name="external_ids">
         Key-value pairs for use by external frameworks that integrate
         with Open vSwitch, rather than by Open vSwitch itself.  System
       <column name="other_config">
         Key-value pairs for rarely used interface features.
         <dl>
+          <dt><code>lacp-port-id</code></dt>
+          <dd> The LACP port ID of this <ref table="Interface"/>.  Port IDs are
+            used in LACP negotiations to identify individual ports
+            participating in a bond.  Must be a number between 1 and
+            65535.</dd>
           <dt><code>lacp-port-priority</code></dt>
           <dd> The LACP port priority of this <ref table="Interface"/>.  In
             LACP negotiations <ref table="Interface"/>s with numerically lower
             priorities are preferred for aggregation.  Must be a number between
             1 and 65535.</dd>
+          <dt><code>lacp-aggregation-key</code></dt>
+          <dd> The LACP aggregation key of this <ref table="Interface"/>.
+            <ref table="Interface"/>s with different aggregation keys may not
+            be active within a given <ref table="Port"/> at the same time. Must
+            be a number between 1 and 65535.</dd>
         </dl>
       </column>
 
     </group>
 
     <group title="Monitor Status">
-      <column name="unexpected_remote_mpids">
-        A set of MPIDs representing MPs to which this <ref table="Monitor"/>
-        has detected connectivity that are not in the
-        <ref column="remote_mps"/> set.  This <ref table="Monitor"/> should not
-        have connectivity to any MPs not listed in <ref column="remote_mps"/>.
-        Thus, if this set is non-empty a fault is indicated.
-      </column>
-
-      <column name="unexpected_remote_maids">
-        A set of MAIDs representing foreign Maintenance Associations (MAs)
-        which this <ref table="Monitor"/> has detected connectivity to. A
-        <ref table="Monitor"/> should not have connectivity to a Maintenance
-        Association other than its own.  Thus, if this set is non-empty a fault
-        is indicated.
-      </column>
-
       <column name="fault">
         Indicates a Connectivity Fault caused by a configuration error, a down
         remote MP, or unexpected connectivity to a remote MAID or remote MP.
     </column>
 
     <group title="Selecting Packets for Mirroring">
+      <p>
+        To be selected for mirroring, a given packet must enter or leave the
+        bridge through a selected port and it must also be in one of the
+        selected VLANs.
+      </p>
+
       <column name="select_all">
         If true, every packet arriving or departing on any port is
         selected for mirroring.
     </group>
 
     <group title="Mirroring Destination Configuration">
+      <p>
+        These columns are mutually exclusive.  Exactly one of them must be
+        nonempty.
+      </p>
+
       <column name="output_port">
-        <p>Output port for selected packets, if nonempty.  Mutually exclusive
-          with <ref column="output_vlan"/>.</p>
+        <p>Output port for selected packets, if nonempty.</p>
         <p>Specifying a port for mirror output reserves that port exclusively
           for mirroring.  No frames other than those selected for mirroring
           will be forwarded to the port, and any frames received on the port
       </column>
 
       <column name="output_vlan">
-        <p>Output VLAN for selected packets, if nonempty.  Mutually exclusive
-          with <ref column="output_port"/>.</p>
+        <p>Output VLAN for selected packets, if nonempty.</p>
         <p>The frames will be sent out all ports that trunk
           <ref column="output_vlan"/>, as well as any ports with implicit VLAN
           <ref column="output_vlan"/>.  When a mirrored frame is sent out a
         number of seconds, it will send a probe.  If a response is not
         received for the same additional amount of time, Open vSwitch
         assumes the connection has been broken and attempts to reconnect.
-        Default is implementation-specific.
+        Default is implementation-specific.  A value of 0 disables
+        inactivity probes.
       </column>
     </group>
 
         will send a probe.  If a response is not received for the same
         additional amount of time, Open vSwitch assumes the connection has been
         broken and attempts to reconnect.  Default is implementation-specific.
+        A value of 0 disables inactivity probes.
       </column>
     </group>