Definition

BGP (Border Gateway Protocol)

Was ist das Border Gateway Protocol (BGP)?

BGP (Border Gateway Protocol) ist das Protokoll, das dem globalen Routing-System des Internets zugrunde liegt. Es verwaltet die Weiterleitung von Paketen von Netzwerk zu Netzwerk durch den Austausch von Routing- und Erreichbarkeitsinformationen zwischen Edge-Routern.

BGP leitet Pakete zwischen autonomen Systemen (AS) weiter, das heißt zwischen Netzwerken, die von einem einzigen Unternehmen oder Dienstanbieter verwaltet werden. Zusammen bilden diese AS das öffentliche Internet.

BGP sorgt für die Stabilität des Netzes, indem es garantiert, dass sich Router an Routenausfälle anpassen können.Wenn ein Pfad ausfällt, findet BGP schnell einen neuen Pfad. BGP trifft Routing-Entscheidungen auf der Grundlage von Pfaden, die durch Regeln oder Netzwerkrichtlinien definiert sind, die von Netzwerkadministratoren festgelegt wurden.

Wie funktioniert BGP?

Jeder Router unterhält eine Routing-Tabelle, die steuert, wie Pakete weitergeleitet werden. Der BGP-Prozess auf dem Router generiert Routing-Tabelleninformationen, die auf den folgenden Faktoren basieren:

  • Eingehende Informationen von anderen Routern.
  • Informationen in der BGP Routing Information Base (RIB), einer Datentabelle, die auf einem Server auf dem BGP-Router gespeichert ist.

Die RIB enthält Informationen sowohl von direkt verbundenen externen Peers als auch von internen Peers. Die RIB verfügt über Richtlinien, die festlegen, welche Routen verwendet und welche Informationen veröffentlicht werden sollen. Sie aktualisiert die Routing-Tabelle kontinuierlich, wenn Änderungen auftreten.

Wofür wird BGP verwendet?

BGP sorgt für Redundanz, indem es Routern ermöglicht, sich schnell anzupassen und Pakete über eine andere Verbindung zu senden, wenn ein Internetpfad ausfällt. Es wird häufig in großen Netzwerken eingesetzt, zum Beispiel in denen von Internet Service Providern (ISP), Weitverkehrsnetzen (WAN) und IaaS-Umgebungen.

BGP ist ein Exterior-Gateway-Protokoll (EGP), das heißt, es ist darauf ausgelegt, Routing-Informationen zwischen verschiedenen AS auszutauschen. Alternativ dazu sendet ein Interior-Gateway-Protokoll (IGP) Informationen innerhalb eines einzelnen AS. Internes BGP (iBGP) ist jedoch verfügbar, um Erreichbarkeitsinformationen innerhalb des Netzwerks einer Organisation zu senden.

Jeder BGP-Router unterhält eine Standard-Routing-Tabelle, die dazu dient, Pakete während der Übertragung zu leiten. BGP verwendet eine Client-Server-Topologie zur Übermittlung von Routing-Informationen, wobei der Client eine BGP-Sitzung initiiert, indem er eine Anfrage an den Server sendet.

Grundlagen des BGP-Routing

BGP sendet aktualisierte Router-Tabelleninformationen nur, wenn sich etwas ändert, und auch nur die betroffenen Informationen. BGP hat keinen automatischen Erkennungsmechanismus, was bedeutet, dass Verbindungen zwischen Peers manuell aufgebaut werden müssen, wobei die Adressen der Peers an beiden Enden einprogrammiert werden.

BGP trifft Entscheidungen über den besten Pfad auf der Grundlage der folgenden Attribute:

  • Höchste Gewichtung.
  • Aktuelle Erreichbarkeit.
  • Hop-Zahlen.
  • Lokale Präferenz.
  • Ältester Pfad.

In Situationen, in denen mehrere Pfade verfügbar sind, wie zum Beispiel innerhalb einer großen Hosting-Einrichtung, kommunizieren BGP-Richtlinien die Präferenzen einer Organisation, welchen Pfad der Datenverkehr ein- und ausgehen soll. BGP-Community-Tags können das Verhalten bei der Bekanntgabe von Routen zwischen Peers steuern.

BGP in Netzwerken basiert auf TCP/IP. Es arbeitet auf der OSI-Transportschicht (Layer 4), um die Netzwerkschicht (Layer 3) zu steuern.

Wie in RFC 4271 beschrieben und 2006 ratifiziert, unterstützt die aktuelle Version von BGP-4 sowohl IPv6 als auch Classless Inter-Domain Routing (CIDR), was die weitere Nutzung von IPv4 ermöglicht. Die Verwendung von CIDR ist eine Möglichkeit, mehr Adressen innerhalb des Netzes zu verwenden als mit dem aktuellen IP-Adressenzuweisungsschema.

Abbildung 1: Die Teilnehmer können BGP nur dort einsetzen, wo es benötigt wird, zum Beispiel an Peering Points und ausgewählten Core Routern.
Abbildung 1: Die Teilnehmer können BGP nur dort einsetzen, wo es benötigt wird, zum Beispiel an Peering Points und ausgewählten Core Routern.

Häufige BGP-Probleme

Zu den häufigen Problemen mit BGP gehören Fehler beim Informationsaustausch. Der Informationstransfer ist nicht immer erfolgreich, da die Informationen nicht richtig formatiert sein oder falsche Daten enthalten können. Bei Routern kann der Arbeitsspeicher oder der Speicherplatz knapp werden, oder sie reagieren zu langsam auf Aktualisierungen. Die Router senden Fehlercodes und Subcodes, um Probleme wie Zeitüberschreitungen, fehlerhafte Anfragen und Verarbeitungsprobleme zu melden.

BGP-Sicherheit

BGP ist auch anfällig für Angriffe, die auf Fehlinformationen beruhen. Böswillige Akteure können einen Router beispielsweise in einem DoS-Angriff mit fehlerhaften Paketen überfluten. Sie können auch vorgeben, die Quelle der Routing-Informationen für ein AS zu sein, und (vorübergehend) kontrollieren, wohin der von diesem AS ausgehende Verkehr geleitet wird. Diese Praxis ist auch als BGP-Hijacking bekannt.

Unterschied zwischen internem und externem BGP sowie OSPF

Wenn BGP für das Routing innerhalb eines einzelnen AS verwendet wird, nennt man es internes BGP oder iBGP. Wird es eingesetzt, um ein AS mit anderen zu verbinden, wird es als externes BGP oder eBGP bezeichnet.

Das OSPF-Protokoll (Open Shortest Path First) wird nur in internen Netzen verwendet. OSPF konzentriert sich darauf, die kürzeste verfügbare Route zwischen Knoten zu finden und so schnell wie möglich auf diese kürzeste Route auszuweichen.

BGP eignet sich gut für Internetredundanz, WAN-Umgebungen und IaaS. OSPF ist nützlich für das LAN und Data Center.
Abbildung 2: BGP eignet sich gut für Internetredundanz, WAN-Umgebungen und IaaS. OSPF ist nützlich für das LAN und Data Center.

BGP ist langsamer bei der Suche nach einer neuen Route, aber skalierbarer als OSPF. OSPF ist im Wesentlichen hierarchisch aufgebaut, während BGP ein Mesh ist. In einigen Netzen wird OSPF durch iBGP ersetzt.

Diese Definition wurde zuletzt im Juli 2024 aktualisiert

Erfahren Sie mehr über LAN-Design und Netzwerkbetrieb