In diesem Dokument werden Zweck und Funktion der PVST-Simulation (Per VLAN Spanning Tree) auf MST-Switches (Multiple Spanning Tree) beschrieben. Darüber hinaus werden die grundlegenden Regeln behandelt, die befolgt werden müssen, um Widersprüche in der PVST-Anordnung und die Gründe für diese Inkonsistenzen zu vermeiden.
Cisco empfiehlt, über grundlegende Kenntnisse von MST-Konzepten zu verfügen, z. B. Common and Internal Spanning Tree (CIST) und Boundary Ports.
Dieses Dokument ist nicht auf bestimmte Software- und Hardwareversionen beschränkt.
Die Informationen in diesem Dokument wurden von den Geräten in einer bestimmten Laborumgebung erstellt. Alle in diesem Dokument verwendeten Geräte haben mit einer leeren (Standard-)Konfiguration begonnen. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die potenziellen Auswirkungen eines Befehls verstehen.
Häufig sind MST-Regionen mit anderen Domänen verbunden - Per VLAN Spanning Tree Plus (PVST+) oder Rapid-PVST+-Regionen. Diese Switches mit PVST+ (oder Rapid) können keine Bridge Protocol Data Units (BPDUs) vom Typ MST verarbeiten. Aus diesem Grund muss es einen Abwärtskompatibilitätsmechanismus geben, der so ausgeführt wird, dass diese beiden Domänen nahtlos miteinander interagieren können. Das ist es, was die PVST-Simulation anspricht und erreicht.
Diese Simulation darf nur an Begrenzungs-Ports ausgeführt werden. Hierbei handelt es sich um Ports, die direkt mit den PVST+-Domänen-Switches verbunden sind. Der Empfang einer SSTP-BPDU (Shared Spanning Tree Protocol) auf dem Port eines MST-Switches löst den PVST-Simulationsmechanismus aus.
In dieser Topologie wird auf dem Switch 1 (SW1) PVST+ ausgeführt, während auf den Switches SW2, SW3 und SW4 MST ausgeführt wird und sich alle in derselben Region befinden.
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
------------------------------------------------------------
Bei einer solchen Topologie (eine Mischung aus MST- und Nicht-MST-Regionen) befindet sich die Root Bridge des CIST an einem von zwei Stellen:
Die PVST-Simulation funktioniert nahtlos mit zwei wichtigen Regeln:
Wenn Sie sich nicht an diese beiden Regeln halten, tritt der PVST-Simulationsfehler auf. Diese beiden Regeln sind in gewisser Weise identisch mit der Root-Guard-Funktion und werden tatsächlich davon abgeleitet.
In den nächsten Abschnitten werden die Regeln (Szenarien) einzeln untersucht, um die Funktionsweise der PVST-Simulation zu erläutern.
In diesem Szenario ist SW1 der Root. Die Konfiguration sieht folgendermaßen aus:
spanning-tree vlan 1 priority 8192
spanning-tree vlan 2-4094 priority 4096
SW2 verfügt über folgende Konfiguration:
spanning-tree mst 0 priority 12288
spanning-tree mst 1 priority 0
SW3 hat folgende Konfiguration:
spanning-tree mst 0 priority 16384
SW4 hat folgende Konfiguration:
spanning-tree mst 0 priority 16384
SW1 hört keine BPDUs, die es verstehen kann, wählt sich daher als Root für alle VLANs aus und sendet BPDUs an die Switches der MST-Region. Wenn SW2 eine SSTP-BPDU auf Fa0/1 empfängt, wird verstanden, dass die Schnittstelle mit einer PVST+-Domäne verbunden ist. Anschließend wird die Markierung festgelegt, um die PVST-Simulation auf dieser Schnittstelle zu aktivieren.
Ein entscheidendes Verständnis ist, dass nur die BPDU des Institute of Electrical and Electronics Engineers (IEEE) für VLAN 1 für die Root Bridge-Auswahl verarbeitet wird. Dies wird mit nur den Informationen der Instanz 0 aus der MST-Region verglichen. Es werden keine anderen Instanzinformationen verwendet, um die Root-Bridge für CIST auszuwählen. Zur Auswahl der CIST-Root-Bridge werden keine anderen VLAN-Informationen aus der PVST+-Domäne als VLAN 1 verwendet.
Hier stellt sich die Frage, was mit den anderen BPDUs geschieht. SW1 ermöglicht diese VLANs über die Trunk-Verbindung zu 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 generiert für jedes VLAN eine BPDU und sendet diese an SW2. Diese BPDUs werden im Rahmen der PVST-Simulation lediglich für Konsistenzprüfungen verwendet. Ihre Informationen werden jedoch nirgends kopiert.
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
Diese Ausgaben zeigen, dass Fa0/1 von SW2 als Root-Port ausgewählt wird. Wie bereits erwähnt, sendet SW1 pro VLAN eine BPDU für jedes über die Trunk-Verbindung zugelassene VLAN. Dies wird durch eine Fehlersuche in SW1 bestätigt:
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*
Wenn diese BPDUs auf SW2 eintreffen, wird die BPDU für VLAN 1 verarbeitet, die sich in den Ausgaben wiederspiegelt. Die anderen BPDUs durchlaufen dann die PVST-Simulationen-Root-Guard-basierte Konsistenzprüfung.
In dieser Konfiguration besteht die Konsistenzprüfung erfolgreich, und es ist kein PVST-Simulationsfehler aufgetreten. Um einen Ausfall zu generieren, erhöhen Sie die Priorität von VLAN 2 auf mehr als 8192 auf SW1.
SW1#conf t
SW1(config)#spanning-tree vlan 2 priority 12288
Diese Meldung wird auf SW2 angezeigt:
%SPANTREE-2-PVSTSIM_FAIL: Blocking root port Fa0/1: Inconsitent inferior PVST
BPDU received on VLAN 2, claiming root 12290:0022.0dba.9d00
Folgendes wurde auf Fa0/1 von SW2 als Root-Bridge-Informationen gespeichert:
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
Die Informationen aus SW1 sind 12290:0022.0dba.9d00, und dies wird mit 8193.0022.0dba.9d00 verglichen. Da es sich bei dem Port um einen Root-Port handelt und er eine unterlegene BPDU erhalten hat, wechselt er in den Fehlerstatus der PVST-Simulation und zeigt die zuvor angezeigte Fehlermeldung an. Der Grund hierfür ist, dass sich der Boundary Port nicht in zwei verschiedenen Zuständen gleichzeitig befinden kann. Der Empfang der unterlegenen BPDU erfordert, dass der Port in einen designierten Port verschoben wird, während Informationen über VLAN 1 vorschreiben, dass der Port ein Root-Port bleiben soll. Diese Verwirrung wird durch die PVST-Simulation verhindert. Der Port wird außerdem in einen inkonsistenten PVST-Simulationszustand versetzt.
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
In dieser Situation werden die Rollen aus dem vorherigen Szenario umgekehrt. Die Root Bridge für den CIST befindet sich jetzt in der MST-Region. SW2 ist die Root Bridge.
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 ist weiterhin der Begrenzungsport, und die PVST-Simulation wird auf dieser Schnittstelle ausgeführt. Dies spielt jetzt wieder eine sehr wichtige Rolle. Die PVST+-Domäne erwartet eine BPDU pro VLAN, MST tut dies jedoch nicht. Bei der PVST-Simulation werden die Bridge-Informationen der Instanz 0 (Priorität + MAC-Adresse) verwendet, und es wird für jedes VLAN, das über die Schnittstelle mit diesen Informationen zugelassen ist, eine BPDU erstellt. Jeder dieser BPDUs wird einfach mit den entsprechenden VLAN-IDs versehen.
Dies kann mit einem Debugging auf SW1 überprüft werden:
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
Um eine Fehlerbedingung dafür zu generieren, ändern Sie die Priorität für VLAN 2 auf SW1 auf einen Wert unter 12.288.
SW1#conf t
SW1(config)#spanning-tree vlan 2 priority 8192
Die Ausgabe für SW2 ist wie folgt:
%SPANTREE-2-PVSTSIM_FAIL: Blocking designated port Fa0/1: Inconsitent superior PVST
BPDU received on VLAN 2, claiming root 8194:0022.0dba.9d00
Die Informationen aus SW1 sind 8192:0022.0dba.9d00, und dieser Wert wird mit 12288:0022.916d.5380 verglichen. Da es sich bei dem Port um einen designierten Port handelt und er eine erstklassige BPDU erhalten hat, wechselt er in den Ausfallstatus der PVST-Simulation und zeigt die vorherige Fehlermeldung an. Der Port wird außerdem in einen inkonsistenten PVST-Simulationszustand versetzt.
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
Die PVST-Simulation wird auf Begrenzungs-Ports ausgeführt und kann auf zwei Arten durchgeführt werden:
Damit die PVST-Simulation ohne Fehler funktioniert, müssen die folgenden beiden Bedingungen erfüllt sein:
Wenn diese Bedingungen nicht erfüllt sind, wird der Begrenzungsport in einen inkonsistenten PVST-Simulationszustand versetzt, bis das Problem behoben ist.