Multiple Spanning Tree Protocol (802.1s) 9408sl Configuration Example
Multiple Spanning Tree Protocol (802.1s) 9408sl Configuration Example
1s)
9408sl Configuration Example
1
MSTP Benefits
Load Balancing
• minimize CPU effort by allowing many VLANs to use same
spanning tree root
to other subnets
March 2006 2
MSTP Benefits:
- load-balancing
- industry-standard
- minimize CPU utilization versus proprietary "per-VLAN" spanning tree (with per-VLAN, 200
VLANs means 200 spanning trees)
- backward-compatible (interoperable) with original 802.1D Spanning Tree Protocol (STP) and
newer 802.1w Rapid Spanning Tree Protocol (RSTP)
2
MSTP Design: Regions
March 2006 3
9408sl syntax:
mstp name <region-name>
mstp revision <region-revision-number>
mstp instance <1-16> vlan <VID or VID range>
5300xl and 4200vl syntax:
span config-name <region-name>
span config-revision <region-revision-number>
span instance <1-16> vlan <VID or VID range>
3
MSTP Example Topology
March 2006 4
4
9408sl
MSTP Configuration
March 2006 5
5
9408sl: MSTP Config Steps
Starting Point: config has "no spanning-tree" at global level
• refers to 802.1D STP, which is indeed not running
• this item stays in the config file (looks odd, but it's correct)
Steps:
1) Configure VLANs, add ports
• vlans 100-105, 200-205 for this example
• all vlans on all links
2) Define the MST Region name
3) Define the MST Region revision number
4) Define the MST Region VLAN-to-instance mapping
5) Define instance priority
• 9408sl is instance 1 root, instance 2 backup root for this example
6) Define instance path-cost as desired
• use path cost to force instance 2 blocking at 9408sl, for this example
7) Define point-to-point links
8) Start MSTP operation
March 2006 6
NOTE: The 9408sl will not allow you to add VLANs to an MST instance unless those VLANs already
exist (with or without ports).
6
9408sl: MSTP Config
...
vlan 100 name vlan100
tagged ethe 3/1 to 3/3
!
vlan 101 name vlan101
port cost 30,000
instance 1 prio = 0, instance 1 prio = 4096,
instance 2 prio = 4096 instance 2 prio = 0
tagged ethe 3/1 to 3/3
!
MST Instance 1 9408sl 5304xl MST Instance 2
ROOT 000cdb-20dc80
3/3 A3
000f20-88fa00 ROOT ...
02.2.01h E.10.20 vlan 204 name vlan204
3/2 3/1 A1 A2
tagged ethe 3/1 to 3/3
closet 1
!
4202vl-48G
0014c2-d54300
vlan 205 name vlan205
9 5
L.10.02 tagged ethe 3/1 to 3/3
!
vlan 1 name DEFAULT-VLAN
!
closet 2
mstp name 100-and-200-vlans
4204vl
A9 001321-142e00 A5
mstp revision 2201
L.10.02 instance 1 mstp instance 1 vlan 100 to 105
parameters mstp instance 1 priority 0
mstp instance 2 vlan 200 to 205
VLANS 100-105 instance 2
mstp instance 2 priority 4096
and 200-205 parameters
mstp instance 2 ethe 3/3 path-cost 30000
exist on all links mstp admin-pt2pt-mac ethe 3/1 to 3/3
mstp start
!
March 2006 7
All the MSTP config parameters appear in one section of the 9408sl config file.
7
9408sl: "show mstp config"
MSTP CONFIGURATION
------------------
Name : 100-and-200-vlans
Revision : 2201
Version : 3 (MSTP mode)
Status : Started
Instance VLANs
-------- ------------------------------------------------------
0 - Instance 0 (zero) is the Internal Spanning Tree (IST).
1 100 to 105 When MSTP is enabled on a switch, the IST is automatically
2 200 to 205 created, and the IST holds all VLANs that are not defined
to be in other instances. This display has an error -
VLAN 1, the "Default_VLAN", exists on the switch, and
holds all untagged ports, so VLAN 1 is actually in the IST.
March 2006 8
Display error here: instance 0 (zero) is the Internal Spanning Tree (IST), which contains all VLANs
that are not moved into another MST instance. VLAN 1 (the Default_VLAN) exists on the switch, so it
should be listed here as a member of instance 0.
8
9408sl: "show mstp" - 1
not true, VLAN 1 is in IST
9408sl#sho mstp
March 2006 9
On the 9408sl, "span" refers to 802.1D STP, "rstp" refers to 802.1w RSTP, and "mstp" refers to
802.1s MSTP. Command "show span" gives no response, because 802.1D is not running, and
"show rstp" also gives no response because 802.1w is not running.
Notice that "show mstp" output begins with instance zero (0), the "Internal Spanning Tree", or IST.
Whenever MSTP is enabled, the switch has an instance 0, which holds all VLANs that are not placed
in other instances. It's easy to forget VLAN 1, the Default_VLAN - but MSTP knows it's there, and
the IST takes care of eliminating loops on VLAN 1.
9
9408sl: "show mstp" - 2
...
MSTP Instance 1 - VLANs: 100 to 105 9408sl is ROOT for instance 1
----------------------------------------------------------------------------
Bridge Max RegionalRoot IntPath Designated Root Root
Identifier Hop Bridge Cost Bridge Port Hop
hex cnt hex hex cnt
0001000cdb20dc80 20 0001000cdb20dc80 0 0001000cdb20dc80 Root 20
MSTP Instance 2 - VLANs: 200 to 205 9408sl is blocking paths for instance 2
----------------------------------------------------------------------------
Bridge Max RegionalRoot IntPath Designated Root Root
Identifier Hop Bridge Cost Bridge Port Hop
hex cnt hex hex cnt
1002000cdb20dc80 20 0002000f2088fa00 30000 0002000f2088fa00 3/3 19
March 2006 10
9408sl is "blocking" (now called "discarding") for instance 2, on the paths to the closets. This is due
to setting the port cost to 30000, to make the preferred path for instance 2 traffic through the closet,
not through the 9408sl.
10
9408sl: "show mstp detail" - 1
9408sl#sho mstp detail
MSTP Instance 0 (CIST) - VLANs: None
----------------------------------------------------------------------------
Bridge: 8000000cdb20dc80 [Priority 32768, SysId 0, Mac 000cdb20dc80]
FwdDelay 15, HelloTime 2, MaxHops 20, TxHoldCount 6
March 2006 11
11
9408sl: "show mstp detail" - 2
...
Port 3/3 - Role: DESIGNATED - State: FORWARDING
PathCost 20000, Priority 128, OperEdge F, OperPt2PtMac T, Boundary F
Designated - Root 8000000cdb20dc80, RegionalRoot 8000000cdb20dc80,
Bridge 8000000cdb20dc80, ExtCost 0, IntCost 0
ActiveTimers - helloWhen 2
MachineState - PRX-RECEIVE, PTX-IDLE, PPM-SENDING_RSTP, PIM-CURRENT
PRT-ACTIVE_PORT, PST-FORWARDING, TCM-ACTIVE
BPDUs - Rcvd MST 587, RST 0, Config 0, TCN 0
Sent MST 585, RST 0, Config 0, TCN 0
...(cont'd)
March 2006 12
12
9408sl: "show mstp detail" - 3
...
MSTP Instance 1 - VLANs: 100 to 105
----------------------------------------------------------------------------
Bridge: 0001000cdb20dc80 [Priority 0, SysId 1, Mac 000cdb20dc80]
March 2006 13
13
9408sl: "show mstp detail" - 4
...
MSTP Instance 2 - VLANs: 200 to 205
----------------------------------------------------------------------------
Bridge: 1002000cdb20dc80 [Priority 4096, SysId 2, Mac 000cdb20dc80]
March 2006 14
14
5300xl
MSTP Configuration
March 2006 15
15
5304xl: MSTP Config Steps
Starting Point: change spanning-tree default protocol to MSTP (instead of
the default RSTP), then reboot
Steps:
1) Configure VLANs, add ports
• vlans 100-105, 200-205 for this example
• all vlans on all links
2) Define the MST Region name
3) Define the MST Region revision number
4) Define the MST Region VLAN-to-instance mapping
5) Define instance priority
• 5304xl is instance 1 backup root, instance 2 root for this example
6) Define instance path-cost as desired
• use path cost to force instance 1 blocking at 5304xl, for this example
7) Define point-to-point links
• 5300xl ports are all "point-to-point" "force-true" by default
8) Enable spanning tree
March 2006 16
NOTE: The 5400xl allows you to configure VLANs in an MST instance even if those VLANs do not
already exist on the switch. However, only the existing VLANs show up in the config file. If you add
VLANs to the switch later, they must be moved into the desired MST instance.
16
5304xl: MSTP Config
...
vlan 1
name "DEFAULT_VLAN"
untagged A1-A4
ip address 10.10.10.53 255.255.255.0
exit
port cost 30,000
instance 1 prio = 0, instance 1 prio = 4096, vlan 100
instance 2 prio = 4096 instance 2 prio = 0
name "vlan100"
MST Instance 1 9408sl 5304xl MST Instance 2 no ip address
ROOT 000cdb-20dc80 000f20-88fa00 ROOT
3/3 A3 tagged A1-A3
02.2.01h E.10.20
3/1 A1 A2
exit
3/2
vlan 101
closet 1
name "vlan101"
4202vl-48G no ip address
0014c2-d54300
9 5
L.10.02
tagged A1-A3
exit
...
vlan 205
closet 2
name "vlan205"
no ip address
4204vl
tagged A1-A3
A9 001321-142e00 A5
L.10.02 exit
spanning-tree
spanning-tree protocol-version MSTP
VLANS 100-105 spanning-tree config-name "100-and-200-vlans"
spanning-tree config-revision 2201
and 200-205 spanning-tree instance 1 vlan 100-105
exist on all links instance 1 spanning-tree instance 1 priority 1
parameters spanning-tree instance 1 A3 path-cost 30000
instance 2 spanning-tree instance 2 vlan 200-205
parameters spanning-tree instance 2 priority 0
March 2006 17
On the 5300xl switches, bridge priority is set as a value between 0 and 15, but the actual priority is
that setting multiplied by 4096. So the config line "priority 1" is actually bridge priority 4096, and
"priority 0" is still bridge priority 0.
17
5304xl: "show span config"
5304xl# sho span config
March 2006 18
18
5304xl: "show span mst-config"
5304xl# sho span mst-config
March 2006 19
19
5304xl: "show span instance ist"
5304xl# sho span inst ist
port cost 30,000
instance 1 prio = 0, instance 1 prio = 4096,
instance 2 prio = 4096 instance 2 prio = 0
IST Instance Information
MST Instance 1 9408sl 5304xl MST Instance 2
ROOT 000cdb-20dc80 000f20-88fa00 ROOT
3/3 A3
Instance ID : 0 VLAN 1 is 02.2.01h E.10.20
closet 1
March 2006 20
On the 5300xl switches, you cannot use the number 0 (zero) for instance 0, you have to use the
keyword "IST".
20
5304xl: "show span instance 1"
5304xl# sho span inst 1
port cost 30,000
instance 1 prio = 0, instance 1 prio = 4096,
instance 2 prio = 4096 instance 2 prio = 0
MST Instance Information
MST Instance 1 9408sl 5304xl MST Instance 2
ROOT 000cdb-20dc80 000f20-88fa00 ROOT
3/3 A3
Instance ID : 1 02.2.01h E.10.20
3/2 3/1 A1 A2
Mapped VLANs : 100-105
closet 1
March 2006 21
Blocking for instance 1 occurs at the 5304xl, due to path cost setting of 30000.
21
5304xl: "show span instance 2"
5304xl# sho span inst 2
port cost 30,000
instance 1 prio = 0, instance 1 prio = 4096,
instance 2 prio = 4096 instance 2 prio = 0
MST Instance Information
MST Instance 1 9408sl 5304xl MST Instance 2
ROOT 000cdb-20dc80 000f20-88fa00 ROOT
3/3 A3
Instance ID : 2 02.2.01h E.10.20
3/2 3/1 A1 A2
Mapped VLANs : 200-205
closet 1
4202vl-48G
5304xl is
Switch Priority : 0 0014c2-d54300 ROOT for
9 5
L.10.02
instance 2
Topology Change Count : 30
Time Since Last Change : 21 mins
closet 2
Regional Root MAC Address : 000f20-88fa00
4204vl
Regional Root Priority : 0 A9 001321-142e00 A5
Regional Root Path Cost : 0 L.10.02
March 2006 22
22
4200vl
MSTP Configuration
March 2006 23
23
4200vl: MSTP Config Steps
Starting Point: default spanning-tree protocol is MSTP, nothing to change
Steps:
1) Configure VLANs, add ports
• vlans 100-105, 200-205 for this example
• all vlans on all links
2) Define the MST Region name
3) Define the MST Region revision number
4) Define the MST Region VLAN-to-instance mapping
5) Define instance priority
• 4200vl "closet" switches use default priority for this example
6) Define instance path-cost as desired
• 4200vl "closet" switches use default path-costs for this example
7) Define endnode ports ("edge ports") for the closet switches
• 4200vl ports are all "edge" "no" by default, change to "yes" as appropriate
8) Enable spanning tree
March 2006 24
NOTE: The 4200vl allows you to configure VLANs in an MST instance even if those VLANs do not
already exist on the switch. However, only the existing VLANs show up in the config file. If you add
VLANs to the switch later, they must be moved into the desired MST instance.
24
4200vl: MSTP Config - Closet 1
...
vlan 1
name "DEFAULT_VLAN"
untagged 1-48
ip address 10.10.10.142 255.255.255.0
exit
vlan 100
name "vlan100"
no ip address
tagged 5,9
exit
vlan 101
name "vlan101"
VLANS 100-105 no ip address
tagged 5,9
and 200-205 exit
exist on all links ...
March 2006 25
On the 4200vl "closet" switches, bridge priority setting is the default value of 8, but the actual priority
is that setting multiplied by 4096 (to give bridge priority of 32768).
25
4200vl: MSTP Config - Closet 1 cont'd
...
vlan 205
name "vlan205" ports 5 and 9
no ip address stay at default,
tagged 5,9 no edge-port
exit
spanning-tree
spanning-tree 1 edge-port
spanning-tree 2 edge-port
spanning-tree 3 edge-port
spanning-tree 4 edge-port
spanning-tree 6 edge-port
spanning-tree 7 edge-port
spanning-tree 8 edge-port
spanning-tree 10 edge-port
spanning-tree 11 edge-port
VLANS 100-105 ...
and 200-205 spanning-tree 47 edge-port
exist on all links spanning-tree 48 edge-port
spanning-tree config-name "100-and-200-vlans"
spanning-tree config-revision 2201
spanning-tree instance 1 vlan 100-105
spanning-tree instance 2 vlan 200-205
March 2006 26
On the 4200vl "closet" switches, default MSTP "edge-port" setting is "no". Because the closet has
only 2 switch-to-switch links, simplest way to get all endnode ports to be edge-ports is with these
commands (for closet 1):
span all edge-port
no span 5,9 edge-port
wri mem
26
4200vl: "show span config" - Closet 1
closet_1# sho span config
March 2006 27
For closet 1, ports 5 and 9 are switch-to-switch links, so edge-port = No. All other ports are expected
to connect to endnodes, so edge-port = Yes for those endnode ports.
On the 4200vl "closet" switches, bridge priority setting is the default value of 8, but the actual priority
is that setting multiplied by 4096 (to give bridge/switch priority of 32768).
27
4200vl: "show span mst-config"
closet_1# sho span mst-conf
March 2006 28
28
4200vl: "show span instance ist"
closet_1# sho span inst ist
Instance ID : 0
Mapped VLANs : 1
Switch Priority : 32768
Topology Change Count : 7
Time Since Last Change : 23 mins
March 2006 29
On the 4200vl switches, you cannot use the number 0 (zero) for instance 0, you have to use the
keyword "IST".
29
4200vl: "show span instance 1"
closet_1# sho span inst 1
Instance ID : 1
Mapped VLANs : 100-105
Switch Priority : 32768 9408sl is
Topology Change Count : 7 ROOT for
Time Since Last Change : 23 mins instance 1
March 2006 30
30
4200vl: "show span instance 2"
closet_1# sho span inst 2
Instance ID : 2
Mapped VLANs : 200-205 5304xl is
Switch Priority : 32768 ROOT for
Topology Change Count : 7 instance 2
Time Since Last Change : 23 mins
March 2006 31
31
March 2006 32
32