EX-Series switches support the Multiple Spanning Tree (MST) protocol. The Multiple Spanning Tree Protocol (MSTP) was originally defined in the IEEE 802.1s draft and later incorporated into the IEEE 802.1Q-2003 specification.
MSTP extends the Rapid Spanning Tree Protocol (RSTP) and algorithm to multiple spanning trees. This extension provides both rapid convergence and load balancing in a VLAN environment. All common spanning tree environments (CST) contain CST, which is used to interconnect individual MST regions or MST regions with independent RSTP devices. A single root bridge is elected and tasked with path calculation for the CST.
MSTP connects all switches and LANs with a single common and internal spanning tree (CIST).
This article explains how to configure MST and debug it on EX-Series switches.
EX Switch A and B are connected by two interfaces (ge-0/0/22 & ge-0/0/23 on each EX Switch) with multiple VLANs configured on each switch.
[Edit protocols mstp] user@switchA# show Configuration-name test >>>>> Must Match on participating switches; user-defined configuration name revision-level 1; >>>> Must match on participating switches msti 1 { bridge-priority 4k; vlan 1-10; >>>> Must match on participating switches } msti 2 { bridge-priority 8K; >>>> MSTP instances defined with individual bridge-priority values and VLAN ranges vlan 11-20; } msti 3 bridge-priority 12k; vlan 21-30; }
---------------------------------------------------------------
[Edit protocols mstp] user@switchA# show Configuration-name test >>>>>>>> Must match on participating switches; user-defined configuration name revision-level 1; >>>>>>>> Must match on participating switches msti 1 { bridge-priority 12k; vlan 1-10; >>>>>>>> Must match on participating switches } msti 2 { bridge-priority 4K; >>>>>>>> MSTP instances defined with individual bridge-priority values and VLAN ranges vlan 11-20; } msti 3 bridge-priority 8k; vlan 21-30; }
-----------------------------------------------
user@switchA# run show spanning-tree mstp configuration MSTP information Context identifier : 0 Region name : test Revision : 10 Configuration digest : 0x476c7ee38f56eea4a9bbe3fa9e7b7979 MSTI Member VLANs 0 0,31-4094 1 1-10 2 11-20 3 21-30
[edit protocols mstp] user@SwitchA# run show spanning-tree bridge STP bridge parameters Context ID : 0 Enabled protocol : MSTP STP bridge parameters for CIST Root ID : 32768.00:19:e2:50:94:a0 Root cost : 20000 Root port : ge-0/0/0.0 CIST regional root : 32768.00:19:e2:53:8a:80 CIST internal root cost : 0 Hello time : 2 seconds Maximum age : 20 seconds Forward delay : 15 seconds Hop count : 20 Message age : 1 Number of topology changes : 13 Time since last topology change : 249 seconds Local parameters Bridge ID : 32768.00:19:e2:53:8a:80 Extended system ID : 0 Internal instance ID : 0 STP bridge parameters for MSTI 1 MSTI regional root : 4097.00:19:e2:53:8a:80 Hello time : 2 seconds Maximum age : 20 seconds Forward delay : 15 seconds Local parameters Bridge ID : 4097.00:19:e2:53:8a:80 Extended system ID : 0 Internal instance ID : 1 STP bridge parameters for MSTI 2 MSTI regional root : 32770.00:19:e2:53:8a:80 Hello time : 2 seconds Maximum age : 20 seconds Forward delay : 15 seconds Local parameters Bridge ID : 32770.00:19:e2:53:8a:80 Extended system ID : 0 Internal instance ID : 2 STP bridge parameters for MSTI 3 MSTI regional root : 32771.00:19:e2:53:8a:80 Hello time : 2 seconds Maximum age : 20 seconds Forward delay : 15 seconds Local parameters Bridge ID : 32771.00:19:e2:53:8a:80 Extended system ID : 0 Internal instance ID : 3 user@switchA# run show spanning-tree interface Spanning tree interface parameters for instance 0 Interface Port ID Designated Designated Port State Role port ID bridge ID Cost ge-0/0/0.0 128:513 128:513 32768.0019e25094a0 20000 FWD ROOT ge-0/0/1.0 128:514 128:514 32768.0019e2538a80 20000 FWD DESG ge-0/0/2.0 128:515 128:515 32768.0019e2538a80 20000 FWD DESG ge-0/0/3.0 128:516 128:516 32768.0019e2538a80 20000 FWD DESG ge-0/0/4.0 128:517 128:517 32768.0019e2538a80 20000 BLK DIS ge-0/0/5.0 128:518 128:518 32768.0019e2538a80 20000 BLK DIS ge-0/0/6.0 128:519 128:519 32768.0019e2538a80 20000 BLK DIS ge-0/0/7.0 128:520 128:520 32768.0019e2538a80 20000 BLK DIS ge-0/0/8.0 128:521 128:521 32768.0019e2538a80 20000 BLK DIS ge-0/0/9.0 128:522 128:522 32768.0019e2538a80 20000 BLK DIS ge-0/0/10.0 128:523 128:523 32768.0019e2538a80 20000 BLK DIS ge-0/0/11.0 128:524 128:524 32768.0019e2538a80 20000 BLK DIS ge-0/0/12.0 128:525 128:525 32768.0019e2538a80 20000 BLK DIS ge-0/0/13.0 128:526 128:526 32768.0019e2538a80 20000 BLK DIS ge-0/0/14.0 128:527 128:527 32768.0019e2538a80 20000 BLK DIS ge-0/0/15.0 128:528 128:528 32768.0019e2538a80 20000 BLK DIS ge-0/0/16.0 128:529 128:529 32768.0019e2538a80 20000 BLK DIS ge-0/0/17.0 128:530 128:530 32768.0019e2538a80 20000 BLK DIS ge-0/0/18.0 128:531 128:531 32768.0019e2538a80 20000 BLK DIS ge-0/0/19.0 128:532 128:532 32768.0019e2538a80 20000 BLK DIS ge-0/0/20.0 128:533 128:533 32768.0019e2538a80 20000 BLK DIS ge-0/0/21.0 128:534 128:534 32768.0019e2538a80 20000 BLK DIS ge-0/0/22.0 128:535 128:535 32768.0019e2538a80 20000 FWD DESG ge-0/0/23.0 128:536 128:536 32768.0019e2538a80 20000 FWD DESG Spanning tree interface parameters for instance 1 Interface Port ID Designated Designated Port State Role port ID bridge ID Cost ge-0/0/22.0 128:535 128:535 4097.0019e2538a80 20000 FWD DESG ge-0/0/23.0 128:536 128:536 otherwise 20000 FWD DESG Spanning tree interface parameters for instance 2 Interface Port ID Designated Designated Port State Role port ID bridge ID Cost ge-0/0/22.0 128:535 128:535 32770.0019e2538a80 20000 FWD DESG ge-0/0/23.0 128:536 128:536 32770.0019e2538a80 20000 FWD DESG Spanning tree interface parameters for instance 3 Interface Port ID Designated Designated Port State Role port ID bridge ID Cost ge-0/0/22.0 128:535 128:535 32771.0019e2538a80 20000 FWD DESG ge-0/0/23.0 128:536 128:536 32771.0019e2538a80 20000 FWD DESG
To debug MST activity on an EX switch, enable traceoptions on the MSTP protocol:
[edit protocols mstp] user@switchA# set traceoptions file mstp-debug world-readable [edit protocols mstp] user@switchA# set traceoptions flag ? Possible completions: all Trace all all-failures Trace all failure conditions bpdu Trace BPDU reception and transmission bridge-detection-state-machine Trace bridge detection state machine events Trace events to the protocol state machine port-information-state-machine Trace port information state machine port-migration-state-machine Trace port migration state machine port-receive-state-machine Trace port receive state machine port-role-select-state-machine Trace port role selection state machine port-role-transit-state-machine Trace port role transit state machine port-state-transit-state-machine Trace port state transit state machine port-transmit-state-machine Trace port transmit state machine ppmd Trace state and events for ppmd process state-machine-variables Trace when state machine variables change timers Trace protocol timers topology-change-state-machine Trace topology change state machine
After traceoption is set up, activity can be monitor or viewed by using the following command:
user@switchA# run file show /var/log/mstp-debug OR user@switch!# run monitor start mstp-debug
user@switchA# run file show /var/log/mstp-debug
OR
user@switch!# run monitor start mstp-debug
2020-04-30: Minor changes in Solution section; article still valid and relevant
2026-01-13: Minor, non-technical changes made for search improvement