Contenido

Introducción

Prerequisites

Requirements

Componentes Utilizados

Antecedentes

Terminology

Restricciones

Troubleshoot

MST (única región)

Topología

Configuración

Validación

Sincronización entre regiones

Topología

Validación

Depuraciones

Error de simulación de PVST

BPDU PVST frente a BPDU MST

Topología

Validación

Depuraciones

Disputa P2P

Topología

Explicación

Enfoques MST

Información Relacionada

Introducción

Este documento describe los conceptos básicos necesarios para entender cómo funciona MST en una topología con PVST u otras regiones.

Prerequisites

Requirements

Cisco recomienda que tenga conocimiento sobre estos temas:

- Rapid-PVST (árbol de extensión rápido por VLAN)

Componentes Utilizados

La información que contiene este documento se basa en las siguientes versiones de software y hardware.

- Catalyst 9300.

- A partir de 17.3 tren.

La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.

Productos Relacionados

Este documento también se puede utilizar con estos equipos:

- Toda la familia Catalyst 9000.

Antecedentes

Terminology

Antes de iniciar y aplicar cualquier tipo de solución de problemas, tenga en cuenta esta terminología:

Concepto

Descripción

Instancia STP

Una instancia es una sesión que se ejecuta en la CPU:

En PVST, una VLAN es una instancia en.

En MST, una instancia es un grupo de VLAN. Este documento utilizaría el término instancia en función de este significado.

IST

IST (árbol de expansión interno) también se conoce como instancia 0 o MSTI0:

- Este es un caso especial.

- MSTI 0 se utiliza para crear una topología libre de loop único en todo el dominio L2.

- Cuando MST se comunica con otras regiones o switches que ejecutan otras versiones de spanning tree, se utilizan los parámetros de IST o MSTI0 para comunicarse.

- MSTI 0 es la única BPDU y la raíz elegida por el switch de MSTI 0 es responsable de ser la raíz de todas las regiones o de transportar información sobre las raíces regionales dentro de una región MST

El IST es la única instancia del spanning tree que envía y recibe las BPDU. El resto de la información de la instancia del spanning tree está contenida en los registros M, que se encapsulan dentro de las BPDU de MSTP. Porque la BPDU MSTP transporta información para todas las instancias. Esta es la única instancia que tiene parámetros relacionados con el temporizador.Cuando MST se comunica con otras regiones y versiones de spanning tree, los valores de IST o MSTI0 son los que se utilizan para comunicarse.

MSTI

MSTIs significa instancias de árbol de expansión múltiple. De 1 a 15

La implementación de Cisco admite 16 instancias: una IST (instancia 0) y 15 MSTI.

Región

Un grupo de switches que ejecutan MST. Todos ellos tienen la misma configuración MST.

CIST y CST

- El árbol de expansión común interconecta las regiones MST y los árboles de expansión únicos.

- Un Spanning Tree Común e Interno es una colección de los IST en cada región de MST y Spanning Tree Común.

Raíz regional

Este es el proceso de elección para cada instancia en una región con la excepción de la instancia 0.

Es posible tener una raíz diferente en una región de spanning tree para cada instancia si es necesario.

Esto se hace si se considera la información en la IST BPDU que tiene la información requerida para realizar una elección normal de spanning tree.

El puente raíz CIST se denominó maestro IST en la implementación previa al estándar. Si el puente raíz CIST está en la región, la raíz regional es el puente raíz CIST.

De lo contrario, la raíz regional es el switch más cercano a la raíz CIST en la región. La raíz regional actúa como un puente raíz para el IST.

M-Record

Dado que hay solamente una BPDU y que la BPDU refleja la información requerida para converger la instancia 0, se necesita otro mecanismo para formar raíces para otras instancias.

Esto se llama M-Record. Dentro de cada registro M se encuentra toda la información del árbol de expansión para una instancia individual.

Esta información se transporta con los TLV en la IST BPDU.

Disputa

El mecanismo Dispute es un mecanismo incorporado de detección de link unidireccional. Esto no está disponible en la versión original de 802.1d (RSTP se integró realmente en el estándar 802.1d en 2004) o PVST.

El mecanismo de disputa se dispara al recibir una BPDU inferior que tiene un estado designado y está en un estado de aprendizaje y reenvío.

Esto indica un link unidireccional y, para evitar loops, el puerto que recibe bloquea el link.

Propuesta/Acuerdo

Este mecanismo de acuerdo de propuesta es uno de los cambios más importantes a RSTP.

Esto es lo que permite que el spanning tree rápido sea realmente rápido.

Una explicación simplificada del proceso de acuerdo de propuesta es que cuando aparecen 2 vecinos, ambos comienzan con su transmisión BPDU con un bit de propuesta.

Una vez que una de las transiciones de peer a agreement (declara que el vecino es aceptado como la trayectoria superior a la raíz), los links pasan inmediatamente a un estado de reenvío.

Comience con ambos puertos que envían BPDU. Afirman ser la raíz con designada y propuesta de conjunto de bits.

Cuando el switch inferior reconoce que este puerto no es un puente raíz y que tiene la mejor trayectoria a la raíz, ya no tiene el bit de propuesta configurado y transiciones al estado raíz y al reenvío.

Segmentos compartidos

RSTP / MST puso un link semidúplex en un estado "compartido". Esto significa que el proceso de acuerdo de propuesta no se lleva a cabo.

