STP valprocessen


Spanning Tree Protocol (STP) skapar en logisk, loopfri topologi ovanpå den fysiska topologin. Detta görs genom att vissa portar tillåts vidarebefordra trafik medan andra sätts i ett blockerat läge. För att skapa denna loopfria struktur använder STP en algoritm kallad Spanning Tree Algorithm (STA).

STP-valprocessen

När STP startar i ett nätverk genomför switcharna en valprocess för att bestämma hur trafiken ska flöda. Denna process sker i fyra steg:

  1. Välj rotbryggan (Root Bridge)
  2. Välj rotportar (Root Ports)
  3. Välj utsedda portar (Designated Ports)
  4. Identifiera alternativa/blockerade portar

Genom denna process skapas ett logiskt träd där alla switchar har exakt en väg till rotbryggan, vilket eliminerar Layer-2-loopar.

BPDU – meddelanden mellan switchar

Under valprocessen kommunicerar switcharna genom särskilda meddelanden som kallas Bridge Protocol Data Units (BPDU). BPDU används för att:

  • utbyta information om nätverkets topologi
  • välja rotbryggan
  • bestämma portroller
  • övervaka nätverket och upptäcka förändringar

Varje switch skickar regelbundet BPDU-meddelanden till sina grannar. När switcharna jämför informationen i dessa meddelanden kan de avgöra vilken switch som ska bli rotbrygga och vilka portar som ska användas för trafik. En central parameter i BPDU är Bridge ID (BID).

Bridge ID (BID)

Bridge ID identifierar unikt varje switch i STP-topologin och används vid flera viktiga beslut i algoritmen, bland annat vid valet av rotbrygga. Ursprungligen bestod Bridge ID av två värden Bridge Priority och MAC-adress.

Senare uppdateringar av STP introducerade ett tredje värde för att stödja flera STP-instanser per VLAN.

Idag består Bridge ID av tre komponenter:

  • Bridge Priority
  • Extended System ID
  • MAC-adress

Bridge ID = Bridge Priority + Extended System ID + MAC address

Den switch som har lägst Bridge ID väljs till Root Bridge.

Bridge Priority

Bridge Priority är en administrativ parameter som påverkar vilken switch som blir rotbrygga. På Cisco-switchar gäller följande:

 Parameter  Värde
Standardvärde 32768
Intervall 0 – 61440
Stegstorlek 4096

Ju lägre prioritet, desto större sannolikhet att switchen blir rotbrygga. En prioritet på 0 innebär högsta möjliga prioritet.

Prioritetens bitstruktur

Bridge Priority använder 4 bitar, medan 12 bitar reserveras för VLAN-ID. Tillsammans bildar dessa ett 16-bitars värde, alltså

Bridge Priority (4 bitar) + VLAN ID (12 bitar) = 16 bitar

De fyra prioriteringsbitarna representerar multipler av 4096. Detta kan förklaras så här:

  • 0000 = 0 (0 x 4096)
  • 0001 = 4096 (1 x 4096)
  • 0010 = 8192 (2 x 4096)
  • 0011 = 12288 (3 x 4096)
  • 0100 = 16384 (4 x 4096)
  • 0101 = 20480 (5 x 4096)
  • 0110 = 24576 (6 x 4096)
  • 0111 = 28672 (7 x 4096)
  • 1000 = 32768 (8 x 4096)

Standardkonfiguration – exempel

Om endast VLAN 1 finns i nätverket:

  • Bridge Priority = 32768
  • VLAN ID = 1
  • Bridge ID priority field = 32769

Detta är standardvärdet som används av de flesta switchar.

Ändra prioritet – exempel

Om en nätverksadministratör vill göra en specifik switch till rotbrygga kan prioriteten sänkas.

  • Prioritetsbitar: 0111 (0100 = 16384, 0010 = 8192, 0001 = 4096)
  • Beräkning: 16384 + 8192 + 4096 = 28672
  • När VLAN-ID 1 läggs till: 28672 + 1 = 28673

Eftersom 28673 < 32769 kommer denna switch att ha en lägre Bridge ID än standardkonfigurerade switchar och därmed större chans att bli rotbrygga.

Extended System ID

Extended System ID infördes för att göra STP kompatibelt med VLAN-baserade STP-instanser, exempelvis PVST+. Detta fält innehåller: VLAN ID

Det innebär att varje VLAN kan ha sin egen STP-instans och egen rotbrygga.

Exempel:

  • VLAN 10 kan ha Switch A som rotbrygga (Root Bridge)
  • VLAN 20 kan ha Switch B som rotbrygga (Root Bridge)

På detta sätt kan länkar som är blockerade i ett VLAN vara aktiva i ett annat VLAN.

Fördelar

  • Lastbalansering mellan flera switchar
  • Effektiv användning av redundanta länkar
  • Bättre skalbarhet i stora nätverk

MAC-adress

Den sista komponenten i Bridge ID är switchens MAC-adress. Den används som tie-breaker när:

  • Bridge Priority är lika
  • Extended System ID är lika

I detta fall kommer switchen med lägst MAC-adress (hexadecimalt värde) att ha lägst Bridge ID och därmed vinna valet av rotbrygga.