Border Gateway-Protokoll und Routing-Skalierbarkeit

Autor: Roger Morrison
Erstelldatum: 21 September 2021
Aktualisierungsdatum: 10 Kann 2024
Anonim
BGP: Border Gateway Protocol - Computerphile
Video: BGP: Border Gateway Protocol - Computerphile

Inhalt


Wegbringen:

Die Skalierbarkeit des Routings kann durch das Border Gateway-Protokoll erheblich unterstützt werden, mit dessen Hilfe Pakete effizienter geroutet werden können.

In der Informatik ist ein wichtiges Konzept Skalierbarkeit, oder wie gut die Bearbeitung einer bestimmten Aufgabe mit zunehmender Größe der Aufgabe funktioniert. Das Schreiben von Telefonnummern auf Papier funktioniert beispielsweise recht gut, wenn Sie ein Dutzend Telefonnummern im Auge behalten müssen: Es dauert nur zehn Sekunden, um eine bestimmte Nummer zu finden. Aber für eine Stadt mit 100.000 Einwohnern dauert es jetzt hunderttausend Sekunden (ungefähr einen Tag), um eine Nummer zu finden. Wenn Sie ein Telefonbuch für eine Stadt mit 100.000 Einwohnern verwenden, dauert es ungefähr eine halbe Minute, um eine Telefonnummer zu finden, die zu einem bestimmten Namen passt. Der große Vorteil ist nicht, dass die Verwendung eines Buches viel schneller ist als die Verwendung einzelner Papierfetzen, sondern dass Sie, wenn Sie die Größe des Problems verdoppeln, nicht den Arbeitsaufwand verdoppeln, um es zu lösen: Durchsuchen eines Telefons Ein doppelt so großes Buch dauert nur ein paar Sekunden länger: Ist der Name, nach dem ich suche, in der ersten Hälfte der zweiten Hälfte? Es dauert nicht doppelt so lange und daher sind Telefonbücher skalierbar, Botschaften jedoch nicht. Bei der Routing-Skalierbarkeit wird der Begriff der Skalierbarkeit auf das Problem angewendet, dass Pakete über das Internet an das richtige Ziel gesendet werden.


Skalierbarkeit beim Datenrouting

Die Routing-Skalierbarkeit besteht aus zwei Aspekten: der Verwaltungsebene und der Datenebene.

Die Datenebene ist das zentrale oder verteilte Modul in einem Router, das eingehende Pakete auf dem Weg zum Ziel an den nächsten Router weiterleitet. Diese Funktion muss für jedes weitergeleitete Paket den nächsten Hop in der Weiterleitungstabelle finden. Die beiden Hauptmechanismen hierfür sind ein TCAM, ein spezialisierter Speicher mit integrierter Hardware-Unterstützung für das Durchsuchen und ein regulärer Speicher, der unter Verwendung erweiterter Algorithmen durchsucht wird. Die Geschwindigkeit der Suchvorgänge nimmt mit zunehmender Tabellengröße nicht ab. Die TCAM- oder Speichergröße steigt jedoch linear an (oder etwas schneller als bei mehrstufigen Suchvorgängen), was die Kosten und den Stromverbrauch erhöht. Darüber hinaus müssen mit zunehmender Anzahl von Weiterleitungstabellensuchen pro Sekunde teurere und leistungshungrige Technologien verwendet werden. Solche Erhöhungen sind mit zunehmender Schnittstellengeschwindigkeit unvermeidbar, hängen jedoch auch von der durchschnittlichen oder ungünstigsten Paketgröße und der Anzahl der Schnittstellen pro Gerät oder pro Blade / Modul in bestimmten Router-Architekturen ab.


Während des 2006 in Amsterdam abgehaltenen Workshops zum Thema Routing und Adressierung der Internetarchitektur wurde argumentiert, dass die erforderliche Speichergeschwindigkeit die Leistungssteigerungen bei Standardkomponenten übersteigt, insbesondere jetzt, wo separate SRAMs nicht mehr weit verbreitet sind. Früher verwendeten Computer Hochgeschwindigkeits-SRAM als Speicher-Cache, aber heutzutage ist diese Funktion in der CPU selbst enthalten, so dass SRAM nicht länger ein leicht verfügbarer Commodity-Chip ist. Dies bedeutet, dass die Kosten für die High-End-Router viel schneller steigen als bisher. Nach dem IAB-Workshop zum Thema Routing und Adressierung haben jedoch mehrere Routerhersteller in Gesprächen und auf Mailinglisten festgestellt, dass dieses Problem derzeit nicht sofort auftritt und dass das Wachstum auf den derzeit prognostizierten Niveaus in absehbarer Zukunft keine Probleme bereiten wird.

Border Gateway Protokoll