Dado que la secuencia está diseñada para activar rápidamente los links P2P, una transición prematura a un estado de reenvío podría provocar un loop. Esto se puede ver en los comandos show para el árbol de expansión

Puede introducir spanning-tree link-type point-to-point en la interfaz para forzar que esté en estado P2P; utilícelo con cuidado.

Varias regiones

·Se determinan varias regiones cuando las configuraciones MST no coinciden.

·El CIST se elige entre regiones a través de la MSTI0 BPDU

·Varias regiones aparecen como un switch lógico por región a otros dispositivos.

Puerto delimitador

Estos puertos se encuentran en los límites de la región; normalmente, en estos puertos se reciben BPDU que no son de MST, por lo que MST no es posible en este puerto.

La simulación de PVST es la forma en que MST y PVST pueden trabajar en la misma red.

Simulación PVST

En ciertos escenarios, como migraciones o cambios en la topología de una red, se encuentra más de un sabor STP junto y una región MST está conectada a otro dominio.

Por ejemplo, una red que cambia de PVST+ a MST y todos los switches no se pueden modificar al mismo tiempo. También, hay una necesidad de trabajar con MST y PVST+ juntos.

Dado que PVST+ no puede procesar las BPUS MST, existe un mecanismo de compatibilidad entre ellas, por lo que ambos protocolos pueden interactuar. Este mecanismo de compatibilidad se denomina simulación PVST.

Error de simulación de PVST

Si no se cumplen las reglas establecidas en la simulación PVST

Restricciones

- PVST+, Rapid PVST+ y MSTP son compatibles, pero solo una versión puede estar activa en cualquier momento. (Por ejemplo, todas las VLAN ejecutan PVST+, todas las VLAN ejecutan Rapid PVST+ o todas las VLAN ejecutan MSTP).

- No se admite la propagación de VLAN Trunking Protocol (VTP) de la configuración MST.

Troubleshoot

El objetivo es que la región de MST se comporte como un puente CST virtual, desde la perspectiva de fuera de la región.

Otros switches, ya sea en una región diferente o en un dominio PVST, ven la región MST como un solo switch porque el costo de RootID y Root Path no se modifican.

MST (única región)

Topología

Configuración

Estos tres atributos deben configurarse de la misma manera en todos los switches bajo una región MST para que converjan correctamente. Los comandos se aplican en el modo de configuración MST.

- Nombre

- Número de revisión

- Asignación de VLAN a instancia

spanning-tree mst configuration

name <region name>

revision <number>

instance <number> vlan <vlan number>

Valide la configuración de atributos con este comando:

show running-config | section span

Ejemplo: configuración de atributos para los switches 1, 2 y 3 en la región 1

R1-SW1

R1-SW1#show running-config | section spann

spanning-tree mode mst

spanning-tree extend system-id

spanning-tree mst configuration

name R1               <---

revision 1            <---

instance 1 vlan 3-4   <---

R1-SW2

R1-SW2#show running-config | section spann

spanning-tree mode mst

spanning-tree extend system-id

spanning-tree mst configuration

name R1

revision 1

instance 1 vlan 3-4

R1-SW3

R1-SW3#show running-config | section spann

spanning-tree mode mst

spanning-tree extend system-id

spanning-tree mst configuration

name R1

revision 1

instance 1 vlan 3-4

Validación

Durante la migración de MST, puede configurar los parámetros de MST sin necesidad de cambiar aún el modo STP.

Siga estas recomendaciones para evitar posibles interrupciones en la red debido a una configuración incorrecta.

- Verifique la configuración MST antes de la confirmación.

- Verificar la configuración MST después de la confirmación

Verifique la configuración MST antes de la confirmación.

Esta verificación es cuando el modo de árbol de expansión mst aún no se ha aplicado.

show spanning-tree mst

show current

show spanning-tree mst configuration digest

Nota: show current solo está disponible en el modo de configuración MST (submodo de configuración de mst de árbol de expansión)

Ejemplo: para el switch 1 en la región 1

Verifique que el modo STP aún no esté en modo MST

R1-SW1#show spanning-tree mst

% Switch is not in mst mode   <--

Verificar la configuración MST actual

R1-SW1(config-mst)#show current

Current MST configuration

Name      [R1]

Revision  1     Instances configured 2

Instance  Vlans mapped

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

0         1-2,6-4094

1         3-4

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

Nota: show current solo está disponible en el modo de configuración MST.

Nota: show span mst configuration y show current son comandos equivalentes.

Verificar hash de resumen

R1-SW1#show spanning-tree mst configuration digest

% Switch is not in mst mode                          <--

Name [R1]

Revision 1 Instances configured 2

Digest 0xA423B8DBB209CCF6560F55618AB58726            <--

Pre-std Digest 0x8C9BE88BBC9B84CB8AED635EE008436A

Nota: La salida del resumen le permite saber si el switch ya está en modo MST o no. El hash de resumen no cambia, incluso si el modo MST aún no se ha habilitado.

Nota: Los switches Catalyst 9000 ejecutan el protocolo MST estándar IEEE. Por lo tanto, debe centrarse en el hash Digest en lugar del Digest Pre-std

Verificar la configuración MST después de la confirmación

show current

show pending

show spanning-tree mst configuration digest

abort

