Spanning Tree Protocol, ibland bara kallat Spanning Tree, är Waze eller MapQuest för moderna Ethernet-nätverk, som dirigerar trafik längs den mest effektiva rutten baserat på realtidsförhållanden.
Baserat på en algoritm skapad av den amerikanska datavetaren Radia Perlman när hon arbetade för Digital Equipment Corporation (DEC) 1985, är det primära syftet med Spanning Tree att förhindra redundanta länkar och looping av kommunikationsvägar i komplexa nätverkskonfigurationer. Som en sekundär funktion kan Spanning Tree dirigera paket runt problemställen för att säkerställa att kommunikation kan slingra sig genom nätverk som kan uppleva störningar.
Spännande trädtopologi vs ringtopologi
När organisationer precis började nätverka sina datorer på 1980-talet var en av de mest populära konfigurationerna ringnätet. Till exempel introducerade IBM sin egenutvecklade Token Ring-teknik 1985.
I en ringnätstopologi ansluter varje nod med två andra, en som sitter framför den på ringen och en som är placerad bakom den. Signaler färdas bara runt ringen i en enda riktning, där varje nod längs vägen lämnar ut alla paket som loopar runt ringen.
Medan enkla ringnätverk fungerar bra när det bara finns en handfull datorer, blir ringar ineffektiva när hundratals eller tusentals enheter läggs till ett nätverk. En dator kan behöva skicka paket genom hundratals noder bara för att dela information med ett annat system i ett angränsande rum. Bandbredd och genomströmning blir också ett problem när trafiken bara kan flyta i en riktning, utan någon backupplan om en nod längs vägen blir trasig eller överbelastad.
På 90-talet, när Ethernet blev snabbare (100Mbit/sek. Fast Ethernet introducerades 1995) och kostnaden för ett Ethernet-nätverk (bryggor, switchar, kablar) blev betydligt billigare än Token Ring, vann Spanning Tree LAN-topologikrigen och Token Ringen försvann snabbt.
Hur Spanning Tree fungerar
Spanning Tree är ett vidarebefordringsprotokoll för datapaket. Det är en del trafikpolis och en del civilingenjör för nätverkets motorvägar som data färdas genom. Den sitter på lager 2 (datalänkslager), så det handlar helt enkelt om att flytta paket till deras lämpliga destination, inte vilken typ av paket som skickas eller vilken data de innehåller.
Spanning Tree har blivit så allestädes närvarande att dess användning definieras iIEEE 802.1D nätverksstandard. Enligt definitionen i standarden kan endast en aktiv väg existera mellan två ändpunkter eller stationer för att de ska fungera korrekt.
Spanning Tree är designat för att eliminera möjligheten att data som passerar mellan nätverkssegment kommer att fastna i en loop. I allmänhet förvirrar loopar vidarebefordranalgoritmen installerad i nätverksenheter, vilket gör det så att enheten inte längre vet vart den ska skicka paket. Detta kan resultera i duplicering av ramar eller vidarebefordran av dubbletter av paket till flera destinationer. Meddelanden kan upprepas. Kommunikation kan studsa tillbaka till en avsändare. Det kan till och med krascha ett nätverk om för många slingor börjar inträffa, vilket äter upp bandbredden utan några nämnvärda vinster samtidigt som den blockerar annan icke-slingad trafik från att komma igenom.
Spanning Tree Protocolstoppar slingor från att bildasgenom att stänga av alla möjliga vägar utom en för varje datapaket. Omkopplare på ett nätverk använder Spanning Tree för att definiera rotvägar och broar dit data kan färdas, och stänger funktionellt av dubblettvägar, vilket gör dem inaktiva och oanvändbara medan en primär sökväg är tillgänglig.
Resultatet är att nätverkskommunikation flyter sömlöst oavsett hur komplext eller omfattande ett nätverk blir. På ett sätt skapar Spanning Tree enstaka vägar genom ett nätverk för data att resa med hjälp av programvara på ungefär samma sätt som nätverksingenjörer gjorde med hårdvara i de gamla loopnätverken.
Ytterligare fördelar med Spanning Tree
Den primära anledningen till att Spanning Tree används är att eliminera möjligheten att dirigera loopar inom ett nätverk. Men det finns andra fördelar också.
Eftersom Spanning Tree ständigt letar efter och definierar vilka nätverksvägar som är tillgängliga för datapaket att färdas genom, kan den upptäcka om en nod som sitter längs en av dessa primära vägar har inaktiverats. Detta kan hända av en mängd olika anledningar, från ett maskinvarufel till en ny nätverkskonfiguration. Det kan till och med vara en tillfällig situation baserad på bandbredd eller andra faktorer.
När Spanning Tree upptäcker att en primär bana inte längre är aktiv kan den snabbt öppna en annan bana som tidigare hade stängts. Den kan sedan skicka data runt problemplatsen, så småningom ange omvägen som den nya primära vägen, eller skicka paket tillbaka till den ursprungliga bryggan om den skulle bli tillgänglig igen.
Medan det ursprungliga Spanning Tree var relativt snabbt med att skapa de nya anslutningarna efter behov, introducerade IEEE 2001 Rapid Spanning Tree Protocol (RSTP). Även kallad 802.1w-versionen av protokollet, RSTP designades för att ge betydligt snabbare återställning som svar på nätverksförändringar, tillfälliga avbrott eller direkt fel på komponenter.
Och medan RSTP introducerade nya vägkonvergensbeteenden och bryggportsroller för att påskynda processen, designades den också för att vara helt bakåtkompatibel med det ursprungliga Spanning Tree. Så det är möjligt för enheter med båda versionerna av protokollet att fungera tillsammans på samma nätverk.
Brister med Spanning Tree
Även om Spanning Tree har blivit allestädes närvarande under många år efter introduktionen, finns det de som hävdar att det ärtiden har kommit. Det största felet med Spanning Tree är att det stänger av potentiella loopar inom ett nätverk genom att stänga av potentiella vägar dit data kan färdas. I ett givet nätverk som använder Spanning Tree är cirka 40 % av de potentiella nätverksvägarna stängda för data.
I extremt komplexa nätverksmiljöer, som de som finns inom datacenter, är förmågan att snabbt skala upp för att möta efterfrågan avgörande. Utan de begränsningar som Spanning Tree inför kan datacenter öppna upp mycket mer bandbredd utan behov av ytterligare nätverkshårdvara. Det här är en slags ironisk situation, eftersom komplexa nätverksmiljöer är anledningen till att Spanning Tree skapades. Och nu håller skyddet som tillhandahålls av protokollet mot looping, på ett sätt, dessa miljöer tillbaka från deras fulla potential.
En förfinad version av protokollet kallad Multiple-Instance Spanning Tree (MSTP) utvecklades för att använda virtuella LAN och möjliggöra att fler nätverksvägar är öppna samtidigt, samtidigt som det förhindrar att loopar bildas. Men även med MSTP förblir en hel del potentiella datavägar stängda på ett givet nätverk som använder protokollet.
Det har gjorts många icke-standardiserade, oberoende försök att förbättra bandbreddsbegränsningarna för Spanning Tree under åren. Även om designers av några av dem har hävdat framgång i sina ansträngningar, är de flesta inte helt kompatibla med kärnprotokollet, vilket innebär att organisationer måste antingen använda de icke-standardiserade ändringarna på alla sina enheter eller hitta något sätt att tillåta dem att existera med växlar som kör standard Spanning Tree. I de flesta fall är kostnaderna för att underhålla och stödja flera smaker av Spanning Tree inte värt ansträngningen.
Kommer Spanning Tree att fortsätta i framtiden?
Bortsett från begränsningarna i bandbredd på grund av att Spanning Tree stänger nätverksvägar, finns det inte mycket tanke eller ansträngning att lägga ner på att ersätta protokollet. Även om IEEE emellanåt släpper uppdateringar för att försöka göra det mer effektivt, är de alltid bakåtkompatibla med befintliga versioner av protokollet.
På sätt och vis följer Spanning Tree regeln "Om det inte är trasigt, fixa det inte." Spanning Tree körs oberoende i bakgrunden av de flesta nätverk för att hålla trafiken flytande, förhindra kraschframkallande loopar från att bildas och dirigera trafik runt problemställen så att slutanvändare aldrig ens vet om deras nätverk upplever tillfälliga störningar som en del av sin dagliga verksamhet. dagverksamhet. Samtidigt, på backend, kan administratörer lägga till nya enheter till sina nätverk utan för mycket eftertanke om huruvida de kommer att kunna kommunicera med resten av nätverket eller omvärlden.
På grund av allt detta är det troligt att Spanning Tree kommer att fortsätta användas i många år framöver. Det kan komma några mindre uppdateringar då och då, men kärnan i Spanning Tree Protocol och alla viktiga funktioner som den utför är förmodligen här för att stanna.
Posttid: 2023-nov-07