STP – Spanning Tree Protocol Explained

⚡ Smart sammanfattning

Spanning Tree Protocol (STP) är en Layer 2-länkhanteringsstandard, IEEE 802.1D, som förhindrar slingbyte i nätverk med redundanta länkar genom att välja en rotbrygga och placera backupportar i ett blockerande tillstånd.

  • 🔁 Syfte: STP bygger en loopfri logisk topologi från ett fysiskt nätverk som innehåller redundanta, potentiellt loopfriaping länkar.
  • 🌉 Rotbrygga: Switchar utbyter BPDU:er för att välja en rotbrygga, referenspunkten som varje annan switch mäter sin kortaste väg mot.
  • 🧱 Hamnstater: Varje port går igenom blockering, lyssnande, inlärning och vidarebefordran, plus ett inaktiverat tillstånd för avstängda portar.
  • ⚡ RSTP: Rapid Spanning Tree Protocol (802.1w) konvergerar på sekunder, medan klassisk STP kan ta upp till 50 sekunder.
  • 📊 varianter: Standarderna inkluderar STP, RSTP, MSTP (802.1s) och Cisco PVST+ och PVRST+ för träd per VLAN.
  • 🤖 AI-hjälp: Maskininlärningsverktyg flaggar topologiförändringsstormar och looptillstånd snabbare än manuell logggranskning.

Spanning Tree Protocol (STP) förklaras

Vad är STP?

Spanning Tree Protocol (STP) är ett länkhanteringsprotokoll som är utformat för att stödja redundanta länkar samtidigt som det förhindrar switching loops i nätverket. Det är ett Layer 2 protokoll som körs på bryggor och switchar och måste vara aktiverat på switchgränssnitten. IEEE standardiserade det som IEEE 802.1D.

Varför behöver vi STP?

Redundanta länkar förbättrar feltoleransen, men utan en loopförebyggande mekanism kan de också skapa farliga switchloopar. Här är situationerna där Spanning Tree Protocol blir viktigt:

  • Nätverkets tillförlitlighet (feltolerans) ökar avsevärt genom införandet av redundans.
  • Byter ut översvämningstrafik från alla portar när den måste nå en destination som ännu inte är känd.
  • Broadcast- och multicast-trafik vidarebefordras från alla portar utom den den anlände till.
  • STP skapar en loopfri logisk topologi från en fysisk topologi som innehåller loopar.

Hur fungerar STP? Exempel

Spanning tree använder en algoritm för att söka efter redundanta länkar i LAN och välj de bästa vägarna. Den placerar varje länk i antingen ett vidarebefordrande eller ett blockerande tillstånd.

Efter denna process förblir länkar utan ett redundant alternativ i vidarebefordringsläge. Redundanta länkar som inte valdes som den bästa vägen blockeras. Spanning Tree använder aldrig flera länkar till samma destination, så det tillhandahåller ingen lastdelning.

Typer av STP

Här är de olika typerna av Spanning Tree-protokoll:

Standard BESKRIVNING Förkortning
IEEE 802.1D Loopförebyggande; automatisk omkonfigurering av trädet efter varje ändring; långsam konvergens (upp till 50 sekunder) STP
IEEE 802.1w — Rapid Spanning Tree-protokoll Förbättrad STP med snabbare konvergens; bakåtkompatibel med STP RSTP
IEEE 802.1Q — Virtuellt LAN Definierar ett gemensamt spanning tree för alla VLAN CST
Cisco proprietär — Spanning Tree per VLAN En STP-instans per VLAN; PVST+ är en förbättrad variant av PVST PVST+
Cisco proprietär — Rapid Spanning Tree per VLAN Snabb konvergens per VLAN PVRST+ / R-PVST+
IEEE 802.1s — Multiple Spanning Tree-protokoll Flera VLAN mappade till en enda STP-instans MSTP

Kriterier för spannande träd

Tre kriterier avgör vilka gränssnitt som placeras i vidarebefordranstillstånd:

  • Alla gränssnitt på rotbryggan sätts i vidarebefordranstillstånd.
  • För bryggor som inte är rotbryggan sätts porten närmast rotbryggan (lägst vägkostnad) i vidarebefordranstillstånd.
  • Bron med den lägsta vägkostnaden till rotbron på ett segment kallas den designerade bron.

Steg i STP-protokollet