Nota: show pending (así como show current) sólo está disponible en el modo de configuración MST

La salida show current muestra la configuración MST después de salir del submodo MST (que es cuando se aplica el cambio de configuración) mientras que la salida show pending muestra la configuración MST que se ha configurado recientemente, pero que no se ha aplicado.

Si por alguna razón necesita revertir los cambios de configuración y aún está en el submodo MST, puede aplicar el comando abort que sale del submodo MST sin aplicar los cambios.

Nota: show pending (así como show current) sólo está disponible en el modo de configuración MST

Ejemplo: para el switch 1 en la región 1

Observe que las configuraciones actuales y pendientes son las mismas, lo que significa que no se han realizado cambios.

El hash de resumen es el mismo que se validó en el resultado anterior.

R1-SW1(config)#spanning-tree mst configuration

R1-SW1(config-mst)#show current

Current MST configuration

Name      [R1]

Revision  1     Instances configured 2

Instance  Vlans mapped

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

0         1-2,5-4094

1         3-4

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

R1-SW1(config-mst)#show pending

Pending MST configuration

Name      [R1]

Revision  1     Instances configured 2

Instance  Vlans mapped

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

0         1-2,5-4094

1         3-4

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

R1-SW1(config-mst)#do show spanning-tree mst configuration digest

Name      [R1]

Revision  1     Instances configured 2

Digest          0xA423B8DBB209CCF6560F55618AB58726   <--

Pre-std Digest  0x8C9BE88BBC9B84CB8AED635EE008436A

Se crea una nueva instancia y se le asigna la VLAN 5. Esta vez el resultado show current no muestra la nueva instancia recientemente acondicionada, pero el resultado show pending sí. Esto es de esperar.

Observe que el hash de Digest no ha cambiado. Esto se debe a que la nueva configuración sólo se aplica cuando sale del modo de configuración MST (submodo de configuración de mst de árbol de expansión)

R1-SW1(config-mst)#instance 2 vlan 5       <--

R1-SW1(config-mst)#show current

Current MST configuration

Name      [R1]

Revision  1     Instances configured 2

Instance  Vlans mapped

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

0         1-2,5-4094

1         3-4

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

R1-SW1(config-mst)#show pending

Pending MST configuration

Name      [R1]

Revision  1     Instances configured 3

Instance  Vlans mapped

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

0         1-2,6-4094

1         3-4

2         5     <--

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

R1-SW1(config-mst)#do show spanning-tree mst configuration digest

Name      [R1]

Revision  1     Instances configured 2

Digest          0xA423B8DBB209CCF6560F55618AB58726     <--

Pre-std Digest  0x8C9BE88BBC9B84CB8AED635EE008436A

Después de salir del modo de configuración MST, se reflejan los cambios. El hash de resumen también se vuelve a calcular para que coincida con los nuevos cambios realizados.

R1-SW1(config-mst)#exit

R1-SW1(config)#spanning-tree mst configuration

R1-SW1(config-mst)#show current

Current MST configuration

Name      [R1]

Revision  1     Instances configured 3

Instance  Vlans mapped

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

0         1-2,6-4094

1         3-4

2         5       <--

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

R1-SW1(config-mst)#show pending

Pending MST configuration

Name      [R1]

Revision  1     Instances configured 3

Instance  Vlans mapped

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

0         1-2,6-4094

1         3-4

2         5     <--

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

R1-SW1(config-mst)#do show spanning-tree mst configuration digest

Name      [R1]

Revision  1     Instances configured 3

Digest          0x083305551908B9A2CC50B482DC577B8F     <--

Pre-std Digest  0xA8AC09BDF2942058FAF4CE727C9D258F

Estos comandos son útiles para validar los parámetros MST y la convergencia. También proporcionan información relacionada con los temporizadores MST, el costo, etc.

show spanning-tree pathcost method

show spanning-tree root

show spanning-tree summary

show spanning-tree mst

show spanning-tree interface <interface>

Nota: show spanning-tree mst y show spanning-tree son equivalentes

Ejemplo: para el switch 1 en la región 1

Existen dos métodos para medir el coste de la ruta: corto (heredado) y largo. Siempre es preferible ser homogéneo a lo largo de la red de capa 2. Si ejecuta el método long pathcost, hágalo junto con todos los switches que se ejecutan en STP.

R1-SW1#show spanning-tree pathcost method

Spanning tree default pathcost method used is long  <--

Esta salida le permite conocer el método de costo de trayectoria, pero también le permite saber que el switch ejecuta el protocolo MST estándar y utiliza el ID del sistema extendido (que es obligatorio cuando se utiliza MST).

R1-SW1#show spanning-tree summary

Switch is in mst mode (IEEE Standard)               <--

Root bridge for: none

EtherChannel misconfig guard            is enabled

Extended system ID                      is enabled  <--

Portfast Default                        is disabled

PortFast BPDU Guard Default            is disabled

Portfast BPDU Filter Default           is disabled

Loopguard Default                      is disabled

UplinkFast                              is disabled

BackboneFast                            is disabled

Configured Pathcost method used is long             <--

Name                   Blocking Listening Learning Forwarding STP Active

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

MST0                         0         0        0          3          3

MST1                         0         0        0          3          3

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

2 msts                       0         0        0          6          6

En este resultado se pueden observar ID de puente y raíz, prioridades, costos, roles de puerto y estado, así como la asignación de VLAN:

