Border Gateway-protocol en routing-schaalbaarheid

Schrijver: Roger Morrison
Datum Van Creatie: 21 September 2021
Updatedatum: 21 Juni- 2024
Anonim
Lecture 40: Routing in the Internet IV – Border Gateway Protocol
Video: Lecture 40: Routing in the Internet IV – Border Gateway Protocol

Inhoud


Afhaal:

Schaalbaarheid van routing kan enorm worden geholpen door het Border Gateway Protocol, dat helpt pakketten efficiënter te routeren.

In de informatica is een belangrijk concept schaalbaarheid, of hoe goed een manier om een ​​bepaalde taak af te handelen blijft werken naarmate de taak toeneemt. Het schrijven van telefoonnummers op stukjes papier werkt bijvoorbeeld redelijk goed wanneer u een dozijn telefoonnummers moet bijhouden: het duurt slechts tien seconden om een ​​bepaald nummer te vinden. Maar voor een stad met 100.000 inwoners duurt het nu honderdduizend seconden (ongeveer een dag) om een ​​nummer te vinden. Als u een telefoonboek gebruikt voor een stad met 100.000 inwoners, duurt het ongeveer een halve minuut om een ​​telefoonnummer te vinden dat bij een bepaalde naam hoort. Het grote voordeel is niet zozeer dat het gebruik van een boek veel sneller is dan het gebruik van afzonderlijke stukjes papier, maar eerder dat wanneer u de omvang van het probleem verdubbelt, u niet de hoeveelheid werk verdubbelt om het op te lossen: zoeken via een telefoon boek dat twee keer zo groot is, kost slechts een paar extra seconden: is de naam die ik zoek in de eerste helft van de tweede helft? Het duurt niet twee keer zo lang, en dus zijn telefoonboeken schaalbaar maar kladjes niet. Schaalbaarheid van routing is het toepassen van schaalbaarheid op het probleem van het bezorgen van pakketten naar de juiste bestemming via internet.


Schaalbaarheid in gegevensroutering

Schaalbaarheid van routing bestaat uit twee problemen: het managementvlak en het datavlak.

Het gegevensvlak is de centrale of gedistribueerde module in een router die inkomende pakketten neemt en deze doorstuurt naar de volgende router op weg naar hun bestemming. Deze functie moet voor elk doorgestuurd pakket de volgende hop in de doorstuurtabel vinden. De twee belangrijkste mechanismen om dit te doen zijn een TCAM, een gespecialiseerd geheugen met ingebouwde hardware-ondersteuning om er doorheen te zoeken, en regelmatig geheugen dat wordt gezocht met behulp van geavanceerde algoritmen. De snelheid van de opzoekingen neemt niet af naarmate de tabel groter wordt. De TCAM of geheugengrootte gaat echter lineair omhoog (of iets sneller dan die voor de multi-level lookups), wat de kosten en het stroomverbruik verhoogt. Naarmate het aantal opzoektabellen per seconde toeneemt, moeten bovendien duurdere en energieverslindende technologieën worden gebruikt. Dergelijke stijgingen zijn onvermijdelijk naarmate de snelheden van de interface stijgen, maar hangen ook af van de gemiddelde of slechtste pakketgroottes en het aantal interfaces per apparaat of per blade / module in bepaalde routerarchitecturen.


Tijdens de Internet Architecture Routing and Addressing-workshop in 2006 in Amsterdam werd aangevoerd dat de vereiste geheugensnelheid hoger is dan de prestatieverhogingen van kant-en-klare componenten, vooral nu afzonderlijke SRAM's niet meer algemeen worden gebruikt. Voorheen gebruikten computers high-speed SRAM als geheugencache, maar tegenwoordig is die functie opgenomen in de CPU zelf, dus SRAM is niet langer een gemakkelijk verkrijgbare commodity-chip meer. Dit betekent dat de kosten voor de allerbeste routers veel sneller zullen stijgen dan ze tot nu toe zijn geweest. Na de IAB-routerings- en adresseringsworkshop zijn er echter verschillende routerleveranciers naar voren gekomen en hebben ze in gesprekken en op mailinglijsten verklaard dat dit probleem op dit moment niet onmiddellijk optreedt en dat groei op de momenteel voorspelde niveaus in de nabije toekomst geen problemen zal opleveren.

Border Gateway-protocol

Het managementvlak bestaat uit een routeprocessor die het BGP-routeringsprotocol en gerelateerde taken uitvoert die door een router moeten worden uitgevoerd om een ​​doorstuurtabel te kunnen maken. BGP is het protocol dat ISP's en sommige andere netwerken gebruiken om elkaar te vertellen welke IP-adressen waar worden gebruikt, zodat de pakketten die voor die IP-adressen zijn bedoeld, correct kunnen worden doorgestuurd. De schaalbaarheid van BGP wordt beïnvloed door de noodzaak om updates te communiceren, ze op te slaan in de router en ze te verwerken. Op dit moment is bandbreedte om updates te verspreiden helemaal geen probleem. In de praktijk kunnen de geheugenvereisten voor het opslaan van steeds grotere BGP-tabellen een probleem vormen, dit is meestal te wijten aan implementatiebeperkingen in commercieel beschikbare routers, niet vanwege inherente technologische problemen. Een routeprocessor is eigenlijk een computer voor algemeen gebruik, die nu eenvoudig met 16 gigabytes of meer RAM kan worden gebouwd. Momenteel werkt de Route Views-openbare routeserver met 1 GB RAM en heeft ongeveer 40 volledige BGP-feeds van ongeveer 560.000 voorvoegsels elk (cijfers van december 2015).

Dit verlaat echter de verwerking. De benodigde hoeveelheid verwerking voor BGP is afhankelijk van het aantal BGP-updates en het aantal voorvoegsels per. Omdat het aantal voorvoegsels per update vrij klein is, zullen we dat aspect negeren en alleen naar het aantal updates kijken. Vermoedelijk gaat, afgezien van een autonome groei, het aantal updates lineair omhoog met het aantal prefixen. De daadwerkelijke verwerking van BGP-updates is zeer beperkt, dus het knelpunt is de tijd die nodig is om toegang te krijgen tot het geheugen voor het uitvoeren van een update. Ook tijdens de IAB-routerings- en adresseringsworkshop werd informatie gepresenteerd die aangeeft dat de toename van de DRAM-snelheid vrij beperkt is en de groei van de routingtabel niet kan bijhouden.

Doorstuurtabel synchroniseren

Afgezien van de afzonderlijke problemen met doorsturen en gegevensvlak, is er het probleem van het synchroniseren van de doorstuurtabel met de BGP / routeringstabel na updates. Afhankelijk van de architectuur van de doorstuurtabel, kan het bijwerken ervan relatief tijdrovend zijn. BGP wordt vaak beschreven als een "padvector" routeringsprotocol, zeer vergelijkbaar met afstandsvectorprotocollen. Als zodanig implementeert het een licht gewijzigde versie van het Bellman-Ford-algoritme, dat in theorie tenminste een aantal iteraties vereist gelijk aan het aantal knooppunten (in het geval van BGP: externe autonome systemen evenals interne iBGP-routers ) in de grafiek min één om te convergeren. In de praktijk gebeurt convergentie veel sneller omdat het geen haalbaar ontwerp is om het langst mogelijke pad tussen twee locaties in het netwerk te gebruiken. Een aanzienlijk aantal iteraties in de vorm van afzonderlijke updates die moeten worden verwerkt, kan echter na een enkele gebeurtenis optreden vanwege vermenigvuldigingseffecten. In het geval bijvoorbeeld dat twee AS's op twee locaties met elkaar verbinden, wordt één update in het eerste AS twee keer doorgegeven aan het tweede AS via elke interconnectiekoppeling. Dit leidt tot de volgende mogelijke opties:

Geen bugs, geen stress - Uw stapsgewijze handleiding voor het creëren van levensveranderende software zonder uw leven te vernietigen

Je kunt je programmeervaardigheden niet verbeteren als niemand om softwarekwaliteit geeft.

Dit aspect van BGP wordt door veel mensen niet expliciet erkend, hoewel studies zoals Route Flap Damping Internet Routing Convergence verergeren, wel het resulterende gedrag aanpakken.

Met het bovenstaande in gedachten kunnen we concluderen dat BGP enkele schaalproblemen heeft: het protocol en de routers die het implementeren zijn niet voorbereid op een internet waar misschien vijf miljoen en zeker 50 miljoen individuele prefixen moeten worden beheerd door BGP. De huidige groei is echter relatief stabiel op ongeveer 16% per jaar voor IPv4, dus er is geen reden tot onmiddellijke bezorgdheid. Dit geldt met name voor IPv6, dat momenteel slechts 25.000 voorvoegsels in BGP heeft.