datapath: add key support to CAPWAP tunnel
[sliver-openvswitch.git] / vswitchd / vswitch.xml
index e72401f..7d9bb0b 100644 (file)
       </column>
 
       <column name="flood_vlans">
-        VLAN IDs of VLANs on which MAC address learning should be disabled, so
-        that packets are flooded instead of being sent to specific ports that
-        are believed to contain packets' destination MACs.  This should
-        ordinarily be used to disable MAC learning on VLANs used for mirroring
-        (RSPAN VLANs).  It may also be useful for debugging.
+        <p>
+          VLAN IDs of VLANs on which MAC address learning should be disabled,
+          so that packets are flooded instead of being sent to specific ports
+          that are believed to contain packets' destination MACs.  This should
+          ordinarily be used to disable MAC learning on VLANs used for
+          mirroring (RSPAN VLANs).  It may also be useful for debugging.
+        </p>
+        <p>
+          SLB bonding (see the <ref table="Port" column="bond_mode"/> column in
+          the <ref table="Port"/> table) is incompatible with
+          <code>flood_vlans</code>.  Consider using another bonding mode or
+          a different type of mirror instead.
+        </p>
       </column>
     </group>
 
             does not have QoS configured, or if the port does not have a queue
             with the specified ID, the default queue is used instead.
           </dd>
+          <dt><code>flow-eviction-threshold</code></dt>
+          <dd>
+            A number of flows as a nonnegative integer.  This sets number
+            of flows at which eviction from the kernel flow table will
+            be triggered.
+            If there are a large number of flows then increasing this
+            value to around the number of flows present
+            can result in reduced CPU usage and packet loss.
+         </dd>
+         <dd>
+            The default is 1000.
+         </dd>
+         <dd>
+            Values below 100 will be rounded up to 100.
+          </dd>
+          <dt><code>forward-bpdu</code></dt>
+          <dd>
+            Option to allow forwarding of BPDU frames when NORMAL
+            action if invoked. Frames with reserved Ethernet addresses
+            (e.g. STP BPDU) will be forwarded when this option is enabled.
+            If the Open vSwitch bridge is used to connect different
+            Ethernet networks, and if Open vSwitch node does not run STP,
+            then this option should be enabled.
+            Default is disabled, set to <code>true</code> to enable.
+          </dd>
         </dl>
       </column>
     </group>
           connected to.  <code>active</code> ports are allowed to initiate LACP
           negotiations.  <code>passive</code> ports are allowed to participate
           in LACP negotiations initiated by a remote switch, but not allowed to
-          initiate such negotiations themselves. If unset Open vSwitch will
-          choose a reasonable default. </p>
+          initiate such negotiations themselves. Defaults to <code>off</code>
+          if unset. </p>
       </column>
 
     </group>
         Key-value pairs for configuring rarely used port features.  The
         currently defined key-value pairs are:
         <dl>
-          <dt><code>hwaddr</code></dt>
-          <dd>An Ethernet address in the form
-            <code><var>xx</var>:<var>xx</var>:<var>xx</var>:<var>xx</var>:<var>xx</var>:<var>xx</var></code>.</dd>
           <dt><code>bond-rebalance-interval</code></dt>
           <dd>For an SLB bonded port, the number of milliseconds between
             successive attempts to rebalance the bond, that is, to
                 (otherwise it will be the system default, typically 64).
                 Default is the system default TTL.</dd>
             </dl>
+            <dl>
+              <dt><code>in_key</code></dt>
+              <dd>Optional.  The WSI key that received packets must contain.
+                It may either be a 64-bit number (no key and a key of 0 are
+                treated as equivalent) or the word <code>flow</code>.  If
+                <code>flow</code> is specified then any key will be accepted
+                and the key will be placed in the <code>tun_id</code> field
+                for matching in the flow table.  The ovs-ofctl manual page
+                contains additional information about matching fields in
+                OpenFlow flows.  Default is no key.</dd>
+            </dl>
+            <dl>
+              <dt><code>out_key</code></dt>
+              <dd>Optional.  The WSI key to be set on outgoing packets.  It may
+                either be a 64-bit number or the word <code>flow</code>.  If
+                <code>flow</code> is specified then the key may be set using
+                the <code>set_tunnel</code> Nicira OpenFlow vendor extension (0
+                is used in the absence of an action).  The ovs-ofctl manual
+                page contains additional information about the Nicira OpenFlow
+                vendor extensions.  Default is no key.</dd>
+            </dl>
+            <dl>
+              <dt><code>key</code></dt>
+              <dd>Optional.  Shorthand to set <code>in_key</code> and
+                <code>out_key</code> at the same time.</dd>
+            </dl>
             <dl>
               <dt><code>df_inherit</code></dt>
               <dd>Optional.  If enabled, the Don't Fragment bit will be copied
         configurable transmission interval.
       </p>
 
