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.

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:
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 |