R1-SW1#show spanning-tree mst

##### MST0    vlans mapped:   1-2,5-4094

Bridge        address 3473.2db8.be80  priority      32768 (32768 sysid 0)

Root          address f04a.021e.9500  priority      24576 (24576 sysid 0)

port    Gi1/0/2         path cost     0

Regional Root address f04a.021e.9500  priority      24576 (24576 sysid 0)

internal cost 20000     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

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

Gi1/0/1                          Desg FWD 20000     128.1    P2p

Gi1/0/2                          Root FWD 20000     128.2    P2p

Gi1/0/4                          Desg FWD 20000     128.4    P2p

##### MST1    vlans mapped:   3-4

Bridge        address 3473.2db8.be80  priority      32769 (32768 sysid 1)

Root          address f04a.021e.9500  priority      24577 (24576 sysid 1)

port    Gi1/0/2         cost          20000     rem hops 19

Interface                        Role Sts Cost      Prio.Nbr Type

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

Gi1/0/1                          Desg FWD 20000     128.1    P2p

Gi1/0/2                          Root FWD 20000     128.2    P2p

Gi1/0/4                          Desg FWD 20000     128.4    P2p

Este comando muestra el estado de los roles STP, la prioridad y el tipo de link desde la perspectiva de la interfaz en lugar de la perspectiva por instancia.

R1-SW1#show spanning-tree interface gigabitEthernet 1/0/1

Mst Instance        Role Sts Cost      Prio.Nbr Type

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

MST0                Desg FWD 20000     128.1    P2p

MST1                Desg FWD 20000     128.1    P2p

R1-SW1#show spanning-tree interface gigabitEthernet 1/0/2

Mst Instance        Role Sts Cost      Prio.Nbr Type

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

MST0                Root FWD 20000     128.2    P2p

MST1                Root FWD 20000     128.2    P2p

Sincronización entre regiones

La región 2 se ha agregado a la topología. El objetivo es comprobar el proceso de interacción y convergencia de dos regiones diferentes. En esta comunicación, sólo tienen lugar los modificadores de límite.

Dado que ambos extremos del link tienen el mismo proceso de comunicación. Esta sección se centra en las salidas de show spanning-tree mst de R1-SW2 y dos BPDU tomadas de una captura de paquetes.

Topología

Validación

Esta es la comunicación inicial entre R1-SW2 de la Región 1 y R2-SW1 de la Región 2. Tan pronto como se establece una conexión entre ambos dispositivos, envían una BPDU.

Céntrese en la interfaz Gi1/0/2 de R2-SW1, que está bloqueando (BLK) como estado inicial. Recuerde que un puerto de switch ingresa en el estado BLK en el momento del proceso de elección.

R2-SW1#show spanning-tree mst

MST0

! Output omitted for brevity

Interface           Role Sts Cost      Prio.Nbr Type

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

Gi1/0/2             Desg BLK 20000     128.2    P2p

Gi1/0/4             Root FWD 20000     128.4    P2p

MST1

! Output omitted for brevity

Interface           Role Sts Cost      Prio.Nbr Type

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

Gi1/0/2             Desg BLK 20000     128.2    P2p

Gi1/0/4             Root FWD 20000     128.4    P2p

En la captura de paquetes se observa esta primera BPDU, con los indicadores de Rol de Puerto como Designado y la Propuesta.

Esto significa que la comunicación ya se inició y ambos puertos iniciaron el proceso de sincronización para establecer un acuerdo y establecer los roles y estados del puerto. Todo comienza con el mecanismo de propuesta.

IEEE 802.3 Ethernet

Destination: Spanning-tree-(for-bridges)_00 (01:80:c2:00:00:00)

Source: Cisco_05:d6:02 (f0:4a:02:05:d6:02)

Length: 121

Logical-Link Control

Spanning Tree Protocol

Protocol Identifier: Spanning Tree Protocol (0x0000)

Protocol Version Identifier: Multiple Spanning Tree (3)

BPDU Type: Rapid/Multiple Spanning Tree (0x02)

BPDU flags: 0x0e, Port Role: Designated, Proposal

0... .... = Topology Change Acknowledgment: No

.0.. .... = Agreement: No

..0. .... = Forwarding: No

...0 .... = Learning: No

.... 11.. = Port Role: Designated (3)

.... ..1. = Proposal: Yes

.... ...0 = Topology Change: No

Root Identifier: 24576 / 0 / f0:4a:02:1e:95:00

Root Path Cost: 20004

Bridge Identifier: 32768 / 0 / a0:f8:49:10:47:80

Port identifier: 0x8002

Message Age: 2

Max Age: 20

Hello Time: 2

Forward Delay: 15

Version 1 Length: 0

Version 3 Length: 80

MST Extension

Después del intercambio de BPDU entre switches, el estado cambia a aprendizaje (LRN).

Después de que R2-SW1 reciba la primera BPDU mostrada anteriormente, el estado LRN es el primer estado de transición después del estado de bloqueo.

R2-SW1#show spanning-tree mst

MST0

! Output omitted for brevity

Interface           Role Sts Cost      Prio.Nbr Type

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

Gi1/0/2             Desg LRN 20000     128.2    P2p

Gi1/0/4             Root FWD 20000     128.4    P2p

MST1

