En artículos anteriores, hablamos sobre el árbol de expansión clásico (STP) y el rapid spanning three (RSTP). MST (Árbol de Expansión Múltiple) es la tercera variante del árbol de expansión.
Este artículo hablará sobre las características del protocolo de árbol de expansión múltiple (MST), comparándolo con otras versiones del protocolo STP. También se mostrarán las configuraciones básicas del protocolo y algunas sutilezas de su implementación.
Por defecto, los switches Cisco Catalyst utilizan PVST+ o Rapid PVST+ (Per VLAN Spanning Tree). Esto significa que cada VLAN se asocia con una instancia de árbol de expansión. Si tienes 20 redes VLAN en tu switch, esto significa que tendrás 20 instancias de árbol de expansión.
¿Es esto un problema? Lo veremos más adelante… por ahora, veamos un ejemplo:
Árbol de Expansión Múltiple = Multiple Spanning Tree (MST)

Fíjate en esta topología. Hay tres switches y varias redes VLAN. En total hay 201 VLAN. Si usas PVST o Rapid PVST, tendrás 201 cálculos para cada VLAN. Esto requiere tiempo de CPU y mucha memoria.
Cuando SWB es el puente raíz para las VLAN 100-200 y SWC para las VLAN 201-300, las topologías de spanning-tree se verán así:

El switch B es el puente raíz para las VLAN 100 a la VLAN 200. Esto significa que la interfaz fa0/17 en switch A o la interfaz fa0/14 en switch C se bloqueará. Habrá 100 cálculos de árbol de expansión, pero todos se verán iguales para estas VLAN…
Lo mismo aplica para las VLAN 201-300. SW3 es el puente raíz para las VLAN 201 a 300. La interfaz fa0/14 en SWA o SWB se bloqueará para todas estas VLAN.
Dos resultados diferentes, pero todavía tengo 201 instancias diferentes de árbol de expansión. ¿No es una pérdida de recursos de CPU y memoria?
MST (Multiple Spanning Tree), descrito en el estándar IEEE 802.1s, resolverá este problema. En lugar de calcular el árbol de expansión para cada VLAN, puedes usar instancias (instances
) y asignar las VLAN a cada instancia. Para la red anterior, puedes hacer algo como esto:
- instance 1: VLAN 100-200
- instance 2: VLAN 201-300
De esta forma, solo necesitas dos cálculos de árbol de expansión (instancias) para todas estas redes VLAN.
MST funciona con el concepto de regiones. Los switches configurados para usar MST deben averiguar si sus vecinos también utilizan MST.

Cuando los switches tienen los mismos atributos, estarán en la misma región. Pero también es posible que haya una o varias regiones. Estos son los atributos que deben coincidir en las regiones vecinas:
- Nombre de configuración MST.
- Número de versión de configuración MST.
- Instancia MST para la tabla de asignación de VLAN.
Cuando los switches tienen los mismos atributos, estarán en la misma región. Si los atributos no coinciden, el switch se considera que está en el límite de la región. Puede estar conectado a otra región MST, pero también se comunicará con el switch que ejecuta otra versión de STP.
El nombre de configuración MST es el atributo que puedes especificar para usarlo en la identificación de la región MST. También debes configurar el número de revisión de configuración MST, y la idea de este número es que puedes cambiarlo al cambiar la configuración.
Dentro de la región MST habrá una instancia de árbol de expansión, que creará una topología libre de bucles en la región. Al configurar MST, siempre existe una instancia predeterminada que se utiliza para calcular la topología en la región. Se llama IST (Internal Spanning Tree). Por defecto, Cisco usará la instance 0
para ejecutar IST. En realidad, esto es un rapid spanning tree que se ejecuta en MST.

Quiero crear la instancia 1 para las VLAN 100-200 y la instancia 2 para las VLAN 201-300. Dependiendo de qué switch se convierta en el puente raíz para cada instancia, diferentes puertos se bloquearán. Se verá así:

Un switch fuera de la región MST no ve cómo se ve la región MST. Para este switch, es como comunicarse con un switch grande o una “caja negra”:

Juguemos un poco con la configuración.
Configuración MST
Usaremos la siguiente topología:

Empezaremos con una región MST con los siguientes atributos:
- Nombre de configuración MST: “REGION-1“
- Número de versión de configuración MST: 1
- Instancia MST para la tabla de asignación de VLAN:
- Instancia 2: VLAN 10, 20 y 30.
- Instancia 3: VLAN 40, 50 y 60.
Estos son los primeros pasos:
SW1(config)#spanning-tree mode mst
SW2(config)#spanning-tree mode mst
SW3(config)#spanning-tree mode mst
Así se activa MST en los switches. Veamos la instancia MST predeterminada:
SW1#show spanning-tree mst configuration
Name []
Revision 0 Instances configured 1
Instance Vlans mapped
-------- ---------------------------------------------------------------------
0 1-4094
-------------------------------------------------------------------------------
SW2#show spanning-tree mst configuration
Name []
Revision 0 Instances configured 1
Instance Vlans mapped
-------- ---------------------------------------------------------------------
0 1-4094
-------------------------------------------------------------------------------
SW3#show spanning-tree mst configuration
Name []
Revision 0 Instances configured 1
Instance Vlans mapped
-------- ---------------------------------------------------------------------
0 1-4094
-------------------------------------------------------------------------------
Puedes usar el comando show spanning-tree mst configuration
para ver las instancias MST. No se han creado instancias adicionales, por lo que solo está disponible la instancia 0. Puedes ver que todas las VLAN están actualmente asignadas a la instancia 0. Veamos qué más podemos ver:
SW1#show spanning-tree mst
##### MST0 vlans mapped: 1-4094
Bridge address 0011.bb0b.3600 priority 32768 (32768 sysid 0)
Root address 000f.34ca.1000 priority 32768 (32768 sysid 0)
port Fa0/17 path cost 0
Regional Root address 000f.34ca.1000 priority 32768 (32768 sysid 0)
internal cost 200000 rem hops 19
Operational hello time 2 , forward delay 15, max age 20, txholdcount 6
Configured hello time 2 , forward delay 15, max age 20, max hops 20
Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/14 Desg FWD 200000 128.16 P2p
Fa0/17 Root FWD 200000 128.19 P2p
También puedes usar el comando show spanning-tree mst
. Aquí verás el mapeo de VLAN, así como información sobre el puente raíz. Antes de agregar instancias adicionales, deberás agregar algunas VLAN y configurar las conexiones entre los switches como trunks:
SW1(config)#interface fa0/14
SW1(config-if)#switchport trunk encapsulation dot1q
SW1(config-if)#switchport mode trunk
SW1(config)#interface fa0/17
SW1(config-if)#switchport trunk encapsulation dot1q
SW1(config-if)#switchport mode trunk
SW2(config)#interface fa0/14
SW2(config-if)#switchport trunk encapsulation dot1q
SW2(config-if)#switchport mode trunk
SW2(config)#interface fa0/16
SW2(config-if)#switchport trunk encapsulation dot1q
SW2(config-if)#switchport mode trunk
SW3(config)#interface fa0/14
SW3(config-if)#switchport trunk encapsulation dot1q
SW3(config-if)#switchport mode trunk
SW3(config)#interface fa0/16
SW3(config-if)#switchport trunk encapsulation dot1q
SW3(config-if)#switchport mode trunk
Ahora configuremos las VLAN:
SW1, SW2 & SW3:
(config)#vlan 10
(config-vlan)#vlan 20
(config-vlan)#vlan 30
(config-vlan)#vlan 40
(config-vlan)#vlan 50
(config-vlan)#vlan 60
(config-vlan)#exit
Ahora podemos configurar MST y las instancias:
SW1(config)#spanning-tree mst configuration
SW1(config-mst)#name Networklessons
SW1(config-mst)#revision 1
SW1(config-mst)#instance 2 vlan 10,20,30
SW1(config-mst)#instance 3 vlan 40,50,60
SW1(config-mst)#exit
SW2(config)#spanning-tree mst configuration
SW2(config-mst)#name Networklessons
SW2(config-mst)#revision 1
SW2(config-mst)#instance 2 vlan 10,20,30
SW2(config-mst)#instance 3 vlan 40,50,60
SW2(config-mst)#exit
SW3(config)#spanning-tree mst configuration
SW3(config-mst)#name Networklessons
SW3(config-mst)#revision 1
SW3(config-mst)#instance 2 vlan 10,20,30
SW3(config-mst)#instance 3 vlan 40,50,60
SW3(config-mst)#exit
Así se configura MST. Primero necesitarás el comando de configuración spanning-tree mst
para ingresar a la configuración MST. Establece el nombre usando el comando name
. No olvides establecer el número de revisión y asignar las instancias usando el comando instance
. Veamos cómo funciona:
SW1#show spanning-tree mst configuration
Name [Networklessons]
Revision 1 Instances configured 3
Instance Vlans mapped
-------- ---------------------------------------------------------------------
0 1-9,11-19,21-29,31-39,41-49,51-59,61-4094
2 10,20,30
3 40,50,60
-------------------------------------------------------------------------------
Usa el comando show spanning-tree mst configuration
para verificar la configuración. Puedes ver que hay dos instancias. Las VLAN se asignan a las instancias 2 y 3. Todas las demás VLAN todavía se asignan a la instancia 0.
Hasta ahora, todo bien. Experimentemos un poco más con MST y cambiemos el puente raíz:

Quiero asegurarme de que SW1 sea el puente raíz en la región. Necesitaremos cambiar la prioridad para IST:
SW1(config)#spanning-tree mst 0 priority 4096
Así se cambia la prioridad para la instancia MST 0.
SW1#show spanning-tree mst
##### MST0 vlans mapped: 1-9,11-19,21-29,31-39,41-49,51-59,61-4094
Bridge address 0011.bb0b.3600 priority 4096 (4096 sysid 0)
Root this switch for the CIST
Aquí puedes ver que SW1 es el puente raíz para IST. Se menciona CIST, que significa Common and Internal Spanning Treee.
Veamos las interfaces:
SW1#show spanning-tree mst 0 | begin Interface
Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/14 Desg FWD 200000 128.16 P2p
Fa0/17 Desg FWD 200000 128.19 P2p
SW2#show spanning-tree mst 0 | begin Interface
Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/14 Root FWD 200000 128.16 P2p
Fa0/16 Altn BLK 200000 128.18 P2p
SW3#show spanning-tree mst 0 | begin Interface
Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/14 Root FWD 200000 128.14 P2p
Fa0/16 Desg FWD 200000 128.16 P2p
Ahora sabemos el estado de todas las interfaces. Dibujemos un diagrama para entender cómo se ve IST:

Ahora quiero hacer algunos cambios en la instancia 2, por lo que SW2 será el puente raíz:
SW2(config)#spanning-tree mst 2 priority 4096
Cambiamos la prioridad en SW2 para la instancia 2.
SW2#show spanning-tree mst 2
MST2 vlans mapped: 10,20,30
Bridge address 0019.569d.5700 priority 4098 (4096 sysid 2)
Root this switch for MST2
Este comando demuestra que SW2 es el puente raíz para la instancia 2. Veamos las interfaces:
SW1#show spanning-tree mst 2 | begin Interface
Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/14 Root FWD 200000 128.16 P2p
Fa0/17 Altn BLK 200000 128.19 P2p
SW2#show spanning-tree mst 2 | begin Interface
Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/14 Desg FWD 200000 128.16 P2p
Fa0/16 Desg FWD 200000 128.18 P2p
SW3#show spanning-tree mst 2 | begin Interface
Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/14 Desg FWD 200000 128.14 P2p
Fa0/16 Root FWD 200000 128.16 P2p
Así se ve la instancia 2. Hagamos un diagrama para visualizarla:

Esta es la imagen de la instancia 2 que muestra los roles de los puertos. Observa que esta topología es diferente a la de la instancia 0.
Por último, pero no menos importante, voy a hacer algunos cambios en la instancia 3:
SW3(config)#spanning-tree mst 3 priority 4096
SW3 se convertirá en el puente raíz para la instancia 3.
SW3#show spanning-tree mst 3
MST3 vlans mapped: 40,50,60
Bridge address 000f.34ca.1000 priority 4099 (4096 sysid 3)
Root this switch for MST3
SW3 ahora es el puente raíz para la instancia 3. Veamos las interfaces:
SW1#show spanning-tree mst 3 | begin Interface
Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/14 Desg FWD 200000 128.16 P2p
Fa0/17 Root FWD 200000 128.19 P2p
SW2#show spanning-tree mst 3 | begin Interface
Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/14 Altn BLK 200000 128.16 P2p
Fa0/16 Root FWD 200000 128.18 P2p
SW3#show spanning-tree mst 3 | begin Interface
Interface Role Sts Cost Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/14 Desg FWD 200000 128.14 P2p
Fa0/16 Desg FWD 200000 128.16 P2p
Ahora podemos crear otro diagrama de la topología:

Comparemos las instancias 2 y 3 una al lado de la otra:

A la izquierda puedes ver la instancia 2, y a la derecha, la instancia 3.
Al cambiar la instancia del puente raíz, obtenemos diferentes topologías:
- Instancia 2: fa0/17 en SW1 está bloqueado para las VLAN 10, 20 y 30.
- Instancia 3: fa0/14 en SW2 está bloqueado para las VLAN 40, 50 y 60.
¿Qué pasará cuando agregue otro switch que funciona con PVST a la topología? ¡Averigüémoslo!
SW4(config)#spanning-tree mode pvst
PVST se usa de manera predeterminada para la mayoría de los switches Cisco.
SW4(config)#interface fa0/16
SW4(config-if)#switchport trunk encapsulation dot1q
SW4(config-if)#switchport mode trunk
SW4(config)#interface fa0/19
SW4(config-if)#switchport trunk encapsulation dot1q
SW4(config-if)#switchport mode trunk
SW4(config)#vlan 10
SW4(config-vlan)#vlan 20
SW4(config-vlan)#vlan 30
SW4(config-vlan)#vlan 40
SW4(config-vlan)#vlan 50
SW4(config-vlan)#vlan 60
SW4(config-vlan)#exit
Quiero asegurarme de que tengamos un trunk para SW2 y SW3, y que SW4 conozca todas las VLAN. Veamos qué piensa SW4 sobre todo esto:
SW4#show spanning-tree vlan 1
VLAN0001
Spanning tree enabled protocol ieee
Root ID Priority 4096
Address 0011.bb0b.3600
Cost 19
Port 19 (FastEthernet0/19)
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 32769 (priority 32768 sys-id-ext 1)
Address 0009.7c36.2880
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 300
Interface Role Sts Cost Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
Fa0/16 Altn BLK 19 128.16 P2p
Fa0/19 Root FWD 19 128.19 P2p
Esto es lo que SW4 ve en la red VLAN 1. Recuerda que esta VLAN estaba asignada a la instancia 0. Ve a SW1 como el puente raíz, y puedes ver qué puerto está en modo de reenvío y bloqueo.
SW4#show spanning-tree vlan 10
VLAN0010
Spanning tree enabled protocol ieee
Root ID Priority 4096
Address 0011.bb0b.3600
Cost 19
Port 19 (FastEthernet0/19)
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 32778 (priority 32768 sys-id-ext 10)
Address 0009.7c36.2880
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 300
Interface Role Sts Cost Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
Fa0/16 Altn BLK 19 128.16 P2p
Fa0/19 Root FWD 19 128.19 P2p
VLAN 10 está asignada a la instancia 2. SW4 considera a SW1 como el puente raíz para esta VLAN, aunque hemos configurado SW2 como el puente raíz para la instancia 2. Esto es completamente normal, ya que MST enviará BPDU de IST al mundo exterior. No veremos ninguna información de la instancia 2 o la instancia 3 en SW4.
SW4#show spanning-tree vlan 40
VLAN0040
Spanning tree enabled protocol ieee
Root ID Priority 4096
Address 0011.bb0b.3600
Cost 19
Port 19 (FastEthernet0/19)
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 32808 (priority 32768 sys-id-ext 40)
Address 0009.7c36.2880
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 300
Interface Role Sts Cost Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
Fa0/16 Altn BLK 19 128.16 P2p
Fa0/19 Root FWD 19 128.19 P2p
VLAN 40 está asignada a la instancia 3, pero puedes ver que SW4 ve a SW1 como el puente raíz. SW4 recibe el mismo BPDU para todas las redes VLAN.
Espero que este artículo te haya sido útil y hayas aprendido mucho.
¡Gracias por tomarte el tiempo para leerlo!
Si tienes alguna pregunta, hazla en los comentarios.