In questo documento viene descritto lo scopo e la funzionalità della simulazione PVST (Per VLAN Spanning Tree) sugli switch MST (Multiple Spanning Tree). Esso tratta inoltre le regole di base che devono essere seguite per evitare incoerenze nella simulazione PVST e le relative motivazioni.
Cisco raccomanda la conoscenza di base dei concetti di MST, come CIST (Common and Internal Spanning Tree) e porte limite.
Il documento può essere consultato per tutte le versioni software o hardware.
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Spesso, le regioni MST sono connesse ad altri domini, ossia alle regioni Per VLAN Spanning Tree Plus (PVST+) o Rapid-PVST+. Questi switch che eseguono PVST+ (o rapid) non possono elaborare BDPU (Bridge Protocol Data Unit) di tipo MST. Per questo motivo, è necessario che sia in esecuzione un meccanismo di compatibilità con le versioni precedenti in modo che i due domini possano interagire tra loro senza problemi. Questo è ciò che la simulazione PVST affronta e ottiene.
Questa simulazione deve essere eseguita solo su porte limite, ovvero porte connesse direttamente agli switch di dominio PVST+. La ricezione di una BPDU (Shared Spanning Tree Protocol) sulla porta di uno switch con MST determina l'attivazione del meccanismo di simulazione PVST.
In questa topologia, lo switch 1 (SW1) esegue PVST+, mentre gli switch SW2, SW3 e SW4 eseguono MST e si trovano tutti nella stessa area.
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
------------------------------------------------------------
Con una topologia di questo tipo (una combinazione di regioni MST e non MST), il ponte radice di CIST si trova in uno dei due seguenti punti:
La simulazione PVST viene eseguita senza problemi con due regole critiche:
Se non si rispettano queste due regole, si verificherà un errore di simulazione PVST. Queste due regole, in un certo senso, sono identiche alla feature root-guard e ne sono in realtà derivate.
Nelle sezioni seguenti vengono esaminate singolarmente le regole (scenari) per illustrare il funzionamento della simulazione PVST.
In questo scenario, SW1 è la radice. Ecco la sua configurazione:
spanning-tree vlan 1 priority 8192
spanning-tree vlan 2-4094 priority 4096
SW2 presenta la seguente configurazione:
spanning-tree mst 0 priority 12288
spanning-tree mst 1 priority 0
SW3 presenta la seguente configurazione:
spanning-tree mst 0 priority 16384
Il software SW4 presenta la seguente configurazione:
spanning-tree mst 0 priority 16384
Il software SW1 non sente alcuna BPDU in grado di comprenderla, quindi sceglie se stesso come root per tutte le VLAN e inizia a inviare le BPDU agli switch della regione MST. Quando SW2 riceve una BPDU SSTP su Fa0/1, comprende che l'interfaccia è connessa a un dominio PVST+. Successivamente, il flag viene impostato in modo da abilitare la simulazione PVST su questa interfaccia.
Un concetto critico da comprendere è che solo la BPDU IEEE (Institute of Electrical and Electronics Engineers) per la VLAN 1 viene elaborata per la scelta del bridge radice. Vengono confrontate solo con le informazioni sull'istanza 0 dell'area MST. Per selezionare il bridge radice per CIST non vengono utilizzate altre informazioni sull'istanza. Per selezionare il bridge radice CIST, non vengono usate altre informazioni VLAN del dominio PVST+ oltre alla VLAN 1.
Qui sorge la domanda su cosa succede con le altre BPDU. SW1 consente alle VLAN di passare attraverso il collegamento trunk al 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 genera una BPDU per ciascuna VLAN e la invia all'SW2. Queste BPDU vengono semplicemente utilizzate per i controlli di coerenza nell'ambito della simulazione PVST. Tuttavia, le informazioni non vengono copiate da nessuna parte.
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
Questi output mostrano che Fa0/1 di SW2 è selezionato come porta radice. Come accennato in precedenza, l'SW1 invia una BPDU per VLAN per ciascuna VLAN consentita sul proprio collegamento trunk. Questa condizione viene confermata da un debug eseguito sul software 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 le BPDU arrivano sul software 2, la VLAN 1 BPDU viene elaborata, e ciò si riflette negli output. Le altre BPDU vengono quindi sottoposte alla verifica di coerenza basata su root guard delle simulazioni PVST.
In questa configurazione la verifica di coerenza viene superata e non si verifica alcun errore di simulazione PVST. Per generare un errore, aumentare la priorità della VLAN 2 a un valore superiore a 8192 sul software SW1.
SW1#conf t
SW1(config)#spanning-tree vlan 2 priority 12288
Questo messaggio viene visualizzato su SW2:
%SPANTREE-2-PVSTSIM_FAIL: Blocking root port Fa0/1: Inconsitent inferior PVST
BPDU received on VLAN 2, claiming root 12290:0022.0dba.9d00
Di seguito è riportato ciò che è stato memorizzato su Fa0/1 di SW2 come informazioni di root bridge:
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
Le informazioni provenienti da SW1 sono 12290:0022.0dba.9d00 e vengono confrontate con 8193.0022.0dba.9d00. Poiché la porta è una porta radice e ha ricevuto un BPDU inferiore, entra in uno stato di errore di simulazione PVST e visualizza il messaggio di errore visualizzato in precedenza. Infatti, la porta limite non può trovarsi contemporaneamente in due stati diversi: la ricezione del BPDU inferiore determina che la porta deve spostarsi sulla porta designata, mentre le informazioni sulla VLAN 1 indicano che la porta deve rimanere una porta radice. Questa confusione viene evitata con la simulazione PVST. La porta viene inoltre spostata in uno stato di simulazione PVST incoerente.
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
Questa situazione inverte i ruoli dello scenario precedente. Il ponte principale per il CIST è ora nella regione MST. SW2 è il ponte radice.
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 è ancora la porta limite e la simulazione PVST viene eseguita su questa interfaccia. Anche in questo caso il ruolo svolto è molto importante. Il dominio PVST+ prevede un BPDU per VLAN, ma MST non lo fa. La simulazione PVST prende le informazioni del bridge dell'istanza 0 (priorità + indirizzo MAC) e crea una BPDU per ciascuna VLAN consentita sull'interfaccia con queste informazioni. Per ciascuna BPDU vengono semplicemente assegnati i tag con gli ID VLAN appropriati.
È possibile verificare questa condizione con un comando debug su 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
Per generare una condizione di errore, modificare la priorità della VLAN 2 sul software SW1 a un valore inferiore a 12.288.
SW1#conf t
SW1(config)#spanning-tree vlan 2 priority 8192
Di seguito è riportato l'output del software SW2:
%SPANTREE-2-PVSTSIM_FAIL: Blocking designated port Fa0/1: Inconsitent superior PVST
BPDU received on VLAN 2, claiming root 8194:0022.0dba.9d00
Le informazioni fornite da SW1 sono 8192:0022.0dba.9d00 e vengono confrontate con quelle fornite da 12288:0022.916d.5380. Poiché la porta è una porta designata e ha ricevuto una BPDU superiore, entra in uno stato di errore di simulazione PVST e visualizza il messaggio di errore precedente. La porta viene inoltre spostata in uno stato incoerente della simulazione 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
La simulazione PVST viene eseguita su porte limite e funziona in due modi:
Affinché la simulazione PVST funzioni senza errori, è necessario che siano soddisfatte le due condizioni seguenti:
Se queste condizioni non vengono soddisfatte, la porta limite viene messa in uno stato di simulazione PVST incoerente fino a quando il problema non viene corretto.