+      <p>
+        According to the 802.1ag specification, each Maintenance Point should
+        be configured out-of-band with a list of Remote Maintenance Points it
+        should have connectivity to.  Open vSwitch differs from the
+        specification in this area.  It simply assumes the link is faulted if
+        no Remote Maintenance Points are reachable, and considers it not
+        faulted otherwise.
+      </p>
+
       <column name="cfm_mpid">
         A Maintenance Point ID (MPID) uniquely identifies each endpoint within
         a Maintenance Association.  The MPID is used to identify this endpoint
         CFM on this <ref table="Interface"/>.
       </column>
 
-      <column name="cfm_remote_mpid">
-        The MPID of the remote endpoint being monitored.  If this
-        <ref table="Interface"/> does not have connectivity to an endpoint
-        advertising the configured MPID, a fault is signalled.  Must be
-        configured to enable CFM on this <ref table="Interface"/>
-      </column>
-
       <column name="cfm_fault">
-        Indicates a connectivity fault triggered by an inability to receive
-        heartbeats from the remote endpoint.  When a fault is triggered on
-        <ref table="Interface"/>s participating in bonds, they will be
-        disabled.
+        <p>
+          Indicates a connectivity fault triggered by an inability to receive
+          heartbeats from any remote endpoint.  When a fault is triggered on
+          <ref table="Interface"/>s participating in bonds, they will be
+          disabled.
+        </p>
+        <p>
+          Faults can be triggered for several reasons.  Most importantly they
+          are triggered when no CCMs are received for a period of 3.5 times the
+          transmission interval. Faults are also triggered when any CCMs
+          indicate that a Remote Maintenance Point is not receiving CCMs but
+          able to send them.  Finally, a fault is triggered if a CCM is
+          received which indicates unexpected configuration.  Notably, this
+          case arises when a CCM is received which advertises the local MPID.
+        </p>
       </column>
     </group>
 
           <dd> The transmission interval of CFM heartbeats in milliseconds.
             Three missed heartbeat receptions indicate a connectivity fault.
             Defaults to 1000ms. </dd>
+          <dt><code>cfm_extended</code></dt>
+          <dd> When true, the CFM module operates in extended mode. This causes
+            it to use a nonstandard destination address to avoid conflicting
+            with compliant implementations which may be running concurrently on
+            the network. Furthermore, extended mode increases the accuracy of
+            the <code>cfm_interval</code> configuration parameter by breaking
+            wire compatibility with 802.1ag compliant implementations.
+            Defaults to false.</dd>
           <dt><code>bond-stable-id</code></dt>
           <dd> A positive integer using in <code>stable</code> bond mode to
             make slave selection decisions.  Allocating
     </column>
   </table>
 
-  <table name="Mirror" title="Port mirroring (SPAN/RSPAN).">
+  <table name="Mirror" title="Port mirroring (SPAN/RSPAN/ERSPAN).">
     <p>A port mirror within a <ref table="Bridge"/>.</p>
     <p>A port mirror configures a bridge to send selected frames to special
-      ``mirrored'' ports, in addition to their normal destinations.  Mirroring
-      traffic may also be referred to as SPAN or RSPAN, depending on the
-      mechanism used for delivery.</p>
+    ``mirrored'' ports, in addition to their normal destinations.  Mirroring
+    traffic may also be referred to as SPAN, RSPAN, or ERSPAN, depending on how
+    the mirrored traffic is sent.</p>
 
     <column name="name">
       Arbitrary identifier for the <ref table="Mirror"/>.
       <column name="output_port">
         <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
-          will be discarded.</p>
-        <p>This type of mirroring is sometimes called SPAN.</p>
+        for mirroring.  No frames other than those selected for mirroring
+        will be forwarded to the port, and any frames received on the port
+        will be discarded.</p>
+        <p>
+          The output port may be any kind of port supported by Open vSwitch.
+          It may be, for example, a physical port (sometimes called SPAN), or a
+          GRE tunnel (sometimes called ERSPAN).
+        </p>
       </column>
 
       <column name="output_vlan">
           Open vSwitch is being used as an intermediate switch, learning can be
           disabled by adding the mirrored VLAN to <ref column="flood_vlans"/>
           in the appropriate <ref table="Bridge"/> table or tables.</p>
+          <p>
+            Mirroring to a GRE tunnel has fewer caveats than mirroring to a
+            VLAN and should generally be preferred.
+          </p>
       </column>
     </group>