Spanning Tree – MST (802.1s)

      1 Comment on Spanning Tree – MST (802.1s)

It should be obvious by now that there are really two types of spanning-tree topologies.  One where all switches run a single spanning-tree instance (common spanning-tree) and one where a switch can run one instance per VLAN (per-VLAN spanning-tree).  MST makes a happy compromise by allowing you to group VLANs together under one spanning-tree instance.  That is, VLANs 10 through 20 can run one instance and VLANs 30 through 40 could run another.  We haven’t really talked much about the per-VLAN configuration but I’m not going to dwell on it since it’s pretty easy to configure (spanning-tree vlan <vlan number> <spanning-tree command>). 

MST groups VLANs together by instance.  An instance is the group of VLANs that will run under that particular spanning-tree.  MST also uses the concept of regions.  A region is group of MST switches that share the same configuration information.  The configuration information that has to match is…

-Configuration Name
-Revision Number
-The VLAN to instance mappings

If some of these items don’t match, the the two switches can’t be in the same region. 

MST can be rather easy to understand, or very very very complicated.  If all of the switches are running MST, it’s pretty easy to get.  If you are matching a MST boundary up to a non-MST boundary, things get complicated and there are a lot of design considerations.  That being said, we are only going to talk about a basic MST configuration in this post.

In this code snippet, we create 5 VLANs, and map them to two different instances on the switch…

Switch2(config)#vlan 10
Switch2(config-vlan)#
name users0
Switch2(config-vlan)#vlan 11
Switch2(config-vlan)#
name users1
Switch2(config-vlan)#vlan 12
Switch2(config-vlan)#name users2
Switch2(config-vlan)#vlan 13
Switch2(config-vlan)#
name users3
Switch2(config-vlan)#
Switch2(config-vlan)#
vlan 20
Switch2(config-vlan)#name prod0
Switch2(config-vlan)#
vlan 21
Switch2(config-vlan)#
name prod1
Switch2(config-vlan)#
Switch2(config-vlan)#
spanning-tree mst config
Switch2(config-mst)#
revision 1
Switch2(config-mst)#
instance 1 vlan 10-13
Switch2(config-mst)#instance 2 vlan 20-21

Switch2(config-mst)#show pending
Pending MST configuration
Name      []
Revision  1     Instances configured 3

Instance  Vlans mapped
——–  ———————————————————————
0         1-9,14-19,22-4094
1         10-13
2         20-21
——————————————————————————-
Switch2(config-mst)#
?
  abort         Exit region configuration mode, aborting changes
  exit          Exit region configuration mode, applying changes
  instance      Map vlans to an MST instance
  name          Set configuration name
  no            Negate a command or set its defaults
  private-vlan  Set private-vlan synchronization
  revision      Set configuration revision number
  show          Display region configurations

Switch2(config-mst)#

About half way down you can see that I issue the ‘show pending’ command.  In MST the changes aren’t applied until you exit the MST configuration mode.  If you don’t want to apply the changes, you can type the abort command to exit without applying. 

You’ll also note that by default all VLANs belong to instance 0.  You can see that I mapped certain VLANs in instance 1 and 2 and the remainder of the VLANs are left in instance 0.  Instance 0 is referred to as the IST or Internal spanning tree or sometimes referred to as MSTI0.  This instance has some special use cases but are too deep for us to cover in this intro post.

I’m hoping I might have more time later to come back to MST but for now I’ll have to leave it at this (I’m on a tight schedule!).

1 thought on “Spanning Tree – MST (802.1s)

Leave a Reply

Your email address will not be published. Required fields are marked *