MSTP and RPVST+

Troubleshooting an MSTP configuration

This section describes the show spanning-tree commands to use to monitor, troubleshoot, and debug the operation of a multiple-instance spanning tree configuration in a network.

The show spanning-tree commands described in this section enable focus on increasingly specific levels of operation. For example, you can display debug information for:

  • All MST instances

  • All ports used in one MST instance

  • A specific port or several ports used in one MST instance

Also, you can display the change history for the root (bridge) switch used as the single forwarding path for:

  • All MST regions, STP bridges, and RSTP bridges in an STP network

  • All VLANs on MSTP switches in a region

  • All VLANs on MSTP switches in an mst instance

Viewing the change history of root bridges

The show spanning-tree root-history command lets you display change history information (up to 10 history entries) for a specified root bridge in any of the following MSTP topologies:

  • Common Spanning Tree (cst):

    Provides connectivity in a bridged network between MST regions, STP LANs, and RSTP LANs.

  • Internal Spanning Tree (ist):

    Provides connectivity within an MST region for VLANs associated with the default Common and Internal Spanning Tree (CIST) instance in your network (VLANs that have not been mapped to an MST instance).

  • MST Instance (mst):

    Connects all static and (from release 13.X.X ) dynamic VLANs assigned to a multiple spanning tree instance.

Syntax:

show spanning tree root-history [ cst | ist | mst ] instance-id

Displays the change history for the root bridge in the specified MSTP topology.

cst

Displays the change history for the root bridge of a spanning tree network, including MST regions and STP and RSTP bridges.

ist

Displays the change history for the root bridge in the IST instance of an MST region.

mst instance-id

Displays the change history for the root bridge in an MST instance, where instance-id is an ID number from 1 to 16.

Use the show spanning-tree root-history command to view the number and dates of changes in the assignment of a root bridge. Possible intrusion into your MST network may occur if an unauthorized external device gains access to a spanning tree by posing as the root device in a topology. To prevent an MST port connected to the device from being selected as the root port in a topology, use the spanning-tree root-guard command.

Sample output of the show spanning-tree root-history command for different MSTP topologies

The following examples show sample output of the show spanning-tree root-history command for different MSTP topologies. In each example, the root bridge ID is displayed in the format: priority: mac-address

Where:

  • priority is the MSTP switch priority calculated for one of the following:

    • The IST (regional) root switch using the spanning-tree priority command

    • An MSTI root switch using the spanning-tree instance priority command

  • mac-address is the MAC address of the root (bridge) switch.

Viewing show spanning-tree root-history CST output

HP Switch(config)# show spanning-tree root-history cst

 Status and Counters - CST Root Changes History

  MST Instance ID        : 0
  Root Changes Counter   : 2
  Current Root Bridge ID : 32768:000883-024500 1



  Root Bridge ID      Date     Time
  ------------------- -------- --------
  32768:000883-024500 02/09/14 17:40:59
  36864:001279-886300 02/09/14 17:40:22

1

Identifies the root bridge of the common spanning tree in a bridged network that connects different MST regions and STP or RSTP devices.

Viewing show spanning-tree root-history IST output

HP Switch(config)# show spanning-tree root-history ist

 Status and Counters - IST Root Changes History

  MST Instance ID        : 0
  Root Changes Counter   : 2
  Current Root Bridge ID : 32768:000883-024500 1



  Root Bridge ID      Date     Time
  ------------------- -------- --------
  32768:000883-024500 02/09/14 17:40:59
  36864:001279-886300 02/09/14 17:40:22

1

Identifies the root bridge of the internal spanning tree in an MST region.

Viewing show spanning-tree root-history MST output

HP Switch(config)# show spanning-tree root-history mst 2

 Status and Counters - MST Instance Regional Root Changes History

  MST Instance ID        : 2
  Root Changes Counter   : 2
  Current Root Bridge ID : 32770:000883-024500 1



  Root Bridge ID      Date     Time
  ------------------- -------- --------
  32770:000883-024500 02/09/14 17:40:59
  32770:001279-886300 02/09/14 17:40:22