! Output omitted for brevity

Interface           Role Sts Cost      Prio.Nbr Type

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

Gi1/0/2             Desg LRN 20000     128.2    P2p

Gi1/0/4             Root FWD 20000     128.4    P2p

Una vez que uno de los pares establece un acuerdo y tiene lugar la sincronización (el vecino es aceptado como la trayectoria superior a la raíz), los links pasan inmediatamente al estado de reenvío.

Aquí puede observar la BPDU con los indicadores configurados como aprendizaje, también incluye el indicador de notificación de cambio de topología que se activa tan pronto como el puerto pasa de LRN a reenvío (FWR).

En este estado, MST determina si el puerto participa o no en el reenvío de tramas (estado BLK).

IEEE 802.3 Ethernet

Logical-Link Control

Spanning Tree Protocol

Protocol Identifier: Spanning Tree Protocol (0x0000)

Protocol Version Identifier: Multiple Spanning Tree (3)

BPDU Type: Rapid/Multiple Spanning Tree (0x02)

BPDU flags: 0x3d, Forwarding, Learning, Port Role: Designated, Topology Change

0... .... = Topology Change Acknowledgment: No

.0.. .... = Agreement: No

..1. .... = Forwarding: Yes

...1 .... = Learning: Yes

.... 11.. = Port Role: Designated (3)

.... ..0. = Proposal: No

.... ...1 = Topology Change: Yes

Root Identifier: 24576 / 0 / f0:4a:02:1e:95:00

Root Path Cost: 20004

Bridge Identifier: 32768 / 0 / a0:f8:49:10:47:80

Port identifier: 0x8002

Message Age: 2

Max Age: 20

Hello Time: 2

Forward Delay: 15

Version 1 Length: 0

Version 3 Length: 80

MST Extension

Finalmente, el puerto del switch ingresa al estado de reenvío después de atravesar todos los estados involucrados en la creación de la topología de red.

Este sería el último estado del puerto, con la función designada (Desg) y el estado FDW.

R2-SW1#show spanning-tree mst

MST0

! Output omitted for brevity

Interface           Role Sts Cost      Prio.Nbr Type

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

Gi1/0/2             Desg FWD 20000     128.2    P2p

Gi1/0/4             Root FWD 20000     128.4    P2p

MST1

! Output omitted for brevity

Interface           Role Sts Cost      Prio.Nbr Type

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

Gi1/0/2             Desg FWD 20000     128.2    P2p

Gi1/0/4             Root FWD 20000     128.4    P2p

Depuraciones

Estos errores se activaron durante la comunicación entre R2-SW1 y R1-SW2.

debug spanning-tree mstp roles

debug spanning-tree mstp tc

debug spanning-tree mstp boundary

Ejemplo:

R2-SW1#show debugging

Packet Infra debugs:

Ip Address                                               Port

------------------------------------------------------|----------

Multiple Spanning Tree:

MSTP port ROLES changes debugging is on

MSTP Topology Change notifications debugging is on

MSTP port BOUNDARY flag changes debugging is on

Registros observados

%LINK-3-UPDOWN: Interface GigabitEthernet1/0/2, changed state to down

%LINK-3-UPDOWN: Interface GigabitEthernet1/0/2, changed state to up

MST[0]: Gi1/0/2 is now designated port

MST[0]: Gi1/0/2 becomes designated - clearing BOUNDARY flag

MST[1]: Gi1/0/2 is now designated port

MST[0]: port Gi1/0/2 received external tc

MST[0]: port Gi1/0/2 received external tc

MST[1]: port Gi1/0/2 received tc

MST[0]: port Gi1/0/2 received external tc

MST[0]: port Gi1/0/2 received external tc

MST[1]: port Gi1/0/2 received tc

MST[0]: port Gi1/0/2 received external tc

MST[0]: port Gi1/0/2 received external tc

MST[1]: port Gi1/0/2 received tc

MST[0]: port Gi1/0/2 initiating tc

MST[1]: port Gi1/0/2 initiating tc

MST[0]: port Gi1/0/2 received external tc

MST[0]: port Gi1/0/2 received external tc

MST[1]: port Gi1/0/2 received tcsho span

%LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/0/2, changed state to up

MST[0]: port Gi1/0/3 received internal tc

MST[0]: port Gi1/0/3 received internal tc

MST[0]: port Gi1/0/3 received internal tc

Error de simulación de PVST

La simulación PVST es el mecanismo que MST utiliza para comunicarse con los switches que no son MST.

Los switches PVST no reconocen MST BPDU porque son simplemente diferentes. Esta es la razón por la que es importante entender las diferencias entre PVST y MST BPDU.

BPDU PVST frente a BPDU MST

Se capturaron dos BPDU, una para PVST y otra para MST, y se observaron las diferencias entre ellas.

PVST

- PVST envía una BPDU para cada VLAN configurada en el switch. Por lo tanto, tener 100 VLAN configuradas significa que se envían 100 BPDU a través de todos los puertos para crear su propia topología sin loop.

- PVST se basa en el STP clásico

Ethernet II, Src: Cisco_06:19:01 (f0:4a:02:06:19:01), Dst: PVST+ (01:00:0c:cc:cc:cd)

Destination: PVST+ (01:00:0c:cc:cc:cd)

Source: Cisco_06:19:01 (f0:4a:02:06:19:01)

