configure: Remove --with-build-number.
[sliver-openvswitch.git] / vswitchd / vswitch.xml
index 25efdad..3e13682 100644 (file)
         configuration changes.
       </column>
 
-      <column name="capabilities">
-        Describes functionality supported by the hardware and software platform
-        on which this Open vSwitch is based.  Clients should not modify this
-        column.  See the <ref table="Capability"/> description for defined
-        capability categories and the meaning of associated
-        <ref table="Capability"/> records.
-      </column>
-
       <group title="Statistics">
         <p>
           The <code>statistics</code> column contains key-value pairs that
 
       <column name="ovs_version">
         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.0+build6579</code>.
       </column>
 
       <column name="db_version">
         on bridges.  Bond, internal, and mirror ports are not supported
         and will not participate in the spanning tree.
       </column>
+
       <column name="other_config" key="stp-system-id">
         The bridge's STP identifier (the lower 48 bits of the bridge-id)
         in the form
         should be enabled.  Default is disabled, set to
         <code>true</code> to enable.
       </column>
+
+      <column name="other_config" key="mac-aging-time"
+              type='{"type": "integer", "minInteger": 1}'>
+        <p>
+          The maximum number of seconds to retain a MAC learning entry for
+          which no packets have been seen.  The default is currently 300
+          seconds (5 minutes).  The value, if specified, is forced into a
+          reasonable range, currently 15 to 3600 seconds.
+        </p>
+
+        <p>
+          A short MAC aging time allows a network to more quickly detect that a
+          host is no longer connected to a switch port.  However, it also makes
+          it more likely that packets will be flooded unnecessarily, when they
+          are addressed to a connected host that rarely transmits packets.  To
+          reduce the incidence of unnecessary flooding, use a MAC aging time
+          longer than the maximum interval at which a host will ordinarily
+          transmit packets.
+        </p>
+      </column>
     </group>
 
     <group title="Bridge Status">
           <dt><code>ipsec_gre</code></dt>
           <dd>
             An Ethernet over RFC 2890 Generic Routing Encapsulation over IPv4
-            IPsec tunnel.  
+            IPsec tunnel.
           </dd>
 
           <dt><code>capwap</code></dt>
         from the inner packet if it is IPv4 or IPv6 (otherwise it will be the
         system default, typically 64).  Default is the system default TTL.
       </column>
-      
+
       <column name="options" key="df_inherit" type='{"type": "boolean"}'>
         Optional.  If enabled, the Don't Fragment bit will be copied from the
         inner IP headers (those of the encapsulated traffic) to the outer
           Total number of receive errors, greater than or equal to the sum of
           the above.
         </column>
-      </group>              
+      </group>
       <group title="Statistics: Transmit errors">
         <column name="statistics" key="tx_dropped">
           Number of packets dropped by TX.
         </p>
       </column>
 
+      <column name="cfm_fault_status" key="recv">
+        Indicates a CFM fault was triggered due to a lack of CCMs received on
+        the <ref table="Interface"/>.
+      </column>
+
+      <column name="cfm_fault_status" key="rdi">
+        Indicates a CFM fault was triggered due to the reception of a CCM with
+        the RDI bit flagged.  Endpoints set the RDI bit in their CCMs when they
+        are not receiving CCMs themselves.  This typically indicates a
+        unidirectional connectivity failure.
+      </column>
+
+      <column name="cfm_fault_status" key="maid">
+        Indicates a CFM fault was triggered due to the reception of a CCM with
+        a MAID other than the one Open vSwitch uses.  CFM broadcasts are tagged
+        with an identification number in addition to the MPID called the MAID.
+        Open vSwitch only supports receiving CCM broadcasts tagged with the
+        MAID it uses internally.
+      </column>
+
+      <column name="cfm_fault_status" key="loopback">
+        Indicates a CFM fault was triggered due to the reception of a CCM
+        advertising the same MPID configured in the <ref column="cfm_mpid"/>
+        column of this <ref table="Interface"/>.  This may indicate a loop in
+        the network.
+      </column>
+
+      <column name="cfm_fault_status" key="overflow">
+        Indicates a CFM fault was triggered because the CFM module received
+        CCMs from more remote endpoints than it can keep track of.
+      </column>
+
+      <column name="cfm_fault_status" key="override">
+        Indicates a CFM fault was manually triggered by an administrator using
+        an <code>ovs-appctl</code> command.
+      </column>
+
       <column name="cfm_remote_mpids">
         When CFM is properly configured, Open vSwitch will occasionally
         receive CCM broadcasts.  These broadcasts contain the MPID of the
         with the given value.
       </column>
 