1

Identifies the root bridge of an MST instance in an MST region.

Enabling traps and Viewing trap configuration

Syntax:

[no] spanning-tree trap{errant-bpdu|loop-guard|new-root|root-guard}

Enables or disables SNMP traps.

Syntax:

show spanning-tree traps

Displays the current spanning tree trap configuration on the switch.

Viewing spanning tree traps in their default configuration

HP Switch#: show spanning-tree traps

 Status and Counters - STP Traps Information

 Trap Name              | Status
 ---------------------- + --------
 errant-bpdu            | Disabled
 new-root               | Disabled
 root-guard             | Disabled
 loop-guard             | Disabled

Viewing debug counters for all MST instances

The show spanning-tree debug-counters command allows you to display the aggregate values of all MSTP debug counters that are maintained on a switch. These aggregate values are a summary of the information collected from all ports and from all spanning tree instances that forward traffic on switch ports.

Use the displayed diagnostic information to globally monitor MSTP operation on a per-switch basis.

Syntax:

show spanning-tree debug-counters

Displays debug counters for MSTP activity on all ports configured for VLANs used in spanning tree instances.

Viewing output for debug counters

The following example shows sample output of the show spanning-tree debug-counters command for all ports.

HP Switch(config)#: show spanning-tree debug-counters

 Status and Counters - MSTP Bridge Common Debug Counters Information

  Counter Name                      Aggregated Value Collected From
  --------------------------------- ---------------- -------------- 
  Invalid BPDUs                     0                CIST
  Errant BPDUs                      170927           CIST 
  MST Config Error BPDUs            0                CIST 
  Looped-back BPDUs                 0                CIST
  Starved BPDUs/MSTI MSGs           0                CIST/MSTIs 
  Exceeded Max Age BPDUs            0                CIST 
  Exceeded Max Hops BPDUs/MSTI MSGs 0                CIST/MSTIs 
  Topology Changes Detected         2                CIST/MSTIs
  Topology Changes Tx               6                CIST/MSTIs 
  Topology Changes Rx               4                CIST/MSTIs 
  Topology Change ACKs Tx           0                CIST 
  Topology Change ACKs Rx           0                CIST
  TCN BPDUs Tx                      0                CIST
  TCN BPDUs Rx                      0                CIST 
  CFG BPDUs Tx                      0                CIST 
  CFG BPDUs Rx                      0                CIST 
  RST BPDUs Tx                      0                CIST 
  RST BPDUs Rx                      0                CIST
  MST BPDUs/MSTI MSGs Tx            10               CIST/MSTIs
  MST BPDUs/MSTI MSGs Rx            341802           CIST/MSTIs

Viewing debug counters for one MST instance

The show spanning-tree debug-counters instance command allows you to display the aggregate values of all MSTP debug counters maintained on a switch for a specified spanning tree instance. These aggregate values are a summary of information collected from all ports that have VLANs assigned to the specified instance.

Use this command to troubleshoot the global MSTP diagnostic information displayed in show spanning-tree debug-counters command output when you suspect unauthorized MSTP activity in a specific MST instance.

Syntax:

show spanning-tree debug-counters instance instance-id

Displays debug counters for MSTP activity on all ports configured for VLANs in the specified MST instance.

The valid values for instance instance-id are 0 to 16, where 0 specifies the default MST (CIST) instance and 1 to 16 specify a multiple spanning tree (MST) instance.

Viewing bug counters for a CIST instance

The following example shows sample output of the show spanning-tree debug-counters instance command when applied to the Common and Internal Spanning Tree (CIST) instance (default MST instance 0) in the network.

