Sunday, February 23, 2014

Advanced STP: Multiple Spanning-tree protocol & PVST/PVST+

Lessons Learned:

IEEE (802.1s) – is the open standard response to PVST and PVST+
It supports Rapid STP (802.1w)

Note: With RVST – uplinkfast and backbone fast are enabled by default.

Instances are separate from VLANs
-          PVST+ uses one instance per vlan
-          MST use definable instances

MST is highly scalable
-switches with same instances, config revision number, and name form a “region”
-different regions see each other as virtual bridges.

Note: Common STP features are integrated into Rapid STP (uplink fast . backboneFast, portfast, etc)

The Major difference between MST and PVST – is that with PVST There is one instance of STP per every vlan you have.
The issue with PVST is that if there are a number of vlans that are sharing the same physical forwarding path.  You still have
Still need to do a separate root bridge and root port election on a per instance basis.

MST – is generally less overhead than PVST – because you can define which particular vlans map to the MST instances.
With MST – you have a concept known as Intra-region vs inter-region scalability

With Intra-region operability, devices share the same instances of MST. This is the vlan to instance mapping – they share the config rev # and the name. Any switches that share the cfg revision and name will be in the same region.
Any switches that do not share that information will be in different regions. There will a different path selection pre region.

The goal of MST is that between regions – we hide not only the reachability information but the failure information. 
Basically if a link goes down on one region it will not affect the other regions.


MST Path Selection:

Same election process as CST/PVST
-Root bridge
                Lowest bridge ID
(made up of priority / system ID ext / and  MAC Add)
-          Priority will by 32768 by default
-           
Root Port
-lowest cost
-lowest upstream BID
-lowest port ID
Note: with the lowest port ID – this will only be used if there’s multiple connections to the same upstream bridge.

Changing MST root Bridge election:

Manually change BID:
Spanning-tree mst (instance ) priority (lower is better)

Use root bridge macro
-spanning-tree mst (instance) root (primary | secondary)
-sets local priority based on currently root bridge

Verification
Sh spaning-tree mst (instance)
Sh spanning-tree root

Note: you basically are changing the Vlan key word with the MST keyword then vlan # with MST instance number

Before you change anything – you need to verify:
What are the instance numbers
What are the vlans that belong to those instance numbers
What are the cfg numbers and names of the region.

Note: the default instance is always going to be zero.

Configuring MST:
From global mode:

Switch01(config)#spanning-tree mst configuration
(define the instance mappings / name of the region / and cfg revision number – These ALL have to match for he switches to be in the same region.

----------------------------------------------
Note: to find out what features are supported on a specific platform go to:
MST Features – comparison
----------------------------------------------

Set the required parameters:
Switch01(config-mst)#name
Switch01(config-mst)#name MST1
Switch01(config-mst)#rev
Switch01(config-mst)#revision 1

Next we need to configure the instance mappings. What are the vlan the SW and what vlans to map the instance:

Ex:
Switch01(config-mst)#instance 1 vlan 10,20,40,50
Ex:
Switch01(config-mst)#instance 2 vlan 60,70,80

Note: any vlan not explicitly listed will fall back to Instance zero.

Result:
spanning-tree mst configuration
name MST1
revision 1
instance 1 vlan 10, 20, 40, 50
instance 2 vlan 60, 70, 80

to keep the other switches in the same region – basically copy and paste the config into your other switches.
This will stage the configs until you enable MST.

Enable MST:

Once all switches agree on the configuration then you can enable the configuration by enabling the mode.

From Global mode.
Switch01(config)#spanning-tree mode mst

This must be enabled on all switches in the MST domain.

Note: If you have not configured the MST perquisites- you’ll most likely get an error like this:

%SPANTREE-3-PRESTD_NEIGH: pre-standard MST interaction not configured (FastEthernet0/24). Please, configure: 'spanning-tree mst pre-standard' on ports connected to MST pre-standard switches.

MST is backwards compatible with CST and PVST.

To verify the MST config:

Switch01#sh spanning-tree mst 1

##### MST1    vlans mapped:   10,20,40,50
Bridge        address 000c.303b.ba80  priority      32769 (32768 sysid 1)---- local bridge
·         Root          this switch for MST1                                                                          -------Root bridge

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/24           Desg FWD 200000    128.24   P2p Pre-STD-Rx

Notice the cost value – is more granular to accommodate for higher speed interfaces, ex: Gig anf ten gigE.

Note: Rapid STP is automatically enabled when you enable MST. This means ports will transition to either DESg or BLK / ALT.  must faster than CST.

Now – let’s modify the Root bridge. Currently I have Switch one as the root for my MST instance 1. So instead of doing this on a perVLAN – we’re now going to do it on a per instance basis.

=----------------------------
    

Switch-01:
MST1
  Spanning tree enabled protocol mstp
  Root ID    Priority    32769
             Address     000c.303b.ba80
             This bridge is the root
             Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec

  Bridge ID  Priority    32769  (priority 32768 sys-id-ext 1)
             Address     000c.303b.ba80
             Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec

Interface           Role Sts Cost      Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
Fa0/24              Desg FWD 200000    128.24   P2p Pre-STD-Rx


This can be accomplished two way:
The legacy way of: Spanning-tree root primary or on the other switch we can say
#spanning-tree MST 1 priority (lower #)

Switch-02:          
MST01
  Spanning tree enabled protocol mstp
  Root ID    Priority    4097  - I changed the priority to 4096.
             Address     0013.60bb.4980
             This bridge is the root
             Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec

  Bridge ID  Priority    4097   (priority 4096 sys-id-ext 1)
             Address     0013.60bb.4980
             Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/24           Desg FWD 200000    128.24   P2p



There’s no root port – because SW2 is not the root.
Note: All VLAN’s that are not configured in an MST instance – will be put into MST instance 0.
Switch-02#sh spanning-tree root

                                        Root Hello Max Fwd
MST Instance           Root ID          Cost  Time Age Dly  Root Port
---------------- -------------------- ------ ----- --- ---  ----------------
MST00            32768 0003.e347.b900 200000    2   20  15  Fa0/24              
MST01             4097 0013.60bb.4980      0    2   20  15                      
MST02            32770 000c.303b.ba80 200000    2   20  15  Fa0/24  


------------------------------ 

Note: VTP still plays a part in MST. VTP will still advertise the instance of the MST between the neighbors.
VTP Version 3 will advertise the MST instance information if you add and remove a VLAN from the instance. This is in available in release 12.33



Note: The following command shows the instance mappings.

Switch01#sh spanning-tree mst configuration
Name      [MST1]
Revision  1     Instances configured 3

Instance  Vlans mapped
--------  ---------------------------------------------------------------------
0         1-9,11-19,21-39,41-49,51-59,61-69,71-79,81-4094
1         10,20,40,50
2         60,70,80
-------------------------------------------------------------------------------
Switch01#

Note: The vlan brief command – shows all vlans. There could a case where the MST instance does not define all vlans are not defines in an MST config. The vlans not in an instance will all back to the default MST instance 0.

Sh vlan brief –
Switch01#sh vlan brief

VLAN Name                             Status    Ports
---- -------------------------------- --------- -------------------------------
1    default                          active    Fa0/1, Fa0/2, Fa0/3, Fa0/4
                                                Fa0/5, Fa0/6, Fa0/7, Fa0/8
                                                Fa0/9, Fa0/10, Fa0/11, Fa0/12
                                                Fa0/13, Fa0/14, Fa0/15, Fa0/16
                                                Fa0/17, Fa0/18, Fa0/19, Fa0/20
                                                Fa0/21, Fa0/22, Fa0/23, Gi0/1
                                                Gi0/2
10   VLAN0010                         active   
20   VLAN0020                         active   
40   VLAN0040                         active   
50   VLAN0050                         active   
60   VLAN0060                         active   
70   VLAN0070                         active   
80   VLAN0080                         active   
90   VLAN0090                         active   
1002 fddi-default                     act/unsup
1003 token-ring-default               act/unsup
1004 fddinet-default                  act/unsup

1005 trnet-default                    act/unsup

No comments:

Post a Comment