Este documento descreve a finalidade e a funcionalidade da simulação Per VLAN Spanning Tree (PVST) em switches MST (Multiple Spanning Tree). Também aborda as regras básicas que devem ser seguidas para evitar inconsistências na simbologia do PVST e o motivo dessas inconsistências.
A Cisco recomenda que você tenha conhecimento básico dos conceitos do MST, como Common and Internal Spanning Tree (CIST) e portas de limite.
Este documento não se restringe a versões de software e hardware específicas.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
Frequentemente, as regiões do MST são conectadas a outros domínios - Por VLAN Spanning Tree Plus (PVST+) ou região Rapid-PVST+. Esses switches que executam PVST+ (ou rapid) não podem processar BPDUs (Bridge Protocol Data Units, Unidades de Dados de Protocolo de Bridge) do tipo MST. Por esse motivo, deve haver um mecanismo de compatibilidade com versões anteriores executado para que esses dois domínios possam interagir entre si sem problemas. Isso é o que a simulação PVST trata e realiza.
Essa simulação deve ser executada somente em portas de limite - essas são portas diretamente conectadas aos switches de domínio PVST+. O recebimento de uma BPDU do Shared Spanning Tree Protocol (SSTP) na porta de um switch que executa o MST faz com que o mecanismo de simulação do PVST seja acionado.
Nessa topologia, o Switch 1 (SW1) executa PVST+, enquanto os switches SW2, SW3 e SW4 executam MST e estão todos na mesma região.
SW2#show spanning-tree mst configuration
Name [TEST]
Revision 1 Instances configured 2
Instance Vlans mapped
-------- -----------------------------------------------
0 1
1 2-4094
---------------------------------------------------------
SW3#show spanning-tree mst configuration
Name [TEST]
Revision 1 Instances configured 2
Instance Vlans mapped
-------- --------------------------------------------------
0 1
1 2-4094
------------------------------------------------------------
SW4#show spanning-tree mst configuration
Name [TEST]
Revision 1 Instances configured 2
Instance Vlans mapped
-------- --------------------------------------------------
0 1
1 2-4094
------------------------------------------------------------
Com tal topologia (uma mistura de regiões MST e não MST), a bridge raiz da CIST está em um de dois lugares:
A simulação de PVST é executada perfeitamente com duas regras críticas:
Se você não aderir a essas duas regras, encontrará a falha de simulação de PVST. Essas duas regras, de certa forma, são idênticas ao recurso root-guard e, na verdade, derivam dele.
As próximas seções examinam as regras (cenários) individualmente para explicar como a simulação de PVST funciona.
Neste cenário, SW1 é a raiz. Aqui está sua configuração:
spanning-tree vlan 1 priority 8192
spanning-tree vlan 2-4094 priority 4096
O SW2 tem esta configuração:
spanning-tree mst 0 priority 12288
spanning-tree mst 1 priority 0
O SW3 tem esta configuração:
spanning-tree mst 0 priority 16384
O SW4 tem esta configuração:
spanning-tree mst 0 priority 16384
O SW1 não ouve nenhuma BPDU que possa entender, então ele se elege como a raiz de todas as VLANs e começa a enviar BPDUs para os switches da região do MST. Quando o SW2 recebe uma BPDU SSTP em Fa0/1, ele entende que a interface está conectada a um domínio PVST+. Em seguida, ele define o flag para ativar a simulação de PVST nessa interface.
Um conceito crítico a ser compreendido é que somente a BPDU do Institute of Electrical and Electronics Engineers (IEEE) para VLAN 1 é processada para a eleição da bridge raiz. Isso é comparado com apenas as informações da instância 0 da região do MST. Nenhuma outra informação de instância é usada para eleger a bridge raiz para CIST. Nenhuma outra informação de VLAN do domínio PVST+ além da VLAN 1 é usada para eleger a bridge raiz CIST.
Aqui surge uma pergunta sobre o que acontece com os outros BPDUs. O SW1 permite essas VLANs em seu link de tronco para SW2:
SW1#show interfaces fa0/1 trunk
Port Mode Encapsulation Status Native vlan
Fa0/1 on 802.1q trunking 1
Port Vlans allowed on trunk
Fa0/1 1-4094
Port Vlans allowed and active in management domain
Fa0/1 1-2,10,17,29,34,38,45,56,67,89,100,200,300,333,500,666,999
Port Vlans in spanning tree forwarding state and not pruned
Fa0/1 1-2,10,17,29,34,38,45,56,67,89,100,200,300,333,500,666,999
SW1 gera uma BPDU para cada VLAN e as envia para SW2. Essas BPDUs são simplesmente usadas para verificações de consistência como parte da simulação PVST. Entretanto, suas informações não são copiadas em nenhum lugar.
SW1#show spanning-tree vlan 1
VLAN0001
Spanning tree enabled protocol ieee
Root ID Priority 8193
Address 0022.0dba.9d00
This bridge is the root
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 8193 (priority 8192 sys-id-ext 1)
Address 0022.0dba.9d00
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 300
Interface Role Sts Cost Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
Fa0/1 Desg FWD 19 128.3 P2p
Fa0/4 Desg FWD 19 128.6 P2p
SW2#show spanning-tree mst 0
##### MST0 vlans mapped: 1
Bridge address 0022.916d.5380 priority 12288 (12288 sysid 0)
Root address 0022.0dba.9d00 priority 8193 (8192 sysid 1)
port Fa0/1 path cost 200000
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
---------------- ---- --- --------- -------- --------------------------------
Fa0/1 Root FWD 200000 128.3 P2p Bound(PVST)
Fa0/4 Desg FWD 200000 128.6 P2p
Fa0/7 Desg FWD 200000 128.9 P2p
Essas saídas mostram que Fa0/1 de SW2 é eleito como a porta raiz. Conforme discutido anteriormente, o SW1 envia uma BPDU por VLAN para cada VLAN permitida em seu link de tronco. Isso é confirmado a partir de uma depuração em SW1:
STP: VLAN0001 Fa0/1 tx BPDU: config protocol=ieee
Data : 0000 00 00 00 200100220DBA9D00 00000000 200100220DBA9D00 8003
0000 1400
STP: VLAN0010 Fa0/1 tx BPDU: config protocol=ieee
Data : 0000 00 00 00 100A00220DBA9D00 00000000 100A00220DBA9D00 8003
0000 1400 0200 0F00
STP: VLAN0017 Fa0/1 tx BPDU: config protocol=ieee
Data : 0000 00 00 00 101100220DBA9D00 00000000 101100220DBA9D00 8003
0000 1400 0200 0F00
*snip*
Quando essas BPDUs chegam ao SW2, a VLAN 1 BPDU é processada, o que é refletido nas saídas. As outras BPDUs passam então pela verificação de consistência baseada em guarda-raiz das simulações PVST.
Nessa configuração, a verificação de consistência é bem-sucedida e não há falha na simulação de PVST. Para gerar uma falha, aumente a prioridade da VLAN 2 para maior que 8192 em SW1.
SW1#conf t
SW1(config)#spanning-tree vlan 2 priority 12288
Esta mensagem é exibida no SW2:
%SPANTREE-2-PVSTSIM_FAIL: Blocking root port Fa0/1: Inconsitent inferior PVST
BPDU received on VLAN 2, claiming root 12290:0022.0dba.9d00
Aqui está o que foi armazenado em Fa0/1 de SW2 como informações de bridge raiz:
SW2#show spanning-tree interface fa0/1 detail
Port 3 (FastEthernet0/1) of MST0 is broken (PVST Sim. Inconsistent)
Port path cost 200000, Port priority 128, Port Identifier 128.3.
Designated root has priority 8193, address 0022.0dba.9d00
Designated bridge has priority 8193, address 0022.0dba.9d00
Designated port id is 128.3, designated path cost 0
Timers: message age 4, forward delay 0, hold 0
Number of transitions to forwarding state: 1
Link type is point-to-point by default, Boundary PVST
BPDU: sent 100, received 4189
As informações que vêm do SW1 são 12290:0022.0dba.9d00, comparadas com 8193.0022.0dba.9d00. Como a porta é uma porta raiz e recebeu um BPDU inferior, ela entra em um estado de falha de simulação de PVST e exibe a mensagem de erro vista anteriormente. Isso ocorre porque a porta de limite não pode estar em dois estados diferentes de uma só vez - o recebimento do BPDU inferior determina que a porta deve se mover para designada, enquanto, através da informação da VLAN 1, a porta deve permanecer uma porta raiz. Essa confusão é evitada com a simulação PVST. A porta também é movida para um estado inconsistente de simulação de PVST.
SW2#show spanning-tree
MST0
Spanning tree enabled protocol mstp
Root ID Priority 8193
Address 0022.0dba.9d00
Cost 200000
Port 3 (FastEthernet0/1)
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 12288 (priority 12288 sys-id-ext 0)
Address 0022.916d.5380
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Interface Role Sts Cost Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
Fa0/1 Root BKN*200000 128.3 P2p Bound(PVST) *PVST_Inc
Fa0/4 Desg FWD 200000 128.6 P2p
Fa0/7 Desg FWD 200000 128.9 P2p
Essa situação inverte as funções do cenário anterior. A bridge raiz do CIST está agora na região MST. SW2 é a bridge raiz.
SW2#show spanning-tree mst 0
##### MST0 vlans mapped: 1
Bridge address 0022.916d.5380 priority 12288 (12288 sysid 0)
Root this switch for the CIST
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/1 Desg FWD 200000 128.3 P2p Bound(PVST)
Fa0/4 Desg FWD 200000 128.6 P2p
a0/7 Desg FWD 200000 128.9 P2p
Fa0/1 ainda é a porta de limite, e a simulação PVST é executada nessa interface. Isto desempenha agora um papel muito importante. O domínio PVST+ espera um BPDU por VLAN, mas o MST não faz isso. A simulação de PVST pega as informações de bridge da instância 0 (prioridade + endereço MAC) e cria uma BPDU para cada VLAN permitida em sua interface com essas informações. Ele simplesmente marca cada uma dessas BPDUs com as IDs de VLAN apropriadas.
Isso pode ser verificado com uma depuração em SW1:
STP: VLAN0001 rx BPDU: config protocol = ieee, packet from FastEthernet0/1 ,
linktype IEEE_SPANNING , enctype 2, encsize 17
STP: enc 01 80 C2 00 00 00 00 22 91 6D 53 83 00 26 42 42 03
STP: Data 000000000030000022916D53800000000030000022916D538080030000140002
000F00
STP: VLAN0001 Fa0/1:0000 00 00 00 30000022916D5380 00000000 30000022916D5380
8003 0
STP: VLAN0002 rx BPDU: config protocol = ieee, packet from FastEthernet0/1 ,
linktype SSTP , enctype 3, encsize 22STP: enc 01 00 0C CC CC CD 00 22 91 6D 53
83 00 32 AA AA 03 00 00 0C 01 0B
STP: Data 000000000030000022916D53800000000030000022916D538080030000140002
000F00
STP: VLAN0002 Fa0/1:0000 00 00 00 30000022916D5380 00000000 30000022 916D5380
8003 0000 1400 0200 0F00
STP: VLAN0010 rx BPDU: config protocol = ieee, packet from FastEthernet0/1 ,
linktype SSTP , enctype 3, encsize 22
STP: enc 01 00 0C CC CC CD 00 22 91 6D 53 83 00 32 AA AA 03 00 00 0C 01 0B
STP: Data 000000000030000022916D53800000000030000022916D538080030000140002
000F00
STP: VLAN0010 Fa0/1:0000 00 00 00 30000022916D5380 00 000000 30000022916D5380
8003 0000 1400 0200 0F00
Para gerar uma condição de falha para isso, altere a prioridade da VLAN 2 em SW1 para um valor inferior a 12.288.
SW1#conf t
SW1(config)#spanning-tree vlan 2 priority 8192
Aqui está a saída no SW2:
%SPANTREE-2-PVSTSIM_FAIL: Blocking designated port Fa0/1: Inconsitent superior PVST
BPDU received on VLAN 2, claiming root 8194:0022.0dba.9d00
As informações que vêm do SW1 são 8192:0022.0dba.9d00, comparadas com 12288:0022.916d.5380. Como a porta é uma porta designada e recebeu um BPDU superior, ela entra em um estado de falha de simulação de PVST e exibe a mensagem de erro anterior. A porta também é movida para um estado inconsistente de simulação de PVST.
SW2#show spanning-tree mst 0
##### MST0 vlans mapped: 1
Bridge address 0022.916d.5380 priority 12288 (12288 sysid 0)
Root this switch for the CIST
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/1 Desg BKN*200000 128.3 P2p Bound(PVST) *PVST_Inc
Fa0/4 Desg FWD 200000 128.6 P2p
Fa0/7 Desg FWD 200000 128.9 P2p
A simulação de PVST é executada em portas de limite e funciona de duas maneiras:
Para que a simulação de PVST funcione sem falhas, essas duas condições devem ser atendidas:
Se essas condições não forem atendidas, a porta de limite será colocada em um estado inconsistente de simulação de PVST até que o problema seja corrigido.