Type: 802.1Q Virtual LAN (0x8100)

802.1Q Virtual LAN, PRI: 7, DEI: 0, ID: 3

111. .... .... .... = Priority: Network Control (7)

...0 .... .... .... = DEI: Ineligible

.... 0000 0000 0011 = ID: 3

Length: 50

Logical-Link Control

DSAP: SNAP (0xaa)

SSAP: SNAP (0xaa)

Control field: U, func=UI (0x03)

Organization Code: 00:00:0c (Cisco Systems, Inc)

PID: PVSTP+ (0x010b)

Spanning Tree Protocol

Protocol Identifier: Spanning Tree Protocol (0x0000)

Protocol Version Identifier: Spanning Tree (0)

BPDU Type: Configuration (0x00)

BPDU flags: 0x01, Topology Change

0... .... = Topology Change Acknowledgment: No

.... ...1 = Topology Change: Yes

Root Identifier: 32768 / 0 / 68:9e:0b:a0:f5:80

Root Bridge Priority: 32768

Root Bridge System ID Extension: 0

Root Bridge System ID: Cisco_a0:f5:80 (68:9e:0b:a0:f5:80)

Root Path Cost: 20000

Bridge Identifier: 32768 / 0 / f0:4a:02:06:19:00

Bridge Priority: 32768

Bridge System ID Extension: 0

Bridge System ID: Cisco_06:19:00 (f0:4a:02:06:19:00)

Port identifier: 0x8001

Message Age: 1

Max Age: 20

Hello Time: 2

Forward Delay: 15

Originating VLAN (PVID): 3

Type: Originating VLAN (0x0000)

Length: 2

Originating VLAN: 3

MST

- MST envía una sola BPDU para todas las instancias de MST configuradas en el switch. Esto se logra gracias a la extensión MST (registros M) que tiene la información de todas las instancias.

- MST se basa en RSTP, lo que significa que todos los mecanismos intrínsecos de este protocolo se heredaron a MST.

- Los temporizadores los define el IST y afectan a todas las demás instancias de una región

IEEE 802.3 Ethernet

Destination: Spanning-tree-(for-bridges)_00 (01:80:c2:00:00:00)

Source: Cisco_b8:be:81 (34:73:2d:b8:be:81)

Length: 121

Logical-Link Control

DSAP: Spanning Tree BPDU (0x42)

SSAP: Spanning Tree BPDU (0x42)

Control field: U, func=UI (0x03)

Spanning Tree Protocol

Protocol Identifier: Spanning Tree Protocol (0x0000)

Protocol Version Identifier: Multiple Spanning Tree (3)

BPDU Type: Rapid/Multiple Spanning Tree (0x02)

BPDU flags: 0x0e, Port Role: Designated, Proposal

0... .... = Topology Change Acknowledgment: No

.0.. .... = Agreement: No

..0. .... = Forwarding: No

...0 .... = Learning: No

.... 11.. = Port Role: Designated (3)

.... ..1. = Proposal: Yes

.... ...0 = Topology Change: No

Root Identifier: 32768 / 0 / 34:73:2d:b8:be:80

Root Bridge Priority: 32768

Root Bridge System ID Extension: 0

Root Bridge System ID: Cisco_b8:be:80 (34:73:2d:b8:be:80)

Root Path Cost: 0

Bridge Identifier: 32768 / 0 / 34:73:2d:b8:be:80

Bridge Priority: 32768

Bridge System ID Extension: 0

Bridge System ID: Cisco_b8:be:80 (34:73:2d:b8:be:80)

Port identifier: 0x8001

Message Age: 0

Max Age: 20

Hello Time: 2

Forward Delay: 15

Version 1 Length: 0

Version 3 Length: 80

MST Extension

MST Config ID format selector: 0

MST Config name: R1

MST Config revision: 1

MST Config digest: a423b8dbb209ccf6560f55618ab58726

CIST Internal Root Path Cost: 0

CIST Bridge Identifier: 32768 / 0 / 34:73:2d:b8:be:80

CIST Bridge Priority: 32768

CIST Bridge Identifier System ID Extension: 0

CIST Bridge Identifier System ID: Cisco_b8:be:80 (34:73:2d:b8:be:80)

CIST Remaining hops: 20

MSTID 1, Regional Root Identifier 32768 / 34:73:2d:b8:be:80

MSTI flags: 0x0e, Port Role: Designated, Proposal

0... .... = Topology Change Acknowledgment: No

.0.. .... = Agreement: No

..0. .... = Forwarding: No

...0 .... = Learning: No

.... 11.. = Port Role: Designated (3)

.... ..1. = Proposal: Yes

.... ...0 = Topology Change: No

1000 .... = Priority: 0x8

.... 0000 0000 0001 = MSTID: 1

Regional Root: Cisco_b8:be:80 (34:73:2d:b8:be:80)

Internal root path cost: 0

Bridge Identifier Priority: 8

Port identifier priority: 8

Remaining hops: 20

Topología

El switch con PVST se agregó a la red. Interconecta las regiones 1 y 2.

Validación

Después de conectar el switch PVST, el puerto límite (gi1/0/1) del switch R1-SW3 de la región 1 va a PVST incoherente y bloquea el puerto.

R1-SW3#show spanning-tree mst

##### MST0    vlans mapped:   1-2,5-4094

