Routing Information Protocol
aus Wikipedia, der freien Enzyklopädie
Das Routing Information Protocol (RIP) ist ein Routing-Protokoll auf Basis des Distanzvektoralgorithmus. Es dient der dynamischen Erstellung der Routingtabelle von Routern. RIP wird in den Protokollen IP und IPX benutzt.
Beim Starten eines Routers kennt dieser nur seine direkt angeschlossenen Netzwerke und sendet diese Routingtabelle an die benachbarten Router. Mit diesen Informationen ergänzt dieser Router seine Routingtabelle (es werden jedoch nur Einträge aktualisiert, die besser sind, gleichwertige neuere Routen werden nicht aktualisiert) und lernt somit, welche Netzwerke jeweils über welchen Router aus erreicht werden können und welche Kosten damit verbunden sind. Um Änderungen im Netzwerk (Ausfall oder Start eines Routers) zu erkennen, wird das Senden der Routingtabellen – das sogenannte Advertisement – regelmäßig (alle 30 Sekunden bei IP) wiederholt, dabei wird immer die gesamte Routingtabelle an alle Nachbarn gesendet. Die Routinginformationen breiten sich relativ langsam im Netz aus, bei einer maximalen Ausdehnung des Netzes von 15 Hops beträgt sie bereits sieben Minuten. Zudem ist nicht garantiert, dass die Informationen bei den benachbarten Routern ankommen, da die Advertisements über UDP versendet werden, die Übertragung also nicht zuverlässig ist.
Die Kosten (auch Metrik) bezeichnen den Aufwand, um ein bestimmtes Netz zu erreichen. Beim Protokoll IP wird dazu allein der Hop Count verwendet; er bezeichnet die Anzahl der Router, die entlang eines Pfades bis zum Zielnetz durchlaufen werden müssen. Beim Protokoll IPX wird zusätzlich noch der Tick Count benutzt; er bezeichnet die Verzögerung eines Paketes durch alle Router bis zum Zielnetz.
Im Gegensatz zu OSPF und NLSP kennt ein RIP-Router immer nur seine direkten Nachbarn. Bei Änderungen im Netzwerk dauert es eine gewisse Zeit, bis alle Router wieder eine einheitliche Sicht auf das Netzwerk haben. Mit Erreichen dieses Zustandes spricht man von Konvergenz.
Die nur direkte Bekanntschaft seiner Nachbarn ist auch das größte Problem von RIP. Zum einen ergeben sich hohe Konvergenzzeiten und das Count-to-Infinity-Problem. Infinität bezeichnet die Unerreichbarkeit eines Ziels und wird bei RIP mit dem Hop-Count 16 angegeben.
Netz 1 - Router A ------- Router B ------- Router C
Router A erreicht das Netz 1 mit dem Hop 1, Router B mit Hop 2 über Router A und Router C mit Hop 3 über Router B und Router A.
Falls Router A ausfällt, bemerkt dies Router B und würde beim nächsten periodischen Update Router C mit Infinität (Hop 16) zu Netz 1 informieren. Falls Router C jedoch vorher seine Routingtabelle an Router B schickt, glaubt dieser, daß Router C eine Route zu Netz 1 (mit HOP 3) besitzt und übernimmt diese in seine Routingtabelle mit Hop 4, da dies besser als Hop 16 ist. Router B würde beim nächsten Austausch Hop 4 an Router C senden, dieser übernimmt diese Information und trägt Hop 5 in seine Routingtabelle ein. Somit schaukeln sich beide Router bis auf Hop 16 auf.
Mechanismen zur Vermeidung dieses Problems sind Split Horizon, Triggered Updates und (bei RIP mit IP) Split Horizon with Poisoned Reverse.
RIP erlaubt deshalb nur Netze mit einer maximalen Länge von 15 Routern (d. h. der längste Pfad darf maximal über 15 Router gehen). Außerdem hat es noch weitere Nachteile: Lange Konvergenzzeit, nur kleine bis mittlere Netze, Flutung des Netzes durch Austausch der Routingtabellen (alle 30 Sekunden bei IP, alle 60 Sekunden bei IPX) über Broadcast, keine Subnetz-Unterstützung und keine Authentifizierung. RIP wird mehr und mehr von OSPF abgelöst.
[Bearbeiten] Versionen
Es existieren drei Versionen von RIP: RIP(v1), RIPv2 und RIPng.
Die Version RIP-1 wurde 1969 als Teil des ARPANET entwickelt und verwendet den Bellman-Ford-Algorithmus.
Mit der Version RIPv2 wurden einige Einschränkungen beseitigt. Neben der möglichen Authentifizierung und der Übermittlung der RIP-Pakete per Multicast ist vor allem die Unterstützung von Subnetzen und CIDR gegeben. Da bei RIP-1 keine Netzmasken zwischen den Routern ausgetauscht werden, konnten nur Netze mit gleichen Netzmasken verbunden werden. Bei RIPv2 werden die Netzmasken übermittelt, somit sind beliebige Netzmasken verwendbar (Variable Length Subnet Mask => VLSM).
RIPng ist in RFC 2080 definiert und enthält Erweiterungen zur Unterstützung von IPv6.
[Bearbeiten] Siehe auch
[Bearbeiten] Weblinks
- RFC 1058 – RIP
- RFC 2453 – RIPv2
- RFC 2080 – RIPng
- irvtool – Ein RIP-/OSPF-Visualisierungstool (Java/GPL)