+      <column name="other_config" key="cfm_ccm_pcp"
+        type='{"type": "integer", "minInteger": 1, "maxInteger": 7}'>
+        When set, the CFM module will apply a VLAN tag to all CCMs it generates
+        with the given PCP value.  The VLAN ID of the tag is governed by the
+        value of <ref column="other_config" key="cfm_ccm_vlan"/>. If
+        <ref column="other_config" key="cfm_ccm_vlan"/> is unset, a VLAN ID of
+        zero is used.
+      </column>
+
     </group>
 
     <group title="Bonding Configuration">
         The virtual network to which this interface is attached.
       </column>
 
+      <column name="external_ids" key="vm-id">
+        The VM to which this interface belongs. On XenServer, this will be the
+        same as <ref column="external_ids" key="xs-vm-uuid"/>.
+      </column>
+
       <column name="external_ids" key="xs-vm-uuid">
         The VM to which this interface belongs.
       </column>
           VLAN splinters increase kernel and userspace memory overhead, so do
           not use them unless they are needed.
         </p>
+
+        <p>
+          VLAN splinters do not support 802.1p priority tags.  Received
+          priorities will appear to be 0, regardless of their actual values,
+          and priorities on transmitted packets will also be cleared to 0.
+        </p>
       </column>
     </group>
 
     references it.</p>
 
     <column name="type">
-      <p>The type of QoS to implement.  The <ref table="Open_vSwitch"
-      column="capabilities"/> column in the <ref table="Open_vSwitch"/> table
-      identifies the types that a switch actually supports.  The currently
-      defined types are listed below:</p>
+      <p>The type of QoS to implement. The currently defined types are
+      listed below:</p>
       <dl>
         <dt><code>linux-htb</code></dt>
         <dd>
       supported range of queue numbers depend on <ref column="type"/>.  The
       queue numbers are the same as the <code>queue_id</code> used in
       OpenFlow in <code>struct ofp_action_enqueue</code> and other
-      structures.  Queue 0 is used by OpenFlow output actions that do not
-      specify a specific queue.</p>
+      structures.</p>
+
+      <p>
+        Queue 0 is the ``default queue.''  It is used by OpenFlow output
+        actions when no specific queue has been set.  When no configuration for
+        queue 0 is present, it is automatically configured as if a <ref
+        table="Queue"/> record with empty <ref table="Queue" column="dscp"/>
+        and <ref table="Queue" column="other_config"/> columns had been
+        specified.
+        (Before version 1.6, Open vSwitch would leave queue 0 unconfigured in
+        this case.  With some queuing disciplines, this dropped all packets
+        destined for the default queue.)
+      </p>
     </column>
 
     <group title="Configuration for linux-htb and linux-hfsc">
         The <code>linux-htb</code> and <code>linux-hfsc</code> classes support
         the following key-value pair:
       </p>
-      
+
       <column name="other_config" key="max-rate" type='{"type": "integer"}'>
         Maximum rate shared by all queued traffic, in bit/s.  Optional.  If not
         specified, for physical interfaces, the default is the link rate.  For
         <code>linux-htb</code> may use <code>queue_id</code>s less than 61440.
         It has the following key-value pairs defined.
       </p>
-      
+
       <column name="other_config" key="min-rate"
               type='{"type": "integer", "minInteger": 1}'>
         Minimum guaranteed bandwidth, in bit/s.
         <code>linux-hfsc</code> may use <code>queue_id</code>s less than 61440.
         It has the following key-value pairs defined.
       </p>
-      
+
       <column name="other_config" key="min-rate"
               type='{"type": "integer", "minInteger": 1}'>
         Minimum guaranteed bandwidth, in bit/s.
       </column>
-      
+
       <column name="other_config" key="max-rate"
               type='{"type": "integer", "minInteger": 1}'>
         Maximum allowed bandwidth, in bit/s.  Optional.  If specified, the
       </column>
     </group>
 
-    <group title="OpenFlow Rate Limiting">
+    <group title="Asynchronous Message Configuration">
+      <p>
+        OpenFlow switches send certain messages to controllers spontanenously,
+        that is, not in response to any request from the controller.  These
+        messages are called ``asynchronous messages.''  These columns allow
+        asynchronous messages to be limited or disabled to ensure the best use
+        of network resources.
+      </p>
+
+      <column name="enable_async_messages">
+        The OpenFlow protocol enables asynchronous messages at time of
+        connection establishment, which means that a controller can receive
+        asynchronous messages, potentially many of them, even if it turns them
+        off immediately after connecting.  Set this column to
+        <code>false</code> to change Open vSwitch behavior to disable, by
+        default, all asynchronous messages.  The controller can use the
+        <code>NXT_SET_ASYNC_CONFIG</code> Nicira extension to OpenFlow to turn
+        on any messages that it does want to receive, if any.
+      </column>
+
       <column name="controller_rate_limit">