HP Switch(config)#: show spanning-tree debug-counters instance 0

 Status and Counters - CIST Common Debug Counters Information

  MST Instance ID : 0

  Counter Name                      Aggregated Value Collected From
  --------------------------------- ---------------- -------------- 
  Invalid BPDUs                     0                Ports
  Errant BPDUs                      172603           Ports
  MST Config Error BPDUs            0                Ports 
  Looped-back BPDUs                 0                Ports 
  Starved BPDUs                     0                Ports 
  Exceeded Max Age BPDUs            0                Ports 
  Exceeded Max Hops BPDUs           0                Ports 
  Topology Changes Detected         1                Ports 
  Topology Changes Tx               3                Ports 
  Topology Changes Rx               2                Ports 
  Topology Change ACKs Tx           0                Ports 
  Topology Change ACKs Rx           0                Ports 
  TCN BPDUs Tx                      0                Ports 
  TCN BPDUs Rx                      0                Ports 
  CFG BPDUs Tx                      0                Ports 
  CFG BPDUs Rx                      0                Ports 
  RST BPDUs Tx                      0                Ports 
  RST BPDUs Rx                      0                Ports 
  MST BPDUs Tx                      5                Ports 
  MST BPDUs Rx                      172577           Ports

Viewing debug counters for ports in an MST instance

The show spanning-tree debug-counters instance ports command displays the aggregate values of all MSTP debug counters maintained on one or more ports used by a specified spanning tree instance. These aggregate values are a summary of information collected from the specified ports that have VLANs assigned to the specified instance.

Use this command to troubleshoot at a finer level the more general MSTP diagnostic information displayed in the show spanning-tree debug-counters instance command output, when you suspect unauthorized MSTP activity on one or more MST ports in an MST instance.

Syntax:

show spanning-tree debug-counters instance instance-id ports port-list

Displays debug counters for MSTP activity on the specified ports configured for VLANs in the specified MST instance.

instance instance-id

The valid values for instance-id are from 0 to 16, where 0 specifies the default MST (CIST) instance and 1 to 16 specify an MST instance.

ports port-list

Specifies one or more MST ports or trunk ports. In the port list, enter a series of ports by separating the first and last ports in the series with a dash (-); for example, a2-a8 or trk1-trk3. Separate individual ports and series of ports with a comma; for example, a2-a8, a20, trk1, trk4-trk5.

Viewing debug counters for a CIST and MST instance

The following example shows sample output of the show spanning-tree debug-counters instance ports command for both the CIST (default MST instance 0) and an MST instance (instance 2) on port A15.

HP Switch(config)#: show spanning-tree debug-counters instance 0 ports a15

 Status and Counters - CIST Port(s) Debug Counters Information

  MST Instance ID : 0
  Port : A15

  Counter Name                Value      Last Updated
  --------------------------- ---------- ----------------- 
  Invalid BPDUs               0
  Errant BPDUs                0
  MST Config Error BPDUs      0
  Looped-back BPDUs           0
  Starved BPDUs               0
  Exceeded Max Age BPDUs      0
  Exceeded Max Hops BPDUs     0
  Topology Changes Detected   1         02/09/07 17:40:59
  Topology Changes Tx         3         02/09/07 17:41:03
  Topology Changes Rx         2         02/09/07 17:41:01
  Topology Change ACKs Tx     0
  Topology Change ACKs Rx     0
  TCN BPDUs Tx                0
  TCN BPDUs Rx                0
  CFG BPDUs Tx                0
  CFG BPDUs Rx                0
  RST BPDUs Tx                0
  RST BPDUs Rx                0
  MST BPDUs Tx                5         02/09/07 17:41:03
  MST BPDUs Rx                173540    02/13/07 18:05:34

Viewing debug counters output for one port in an MST instance

The following example shows spanning tree debug-counters instance ports command output for one port in an MST instance.

HP Switch(config)#: show spanning-tree debug-counters instance 2 ports a15

 Status and Counters - MSTI Port(s) Debug Counters Information

   MST Instance ID : 2
   Port : A15

   Counter Name                Value      Last Updated
   --------------------------- ---------- ----------------- 
   Starved MSTI MSGs           0
   Exceeded Max Hops MSTI MSGs 0
   Topology Changes Detected   1          02/09/07 17:40:59
   Topology Changes Tx         3          02/09/07 17:41:03
   Topology Changes Rx         2          02/09/07 17:41:01
   MSTI MSGs Tx                5          02/09/07 17:41:03
   MSTI MSGs Rx                173489     02/13/07 18:03:52

