vswitch: Improve schema documentation.
[sliver-openvswitch.git] / vswitchd / vswitch.xml
index 89354da..a16ddfb 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">
             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>
         </dl>
       </column>
     </group>
 
       <column name="link_state">
         <p>
-          The observed state of the physical network link;
-          i.e. whether a carrier is detected by the interface.
+          The observed state of the physical network link.  This is ordinarily
+          the link's carrier status.  If the interface's <ref table="Port"/> is
+          a bond configured for miimon monitoring, it is instead the network
+          link's miimon status.
         </p>
       </column>
 
         column="type"/> of <code>linux-htb</code> are:</p>
       <dl>
         <dt><code>min-rate</code></dt>
-        <dd>Minimum guaranteed bandwidth, in bit/s.  Required.</dd>
+        <dd>Minimum guaranteed bandwidth, in bit/s.</dd>
         <dt><code>max-rate</code></dt>
         <dd>Maximum allowed bandwidth, in bit/s.  Optional.  If specified, the
           queue's rate will not be allowed to exceed the specified value, even
         column="type"/> of <code>linux-hfsc</code> are:</p>
       <dl>
         <dt><code>min-rate</code></dt>
-        <dd>Minimum guaranteed bandwidth, in bit/s.  Required.</dd>
+        <dd>Minimum guaranteed bandwidth, in bit/s.</dd>
         <dt><code>max-rate</code></dt>
         <dd>Maximum allowed bandwidth, in bit/s.  Optional.  If specified, the
           queue's rate will not be allowed to exceed the specified value, even
     </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
           <dd>The specified TCP <var>port</var> (default: 6633) on the host at
             the given <var>ip</var>, which must be expressed as an IP address
             (not a DNS name).</dd>
-          <dt><code>discover</code></dt>
-          <dd>
-            <p>Enables controller discovery.</p>
-            <p>In controller discovery mode, Open vSwitch broadcasts a DHCP
-              request with vendor class identifier <code>OpenFlow</code> across
-              all of the bridge's network devices.  It will accept any valid
-              DHCP reply that has the same vendor class identifier and includes
-              a vendor-specific option with code 1 whose contents are a string
-              specifying the location of the controller in the same format as
-              <ref column="target"/>.</p>
-            <p>The DHCP reply may also, optionally, include a vendor-specific
-              option with code 2 whose contents are a string specifying the URI
-              to the base of the OpenFlow PKI
-              (e.g. <code>http://192.168.0.1/openflow/pki</code>).  This URI is
-              used only for bootstrapping the OpenFlow PKI at initial switch
-              setup; <code>ovs-vswitchd</code> does not use it at all.</p>
-          </dd>
         </dl>
         <p>
           The following connection methods are currently supported for service
           </dd>
         </dl>
 
-        <p>If not specified, the default is implementation-specific.  If
-          <ref column="target"/> is <code>discover</code>, the connection mode
-          is always treated as <code>in-band</code> regardless of the actual
-          setting.</p>
+        <p>If not specified, the default is implementation-specific.</p>
       </column>
     </group>
 
         </column>
     </group>
 
-    <group title="Additional Discovery Configuration">
-      <p>These values are considered only when <ref column="target"/>
-        is <code>discover</code>.</p>
-
-      <column name="discover_accept_regex">
-        A POSIX
-        extended regular expression against which the discovered controller
-        location is validated.  The regular expression is implicitly
-        anchored at the beginning of the controller location string, as
-        if it begins with <code>^</code>.  If not specified, the default
-        is implementation-specific.
-      </column>
-
-      <column name="discover_update_resolv_conf">
-        Whether to update <code>/etc/resolv.conf</code> when the
-        controller is discovered.  If not specified, the default
-        is implementation-specific.  Open vSwitch will only modify
-        <code>/etc/resolv.conf</code> if the DHCP response that it receives
-        specifies one or more DNS servers.
-      </column>
-    </group>
-
     <group title="Additional In-Band Configuration">
       <p>These values are considered only in in-band control mode (see
-        <ref column="connection_mode"/>) and only when <ref column="target"/>
-        is not <code>discover</code>.  (For controller discovery, the network
-        configuration obtained via DHCP is used instead.)</p>
+        <ref column="connection_mode"/>).</p>
 
       <p>When multiple controllers are configured on a single bridge, there
         should be only one set of unique values in these columns.  If different
         <dl>
           <dt><code>other</code></dt>
           <dd>Allows the controller access to all OpenFlow features.</dd>
-        </dl>
-        <dl>
           <dt><code>master</code></dt>
           <dd>Equivalent to <code>other</code>, except that there may be at
             most one master controller at a time.  When a controller configures
             itself as <code>master</code>, any existing master is demoted to
             the <code>slave</code>role.</dd>
-        </dl>
-        <dl>
           <dt><code>slave</code></dt>
           <dd>Allows the controller read-only access to OpenFlow features.
             Attempts to modify the flow table will be rejected with an
           <dd>A human-readable description of the last error on the connection
             to the controller; i.e. <code>strerror(errno)</code>.  This key
             will exist only if an error has occurred.</dd>
-        </dl>
-        <dl>
           <dt><code>state</code></dt>
           <dd>The state of the connection to the controller.  Possible values
-            are: <code>VOID</code>, <code>BACKOFF</code>,
-            <code>CONNECTING</code>, <code>ACTIVE</code>, and
-            <code>IDLE</code>.</dd>
-        </dl>
-        <dl>
-          <dt><code>time_in_state</code></dt>
-          <dd>Seconds since connecting to (if currently connected) or
-            disconnecting from (if currently disconnected) this
-            controller.</dd>
+            are: <code>VOID</code> (connection is disabled),
+            <code>BACKOFF</code> (attempting to reconnect at an increasing
+            period), <code>CONNECTING</code> (attempting to connect),
+            <code>ACTIVE</code> (connected, remote host responsive), and
+            <code>IDLE</code> (remote host idle, sending keep-alive).  These
+            values may change in the future.  They are provided only for human
+            consumption.</dd>
+          <dt><code>sec_since_connect</code></dt>
+          <dd>The amount of time since this controller last successfully
+            connected to the switch (in seconds). Value is empty if controller
+            has never successfully connected.</dd>
+          <dt><code>sec_since_disconnect</code></dt>
+          <dd>The amount of time since this controller last disconnected from
+            the switch (in seconds). Value is empty if controller has never
+            disconnected.</dd>
         </dl>
       </column>
     </group>
           <dd>The state of the connection to the manager.  Possible values
             are: <code>VOID</code> (connection is disabled),
             <code>BACKOFF</code> (attempting to reconnect at an increasing
-            period), <code>CONNECT_IN_PROGRESS</code> (attempting to connect),
+            period), <code>CONNECTING</code> (attempting to connect),
             <code>ACTIVE</code> (connected, remote host responsive), and
-            <code>IDLE</code> (remote host unresponsive, disconnecting).  These
+            <code>IDLE</code> (remote host idle, sending keep-alive).  These
             values may change in the future.  They are provided only for human
             consumption.</dd>
         </dl>
         <dl>
-          <dt><code>time_in_state</code></dt>
-          <dd>Milliseconds since the <code>state</code> key changed.</dd>
+          <dt><code>sec_since_connect</code></dt>
+          <dd>The amount of time since this manager last successfully connected
+            to the database (in seconds). Value is empty if manager has never
+            successfully connected.</dd>
+        </dl>
+        <dl>
+          <dt><code>sec_since_disconnect</code></dt>
+          <dd>The amount of time since this manager last disconnected from the
+            database (in seconds). Value is empty if manager has never
+            disconnected.</dd>
         </dl>
       </column>
     </group>