I decided to apply this, but I'd still like to improve the
documentation further if possible, so when you get a chance please
review the RSTP documentation in vswitch.xml.

On Thu, Feb 19, 2015 at 09:48:15AM -0800, Jarno Rajahalme wrote:
> I?ll look in to this,
> 
>   Jarno
> 
> On Feb 19, 2015, at 9:22 AM, Ben Pfaff <b...@nicira.com> wrote:
> 
> > On Thu, Feb 19, 2015 at 04:00:43AM -0800, Gurucharan Shetty wrote:
> >> On Thu, Feb 19, 2015 at 12:12 AM, Ben Pfaff <b...@nicira.com> wrote:
> >>> A fair number of columns had been overlooked.  This documents them.
> >>> 
> >>> The patch is smaller than it appears because this rearranges the STP and
> >>> RSTP documentation to group configuration, status, and statistics together
> >>> in the documentation for clarity.
> >>> 
> >>> Signed-off-by: Ben Pfaff <b...@nicira.com>
> >> I do not know RSTP to review whether more clarity can be provided on
> >> the newly added column documentation. If no one else reviews,
> >> Acked-by: Gurucharan Shetty <gshe...@nicira.com>
> > 
> > Jarno, I think you know RSTP better than most here.  Can you provide
> > any better documentation for the newly documented columns here?
> > 
> > 
> >>> ---
> >>> vswitchd/vswitch.xml | 680 
> >>> +++++++++++++++++++++++++++++----------------------
> >>> 1 file changed, 391 insertions(+), 289 deletions(-)
> >>> 
> >>> diff --git a/vswitchd/vswitch.xml b/vswitchd/vswitch.xml
> >>> index 932e4b2..04de3ca 100644
> >>> --- a/vswitchd/vswitch.xml
> >>> +++ b/vswitchd/vswitch.xml
> >>> @@ -681,80 +681,232 @@
> >>>     </group>
> >>> 
> >>>     <group title="Spanning Tree Configuration">
> >>> -      The IEEE 802.1D Spanning Tree Protocol (STP) is a network protocol
> >>> -      that ensures loop-free topologies.  It allows redundant links to
> >>> -      be included in the network to provide automatic backup paths if
> >>> -      the active links fails.
> >>> +      <p>
> >>> +        The IEEE 802.1D Spanning Tree Protocol (STP) is a network 
> >>> protocol
> >>> +        that ensures loop-free topologies.  It allows redundant links to
> >>> +        be included in the network to provide automatic backup paths if
> >>> +        the active links fails.
> >>> +      </p>
> >>> 
> >>> -      <column name="stp_enable" type='{"type": "boolean"}'>
> >>> -        Enable spanning tree on the bridge.  By default, STP is disabled
> >>> -        on bridges.  Bond, internal, and mirror ports are not supported
> >>> -        and will not participate in the spanning tree.
> >>> -      </column>
> >>> +      <p>
> >>> +        These settings configure the slower-to-converge but still widely
> >>> +        supported version of Spanning Tree Protocol, sometimes known as
> >>> +        802.1D-1998.  Open vSwitch also supports the newer Rapid 
> >>> Spanning Tree
> >>> +        Protocol (RSTP), documented later in the section titled 
> >>> <code>Rapid
> >>> +        Spanning Tree Configuration</code>.
> >>> +      </p>
> >>> 
> >>> -      <column name="other_config" key="stp-system-id">
> >>> -        The bridge's STP identifier (the lower 48 bits of the bridge-id)
> >>> -        in the form
> >>> -        
> >>> <var>xx</var>:<var>xx</var>:<var>xx</var>:<var>xx</var>:<var>xx</var>:<var>xx</var>.
> >>> -        By default, the identifier is the MAC address of the bridge.
> >>> -      </column>
> >>> +      <group title="STP Configuration">
> >>> +        <column name="stp_enable" type='{"type": "boolean"}'>
> >>> +          <p>
> >>> +            Enable spanning tree on the bridge.  By default, STP is 
> >>> disabled
> >>> +            on bridges.  Bond, internal, and mirror ports are not 
> >>> supported
> >>> +            and will not participate in the spanning tree.
> >>> +          </p>
> >>> 
> >>> -      <column name="other_config" key="stp-priority"
> >>> -              type='{"type": "integer", "minInteger": 0, "maxInteger": 
> >>> 65535}'>
> >>> -        The bridge's relative priority value for determining the root
> >>> -        bridge (the upper 16 bits of the bridge-id).  A bridge with the
> >>> -        lowest bridge-id is elected the root.  By default, the priority
> >>> -        is 0x8000.
> >>> -      </column>
> >>> +          <p>
> >>> +            STP and RSTP are mutually exclusive.  If both are enabled, 
> >>> RSTP
> >>> +            will be used.
> >>> +          </p>
> >>> +        </column>
> >>> 
> >>> -      <column name="other_config" key="stp-hello-time"
> >>> -              type='{"type": "integer", "minInteger": 1, "maxInteger": 
> >>> 10}'>
> >>> -        The interval between transmissions of hello messages by
> >>> -        designated ports, in seconds.  By default the hello interval is
> >>> -        2 seconds.
> >>> -      </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
> >>> +          
> >>> <var>xx</var>:<var>xx</var>:<var>xx</var>:<var>xx</var>:<var>xx</var>:<var>xx</var>.
> >>> +          By default, the identifier is the MAC address of the bridge.
> >>> +        </column>
> >>> 
> >>> -      <column name="other_config" key="stp-max-age"
> >>> -              type='{"type": "integer", "minInteger": 6, "maxInteger": 
> >>> 40}'>
> >>> -        The maximum age of the information transmitted by the bridge
> >>> -        when it is the root bridge, in seconds.  By default, the maximum
> >>> -        age is 20 seconds.
> >>> -      </column>
> >>> +        <column name="other_config" key="stp-priority"
> >>> +                type='{"type": "integer", "minInteger": 0, "maxInteger": 
> >>> 65535}'>
> >>> +          The bridge's relative priority value for determining the root
> >>> +          bridge (the upper 16 bits of the bridge-id).  A bridge with the
> >>> +          lowest bridge-id is elected the root.  By default, the priority
> >>> +          is 0x8000.
> >>> +        </column>
> >>> 
> >>> -      <column name="other_config" key="stp-forward-delay"
> >>> -              type='{"type": "integer", "minInteger": 4, "maxInteger": 
> >>> 30}'>
> >>> -        The delay to wait between transitioning root and designated
> >>> -        ports to <code>forwarding</code>, in seconds.  By default, the
> >>> -        forwarding delay is 15 seconds.
> >>> -      </column>
> >>> +        <column name="other_config" key="stp-hello-time"
> >>> +                type='{"type": "integer", "minInteger": 1, "maxInteger": 
> >>> 10}'>
> >>> +          The interval between transmissions of hello messages by
> >>> +          designated ports, in seconds.  By default the hello interval is
> >>> +          2 seconds.
> >>> +        </column>
> >>> 
> >>> -      <column name="other_config" key="mcast-snooping-aging-time"
> >>> -              type='{"type": "integer", "minInteger": 1}'>
> >>> -        <p>
> >>> -          The maximum number of seconds to retain a multicast snooping 
> >>> 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>
> >>> -      </column>
> >>> +        <column name="other_config" key="stp-max-age"
> >>> +                type='{"type": "integer", "minInteger": 6, "maxInteger": 
> >>> 40}'>
> >>> +          The maximum age of the information transmitted by the bridge
> >>> +          when it is the root bridge, in seconds.  By default, the 
> >>> maximum
> >>> +          age is 20 seconds.
> >>> +        </column>
> >>> 
> >>> -      <column name="other_config" key="mcast-snooping-table-size"
> >>> -              type='{"type": "integer", "minInteger": 1}'>
> >>> +        <column name="other_config" key="stp-forward-delay"
> >>> +                type='{"type": "integer", "minInteger": 4, "maxInteger": 
> >>> 30}'>
> >>> +          The delay to wait between transitioning root and designated
> >>> +          ports to <code>forwarding</code>, in seconds.  By default, the
> >>> +          forwarding delay is 15 seconds.
> >>> +        </column>
> >>> +
> >>> +        <column name="other_config" key="mcast-snooping-aging-time"
> >>> +                type='{"type": "integer", "minInteger": 1}'>
> >>> +          <p>
> >>> +            The maximum number of seconds to retain a multicast snooping 
> >>> 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>
> >>> +        </column>
> >>> +
> >>> +        <column name="other_config" key="mcast-snooping-table-size"
> >>> +                type='{"type": "integer", "minInteger": 1}'>
> >>> +          <p>
> >>> +            The maximum number of multicast snooping addresses to learn. 
> >>>  The
> >>> +            default is currently 2048.  The value, if specified, is 
> >>> forced into
> >>> +            a reasonable range, currently 10 to 1,000,000.
> >>> +          </p>
> >>> +        </column>
> >>> +        <column name="other_config" 
> >>> key="mcast-snooping-disable-flood-unregistered"
> >>> +                type='{"type": "boolean"}'>
> >>> +          <p>
> >>> +            If set to <code>false</code>, unregistered multicast packets 
> >>> are forwarded
> >>> +            to all ports.
> >>> +            If set to <code>true</code>, unregistered multicast packets 
> >>> are forwarded
> >>> +            to ports connected to multicast routers.
> >>> +          </p>
> >>> +        </column>
> >>> +      </group>
> >>> +
> >>> +      <group title="STP Status">
> >>>         <p>
> >>> -          The maximum number of multicast snooping addresses to learn.  
> >>> The
> >>> -          default is currently 2048.  The value, if specified, is forced 
> >>> into
> >>> -          a reasonable range, currently 10 to 1,000,000.
> >>> +          These key-value pairs report the status of 802.1D-1998.  They 
> >>> are
> >>> +          present only if STP is enabled (via the <ref 
> >>> column="stp_enable"/>
> >>> +          column).
> >>>         </p>
> >>> -      </column>
> >>> -      <column name="other_config" 
> >>> key="mcast-snooping-disable-flood-unregistered"
> >>> -              type='{"type": "boolean"}'>
> >>> +        <column name="status" key="stp_bridge_id">
> >>> +          The bridge ID used in spanning tree advertisements, in the form
> >>> +          <var>xxxx</var>.<var>yyyyyyyyyyyy</var> where the 
> >>> <var>x</var>s are
> >>> +          the STP priority, the <var>y</var>s are the STP system ID, and 
> >>> each
> >>> +          <var>x</var> and <var>y</var> is a hex digit.
> >>> +        </column>
> >>> +        <column name="status" key="stp_designated_root">
> >>> +          The designated root for this spanning tree, in the same form 
> >>> as <ref
> >>> +          column="status" key="stp_bridge_id"/>.  If this bridge is the 
> >>> root,
> >>> +          this will have the same value as <ref column="status"
> >>> +          key="stp_bridge_id"/>, otherwise it will differ.
> >>> +        </column>
> >>> +        <column name="status" key="stp_root_path_cost">
> >>> +          The path cost of reaching the designated bridge.  A lower 
> >>> number is
> >>> +          better.  The value is 0 if this bridge is the root, otherwise 
> >>> it is
> >>> +          higher.
> >>> +        </column>
> >>> +      </group>
> >>> +    </group>
> >>> +
> >>> +    <group title="Rapid Spanning Tree">
> >>> +      <p>
> >>> +        Rapid Spanning Tree Protocol (RSTP), like STP, is a network 
> >>> protocol
> >>> +        that ensures loop-free topologies.  RSTP superseded STP with the
> >>> +        publication of 802.1D-2004.  Compared to STP, RSTP converges more
> >>> +        quickly and recovers more quickly from failures.
> >>> +      </p>
> >>> +
> >>> +      <group title="RSTP Configuration">
> >>> +        <column name="rstp_enable" type='{"type": "boolean"}'>
> >>> +          <p>
> >>> +            Enable Rapid Spanning Tree on the bridge.  By default, RSTP 
> >>> is disabled
> >>> +            on bridges.  Bond, internal, and mirror ports are not 
> >>> supported
> >>> +            and will not participate in the spanning tree.
> >>> +          </p>
> >>> +
> >>> +          <p>
> >>> +            STP and RSTP are mutually exclusive.  If both are enabled, 
> >>> RSTP
> >>> +            will be used.
> >>> +          </p>
> >>> +        </column>
> >>> +
> >>> +        <column name="other_config" key="rstp-address">
> >>> +          The bridge's RSTP address (the lower 48 bits of the bridge-id)
> >>> +          in the form
> >>> +          
> >>> <var>xx</var>:<var>xx</var>:<var>xx</var>:<var>xx</var>:<var>xx</var>:<var>xx</var>.
> >>> +          By default, the address is the MAC address of the bridge.
> >>> +        </column>
> >>> +
> >>> +        <column name="other_config" key="rstp-priority"
> >>> +                type='{"type": "integer", "minInteger": 0, "maxInteger": 
> >>> 61440}'>
> >>> +          The bridge's relative priority value for determining the root
> >>> +          bridge (the upper 16 bits of the bridge-id).  A bridge with the
> >>> +          lowest bridge-id is elected the root.  By default, the priority
> >>> +          is 0x8000 (32768).  This value needs to be a multiple of 4096,
> >>> +          otherwise it's rounded to the nearest inferior one.
> >>> +        </column>
> >>> +
> >>> +        <column name="other_config" key="rstp-ageing-time"
> >>> +                type='{"type": "integer", "minInteger": 10, 
> >>> "maxInteger": 1000000}'>
> >>> +          The Ageing Time parameter for the Bridge.  The default value
> >>> +          is 300 seconds.
> >>> +        </column>
> >>> +
> >>> +        <column name="other_config" key="rstp-force-protocol-version"
> >>> +                type='{"type": "integer"}'>
> >>> +          The Force Protocol Version parameter for the Bridge.  This
> >>> +          can take the value 0 (STP Compatibility mode) or 2
> >>> +          (the default, normal operation).
> >>> +        </column>
> >>> +
> >>> +        <column name="other_config" key="rstp-max-age"
> >>> +                type='{"type": "integer", "minInteger": 6, "maxInteger": 
> >>> 40}'>
> >>> +          The maximum age of the information transmitted by the Bridge
> >>> +          when it is the Root Bridge.  The default value is 20.
> >>> +        </column>
> >>> +
> >>> +        <column name="other_config" key="rstp-forward-delay"
> >>> +                type='{"type": "integer", "minInteger": 4, "maxInteger": 
> >>> 30}'>
> >>> +          The delay used by STP Bridges to transition Root and Designated
> >>> +          Ports to Forwarding.  The default value is 15.
> >>> +        </column>
> >>> +
> >>> +        <column name="other_config" key="rstp-transmit-hold-count"
> >>> +                type='{"type": "integer", "minInteger": 1, "maxInteger": 
> >>> 10}'>
> >>> +          The Transmit Hold Count used by the Port Transmit state machine
> >>> +          to limit transmission rate.  The default value is 6.
> >>> +        </column>
> >>> +      </group>
> >>> +
> >>> +      <group title="RSTP Status">
> >>>         <p>
> >>> -          If set to <code>false</code>, unregistered multicast packets 
> >>> are forwarded
> >>> -          to all ports.
> >>> -          If set to <code>true</code>, unregistered multicast packets 
> >>> are forwarded
> >>> -          to ports connected to multicast routers.
> >>> +          These key-value pairs report the status of 802.1D-2004.  They 
> >>> are
> >>> +          present only if RSTP is enabled (via the <ref 
> >>> column="rstp_enable"/>
> >>> +          column).
> >>>         </p>
> >>> -      </column>
> >>> +        <column name="rstp_status" key="rstp_bridge_id">
> >>> +          The bridge ID used in rapid spanning tree advertisements, in 
> >>> the form
> >>> +          <var>x</var>.<var>yyy</var>.<var>zzzzzzzzzzzz</var> where
> >>> +          <var>x</var> is the RSTP priority, the <var>y</var>s are a 
> >>> locally
> >>> +          assigned system ID extension, the <var>z</var>s are the STP 
> >>> system
> >>> +          ID, and each <var>x</var>, <var>y</var>, or <var>z</var> is a 
> >>> hex
> >>> +          digit.
> >>> +        </column>
> >>> +        <column name="rstp_status" key="rstp_root_id">
> >>> +          The root of this spanning tree, in the same form as <ref
> >>> +          column="rstp_status" key="rstp_bridge_id"/>.  If this bridge 
> >>> is the
> >>> +          root, this will have the same value as <ref 
> >>> column="rstp_status"
> >>> +          key="rstp_bridge_id"/>, otherwise it will differ.
> >>> +        </column>
> >>> +        <column name="rstp_status" key="rstp_root_path_cost"
> >>> +                type='{"type": "integer", "minInteger": 0}'>
> >>> +          The path cost of reaching the root.  A lower number is better. 
> >>>  The
> >>> +          value is 0 if this bridge is the root, otherwise it is higher.
> >>> +        </column>
> >>> +        <column name="rstp_status" key="rstp_designated_id">
> >>> +          The RSTP designated ID, in the same form as <ref 
> >>> column="rstp_status"
> >>> +          key="rstp_bridge_id"/>.
> >>> +        </column>
> >>> +        <column name="rstp_status" key="rstp_designated_port_id">
> >>> +          The RSTP designated port ID, as a 4-digit hex number.
> >>> +        </column>
> >>> +        <column name="rstp_status" key="rstp_bridge_port_id">
> >>> +          The RSTP bridge port ID, as a 4-digit hex number.
> >>> +        </column>
> >>> +      </group>
> >>>     </group>
> >>> 
> >>>     <group title="Multicast Snooping Configuration">
> >>> @@ -770,73 +922,6 @@
> >>>       </column>
> >>>     </group>
> >>> 
> >>> -    <group title="Rapid Spanning Tree Configuration">
> >>> -      In IEEE Std 802.1D, 1998 Edition, and prior editions of this 
> >>> standard,
> >>> -      Clause 8 specified the spanning tree algorithm and protocol (STP). 
> >>>  STP
> >>> -      has now been superseded by the Rapid Spanning Tree Protocol (RSTP)
> >>> -      specified in Clause 17 of the IEEE Std 802.1D, 2004 Edition.
> >>> -      The IEEE 802.1D-2004 Rapid Spanning Tree Algorithm Protocol 
> >>> configures
> >>> -      full, simple, and symmetric connectivity throughout a Bridged 
> >>> Local Area
> >>> -      Network that comprises individual LANs interconnected by Bridges.
> >>> -      Like STP, RSTP is a network protocol that ensures loop-free 
> >>> topologies.
> >>> -      It allows redundant links to be included in the network to provide
> >>> -      automatic backup paths if the active links fails.
> >>> -
> >>> -      <column name="rstp_enable" type='{"type": "boolean"}'>
> >>> -        Enable Rapid Spanning Tree on the bridge.  By default, RSTP is 
> >>> disabled
> >>> -        on bridges.  Bond, internal, and mirror ports are not supported
> >>> -        and will not participate in the spanning tree.
> >>> -      </column>
> >>> -
> >>> -      <column name="other_config" key="rstp-address">
> >>> -        The bridge's RSTP address (the lower 48 bits of the bridge-id)
> >>> -        in the form
> >>> -        
> >>> <var>xx</var>:<var>xx</var>:<var>xx</var>:<var>xx</var>:<var>xx</var>:<var>xx</var>.
> >>> -        By default, the address is the MAC address of the bridge.
> >>> -      </column>
> >>> -
> >>> -      <column name="other_config" key="rstp-priority"
> >>> -              type='{"type": "integer", "minInteger": 0, "maxInteger": 
> >>> 61440}'>
> >>> -        The bridge's relative priority value for determining the root
> >>> -        bridge (the upper 16 bits of the bridge-id).  A bridge with the
> >>> -        lowest bridge-id is elected the root.  By default, the priority
> >>> -        is 0x8000 (32768).  This value needs to be a multiple of 4096,
> >>> -        otherwise it's rounded to the nearest inferior one.
> >>> -      </column>
> >>> -
> >>> -      <column name="other_config" key="rstp-ageing-time"
> >>> -              type='{"type": "integer", "minInteger": 10, "maxInteger": 
> >>> 1000000}'>
> >>> -        The Ageing Time parameter for the Bridge.  The default value
> >>> -        is 300 seconds.
> >>> -      </column>
> >>> -
> >>> -      <column name="other_config" key="rstp-force-protocol-version"
> >>> -              type='{"type": "integer"}'>
> >>> -        The Force Protocol Version parameter for the Bridge.  This
> >>> -        can take the value 0 (STP Compatibility mode) or 2
> >>> -        (the default, normal operation).
> >>> -      </column>
> >>> -
> >>> -      <column name="other_config" key="rstp-max-age"
> >>> -              type='{"type": "integer", "minInteger": 6, "maxInteger": 
> >>> 40}'>
> >>> -        The maximum age of the information transmitted by the Bridge
> >>> -        when it is the Root Bridge.  The default value is 20.
> >>> -      </column>
> >>> -
> >>> -      <column name="other_config" key="rstp-forward-delay"
> >>> -              type='{"type": "integer", "minInteger": 4, "maxInteger": 
> >>> 30}'>
> >>> -        The delay used by STP Bridges to transition Root and Designated
> >>> -        Ports to Forwarding.  The default value is 15.
> >>> -      </column>
> >>> -
> >>> -      <column name="other_config" key="rstp-transmit-hold-count"
> >>> -              type='{"type": "integer", "minInteger": 1, "maxInteger": 
> >>> 10}'>
> >>> -        The Transmit Hold Count used by the Port Transmit state machine
> >>> -        to limit transmission rate.  The default value is 6.
> >>> -      </column>
> >>> -
> >>> -    </group>
> >>> -
> >>>     <group title="Other Features">
> >>>       <column name="datapath_type">
> >>>         Name of datapath provider.  The kernel datapath has
> >>> @@ -947,34 +1032,6 @@
> >>>       </column>
> >>>     </group>
> >>> 
> >>> -    <group title="Bridge Status">
> >>> -      <p>
> >>> -        Status information about bridges.
> >>> -      </p>
> >>> -      <column name="status">
> >>> -        Key-value pairs that report bridge status.
> >>> -      </column>
> >>> -      <column name="status" key="stp_bridge_id">
> >>> -        <p>
> >>> -          The bridge-id (in hex) used in spanning tree advertisements.
> >>> -          Configuring the bridge-id is described in the
> >>> -          <code>stp-system-id</code> and <code>stp-priority</code> keys
> >>> -          of the <code>other_config</code> section earlier.
> >>> -        </p>
> >>> -      </column>
> >>> -      <column name="status" key="stp_designated_root">
> >>> -        <p>
> >>> -          The designated root (in hex) for this spanning tree.
> >>> -        </p>
> >>> -      </column>
> >>> -      <column name="status" key="stp_root_path_cost">
> >>> -        <p>
> >>> -          The path cost of reaching the designated bridge.  A lower
> >>> -          number is better.
> >>> -        </p>
> >>> -      </column>
> >>> -    </group>
> >>> -
> >>>     <group title="Common Columns">
> >>>       The overall purpose of these columns is described under <code>Common
> >>>       Columns</code> at the beginning of this document.
> >>> @@ -1314,105 +1371,192 @@
> >>>       </column>
> >>>     </group>
> >>> 
> >>> -    <group title="Spanning Tree Configuration">
> >>> -      <column name="other_config" key="stp-enable"
> >>> -              type='{"type": "boolean"}'>
> >>> -        If spanning tree is enabled on the bridge, member ports are
> >>> -        enabled by default (with the exception of bond, internal, and
> >>> -        mirror ports which do not work with STP).  If this column's
> >>> -        value is <code>false</code> spanning tree is disabled on the
> >>> -        port.
> >>> -      </column>
> >>> +    <group title="Spanning Tree Protocol">
> >>> +      <p>
> >>> +        The configuration here is only meaningful, and the status is only
> >>> +        populated, when 802.1D-1998 Spanning Tree Protocol is enabled on 
> >>> the
> >>> +        port's <ref column="Bridge"/> with its <ref column="stp_enable"/>
> >>> +        column.
> >>> +      </p>
> >>> 
> >>> -       <column name="other_config" key="stp-port-num"
> >>> -               type='{"type": "integer", "minInteger": 1, "maxInteger": 
> >>> 255}'>
> >>> -        The port number used for the lower 8 bits of the port-id.  By
> >>> -        default, the numbers will be assigned automatically.  If any
> >>> -        port's number is manually configured on a bridge, then they
> >>> -        must all be.
> >>> -      </column>
> >>> +      <group title="STP Configuration">
> >>> +        <column name="other_config" key="stp-enable"
> >>> +                type='{"type": "boolean"}'>
> >>> +          When STP is enabled on a bridge, it is enabled by default on 
> >>> all of
> >>> +          the bridge's ports except bond, internal, and mirror ports 
> >>> (which do
> >>> +          not work with STP).  If this column's value is 
> >>> <code>false</code>,
> >>> +          STP is disabled on the port.
> >>> +        </column>
> >>> 
> >>> -       <column name="other_config" key="stp-port-priority"
> >>> -               type='{"type": "integer", "minInteger": 0, "maxInteger": 
> >>> 255}'>
> >>> -        The port's relative priority value for determining the root
> >>> -        port (the upper 8 bits of the port-id).  A port with a lower
> >>> -        port-id will be chosen as the root port.  By default, the
> >>> -        priority is 0x80.
> >>> -      </column>
> >>> +        <column name="other_config" key="stp-port-num"
> >>> +                type='{"type": "integer", "minInteger": 1, "maxInteger": 
> >>> 255}'>
> >>> +          The port number used for the lower 8 bits of the port-id.  By
> >>> +          default, the numbers will be assigned automatically.  If any
> >>> +          port's number is manually configured on a bridge, then they
> >>> +          must all be.
> >>> +        </column>
> >>> 
> >>> -       <column name="other_config" key="stp-path-cost"
> >>> -               type='{"type": "integer", "minInteger": 0, "maxInteger": 
> >>> 65535}'>
> >>> -        Spanning tree path cost for the port.  A lower number indicates
> >>> -        a faster link.  By default, the cost is based on the maximum
> >>> -        speed of the link.
> >>> -      </column>
> >>> +        <column name="other_config" key="stp-port-priority"
> >>> +                type='{"type": "integer", "minInteger": 0, "maxInteger": 
> >>> 255}'>
> >>> +          The port's relative priority value for determining the root
> >>> +          port (the upper 8 bits of the port-id).  A port with a lower
> >>> +          port-id will be chosen as the root port.  By default, the
> >>> +          priority is 0x80.
> >>> +        </column>
> >>> +
> >>> +        <column name="other_config" key="stp-path-cost"
> >>> +                type='{"type": "integer", "minInteger": 0, "maxInteger": 
> >>> 65535}'>
> >>> +          Spanning tree path cost for the port.  A lower number indicates
> >>> +          a faster link.  By default, the cost is based on the maximum
> >>> +          speed of the link.
> >>> +        </column>
> >>> +      </group>
> >>> +
> >>> +      <group title="STP Status">
> >>> +        <column name="status" key="stp_port_id">
> >>> +          The port ID used in spanning tree advertisements for this 
> >>> port, as 4
> >>> +          hex digits.  Configuring the port ID is described in the
> >>> +          <code>stp-port-num</code> and <code>stp-port-priority</code> 
> >>> keys of
> >>> +          the <code>other_config</code> section earlier.
> >>> +        </column>
> >>> +        <column name="status" key="stp_state"
> >>> +                type='{"type": "string", "enum": ["set",
> >>> +                      ["disabled", "listening", "learning",
> >>> +                      "forwarding", "blocking"]]}'>
> >>> +          STP state of the port.
> >>> +        </column>
> >>> +        <column name="status" key="stp_sec_in_state"
> >>> +                type='{"type": "integer", "minInteger": 0}'>
> >>> +          The amount of time this port has been in the current STP 
> >>> state, in
> >>> +          seconds.
> >>> +        </column>
> >>> +        <column name="status" key="stp_role"
> >>> +                type='{"type": "string", "enum": ["set",
> >>> +                      ["root", "designated", "alternate"]]}'>
> >>> +          STP role of the port.
> >>> +        </column>
> >>> +      </group>
> >>>     </group>
> >>> 
> >>> -    <group title="Rapid Spanning Tree Configuration">
> >>> -      <column name="other_config" key="rstp-enable"
> >>> -              type='{"type": "boolean"}'>
> >>> -        If rapid spanning tree is enabled on the bridge, member ports are
> >>> -        enabled by default (with the exception of bond, internal, and
> >>> -        mirror ports which do not work with RSTP).  If this column's
> >>> -        value is <code>false</code> rapid spanning tree is disabled on 
> >>> the
> >>> -        port.
> >>> -      </column>
> >>> +    <group title="Rapid Spanning Tree Protocol">
> >>> +      <p>
> >>> +        The configuration here is only meaningful, and the status and
> >>> +        statistics are only populated, when 802.1D-1998 Spanning Tree 
> >>> Protocol
> >>> +        is enabled on the port's <ref column="Bridge"/> with its <ref
> >>> +        column="stp_enable"/> column.
> >>> +      </p>
> >>> 
> >>> -      <column name="other_config" key="rstp-port-priority"
> >>> -              type='{"type": "integer", "minInteger": 0, "maxInteger": 
> >>> 240}'>
> >>> -        The port's relative priority value for determining the root
> >>> -        port, in multiples of 16.  By default, the port priority is 0x80
> >>> -        (128).  Any value in the lower 4 bits is rounded off.  The 
> >>> significant
> >>> -        upper 4 bits become the upper 4 bits of the port-id.  A port 
> >>> with the
> >>> -        lowest port-id is elected as the root.
> >>> -      </column>
> >>> +      <group title="RSTP Configuration">
> >>> +        <column name="other_config" key="rstp-enable"
> >>> +                type='{"type": "boolean"}'>
> >>> +          When RSTP is enabled on a bridge, it is enabled by default on 
> >>> all of
> >>> +          the bridge's ports except bond, internal, and mirror ports 
> >>> (which do
> >>> +          not work with RSTP).  If this column's value is 
> >>> <code>false</code>,
> >>> +          RSTP is disabled on the port.
> >>> +        </column>
> >>> 
> >>> -      <column name="other_config" key="rstp-port-num"
> >>> -              type='{"type": "integer", "minInteger": 1, "maxInteger": 
> >>> 4095}'>
> >>> -        The local RSTP port number, used as the lower 12 bits of the 
> >>> port-id.
> >>> -        By default the port numbers are assigned automatically, and 
> >>> typically
> >>> -        may not correspond to the OpenFlow port numbers.  A port with the
> >>> -        lowest port-id is elected as the root.
> >>> -      </column>
> >>> +        <column name="other_config" key="rstp-port-priority"
> >>> +                type='{"type": "integer", "minInteger": 0, "maxInteger": 
> >>> 240}'>
> >>> +          The port's relative priority value for determining the root 
> >>> port, in
> >>> +          multiples of 16.  By default, the port priority is 0x80 (128). 
> >>>  Any
> >>> +          value in the lower 4 bits is rounded off.  The significant 
> >>> upper 4
> >>> +          bits become the upper 4 bits of the port-id.  A port with the 
> >>> lowest
> >>> +          port-id is elected as the root.
> >>> +        </column>
> >>> 
> >>> -      <column name="other_config" key="rstp-port-path-cost"
> >>> -              type='{"type": "integer"}'>
> >>> -        The port path cost.  The Port's contribution, when it is
> >>> -        the Root Port, to the Root Path Cost for the Bridge.  By default 
> >>> the
> >>> -        cost is automatically calculated from the port's speed.
> >>> -      </column>
> >>> +        <column name="other_config" key="rstp-port-num"
> >>> +                type='{"type": "integer", "minInteger": 1, "maxInteger": 
> >>> 4095}'>
> >>> +          The local RSTP port number, used as the lower 12 bits of the 
> >>> port-id.
> >>> +          By default the port numbers are assigned automatically, and 
> >>> typically
> >>> +          may not correspond to the OpenFlow port numbers.  A port with 
> >>> the
> >>> +          lowest port-id is elected as the root.
> >>> +        </column>
> >>> 
> >>> -      <column name="other_config" key="rstp-port-admin-edge"
> >>> -              type='{"type": "boolean"}'>
> >>> -        The admin edge port parameter for the Port.  Default is
> >>> -        <code>false</code>.
> >>> -      </column>
> >>> +        <column name="other_config" key="rstp-port-path-cost"
> >>> +                type='{"type": "integer"}'>
> >>> +          The port path cost.  The Port's contribution, when it is
> >>> +          the Root Port, to the Root Path Cost for the Bridge.  By 
> >>> default the
> >>> +          cost is automatically calculated from the port's speed.
> >>> +        </column>
> >>> 
> >>> -      <column name="other_config" key="rstp-port-auto-edge"
> >>> -              type='{"type": "boolean"}'>
> >>> -        The auto edge port parameter for the Port.  Default is
> >>> -        <code>true</code>.
> >>> -      </column>
> >>> +        <column name="other_config" key="rstp-port-admin-edge"
> >>> +                type='{"type": "boolean"}'>
> >>> +          The admin edge port parameter for the Port.  Default is
> >>> +          <code>false</code>.
> >>> +        </column>
> >>> 
> >>> -      <column name="other_config" key="rstp-port-mcheck"
> >>> -              type='{"type": "boolean"}'>
> >>> -        <p>
> >>> -          The mcheck port parameter for the Port.  Default is
> >>> -          <code>false</code>.  May be set to force the Port Protocol
> >>> -          Migration state machine to transmit RST BPDUs for a
> >>> -          MigrateTime period, to test whether all STP Bridges on the
> >>> -          attached LAN have been removed and the Port can continue to
> >>> -          transmit RSTP BPDUs.  Setting mcheck has no effect if the
> >>> -          Bridge is operating in STP Compatibility mode.
> >>> -        </p>
> >>> -        <p>
> >>> -          Changing the value from <code>true</code> to
> >>> -          <code>false</code> has no effect, but needs to be done if
> >>> -          this behavior is to be triggered again by subsequently
> >>> -          changing the value from <code>false</code> to
> >>> +        <column name="other_config" key="rstp-port-auto-edge"
> >>> +                type='{"type": "boolean"}'>
> >>> +          The auto edge port parameter for the Port.  Default is
> >>>           <code>true</code>.
> >>> -        </p>
> >>> -      </column>
> >>> +        </column>
> >>> +
> >>> +        <column name="other_config" key="rstp-port-mcheck"
> >>> +                type='{"type": "boolean"}'>
> >>> +          <p>
> >>> +            The mcheck port parameter for the Port.  Default is
> >>> +            <code>false</code>.  May be set to force the Port Protocol
> >>> +            Migration state machine to transmit RST BPDUs for a
> >>> +            MigrateTime period, to test whether all STP Bridges on the
> >>> +            attached LAN have been removed and the Port can continue to
> >>> +            transmit RSTP BPDUs.  Setting mcheck has no effect if the
> >>> +            Bridge is operating in STP Compatibility mode.
> >>> +          </p>
> >>> +          <p>
> >>> +            Changing the value from <code>true</code> to
> >>> +            <code>false</code> has no effect, but needs to be done if
> >>> +            this behavior is to be triggered again by subsequently
> >>> +            changing the value from <code>false</code> to
> >>> +            <code>true</code>.
> >>> +          </p>
> >>> +        </column>
> >>> +      </group>
> >>> +
> >>> +      <group title="RSTP Status">
> >>> +        <column name="rstp_status" key="rstp_port_id">
> >>> +          The port ID used in spanning tree advertisements for this 
> >>> port, as 4
> >>> +          hex digits.  Configuring the port ID is described in the
> >>> +          <code>rstp-port-num</code> and <code>rstp-port-priority</code> 
> >>> keys
> >>> +          of the <code>other_config</code> section earlier.
> >>> +        </column>
> >>> +        <column name="rstp_status" key="rstp_port_role"
> >>> +                type='{"type": "string", "enum": ["set",
> >>> +                      ["Root", "Designated", "Alternate", "Backup", 
> >>> "Disabled"]]}'>
> >>> +          RSTP role of the port.
> >>> +        </column>
> >>> +        <column name="rstp_status" key="rstp_port_state"
> >>> +                type='{"type": "string", "enum": ["set",
> >>> +                      ["Disabled", "Learning", "Forwarding", 
> >>> "Discarding"]]}'>
> >>> +          RSTP state of the port.
> >>> +        </column>
> >>> +        <column name="rstp_status" key="rstp_designated_bridge_id">
> >>> +          The port's RSTP designated bridge ID, in the same form as <ref
> >>> +          column="rstp_status" key="rstp_bridge_id"/> in the <ref
> >>> +          table="Bridge"/> table.
> >>> +        </column>
> >>> +        <column name="rstp_status" key="rstp_designated_port_id">
> >>> +          The port's RSTP designated port ID, as 4 hex digits.
> >>> +        </column>
> >>> +        <column name="rstp_status" key="rstp_designated_path_cost"
> >>> +                type='{"type": "integer"}'>
> >>> +          The port's RSTP designated path cost.  Lower is better.
> >>> +        </column>
> >>> +      </group>
> >>> +
> >>> +      <group title="RSTP Statistics">
> >>> +        <column name="rstp_statistics" key="rstp_tx_count">
> >>> +          Number of RSTP BPDUs transmitted through this port.
> >>> +        </column>
> >>> +        <column name="rstp_statistics" key="rstp_rx_count">
> >>> +          Number of valid RSTP BPDUs received by this port.
> >>> +        </column>
> >>> +        <column name="rstp_statistics" key="rstp_error_count">
> >>> +          Number of invalid RSTP BPDUs received by this port.
> >>> +        </column>
> >>> +        <column name="rstp_statistics" key="rstp_uptime">
> >>> +          The duration covered by the other RSTP statistics, in seconds.
> >>> +        </column>
> >>> +      </group>
> >>>     </group>
> >>> 
> >>>     <group title="Multicast Snooping">
> >>> @@ -1458,51 +1602,9 @@
> >>>       </column>
> >>>     </group>
> >>> 
> >>> -    <group title="Port Status">
> >>> -      <p>
> >>> -        Status information about ports attached to bridges.
> >>> -      </p>
> >>> -      <column name="status">
> >>> -        Key-value pairs that report port status.
> >>> -      </column>
> >>> -      <column name="status" key="stp_port_id">
> >>> -        <p>
> >>> -          The port-id (in hex) used in spanning tree advertisements for
> >>> -          this port.  Configuring the port-id is described in the
> >>> -          <code>stp-port-num</code> and <code>stp-port-priority</code>
> >>> -          keys of the <code>other_config</code> section earlier.
> >>> -        </p>
> >>> -      </column>
> >>> -      <column name="status" key="stp_state"
> >>> -              type='{"type": "string", "enum": ["set",
> >>> -                            ["disabled", "listening", "learning",
> >>> -                             "forwarding", "blocking"]]}'>
> >>> -        <p>
> >>> -          STP state of the port.
> >>> -        </p>
> >>> -      </column>
> >>> -      <column name="status" key="stp_sec_in_state"
> >>> -              type='{"type": "integer", "minInteger": 0}'>
> >>> -        <p>
> >>> -          The amount of time (in seconds) port has been in the current
> >>> -          STP state.
> >>> -        </p>
> >>> -      </column>
> >>> -      <column name="status" key="stp_role"
> >>> -              type='{"type": "string", "enum": ["set",
> >>> -                            ["root", "designated", "alternate"]]}'>
> >>> -        <p>
> >>> -          STP role of the port.
> >>> -        </p>
> >>> -      </column>
> >>> -
> >>> -      <column name="status" key="bond_active_slave">
> >>> -        <p>
> >>> -          For a bonded port, record the mac address of the current 
> >>> active slave.
> >>> -        </p>
> >>> -      </column>
> >>> -
> >>> -    </group>
> >>> +    <column name="bond_active_slave">
> >>> +      For a bonded port, record the mac address of the current active 
> >>> slave.
> >>> +    </column>
> >>> 
> >>>     <group title="Port Statistics">
> >>>       <p>
> >>> --
> >>> 2.1.3
> >>> 
> >>> _______________________________________________
> >>> dev mailing list
> >>> dev@openvswitch.org
> >>> http://openvswitch.org/mailman/listinfo/dev
> 
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to