Field descriptions in MSTP debug command output

The following table contains descriptions of the debugging information displayed in the output of show spanning-tree debug-counters commands.

MSTP debug command output: field descriptions

Field Displays the number of...
Invalid BPDUs Received BPDUs that failed standard MSTP (802.1Q-REV/D5.0 14.4) validation checks and were dropped. This counter is maintained by the CIST (default MST instance 0) on a per-port basis.
Errant BPDUs Received BPDUs that were dropped on a port that is configured to not expect BPDU packets. This counter is maintained by the CIST (MST instance, 0default MST instance 0 in the network) on a per-port basis and is incremented each time a BPDU packet is received on a port configured with the BPDU filter to ignore incoming BPDU packets (spanning-tree bpdu-filter command) or the BPDU protection feature to disable the port when BPDU packets are received (spanning-tree bpdu-protection command).
MST Config Error BPDUs

BPDUs received from a neighbor bridge with inconsistent MST configuration information. For example, BPDUs from a transmitting bridge may contain the same MST configuration identifiers (region name and revision number) and format selector as the receiving bridge, but the value of the Configuration Digest field (VLAN ID assignments to regional IST and MST instances) is different. This difference indicates a probable configuration error in MST region settings on the communicating bridges. The received BPDU is still processed by MSTP.

This counter is maintained by the CIST (default MST instance 0) on a per-port basis.

Looped-back BPDUs

Times a port has received self-sent BPDU packets as the result of an external loop condition in which the BPDUs were looped back to the originating transmission port. The received BPDU is still processed by MSTP and the port changes to a blocked state.

This counter is maintained by the CIST (default MST instance 0) on a per-port basis.

Starved BPDUs

Times that no BPDUs are received within the scheduled interval (three times the Hello Time value configured with the spanning-tree hello-time command) from a downstream CIST-designated peer port on the CIST root, alternate, or backup port. As a result, the "starved" port triggers a spanning tree topology regeneration.

This counter is maintained by the CIST (default MST instance 0) on a per-port basis.

Starved MSTI MSGs

Times that no BPDUs are received within the scheduled interval (three times the Hello Time value configured with the spanning-tree hello-time command) from a downstream MSTI-designated peer port on the MSTI root, alternate, or backup port. As a result, the "starved" port triggers a spanning tree topology regeneration.

This counter is maintained by the CIST (default MST instance 0) on a per-port basis.

Exceeded Max Age BPDUs

Times that a BPDU packet is received from a bridge external to the MST region with a Message Age value greater than the configured value of the Max Age parameter (spanning-tree maximum age command). This may occur if the receiving bridge is located too far from the root bridge (beyond the configured size of the spanning tree domain on the root bridge) or if a BPDU packet with invalid root information is continuously circulating between bridges in a spanning tree domain and needs to be aged out.

This counter is maintained by the CIST (default MST instance 0) on a per-port basis.

Exceeded Max Hops BPDUs

Times that a BPDU packet is received from a bridge internal to the MST region with a CIST Remaining Hops value less than or equal to 1. This may occur if the receiving bridge is located too far from the CIST regional root bridge (beyond the configured size of the MST region on the CIST regional root bridge) or if a BPDU packet with invalid CIST regional root bridge information is continuously circulating between bridges in the MST Region and needs to be aged out.

This counter is maintained by the CIST (default MST instance 0 in the region) on a per-port basis.

Exceeded Max Hops MSTI MSGs Times that an MSTI MSG packet is received from a bridge internal to the MST region with an MSTI Remaining Hops value less than or equal to 1. This may occur if the receiving bridge is located too far from the MSTI regional root bridge (beyond the configured size of the MST region on the MSTI regional root bridge) or if a BPDU packet with invalid MSTI regional root bridge information is continuously circulating between bridges in an MST region and needs to be aged out. This counter is maintained on a per-MSTI per-port basis.
Topology Changes Detected Times that a Topology Change event is detected by the CIST or MSTI port and the port triggers a topology change propagation throughout the network. A Topology Change event occurs when a non-edge port enters forwarding state. This counter is maintained on a per-CIST per-port and on a per-MSTI per-port basis.
Topology Changes Tx

