Rechnernetze
Home Nach oben RFC 1771 RFC 1772

Border Gateway Protocol

Mit der Entwicklung des Border Gateway Protocol (BGP) wurde versucht, die Probleme des EGP Protokolls zu lösen und ein Routing Protokoll zu schaffen, das fähig ist, intelligente Routingentscheidungen zu treffen. Aus diesem Grund findet gegenwärtig im Internet ein Übergang von EGP zum BGP statt.

Die Hauptaufgabe des BGP-Protokolls besteht im Austausch von Routing Information zwischen Exterior Gateways im Core Network. Für die Übertragung dieser Information verwendet das BGP Protokoll eine Network Reachability Information, die im Gegensatz zum EGP Protokoll neben der Information zur Erreichbarkeit eines bestimmten Zielnetzes noch weitere Angaben beinhaltet. Diese Angaben, die als Attribute bezeichnet werden, umfassen

Origin: Angaben über den Ursprung der Routing Information (z.B. aus einem IGP Protokoll).
AS Path: Eine Aufzählung der Autonomous Systems, die auf dem Weg zum Zielnetz zu durchqueren sind.
Next Hop: Den nächsten Router, der auf dem Weg zu einem bestimmten Ziel zu kontaktieren ist.
Unreachable: Ein Attribut, das angibt, ob eine zuvor angegebene Route noch korrekt ist.
Inter-AS Metric: Eine Maßeinheit, die ein EGP Router propagiert, um Kosten für Wege, die im Inneren seines Autonomous Systems liegen, bekannt zu geben. Diese Information darf von Routern aus anderen Autonomous Systems verwendet werden, um einen besseren Einstiegspunkt in das Autonomous System zu finden, von der die Information stammt. Ein Weiterleiten dieser Information ist jedoch nicht erlaubt.

Mit Hilfe dieser Information baut dann ein Router einen Graphen auf, der Angaben über die Erreichbarkeit und die Kosten eines bestimmten Autonomen Zielsystems enthält. Evtl. vorhandene Zyklen im Graphen werden eliminiert, so dass von einem Router aus nur ein einziger Pfad zu einem Zielnetz existiert. 

Obwohl BGP mit Hilfe des AS Path Attributs eine sehr weitgehende Sicht der Netzwerktopologie aufbaut, kann es dennoch nicht eindeutig der Klasse der Link State-Verfahren zugeordnet werden, da es an andere Router lediglich Information über Pfade weitergibt, die das BGP Protokoll selbst verwendet. Dies ist eigentlich ein Kennzeichen von Distance Vector-Verfahren. Zur Reduktion der Bandbreite, die für den Austausch von Routing Information benötigt wird, benutzt das BGP – nachdem es am Anfang seine komplette Routing Tabelle übertragen hat – nur noch Update Information, die Veränderungen im Netzwerk beschreiben. Liegen keine Veränderungen im Netzwerk vor, werden in festgelegten zeitlichen Abständen sogenannte Keep Alive-Messages übertragen, die sicherstellen, dass ein benachbarter Router noch erreichbar ist.

Für die Übertragung der Routing Nachrichten verwendet das BGP eine TCP-Verbindung, die sicherstellt, dass Routing-Information den benachbarten Router erreicht. Dabei können neben den eigenen Sicherungsmechanismen alle Mechanismen zur Authentisierung verwendet werden, die das Protokoll der Transportschicht zur Verfügung stellt. Das BGP verwendet intern sehr unterschiedliche Mechanismen zur Authentisierung, die auch in ihrer Komplexität stark variieren. Als Teil des BGP-Mechanismus zur Authentisierung erlaubt das Protokoll z.B. die Versendung von digitalen Unterschriften, die in den BGP-Nachrichten vorhanden sind.

Durch weitere Mechanismen erlaubt es BGP dem Manager, bestimmte Strategien aufzustellen. Hierzu gehört die Möglichkeit, dass Außenstehende nur bestimmte Routen erfahren, damit die innere Struktur eines Netzes nicht offengelegt wird, was gewisse Angriffen verhindern kann. Außerdem kann jedes Autonome Systeme selbst bestimmen, ob es als Transitsystem verwendet wird und Datenverkehr durchleitet, der nicht für das eigene Autonome System bestimmt ist, oder ob es als Stub-System arbeitet, welches keinen externen Datenverkehr durchleitet. Voraussetzung um als Transitsystem zu arbeiten ist natürlich, dass ein Autonomes System mindestens zwei Gateways zum Corenetwork besitzt. Autonome Transitsysteme werde auch als Interner Service Provider (ISP) bezeichnet.

 
BGP baut nur Routen-Information zwischen Autonomen Systemen auf.
Es werden weder Rounting-Metriken noch Details über Router auf dem Weg zum Empfänger ausgegeben.
BGP erlaubt die Spezifikation von Strategien zur Beschränkung der Informationspreisgabe.
BGP erlaubt es, dass ein Autonomous System nicht als Transitsystem arbeitet.
BGP garantiert einen zuverlässigen Transport.