Het Spanning Tree Protocol, ook wel Spanning Tree genoemd, is de Waze of MapQuest van moderne Ethernet-netwerken en leidt verkeer langs de meest efficiënte route op basis van realtime omstandigheden.
Gebaseerd op een algoritme gemaakt door de Amerikaanse computerwetenschapper Radia Perlman toen ze in 1985 voor Digital Equipment Corporation (DEC) werkte, is het primaire doel van Spanning Tree het voorkomen van redundante koppelingen en het herhalen van communicatiepaden in complexe netwerkconfiguraties. Als secundaire functie kan Spanning Tree pakketten rond probleemplekken routeren om ervoor te zorgen dat de communicatie via netwerken kan verlopen die mogelijk verstoringen ondervinden.
Overspannende boomtopologie versus ringtopologie
Toen organisaties in de jaren tachtig net begonnen met het netwerken van hun computers, was een van de meest populaire configuraties het ringnetwerk. IBM introduceerde bijvoorbeeld in 1985 zijn eigen Token Ring-technologie.
In een ringnetwerktopologie is elk knooppunt verbonden met twee andere, één die ervoor op de ring zit en één die erachter is geplaatst. Signalen reizen slechts in één richting rond de ring, waarbij elk knooppunt onderweg alle pakketten doorgeeft die rond de ring lopen.
Hoewel eenvoudige ringnetwerken prima werken als er maar een handvol computers zijn, worden ringen inefficiënt als er honderden of duizenden apparaten aan een netwerk worden toegevoegd. Het kan zijn dat een computer pakketten via honderden knooppunten moet verzenden om informatie te delen met een ander systeem in een aangrenzende kamer. Bandbreedte en doorvoer worden ook een probleem als het verkeer slechts in één richting kan stromen, zonder back-upplan als een knooppunt onderweg defect raakt of overbelast raakt.
In de jaren negentig, toen Ethernet sneller werd (100 Mbit/sec. Fast Ethernet werd geïntroduceerd in 1995) en de kosten van een Ethernet-netwerk (bridges, switches, bekabeling) aanzienlijk goedkoper werden dan die van Token Ring, won Spanning Tree de LAN-topologieoorlogen en Token Ring verdween snel.
Hoe Spanning Tree werkt
Spanning Tree is een doorstuurprotocol voor datapakketten. Het is deels verkeersagent en deels civiel ingenieur voor de netwerksnelwegen waar gegevens doorheen reizen. Het bevindt zich op Laag 2 (datalinklaag), dus het gaat eenvoudigweg om het verplaatsen van pakketten naar de juiste bestemming, niet om wat voor soort pakketten worden verzonden of om de gegevens die ze bevatten.
Spanning Tree is zo alomtegenwoordig geworden dat het gebruik ervan is gedefinieerd in deIEEE 802.1D-netwerkstandaard. Zoals gedefinieerd in de standaard kan er slechts één actief pad bestaan tussen twee eindpunten of stations, zodat deze goed kunnen functioneren.
Spanning Tree is ontworpen om de mogelijkheid te elimineren dat gegevens die tussen netwerksegmenten worden doorgegeven, in een lus blijven hangen. Over het algemeen verwarren lussen het doorstuuralgoritme dat in netwerkapparaten is geïnstalleerd, waardoor het apparaat niet langer weet waar het pakketten naartoe moet sturen. Dit kan resulteren in het dupliceren van frames of het doorsturen van dubbele pakketten naar meerdere bestemmingen. Berichten kunnen herhaald worden. Communicatie kan terugsturen naar een afzender. Het kan zelfs een netwerk laten crashen als er te veel lussen ontstaan, waardoor bandbreedte wordt opgeslokt zonder noemenswaardige winst, terwijl ander verkeer zonder lus wordt geblokkeerd.
Het Spanning Tree-protocolstopt de vorming van lussendoor voor elk datapakket op één na alle mogelijke routes af te sluiten. Schakelaars op een netwerk gebruiken Spanning Tree om hoofdpaden en bruggen te definiëren waar gegevens naartoe kunnen reizen, en dubbele paden functioneel af te sluiten, waardoor ze inactief en onbruikbaar worden terwijl er een primair pad beschikbaar is.
Het resultaat is dat netwerkcommunicatie naadloos verloopt, ongeacht hoe complex of groot een netwerk wordt. In zekere zin creëert Spanning Tree afzonderlijke paden door een netwerk waar gegevens naartoe kunnen worden verzonden met behulp van software, op vrijwel dezelfde manier waarop netwerkingenieurs dat deden met hardware op de oude lusnetwerken.
Bijkomende voordelen van Spanning Tree
De belangrijkste reden dat Spanning Tree wordt gebruikt, is om de mogelijkheid van routeringslussen binnen een netwerk te elimineren. Maar er zijn ook andere voordelen.
Omdat Spanning Tree voortdurend zoekt en definieert welke netwerkpaden beschikbaar zijn waar datapakketten doorheen kunnen reizen, kan het detecteren of een knooppunt langs een van die primaire paden is uitgeschakeld. Dit kan verschillende redenen hebben, variërend van een hardwarefout tot een nieuwe netwerkconfiguratie. Het kan zelfs een tijdelijke situatie zijn op basis van bandbreedte of andere factoren.
Wanneer Spanning Tree detecteert dat een primair pad niet langer actief is, kan het snel een ander pad openen dat eerder gesloten was. Vervolgens kan het gegevens rond de probleemlocatie sturen, waarbij uiteindelijk de omweg als het nieuwe primaire pad wordt aangewezen, of pakketten teruggestuurd naar de oorspronkelijke brug als deze weer beschikbaar komt.
Terwijl de oorspronkelijke Spanning Tree relatief snel nieuwe verbindingen tot stand bracht als dat nodig was, introduceerde de IEEE in 2001 het Rapid Spanning Tree Protocol (RSTP). RSTP, ook wel de 802.1w-versie van het protocol genoemd, is ontworpen om aanzienlijk sneller herstel te bieden als reactie op netwerkwijzigingen, tijdelijke storingen of het regelrecht falen van componenten.
En hoewel RSTP nieuwe padconvergentiegedragingen en brugpoortrollen introduceerde om het proces te versnellen, was het ook ontworpen om volledig achterwaarts compatibel te zijn met de originele Spanning Tree. Het is dus mogelijk dat apparaten met beide versies van het protocol samen op hetzelfde netwerk werken.
Tekortkomingen van Spanning Tree
Hoewel Spanning Tree in de loop van de jaren na de introductie alomtegenwoordig is geworden, zijn er mensen die beweren dat dit zo isde tijd is gekomen. De grootste fout van Spanning Tree is dat het potentiële lussen binnen een netwerk afsluit door potentiële paden af te sluiten waar gegevens naartoe kunnen reizen. In elk netwerk dat Spanning Tree gebruikt, is ongeveer 40% van de potentiële netwerkpaden afgesloten voor data.
In extreem complexe netwerkomgevingen, zoals die in datacenters, is het vermogen om snel op te schalen om aan de vraag te voldoen van cruciaal belang. Zonder de beperkingen die Spanning Tree oplegt, zouden datacenters veel meer bandbreedte kunnen vrijmaken zonder dat er extra netwerkhardware nodig is. Dit is nogal een ironische situatie, omdat Spanning Tree is gemaakt door complexe netwerkomgevingen. En nu weerhoudt de door het protocol geboden bescherming tegen looping deze omgevingen in zekere zin van hun volledige potentieel.
Een verfijnde versie van het protocol genaamd Multiple-Instance Spanning Tree (MSTP) is ontwikkeld om virtuele LAN's te gebruiken en ervoor te zorgen dat meer netwerkpaden tegelijkertijd open zijn, terwijl de vorming van lussen nog steeds wordt voorkomen. Maar zelfs met MSTP blijven nogal wat potentiële datapaden gesloten op elk netwerk dat het protocol gebruikt.
Er zijn door de jaren heen veel niet-gestandaardiseerde, onafhankelijke pogingen geweest om de bandbreedtebeperkingen van Spanning Tree te verbeteren. Hoewel de ontwerpers van sommigen van hen succes hebben geclaimd in hun inspanningen, zijn de meeste niet volledig compatibel met het kernprotocol, wat betekent dat organisaties ofwel de niet-gestandaardiseerde wijzigingen op al hun apparaten moeten toepassen, ofwel een manier moeten vinden om ze te laten bestaan met schakelaars met standaard Spanning Tree. In de meeste gevallen zijn de kosten voor het onderhouden en ondersteunen van meerdere smaken van Spanning Tree de moeite niet waard.
Zal Spanning Tree in de toekomst doorgaan?
Afgezien van de beperkingen in bandbreedte als gevolg van het sluiten van netwerkpaden door Spanning Tree, wordt er niet veel aandacht of moeite gestoken in het vervangen van het protocol. Hoewel IEEE af en toe updates uitbrengt om het efficiënter te maken, zijn deze altijd achterwaarts compatibel met bestaande versies van het protocol.
In zekere zin volgt Spanning Tree de regel: "Als het niet kapot is, repareer het dan niet." Spanning Tree draait onafhankelijk op de achtergrond van de meeste netwerken om het verkeer door te laten stromen, te voorkomen dat er crash-inducerende lussen ontstaan, en het verkeer rond probleemplekken te leiden, zodat eindgebruikers nooit weten of hun netwerk tijdelijk wordt onderbroken als onderdeel van de dagelijkse werkzaamheden. dag operaties. Ondertussen kunnen beheerders aan de backend nieuwe apparaten aan hun netwerken toevoegen zonder al te veel na te denken over de vraag of ze wel of niet kunnen communiceren met de rest van het netwerk of met de buitenwereld.
Vanwege dit alles is het waarschijnlijk dat Spanning Tree nog vele jaren in gebruik zal blijven. Er kunnen van tijd tot tijd wat kleine updates zijn, maar het kernprotocol van het Spanning Tree Protocol en alle essentiële functies die het uitvoert, zullen waarschijnlijk blijven bestaan.
Posttijd: 07-nov-2023