Times that Topology Change information is propagated (sent out) through the port to the rest of the network.

For a CIST port, the counter is the number of times that a CFG, RST or MST BPDU with the TC flag set is transmitted out of the port.

For an MSTI port, the counter is the number of times that a MSTI configuration message with the TC flag set is transmitted out of the port.

This counter is maintained on a per-CIST per-port and on a per-MSTI per-port bases.

Topology Changes Rx

Times that Topology Change information is received from the peer port.

For a CIST port, the counter is the number of times that a CFG, RST or MST BPDU with the TC flag set is received.

For an MSTI port, the counter is the number of times that an MSTI configuration message with the TC flag set is received.

This counter is maintained on a per-CIST per-port and on a per-MSTI per-port basis.

Topology Change ACKs Tx Times that the Topology Change acknowledgement is transmitted through the port (number of CFG, RST or MST BPDUs transmitted with the Topology Change Acknowledge flag set). This counter is maintained by the CIST (default MST instance 0) on a per-port basis.
Topology Change ACKs Rx Times the Topology Change acknowledgement is received on the port (number of CFG, RST or MST BPDUs received with the Topology Change Acknowledge flag set). This counter is maintained by the CIST (default MST instance 0) on a per-port basis.
TCN BPDUs Tx Topology Change Notification BPDUs that are transmitted through the port. This counter is maintained by the CIST (default MST instance 0) on a per-port basis.
TCN BPDUs Rx Topology Change Notification BPDUs that are received on the port. This counter is maintained by the CIST (default MST instance 0) on a per-port basis.
CFG BPDUs Tx 802.1D Configuration BPDUs that are transmitted through the port. This counter is maintained by the CIST (default MST instance 0) on a per-port basis.
CFG BPDUs Rx 802.1D Configuration BPDUs that are received on the port. This counter maintained by the CIST (default MST instance 0) on a per-port basis.
RST BPDUs Tx 802.1w RST BPDUs that are transmitted through the port. This counter is maintained by the CIST (default MST instance 0) on a per-port basis.
RST BPDUs Rx 802.1w RST BPDUs that are received on the port. This counter is maintained by the CIST (default MST instance 0) on a per-port basis.
MST BPDUs Tx 802.1s MST BPDUs that are transmitted through the port. This counter is maintained by the CIST (default MST instance 0) on a per-port basis.
MST BPDUs Rx 802.1s MST BPDUs that are received on the port. This counter is maintained by the CIST (default MST instance 0) on a per-port basis.
MSTI MSGs Tx Times that a configuration message for a specific MSTI was encoded in (802.1s) MST BPDUs that are transmitted through the port. This counter is maintained on a per-MSTI per-port basis.
MSTI MSGs Rx Times that the MSTI detected a configuration message destined to the MSTI in (802.1s) MST BPDUs received on the port. This counter is maintained on a per-MSTI per-port basis.

Troubleshooting MSTP operation

Troubleshooting MSTP operation

Problem Possible cause
Duplicate packets on a VLAN, or packets not arriving on a LAN at all. The allocation of VLANs to MSTIs may not be identical among all switches in a region.
A switch intended to operate in a region does not receive traffic from other switches in the region.

An MSTP switch intended for a particular region may not have the same configuration name or region revision number as the other switches intended for the same region. The MSTP configuration name (spanning-tree config-name command) and MSTP configuration revision number (spanning-tree config-revision command) must be identical on all MSTP switches intended for the same region.

Another possible cause is that the set of VLANs and VLAN ID-to-MSTI mappings (spanning-tree instance vlan command) configured on the switch may not match the set of VLANs and VLAN ID-to-MSTI mappings configured on other switches in the intended region.