Die Verwaltungsebene besteht aus einem Routenprozessor, der das BGP-Routing-Protokoll und zugehörige Aufgaben ausführt, die von einem Router ausgeführt werden müssen, um eine Weiterleitungstabelle erstellen zu können. BGP ist das Protokoll, mit dem ISPs und einige andere Netzwerke sich gegenseitig mitteilen, welche IP-Adressen wo verwendet werden, damit die für diese IP-Adressen bestimmten Pakete korrekt weitergeleitet werden können. Die BGP-Skalierbarkeit wird durch die Notwendigkeit beeinflusst, Updates zu kommunizieren, im Router zu speichern und zu verarbeiten. Derzeit ist die Bandbreite für die Weitergabe von Updates kein Problem. In der Praxis kann der Speicherbedarf zum Speichern immer größerer BGP-Tabellen ein Problem darstellen. Dies ist normalerweise auf Implementierungsbeschränkungen bei im Handel erhältlichen Routern und nicht auf inhärente technologische Probleme zurückzuführen. Ein Routenprozessor ist im Grunde ein Allzweckcomputer, der jetzt problemlos mit 16 Gigabyte oder mehr RAM gebaut werden kann. Derzeit wird der öffentliche Routenserver von Route Views mit 1 GB RAM betrieben und verfügt über ca. 40 vollständige BGP-Feeds mit jeweils ca. 560.000 Präfixen (Stand Dezember 2015).

Dies verlässt jedoch die Verarbeitung. Der für BGP erforderliche Verarbeitungsaufwand hängt von der Anzahl der BGP-Aktualisierungen und der Anzahl der Präfixe pro ab. Da die Anzahl der Präfixe pro Update eher gering ist, werden wir diesen Aspekt ignorieren und uns nur die Anzahl der Updates ansehen. Abgesehen von einem autonomen Wachstum steigt die Anzahl der Aktualisierungen vermutlich linear mit der Anzahl der Präfixe. Die tatsächliche Verarbeitung von BGP-Aktualisierungen ist sehr begrenzt, sodass der Engpass die Zeit ist, die für den Speicherzugriff zum Ausführen einer Aktualisierung erforderlich ist. Auch während des IAB-Workshops zum Thema Routing und Adressierung wurden Informationen präsentiert, die darauf hinweisen, dass die Erhöhung der DRAM-Geschwindigkeit recht begrenzt ist und nicht mit dem Wachstum der Routingtabelle mithalten kann.

Tabellensynchronisierung weiterleiten

Abgesehen von den separaten Problemen mit Weiterleitung und Datenebene besteht das Problem, dass die Weiterleitungstabelle nach Aktualisierungen mit der BGP / Routing-Tabelle synchronisiert wird. Abhängig von der Architektur der Weiterleitungstabelle kann die Aktualisierung relativ zeitaufwendig sein. BGP wird oft als "Pfadvektor" -Routing-Protokoll beschrieben, das Distanzvektor-Protokollen sehr ähnlich ist. Als solches implementiert es eine leicht modifizierte Version des Bellman-Ford-Algorithmus, die theoretisch mindestens eine Anzahl von Iterationen erfordert, die der Anzahl von Knoten entspricht (im Fall von BGP: externe autonome Systeme sowie interne iBGP-Router) ) in der Grafik minus eins zu konvergieren. In der Praxis erfolgt die Konvergenz viel schneller, da es nicht praktikabel ist, einen möglichst langen Pfad zwischen zwei Standorten im Netzwerk zu verwenden. Aufgrund von Multiplikationseffekten kann jedoch nach einem einzelnen Ereignis eine erhebliche Anzahl von Iterationen in Form eindeutiger Aktualisierungen auftreten, die verarbeitet werden müssen. In dem Fall, in dem zwei AS an zwei Orten miteinander verbunden sind, wird beispielsweise eine Aktualisierung in dem ersten AS zweimal über jede Verbindungsverbindung zu dem zweiten AS übertragen. Dies führt zu folgenden möglichen Optionen:

Keine Bugs, kein Stress - Ihre schrittweise Anleitung zur Erstellung lebensverändernder Software, ohne Ihr Leben zu zerstören

Sie können Ihre Programmierkenntnisse nicht verbessern, wenn sich niemand um die Softwarequalität kümmert.

Dieser Aspekt der BGP wird von vielen Menschen nicht explizit erkannt, obwohl Studien wie "Route Flap Damping Exacerbates Internet Routing Convergence" das resultierende Verhalten ansprechen.

Vor diesem Hintergrund können wir den Schluss ziehen, dass BGP einige Skalierungsprobleme aufweist: Das Protokoll und die Router, die es implementieren, sind nicht für ein Internet vorbereitet, in dem möglicherweise fünf Millionen und sicherlich 50 Millionen einzelne Präfixe von BGP verwaltet werden müssen. Das derzeitige Wachstum für IPv4 ist jedoch mit etwa 16% pro Jahr relativ stabil, sodass kein Grund zur unmittelbaren Besorgnis besteht. Dies gilt insbesondere für IPv6, das derzeit nur 25.000 Präfixe in BGP enthält.