En Spanning Tree-port övergår genom flera tillstånd innan den vidarebefordrar trafik, vilket diagrammet nedan visar:

STP-porttillståndet övergår från blockering via lyssnande och inlärning till vidarebefordran

Blockerande tillstånd

En blockerande port är en icke-dedikerad port som aldrig deltar i frame forwarding. Dess timer är 20 sekunder (maximalt åldersvärde). Ett gränssnitt går alltid in i blockerande tillstånd när du aktiverar STP.

Lyssnande tillstånd

Lyssningstillståndet är det första övergångstillståndet som en port går in i efter blockering. Här avgör porten om den ska delta i frame forwarding. Lyssningstillståndet utför följande funktioner:

  • Kastar ramar som tagits emot på porten
  • Lär sig inte MAC-adresser
  • Tar emot BPDU

Lärande tillstånd

Inlärningstillståndet förbereder porten för att delta i frame forwarding. En port går in i inlärningstillståndet från lyssningstillståndet och utför följande funktioner:

  • Kastar ramar som tagits emot på porten
  • Tar emot BPDU
  • Lär dig MAC-adresser

Vidarebefordran stat

En port i vidarebefordranstillståndet vidarebefordrar ramar. Den går in i vidarebefordranstillståndet från inlärningstillståndet och utför följande funktioner:

  • Tar emot och vidarebefordrar ramar som mottagits på porten
  • Lär sig MAC-adresser
  • Tar emot BPDU

Tillstånd med funktionshinder

En inaktiverad port deltar inte i Spanning Tree eftersom den är administrativt avstängd; dess tid är obegränsad. Ett inaktiverat gränssnitt utför följande funktioner:

  • Kastar ramar som tagits emot på porten
  • Lär sig inte MAC-adresser
  • Tar inte emot BPDUs

Viktiga termer som används i Spanning Tree Protocol

Här är några viktiga termer som används i STP:

bro

En brygga är en viktig komponent i STP som förbinder två eller flera LAN-segment.

Root Bridge (RB)

Rotbryggan erbjuder en sammankopplingspunkt för alla segment, och varje brygga i ett LAN har en sökväg dit. STP väljer rotbryggan automatiskt, men en nätverksadministratör kan ändra den vid behov.

Non-Root Bridge (NRB)

En icke-rotbrygga är vilken brygga som helst som inte är rotbryggan.

Rotport (RP)

Rotporten är porten som leder mot rotbryggan.

Utsedd port (DP)

Varje LAN-segment har en tilldelad port. Varje brygga tar emot ramar på sin tilldelade port och vidarebefordrar dem via sin rotport mot rotbryggan.

Port-ID

Port-ID:t hjälper till att bestämma rotporten. Det består av ett konfigurerbart prioritetsvärde på 1 byte och ett unikt portnummer för varje brygga.

Kostnad för väg (PC)

Vägkostnaden hjälper till att bestämma den bästa topologin när det gäller vidarebefordringshastighet; en länk med lägre bandbredd har en högre kostnad. STP använder vägkostnaden för att välja den kortaste vägen till rotbryggan.

Icke-utsedd hamn

En icke-designerad port är en switchport som är blockerad, även kallad en blockerad eller alternativ port. Den kan inte vidarebefordra ramar till nästa switch och fyller inte i MAC-adresstabellen.

RSTP

Rapid Spanning Tree Protocol (RSTP) är ett nätverksprotokoll som säkerställer en loopfri topologi för Ethernet-nätverk och konvergerar mycket snabbare än den ursprungliga STP.

Bridge Protocol Data Units (BPDU)

Spanning Tree Protocol kräver att nätverksenheter utbyter meddelanden så att de kan bilda en loopfri logisk topologi. Dessa meddelanden kallas BPDU:er (Bridge Protocol Data Units). Varje nätverksenhet skickar BPDU:er för att dela topologiinformation.

BPDU:er hjälper switchar att göra följande:

  • Välj en enskild switch som ska fungera som roten för det spännande trädet.
  • Beräkna den kortaste vägen från varje switch till rotswitchen, och ange en switch som närmast roten för varje LAN-segment.
  • Välj en port på varje switch som dess rotport (om det inte är rotswitchen).
  • Identifiera de portar som ingår i spanning tree som utsedda portar.
  • Blockera de icke-utsedda portarna.

