Zum Hauptinhalt springen

5.1. Choosing EBGP as the Routing Protocol (Wahl von EBGP als Routing-Protokoll)

5.1. Choosing EBGP as the Routing Protocol (Wahl von EBGP als Routing-Protokoll)

REQ2 würde der Auswahl eines einzelnen Routing-Protokolls den Vorzug geben, um Komplexität und Abhängigkeiten zu reduzieren. Während es in dieser Situation üblich ist, sich auf ein IGP zu verlassen, manchmal mit der Hinzufügung von EBGP am WAN-Grenzgerät oder Internal BGP (IBGP) durchgehend, schlägt dieses Dokument die Verwendung eines reinen EBGP-Designs vor.

Obwohl EBGP das Protokoll ist, das für fast alle Inter-Domain-Routing im Internet verwendet wird und breite Unterstützung sowohl von Anbieter- als auch von Dienstanbieter-Communities hat, wird es im Allgemeinen nicht als primäres Routing-Protokoll im Rechenzentrum aus einer Reihe von Gründen (von denen einige miteinander zusammenhängen) eingesetzt:

  • BGP wird als "nur WAN-Protokoll" wahrgenommen und nicht oft für Unternehmens- oder Rechenzentrums-Anwendungen in Betracht gezogen.

  • Es wird angenommen, dass BGP im Vergleich zu IGPs eine "viel langsamere" Routing-Konvergenz aufweist.

  • Großmaßstäbliche BGP-Deployments verwenden typischerweise ein IGP für die BGP-Next-Hop-Auflösung, da nicht alle Knoten in der IBGP-Topologie direkt verbunden sind.

  • BGP wird als erforderlich erheblichen Konfigurationsaufwand wahrgenommen und unterstützt keine automatische Nachbarerkennung.

Dieses Dokument diskutiert einige dieser Wahrnehmungen, insbesondere im Hinblick auf das vorgeschlagene Design, und hebt einige der Vorteile der Verwendung des Protokolls hervor, wie zum Beispiel:

  • BGP hat weniger Komplexität in Teilen seines Protokolldesigns -- interne Datenstrukturen und Zustandsmaschine sind im Vergleich zu den meisten Link-State-IGPs wie OSPF einfacher. Beispielsweise verlässt sich BGP einfach auf TCP als zugrunde liegendes Transport, anstatt Nachbarschaftsbildung, Nachbarschaftserhaltung und/oder Flusskontrolle zu implementieren. Dies erfüllt REQ2 und REQ3.

  • Der BGP-Informations-Flooding-Overhead ist im Vergleich zu Link-State-IGPs geringer. Da jeder BGP-Router nur den ausgewählten besten Pfad berechnet und propagiert, wird ein Netzwerkausfall maskiert, sobald der BGP-Sprecher einen alternativen Pfad findet, der existiert, wenn hochsymmetrische Topologien wie Clos mit einem reinen EBGP-Design gekoppelt werden. Im Gegensatz dazu ist der Ereignis-Propagationsbereich eines Link-State-IGP ein gesamter Bereich, unabhängig vom Fehlertyp. Auf diese Weise erfüllt BGP REQ3 und REQ4 besser. Es ist auch erwähnenswert, dass alle weit verbreiteten Link-State-IGPs periodische Aktualisierungen von Routing-Informationen aufweisen, während BGP keinen Routing-Zustand ablaufen lässt, obwohl dies selten moderne Router-Kontrollplanen beeinflusst.

  • BGP unterstützt Drittanbieter (rekursiv aufgelöste) Next Hops. Dies ermöglicht die Manipulation von Multipath, um nicht ECMP-basiert oder Forwarding-basiert auf anwendungsdefinierten Pfaden zu sein, durch Einrichtung einer Peering-Sitzung mit einem Anwendungs-"Controller", der Routing-Informationen in das System einspeisen kann, wodurch REQ5 erfüllt wird. OSPF bietet ähnliche Funktionalität unter Verwendung von Konzepten wie "Forwarding Address", aber mit größeren Schwierigkeiten bei der Implementierung und weitaus weniger Kontrolle über den Informationspropagationsbereich.

  • Unter Verwendung eines klar definierten Autonomous System Number (ASN) Zuordnungsschemas und standardmäßiger AS_PATH-Schleifenerkennung kann "BGP-Pfadjagd" (siehe [JAKMA2008]) kontrolliert werden und komplexe unerwünschte Pfade werden ignoriert. Siehe Abschnitt 5.2 für ein Beispiel eines funktionierenden ASN-Zuordnungsschemas. In einem Link-State-IGP würde das Erreichen desselben Ziels Multi-(Instanz/Topologie/Prozess)-Unterstützung erfordern, die typischerweise nicht in allen DC-Geräten verfügbar und ziemlich komplex zu konfigurieren und zu beheben ist. Bei Verwendung einer traditionellen einzelnen Flooding-Domäne, die die meisten DC-Designs verwenden, können unter bestimmten Fehlerbedingungen unerwünschte lange Pfade ausgewählt werden, z.B. das Durchqueren mehrerer Tier-2-Geräte.

  • EBGP-Konfiguration, die mit minimaler Routing-Policy implementiert wird, ist einfacher zu beheben für Netzwerk-Erreichbarkeitsprobleme. In den meisten Implementierungen ist es einfach, den Inhalt des BGP Loc-RIB anzuzeigen und ihn mit der Routing Information Base (RIB) des Routers zu vergleichen. Darüber hinaus kann ein Operator in den meisten Implementierungen die Adj-RIB-In- und Adj-RIB-Out-Strukturen jedes BGP-Nachbarn anzeigen, und daher können eingehende und ausgehende Network Layer Reachability Information (NLRI) Informationen auf beiden Seiten einer BGP-Sitzung leicht korreliert werden. Somit erfüllt BGP REQ3.