Bridge        address f04a.021e.9500  priority      32768 (32768 sysid 0)

Root          address 689e.0ba0.f580  priority      16385 (16384 sysid 1)

port    Gi1/0/1         path cost     20000

Regional Root this switch

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

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

Gi1/0/1                          Root BKN*20000     128.1    P2p Bound(PVST) *PVST_Inc

Gi1/0/2                          Desg FWD 20000     128.2    P2p

Gi1/0/3                          Desg FWD 20000     128.3    P2p

##### MST1    vlans mapped:   3-4

Bridge        address f04a.021e.9500  priority      32769 (32768 sysid 1)

Root          address 3473.2db8.be80  priority      32769 (32768 sysid 1)

port    Gi1/0/2         cost          20000     rem hops 19

Interface                        Role Sts Cost      Prio.Nbr Type

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

Gi1/0/1                          Mstr BKN*20000     128.1    P2p Bound(PVST) *PVST_Inc

Gi1/0/2                          Root FWD 20000     128.2    P2p

Gi1/0/3                          Altn BLK 20000     128.3    P2p

Nota: Salidas similares se observan en R2-SW2 desde la región 2, que es otro puerto límite.

.

Esto sucedió porque cualquiera de estas reglas se rompió

- Si el puente raíz para CIST está dentro de una región que no es de MST, la prioridad del árbol de expansión de las VLAN 2 en adelante dentro de ese dominio debe ser mejor (menor) que la de la VLAN 1.

- Si el puente raíz para CIST está dentro de una región MST, las VLAN 2 en adelante definidas en los dominios que no son MST deben tener sus prioridades de árbol de expansión peores (mayores) que las de la raíz CIST.

Eche un vistazo a las configuraciones no válidas que se establecieron en el switch para hacer frente a este problema:

Caso 1. El switch PVST es la raíz de las VLAN 2-4; sin embargo, las VLAN 2-4 tienen una prioridad peor (mayor) que la VLAN 1. En este caso, todos los switches excepto el switch PVST tienen la prioridad STP predeterminada (32768)

PVST-SW1# show run | inc span

spanning-tree mode pvst

spanning-tree extend system-id

spanning-tree vlan 1 priority 4096    <--

spanning-tree vlan 2-4 priority 16384 <--

spanning-tree mst configuration

Registro observado:

%SPANTREE-2-PVSTSIM_FAIL: Blocking root port Gi1/0/1: Inconsitent inferior PVST BPDU received on VLAN 2, claiming root 16386:689e.0ba0.f580

Caso 2. El switch PVST no es la raíz de las VLAN 1; sin embargo, las VLAN 2-4 tienen una prioridad mejor (menor) que la raíz. En este caso, root tiene la prioridad predeterminada 24576. Esto significa que el puente raíz no es la raíz para todas las VLAN

PVST-SW1#show run | inc span

spanning-tree mode pvst

spanning-tree extend system-id

spanning-tree vlan 1 prio 32768       <-- higher priority than the root

spanning-tree vlan 2-4 priority 16384 <--  lower priority than the root

spanning-tree mst configuration

Registro observado:

%SPANTREE-2-PVSTSIM_FAIL: Blocking root port Gi1/0/1: Inconsistent inferior PVST BPDU received on VLAN 2, claiming root 40962:689e.0ba0.f580

Una vez consideradas las reglas mencionadas anteriormente, puede utilizar estas configuraciones válidas para eliminar este problema.

Caso 1.

PVST-SW1# show run | inc span

spanning-tree mode pvst

spanning-tree extend system-id

spanning-tree vlan 1 priority 16384  <-- VLAN 1 has a higher priority than all other VLANs

spanning-tree vlan 2-4 priority 4096 <--

spanning-tree mst configuration

Registro observado:

%SPANTREE-2-PVSTSIM_OK: PVST Simulation nconsistency cleared on port GigabitEthernet1/0/1.

Caso 2.

PVST-SW1#show run | inc span

spanning-tree mode pvst

spanning-tree extend system-id

spanning-tree vlan 1 prio 32768       <-- higher priority than the root

spanning-tree vlan 2-4 priority 40960 <--  higher priority than the root

spanning-tree mst configuration

Registro observado:

%SPANTREE-2-PVSTSIM_OK: PVST Simulation nconsistency cleared on port GigabitEthernet1/0/1.

Depuraciones

Verifique las BPDU con los debugs de BPDU si la captura de paquetes no es posible.

debug spanning-tree mstp bpdu receive

debug spanning-tree mstp bpdu transmit

Ejemplo: para el switch 2 de la región 2 conectado al switch PVST

R2-SW2#debug spanning-tree mstp bpdu receive

MSTP BPDUs RECEIVEd dump debugging is on

R2-SW2#debug spanning-tree mstp bpdu transmit

MSTP BPDUs TRANSMITted dump debugging is on

R2-SW2#debug condition interface gigabitEthernet 1/0/2 <-- interface facing PVST switch

R2-SW2#show logging

! Output omitted for brevity

%LINK-3-UPDOWN: Interface GigabitEthernet1/0/2, changed state to down

%LINK-3-UPDOWN: Interface GigabitEthernet1/0/2, changed state to up

MST[0]:-TX> Gi1/0/2 BPDU Prot:0 Vers:3 Type:2

MST[0]: Role :Desg Flags[P] Age:2 RemHops:19

