- | Anwendung | BGP | - | Transport | TCP | - | Netzwerk | IP | - | Netzzugang | Ethernet | Token Ring | FDDI | ... |
BGP ist ein sogenanntes „Pfadvektor-Protokoll“ (englisch path vector protocol): Seine Funktionsweise ist stark an Distanzvektorprotokolle wie z.B. RIP angelehnt, jedoch wird dem dort vorkommenden Problem der Routingschleifen (Routingschleife bedeutet, dass ein IP-Paket auf seinem Weg durch das Internet ein- und dasselbe AS mehrmals passiert) effektiv vorgebeugt: Ein BGP-Router teilt beim Senden von Verfügbarkeitsinformationen („Updates“) dem Kommunikationspartner nicht nur mit, dass er einen bestimmten Abschnitt des Internet erreichen kann, sondern auch die komplette Liste aller AS, die IP-Pakete bis zu diesem Abschnitt passieren müssen (sein eigenes AS steht dabei an erster Stelle, das Ziel-AS letzter). Merkt der Kommunikationspartner nun, dass das AS, dem er selbst angehört, bereits in dieser Liste vorhanden ist, verwirft er dieses Update und vermeidet so, dass eine Routingschleife entsteht.
Die Stärke des BGP-Protokolls liegt darin, verschiedene optionale Routing-Pfade in einer einzigen Routing-Tabelle zu vereinen. Das Border-Gateway-Protokoll, welches das derzeit einzige eingesetzte Exterior Gateway Protokoll ist, ist ein Protokoll für das Routing zwischen autonomen Systemen (AS); man spricht bei dieser Verwendung von external BGP (eBGP).
BGP kann jedoch auch innerhalb eines autonomen Systems angewendet werden. Typischerweise geschieht dies, um die „von außen“ (=via eBGP) gelernten Routen an die anderen Router des eigenen AS' zu propagieren; man spricht bei dieser Verwendung von internal BGP (iBGP). Beim Einsatz innerhalb eines autonomen Systems müssen BGP-Verbindungen („BGP-Sessions“) zwischen allen Routern des AS eingerichtet werden (genauer: zwischen ihren Loopbackadressen), so dass eine vollständige Vermaschung (full mesh) entsteht. Enthält ein autonomes System n Router, so resultiert dies also in O(n²) BGP-Verbindungen. Aufgrund der hierdurch entstehenden Skalierungsprobleme wird bei größeren Netzwerken gerne ein sog. Route Reflector (RR) eingesetzt: Jeder eBGP-Router schickt seine via eBGP gelernten Routen via iBGP an einen bestimmten Router (den Routen-Reflektor), welcher sie sammelt und wiederum via iBGP an die anderen Router im AS verteilt. Da nun jeder BGP-sprechende Router nur noch eine BGP-Verbindung zum Route Reflector halten muss, fallen insgesamt nur noch O(n) Verbindungen an.
Da jeder BGP-Router über Routen-Informationen von anderen, insbesondere der benachbarten BGP-Routern verfügt, baut sich jeder BGP-Router eine Datenbank für die Routen zu allen erreichbaren autonomen Systemen auf. Die Größe der Tabelle mit den Routen-Informationen lag Ende 2005 bei ca. 170.000 Einträgen bei über 26.000 Autonomen Systemen. Aktuelle Größe siehe z.B. http://bgp.potaroo.net/ .
Das BGP-Protokoll ist in RFC 1163 beschrieben. In der derzeit eingesetzten Version 4 ist es im RFC 1771 beschrieben. 1991 wurde im RFC 1269 die Border Gateway Protocol (Version 3) MIB veröffentlicht. Diese Variablen ermöglichen das Management von Geräten, die das BGP-Protokoll als autonomous System Routing Protocol unterstützen.
Router, welche miteinander über BGP Routinginformationen austauschen wollen, bauen zunächst eine TCP-Verbindung auf, über welche dann die BGP-Nachrichten gesendet werden. Diese Verbindung nennt man eine BGP-Session.
BGP verwendet vier verschiedene Arten von Nachrichten im Protokoll:
Kernstück von BGP ist die UPDATE-Nachricht. Mit Hilfe von UPDATEs teilen sich Router die Existenz neuer Routen (sog. Announcements) bzw. den Wegfall bestehender Routen (sog. Withdrawals) mit. Der Empfänger einer UPDATE-Nachricht entscheidet anhand seiner Routing-Policys, ob er sein Routing umstellt (und daraufhin selbst UPDATEs versenden muss), ob er das UPDATE einfach nur weiterleitet (z.B. via iBGP), oder ob er die Nachricht schlicht ignoriert.
Eine Route in BGP hat mehrere Attribute; im Folgenden werden die wichtigsten erklärt.
Sehr oft kommt es vor, dass ein Router zum selben Ziel verschiedene Routen mitgeteilt bekommt. Die Auswahl der Route, für welche er sich letztendlich entscheidet, ist als BGP Route Selection Process standardisiert worden. Allerdings hat der Netzwerkbetreiber großen Einfluss auf den Ausgang dieses Routenselektionsprozesses durch die Wahl geeigneter Parameter im Router.
BGP weist prinzipbedingt eine Reihe von Mängeln auf:
Darüberhinaus weist BGP eine Reihe seltsamer Phänomene auf, deren Ursachen oft vielschichtig und nur teilweise verstanden sind:
Border Gateway Protocol | Border Gateway Protocol | BGP | Border Gateway Protocol | BGP | Border Gateway Protocol | ボーダ・ゲートウェイ・プロトコル | Border Gateway Protocol | BGP | Border Gateway Protocol | Border Gateway Protocol | Border Gateway Protocol | BGP
This article is licensed under the GNU Free Documentation License.
It uses material from the
"Border Gateway Protocol".
Home Page • arts • business • computers • games • health • hospitals • home • kids & teens • news • physicians • recreation• reference • regional • science • shopping • society • sports • world