-        <p>The maximum rate at which packets in unknown flows will be
-        forwarded to the OpenFlow controller, in packets per second.  This
-        feature prevents a single bridge from overwhelming the controller.
-        If not specified, the default is implementation-specific.</p>
-        <p>In addition, when a high rate triggers rate-limiting, Open
-        vSwitch queues controller packets for each port and transmits
-        them to the controller at the configured rate.  The number of
-        queued packets is limited by
-        the <ref column="controller_burst_limit"/> value.  The packet
-        queue is shared fairly among the ports on a bridge.</p><p>Open
-        vSwitch maintains two such packet rate-limiters per bridge.
-        One of these applies to packets sent up to the controller
-        because they do not correspond to any flow.  The other applies
-        to packets sent up to the controller by request through flow
-        actions. When both rate-limiters are filled with packets, the
-        actual rate that packets are sent to the controller is up to
-        twice the specified rate.</p>
+        <p>
+          The maximum rate at which the switch will forward packets to the
+          OpenFlow controller, in packets per second.  This feature prevents a
+          single bridge from overwhelming the controller.  If not specified,
+          the default is implementation-specific.
+        </p>
+
+        <p>
+          In addition, when a high rate triggers rate-limiting, Open vSwitch
+          queues controller packets for each port and transmits them to the
+          controller at the configured rate.  The <ref
+          column="controller_burst_limit"/> value limits the number of queued
+          packets.  Ports on a bridge share the packet queue fairly.
+        </p>
+
+        <p>
+          Open vSwitch maintains two such packet rate-limiters per bridge: one
+          for packets sent up to the controller because they do not correspond
+          to any flow, and the other for packets sent up to the controller by
+          request through flow actions. When both rate-limiters are filled with
+          packets, the actual rate that packets are sent to the controller is
+          up to twice the specified rate.
+        </p>
       </column>
 
       <column name="controller_burst_limit">
           human consumption.
         </p>
       </column>
-      
+
       <column name="status" key="sec_since_connect"
               type='{"type": "integer", "minInteger": 0}'>
         The amount of time since this controller last successfully connected to
         the switch (in seconds).  Value is empty if controller has never
         successfully connected.
       </column>
-      
+
       <column name="status" key="sec_since_disconnect"
               type='{"type": "integer", "minInteger": 1}'>
         The amount of time since this controller last disconnected from
     </group>
   </table>
 
-  <table name="Capability">
-    <p>Records in this table describe functionality supported by the hardware
-    and software platform on which this Open vSwitch is based.  Clients
-    should not modify this table.</p>
-
-    <p>A record in this table is meaningful only if it is referenced by the
-    <ref table="Open_vSwitch" column="capabilities"/> column in the
-    <ref table="Open_vSwitch"/> table.  The key used to reference it, called
-    the record's ``category,'' determines the meanings of the
-    <ref column="details"/> column.  The following general forms of
-    categories are currently defined:</p>
-
-    <dl>
-      <dt><code>qos-<var>type</var></code></dt>
-      <dd><var>type</var> is supported as the value for
-      <ref column="type" table="QoS"/> in the <ref table="QoS"/> table.
-      </dd>
-    </dl>
-
-    <column name="details">
-      <p>Key-value pairs that describe capabilities.  The meaning of the pairs
-      depends on the category key that the <ref table="Open_vSwitch"
-      column="capabilities"/> column in the <ref table="Open_vSwitch"/> table
-      uses to reference this record, as described above.</p>
-
-      <p>The presence of a record for category <code>qos-<var>type</var></code>
-      indicates that the switch supports <var>type</var> as the value of
-      the <ref table="QoS" column="type"/> column in the <ref table="QoS"/>
-      table.  The following key-value pairs are defined to further describe
-      QoS capabilities:</p>
-
-      <dl>
-        <dt><code>n-queues</code></dt>
-        <dd>Number of supported queues, as a positive integer.  Keys in the
-        <ref table="QoS" column="queues"/> column for <ref table="QoS"/>
-        records whose <ref table="QoS" column="type"/> value
-        equals <var>type</var> must range between 0 and this value minus one,
-        inclusive.</dd>
-      </dl>
-    </column>
-  </table>
-
 </database>