Konfiguration BPDU

En konfigurations-BPDU innehåller brygg-ID:t för rotenheten, brygg-ID:t för transmitting-bron och en identifierare för transmittingporten.

Topologiändringsmeddelande (TCN) BPDU

En TCN BPDU skickas av en switch mot rotbryggan när den upptäcker en förändring i nätverkstopologin, till exempel en länk som går upp eller ner. Rotbryggan instruerar sedan varje switch att förkorta sin åldrandetid för MAC-adresstabellen så att inaktuella poster snabbt rensas.

Skillnader mellan STP och RSTP

Tabellen nedan visar de viktigaste skillnaderna mellan STP och RSTP:

STP RSTP
I STP skickar en brygga bara ut en BPDU när den tar emot en på sin rotport från rotbryggan. RSTP gör det möjligt för varje switch att skicka ut en BPDU vid varje hello-intervall.
STP definierar två portroller: rotport och designerad port. RSTP lägger till ytterligare två roller: alternativporten och backupporten.

Referenstabell för STP-hamnstater

Följande tabell sammanfattar varje STP-porttillstånd, om den bearbetar BPDU:er och om den lär sig MAC-adresser:

Ange BESKRIVNING Process BPDUs Lär dig MAC
I det Initiering av en hamn. Nej Nej
Disabled Administrativ stat som inte deltar i standard STP-operationer. Nej Nej
Blockering Porten vidarebefordrar inte Ethernet-ramar. Ja (tar endast emot och bearbetar BPDU:er) Nej
Lyssna aktivt Den loopfria topologin beräknas i detta tillstånd, och porten tilldelas sin roll. Ja (skickar och tar emot BPDU:er) Nej
Lärande Ett ytterligare tillstånd som fördröjer vidarebefordran av ramar för att undvika att nätverket översvämmas. Ja Ja (fyller i MAC-adresstabellen)
Vidarebefordran Normal drift, vidarebefordrar Ethernet-ramar. Ja Ja

Vanliga frågor

Varje switch annonserar ett brygg-ID bestående av ett prioritetsvärde (standard 32768) plus dess MAC-adress. Switchen med det lägsta brygg-ID:t blir rotbryggan; om prioriteterna är lika vinner den lägsta MAC-adressen.

Klassisk 802.1D använder tre timers: en hello-tid på 2 sekunder, en fördröjning framåt på 15 sekunder för lyssnings- och inlärningstillstånden och en maximal tid på 20 sekunder. Fullständig konvergens kan ta 30 till 50 sekunder.

BPDU Guard skyddar åtkomstportar (kantportar) som aldrig ska ta emot BPDU:er. Om en sådan port tar emot en, flyttar switchen den omedelbart till ett felinaktiverat tillstånd, stopparping oönskade switchar eller oavsiktliga loopar destabiliserar topologin.

PortFast låter en accessport hoppa över lyssnings- och inlärningstillstånden och gå direkt till vidarebefordran. Använd den endast på portar anslutna till slutenheter som datorer eller servrar, aldrig på länkar mellan switchar.

Utan STP, redundanta länkar mellan switchar skapar bryggningsslingor. Ramar cirkulerar oändligt, vilket utlöser broadcaststormar, duplicerade ramar och instabilitet i MAC-adresstabellen som snabbt kan överbelasta och krascha hela LAN-systemet.

Ja. Moderna switchar kör RSTP eller MSTP som standard eftersom de konvergerar på några sekunder. Stora datacenter lägger i allt större utsträckning till Layer 3-routing eller fabric-tekniker som TRILL, SPB och EVPN-VXLAN, men STP skyddar fortfarande Layer 2 mot loopar.

Maskininlärningsverktyg baslinjevärderar normal BPDU och topologiförändringsaktivitet, och flaggar sedan avvikelser som plötsliga TCN-översvämningar eller en flapping rotbrygga. Detta påskyndar rotorsaksanalysen, även om en ingenjör fortfarande bekräftar och tillämpar korrigeringen.

GitHub Copilot utkast Cisco iOS, Ansible eller Python utdrag för uppgifter som att ställa in bryggprioritet eller aktivera PortFast från en kort kommentar. Granska alltid de genererade kommandona innan du tillämpar dem på produktionsväxlar.

Sammanfatta detta inlägg med: