Dit document beschrijft de STP-timers (Spanning Tree Protocol) en de te volgen regels om de timers aan te passen.
Opmerking: dit document bespreekt alleen hoe u STP-timers kunt afstemmen op normale 802.1D-overspannende boom. Dit document bespreekt geen Rapid STP (RSTP) (IEEE 802.1w) of Multiple Spanning Tree (MST) protocol (IEEE 802.1s). Verwijs voor meer informatie over RSTP en MST naar deze documenten:
Dit document veronderstelt een goed begrip van STP. Raadpleeg voor meer informatie over de werking van STP het Spanning Tree Protocol (STP) op Catalyst-Switches begrijpen en configureren.
Voorzichtig: U kunt dit document gebruiken om u te helpen uw netwerkproblemen op te lossen, maar alleen als u bekend bent met het proces of als iemand die bekend is met het proces u heeft geïnstrueerd. Als u niet bekend bent met STP, kunnen veranderingen die u maakt een van deze voorvallen veroorzaken:
instabiliteit
Toepassingsvertragingen
CPU-spikes
LAN-meltdown
Raadpleeg 802.1D - IEEE-standaarden voor lokale en metro-openbare netwerken: Media Access Control (MAC)-bruggen (clausule 8) voor extra details en verwijzingen naar alle parameters waarover dit document gaat.
Dit document is niet beperkt tot specifieke software- en hardware-versies.
Er zijn meerdere STP-timers, zoals in deze lijst wordt aangegeven:
hallo-De hallo tijd is de tijd tussen elke brug protocol gegevenseenheid (BPDU) die op een haven wordt verzonden. Deze tijd is standaard gelijk aan 2 seconden (sec), maar u kunt de tijd instellen op tussen 1 en 10 seconden.
voorwaartse vertraging: de voorwaartse vertraging is de tijd die in de luisterstaat en de leerstaat wordt doorgebracht. Deze tijd is standaard gelijk aan 15 seconden, maar u kunt de tijd instellen op tussen 4 en 30 seconden.
Max. pagina—de MAX pagina-timer controleert de maximale tijdsduur die doorgaat voordat een bridge poort de BPDU-informatie over de configuratie opslaat. Deze tijd is standaard 20 seconden, maar u kunt de tijd instellen op tussen 6 en 40 seconden.
Elke configuratie BPDU bevat deze drie parameters. Bovendien bevat elke BPDU-configuratie een andere tijdgerelateerde parameter die bekend staat als de berichtpagina. De berichtpagina is geen vaste waarde. De berichtpagina bevat de tijdsduur die is verstreken sinds de root-brug oorspronkelijk van de BPDU afkomstig was. De root-brug stuurt al haar BPDU's met een berichtleeftijdswaarde van 0, en alle daaropvolgende switches voegen 1 aan deze waarde toe. Deze waarde bevat effectief informatie over hoe ver u van de root-brug bent wanneer u een BPDU ontvangt. Dit schema illustreert het concept:
Wanneer een nieuwe configuratie BPDU wordt ontvangen die gelijk is aan of beter is dan de opgenomen informatie over de poort, wordt alle BPDU-informatie opgeslagen. De timer begint te lopen. De leeftijdstimer start op de berichtpagina die in die configuratie BPDU wordt ontvangen. Als deze leeftijdstimer de maximale leeftijd bereikt voordat een andere BPDU wordt ontvangen die de timer verfrist, wordt de informatie voor die poort verouderd.
Hier is een voorbeeld dat van toepassing is op het schema in dit deel:
Switches B en C ontvangen een configuratie BPDU van switch A met een berichtleeftijd van 0. Op de poort die naar A gaat, veroudert de informatie in (max leeftijd - 0) sec. Deze tijd is standaard 20 seconden.
Switches D en E ontvangen de BPDU van switch B met een berichtleeftijd van 1. Op de poort die naar A gaat, veroudert de informatie in (max leeftijd - 1) sec. Deze tijd is standaard 19 seconden.
Switch F ontvangt de BPDU van switch E met een berichtleeftijd van 2. Op de poort die naar E gaat, veroudert de informatie in (max leeftijd - 2) sec. Deze tijd is standaard 18 seconden.
IEEE 802.1D definieert STP. Naast de timers die de sectie Spanning Tree Protocol Timers beschrijft, definieert IEEE ook deze parameters die op STP betrekking hebben:
diameter van het STP-domein (dia)—Deze waarde is het maximale aantal bruggen tussen twee aansluitingspunten van eindstations. De aanbeveling van IEEE is om een maximumdiameter van zeven bruggen voor de standaard STP timers te overwegen.
overbrugging vertraging (doorvoervertraging) - Deze waarde is de tijd die verstreken is tussen de ontvangst en de transmissie van hetzelfde frame door de brug. Dit is logischerwijs de latentie door de brug. De aanbeveling van IEEE is om 1 sec als de maximale overbruggingsvertraging te beschouwen.
BPDU-transmissievertraging (bpdu_dela) - Deze waarde is de vertraging tussen de tijd dat een BPDU op een poort wordt ontvangen en de tijd dat de configuratie BPDU effectief naar een andere poort wordt verzonden. De IEEE raadt 1 sec aan als de maximale BPDU-transmissievertraging.
overschatting van berichtleeftijd (msg_overschatting) - Deze waarde is de toename die elke brug aan de berichtleeftijd toevoegt alvorens een BPDU door te sturen. Zoals het gedeelte Spanning Tree Protocol Timers aangeeft, voegen Cisco-switches (en waarschijnlijk alle switches) 1 sec toe aan de berichtpagina voordat de switches een BPDU doorsturen.
Verloren bericht (verloren_msg) - Deze waarde is het aantal BPDU's dat kan worden verloren als BPDU van het ene eind van het overbrugde netwerk naar het andere eind beweegt. De aanbeveling van IEEE is om drie als het aantal BPDU's te gebruiken dat kan worden verloren.
zendvertraging (Tx_halt_default)—Deze waarde is de maximale hoeveelheid tijd die nodig is voor een brug om een haven effectief naar de blokkerende staat te verplaatsen na de bepaling dat de haven moet worden geblokkeerd. De IEEE-aanbeveling is om 1 sec voor deze parameter te gebruiken.
middelgroot toegangsvertraging (med_access_vertraging) - Deze waarde is de tijd die nodig is voor een apparaat om toegang tot de media te krijgen voor eerste transmissie. Het is de tijd tussen het CPU-besluit om een frame te verzenden en het moment waarop het frame feitelijk de brug begint te verlaten. De IEEE-aanbeveling is om 0,5 seconden als maximale tijd te gebruiken.
Op basis van deze parameters kun je andere waarden berekenen. Deze lijst bevat de aanvullende parameters en de berekeningen. De berekeningen gaan ervan uit dat u de standaard aanbevolen IEEE-waarden voor alle parameters gebruikt.
End-to-end BPDU propagatievertraging-Deze waarde is de hoeveelheid tijd die nodig is voor een BPDU om van één eind van het netwerk naar het andere eind te reizen. Neem een diameter van zeven hop aan, drie BPDU's die verloren kunnen gaan, en een hallo tijd van 2 seconden. In dit geval is de formule:
End-to-end_BPDU_propa_delay = ((lost_msg + 1) x hello) + ((BPDU_Delay x (dia – 1)) = ((3 + 1) x hello) + ((1 x (dia – 1)) = 4 x hello + dia – 1 = 4 x 2 + 6 = 14 sec
Berichttijdperk-overschatting-Het doel van deze parameter is om rekening te houden met de leeftijd van de BPDU sinds de oorsprong. Stel dat elke brug de BPDU-berichtleeftijd met 1 seconden verhoogt. De formule is:
Message_age_overestimate = (dia – 1) x overestimate_per_bridge = dia – 1 = 6
Maximum aantal frame - Deze waarde is de maximale tijd die een frame dat eerder naar het brugnetwerk werd verzonden in het netwerk blijft voordat het kader die bestemming bereikt heeft. De formule is:
Maximum_frame_lifetime = dia x transit_delay + med_access_delay = dia + 0.5 = 7.5 = 8 (rounded)
Maximum aantal vertraging van transmissietabank - Deze waarde is de tijd die nodig is om een haven effectief te blokkeren, nadat het besluit om te blokkeren wordt genomen. De IEEE telt 1 sec als het maximum voor deze gebeurtenis. De formule is:
Maximum_transmission_halt_delay = 1
In deze sectie wordt uitgelegd hoe u de standaardwaarde voor max. pagina en voorwaartse vertraging kunt bereiken als u de aanbevolen waarde voor elke parameter gebruikt. De aanbevolen waarden hebben een diameter van zeven en een hallo-tijd van 2 seconden.
De maximumleeftijd houdt rekening met het feit dat de switch die zich aan de periferie van het netwerk bevindt de basisinformatie niet onder stabiele omstandigheden uitleest (dat wil zeggen, als de wortel nog leeft). De maximale leeftijdswaarde moet rekening houden met de totale BPDU-propagatievertraging en de overschatting van de berichtleeftijd. Daarom is de formule voor de maximale leeftijd:
max_age = End-to-end_BPDU_propa_delay + Message_age_overestimate = 14 + 6 = 20 sec
Deze berekening toont hoe IEEE de standaard aanbevolen waarde voor het maximumtijdperk bereikt.
De beweging van een haven in de luisterstaat geeft aan dat er een verandering in de actieve STP topologie is en dat een haven van het blokkeren naar het verzenden zal gaan. De luister- en leerperiodes gedurende welke de termijnvertraging loopt, moeten dus deze volgende periode bestrijken:
Tijd van wanneer de eerste bridge poort de luisterstaat ingaat (en daar door de daaropvolgende configuratie blijft) tot wanneer de laatste brug in het overbrugde LAN hoort van de verandering in de actieve topologie
Daarnaast moet u dezelfde vertraging tellen die u gebruikt om de maximale leeftijd te berekenen (berichtleeftijdsoverschatting en BPDU-propagatievertraging).
Tijd voor de laatste brug om te stoppen met het verzenden van frames die op de vorige topologie worden ontvangen (maximum vertraging van transmissiehalt), tot het laatste frame dat op de vorige topologie wordt doorgestuurd (maximum kaderleven) verdwijnt
Deze hoeveelheid tijd is nodig om er zeker van te zijn dat u geen gedupliceerde frames krijgt.
Daarom bevat tweemaal de tijd van de voorwaartse vertraging (luistertijd + leertijd) al deze parameters. De formule is:
2 x forward delay = end-to-end_BPDU_propagation_delay + Message_age_overestimate + Maximum_frame_lifetime + Maximum_transmission_halt_delay = 14 + 6 + 7.5 + 1 = 28.5 forward_delay = 28.5 /2 = 15 (rounded)
Van al deze parameters zijn de enige die je kunt afstemmen:
Opmerking: uw vermogen om deze parameters te wijzigen is afhankelijk van het netwerk.
Hallo, van 1 tot 6
max. leeftijd
voorwaartse vertraging
diameter—Dit is afhankelijk van het netwerk.
Wijzig geen van de waarden in deze lijst. Laat deze waarden op de aanbevolen IEEE-waarde staan:
verloren_msg = 3
transit_vertraging = 1
bpdu_vertraging = 1
msg_overschatting = 1
Tx_halt_vertraging = 1
med_access_vertraging = 0,5
maximum_transport_halt_vertraging = 1
Deze waarden kunnen vrij conservatief lijken in een modern netwerk, waarin u waarschijnlijk niet drie BPDU's zal verliezen of 1 sec latentie voor een kader door een switch zal hebben. Vergeet echter niet dat deze waarden bestaan om STP-loops te voorkomen die kunnen voorkomen in stressomstandigheden, zoals:
Zeer hoog CPU-gebruik
Een overbelaste poort
Daarom moet u deze parameters als vaste waarden beschouwen. Als u de formules gebruikt die de sectie Standaardwaarden van Spanning Tree Protocol Timers toont, dan hebt u:
max_age = End-to-end_BPDU_propa_delay + Message_age_overestimate = ((lost_msg + 1) x hello) + ((BPDU_Delay x (dia – 1)) + (dia – 1) x overestimate_per_ bridge = (4 x hello) + dia – 1 + dia – 1 = (4 x hello) + (2 x dia) – 2 forward_delay = (End-to-end_BPDU_propa_delay + Message_age_overestimate + Maximum_frame_lifetime + Maximum_transmission_halt_delay ) / 2 = ((lost_msg + 1) x hello) + ((BPDU_Delay x (dia – 1)) + ((dia – 1) x overestimate_per_bridge) + (dia x transit_delay) + med_access_delay + Maximum_transmission_halt_delay) / 2 = ((4 x hello) + dia – 1 + dia – 1 + dia + 0.5 + 1) / 2 = ((4 x hello) + (3 x dia) – 0.5) / 2
Deze berekeningen laten u met deze twee definitieve formules (als u de 0,5 waarde beweegt) achter:
max_age = (4 x hello) + (2 x dia) – 2 forward_delay = ((4 x hello) + (3 x dia)) / 2
Als u de STP timers wilt aanpassen om een betere convergentietijd te bereiken, moet u deze twee formules strikt volgen.
Hierna volgt een voorbeeld. Als je een diameter van vier hebt voor een aangesloten netwerk, moet je deze parameters gebruiken:
hello = 2 (default) then max_age = 14 sec forward_delay = 10 sec If hello = 1 then max_age = 10 sec forward_delay = 8 sec
Opmerking: hallo = 1 is de laagste waarde. Er is geen manier om deze parameter minder dan 10 seconden voor max. leeftijd en 8 seconden voor voorwaartse vertraging uit te stellen als de diameter gelijk is aan 4 seconden.
Een daling van de hallo tijd tot 1 sec is de makkelijkste en meest makkelijke manier om de STP parameters te verlagen. Houd er echter rekening mee dat als u de hallo-tijd van 2 seconden tot 1 sec laat vallen, u het aantal BPDU's verdubbelt dat door elke brug wordt verstuurd/ontvangen. Deze verhoging veroorzaakt een extra lading op de CPU, die tweemaal zoveel BPDU's moet verwerken. Deze lading kan een probleem zijn als u verschillende VLAN's en trunks hebt.
De diameter is volledig afhankelijk van het netwerkontwerp. De diameter is het maximum aantal switches dat u kruist om twee switches in het overbrugde netwerk (die bron en bestemming omvatten) te verbinden, als u de ergste gevallen aanneemt. Wanneer u de diameter bepaalt, kruis u niet tweemaal dezelfde switch. In het diagram in het gedeelte Spanning Tree Protocol Timers van dit document, kunt u zien dat u een diameter van 5 hebt (pad F-E-B-A-C).
Kijk nu naar het schema in deze paragraaf. Het schema bevat een aantal switches voor toegang (switches C, D en E) die worden aangesloten op twee distributie-switches (switches A en B). Er is een Layer 3 (L3) grens tussen de distributie switches en de kern. Het overbrugde domein wordt gestopt bij de distributie switches. De diameter van STP is 5:
C-A-D-B-E
D-A-C-B-E
U kunt aan de hand van het schema zien dat er geen paar switches zijn dat een diameter van meer dan 5 geeft.
Zoals de sectie Spanning Tree Protocol Timers noemt, bevat elke BPDU de hallo, voorwaartse vertraging en max. pagina STP-timers. Een brug van IEEE maakt zich geen zorgen over de lokale configuratie van de timers waarde. De IEEE-brug beschouwt de waarde van de timers in de BPDU die de brug ontvangt. In feite is alleen een timer die op de root-brug van de STP is ingesteld belangrijk. Als u de wortel verliest, begint de nieuwe wortel zijn lokale waarde van de timer aan het gehele netwerk op te leggen. Dus zelfs als u niet dezelfde timer wilt configureren in het gehele netwerk, moet u ten minste elke timer wijzigen op de root-brug en op de back-up-root-brug.
Als u een Cisco switch gebruikt die de software van Catalyst OS (CatOS) draait, zijn er sommige macro's die u in staat stellen om de wortel in te stellen en de parameters in overeenstemming met de formules te stemmen. Geef het ingestelde spantree root root vlan dia diameter hallo hallo_time opdracht uit om de diameter en hallo tijd in te stellen. Hierna volgt een voorbeeld:
Taras> (enable) set spantree root 8 dia 4 hello 2 VLAN 8 bridge priority set to 8192. VLAN 8 bridge max aging time set to 14. VLAN 8 bridge hello time set to 2. VLAN 8 bridge forward delay set to 10. Switch is now the root switch for active VLAN 8.
Als u de STP netwerkdiameter hebt ingesteld, wordt de ingestelde waarde voor de diameter niet weergegeven in de configuratie of in de uitvoer van een show-opdracht.