MST[0]: CIST_root:16385.689e.0ba0.f580 Cost :40000

MST[0]: Reg_root :32768.f04a.0205.d600 Cost :20000

MST[0]: Bridge_ID:32768.a0f8.4910.4780 Port_ID:32770

MST[0]: max_age:20 hello:2 fwdelay:15

MST[0]: V3_len:80 region:R2 rev:1 Num_mrec: 1

MST[1]:-TX> Gi1/0/2 MREC

MST[1]: Role :Desg Flags[MAP] RemHops:20

MST[1]: Root_ID :32769.a0f8.4910.4780 Cost :0

MST[1]: Bridge_ID:32769.a0f8.4910.4780 Port_id:130

%LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/0/2, changed state to up

MST[0]:-TX> Gi1/0/2 BPDU Prot:0 Vers:3 Type:2

MST[0]: Role :Desg Flags[P] Age:2 RemHops:19

MST[0]: CIST_root:16385.689e.0ba0.f580 Cost :40000

MST[0]: Reg_root :32768.f04a.0205.d600 Cost :20000

MST[0]: Bridge_ID:32768.a0f8.4910.4780 Port_ID:32770

MST[0]: max_age:20 hello:2 fwdelay:15

MST[0]: V3_len:80 region:R2 rev:1 Num_mrec: 1

MST[1]:-TX> Gi1/0/2 MREC

MST[1]: Role :Desg Flags[MAP] RemHops:20

MST[1]: Root_ID :32769.a0f8.4910.4780 Cost :0

MST[1]: Bridge_ID:32769.a0f8.4910.4780 Port_id:130

MST[0]:

MST[0]: Role :Desg Flags[FLTc] Age:0

MST[0]: CIST_root:16385.689e.0ba0.f580 Cost :0

MST[0]: Bridge_ID:16385.689e.0ba0.f580 Port_ID:32770

MST[0]: max_age:20 hello:2 fwdelay:15

Disputa P2P

Topología

Explicación

En esta sección puede observar un problema con dos dispositivos que no pudieron establecer un acuerdo y establecer el estado de los puertos correctamente.

R1-SW1#show spanning-tree mst

##### MST0    vlans mapped:   1-2,5-4094

Bridge        address 3473.2db8.be80  priority      32768 (32768 sysid 0)

Root          address 689e.0ba0.f580  priority      4097  (4096 sysid 1)

port    Gi1/0/2         path cost     20000

Regional Root address f04a.021e.9500  priority      24576 (24576 sysid 0)

internal cost 20000     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

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

Gi1/0/1                          Desg FWD 20000     128.1    P2p

Gi1/0/2                          Root FWD 20000     128.2    P2p

Gi1/0/4                          Desg BLK 20000     128.2    P2p Dispute

##### MST1    vlans mapped:   3-4

Bridge        address 3473.2db8.be80  priority      32769 (32768 sysid 1)

Root          address f04a.021e.9500  priority      24577 (24576 sysid 1)

port    Gi1/0/2         cost          20000     rem hops 19

Interface                        Role Sts Cost      Prio.Nbr Type

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

Gi1/0/1                          Desg FWD 20000     128.1    P2p

Gi1/0/2                          Root FWD 20000     128.2    P2p

Gi1/0/4                          Desg BLK 20000     128.2    P2p Dispute

R1-SW1 (raíz) observó que había un nuevo dispositivo conectado a él. Por lo tanto, envía su BPDU y se define a sí mismo como raíz.

Recibió una BPDU que especifica que, en el otro lado del link, los indicadores se establecen como función de puerto: designado, reenviando y aprendiendo.

Esto significa que el nuevo switch conectado establece que tiene una mejor trayectoria para alcanzar la raíz. Sin embargo, esto no es posible ya que R1-SW1 es la raíz y no hay una mejor trayectoria hacia ella.

Debido a que ambos switches no pudieron establecer el acuerdo y establecer los puertos correctamente (ya que ambas BPDU muestran una mejor trayectoria a la raíz), R1-SW1 asume que el nuevo switch no recibe sus BPDU y establece el estado del puerto en Disputa P2P para evitar escenarios unidireccionales que pueden causar loops.

Enfoques MST

Como se observa en este documento, MST puede ser más complicado siempre y cuando se agreguen más switches a la red. Debido a esto, es importante tener diferentes enfoques para la misma red.

Ejemplo:

Si el problema observado no está dentro de la región MST sino en un dominio PVST, puede tener una imagen más amplia e ignorar cualquier cosa dentro de las regiones MST (perspectiva CST).

Por otro lado, si se sospecha que el problema se da entre regiones de MST o dentro de una región, CIST proporciona una mejor perspectiva.

Si es necesario, puede centrarse en las funciones de puerto y el estado de los switches

Información Relacionada

- Introducción al Protocolo Rapid Spanning Tree Protocol [protocolo de árbol de expansión rápida] (802.1s)

- Guía de configuración de capa 2, Cisco IOS XE Amsterdam 17.3.x (switches Catalyst 9300)

- Guía de configuración de capa 2 y capa 3, Cisco IOS XE Everest 16.5.1a (switches Catalyst 9300)

- Simulación PVST en switches MST

- Id. de error de Cisco CSCvy02075 - El switch reenvía el tráfico recibido en los puertos en estado de bloqueo BLK