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