Distanzvektor-Routing: Ablauf und Routingloops
Beim Distanzvektor-Routing kennt ein Router zunächst nur seine direkten Nachbarn. Er erfährt von ihnen, wie weit entfernte Ziele nach deren aktuellem Wissen entfernt sind. Daraus berechnet er seine jeweils günstigste Route.
Du lernst, wie diese Berechnung funktioniert, wann ein Netz konvergiert und warum veraltete Informationen Routingloops auslösen können.
Hake ab, was du schon kannst — und komm am Ende hierher zurück!
Woraus besteht ein Distanzvektor?
Eine Routingtabelle enthält die bekannten Wege zu Zielnetzen. Für eine Route sind besonders zwei Angaben wichtig:
- Die Distanz beschreibt die Kosten bis zum Ziel.
- Der Vektor gibt die Richtung an, also den nächsten Router auf dem Weg. Dieser Router heißt Next Hop.
Routingmetrik
Eine Routingmetrik ist die Größe, mit der ein Protokoll Wege bewertet. Je nach Protokoll können unterschiedliche Kosten verwendet werden. RIP berücksichtigt die Anzahl der Hops.
Ein Hop ist eine Router-Zwischenstation auf dem Weg zum Ziel. Die kleinste Hop-Anzahl ist nicht für jedes Routingprotokoll automatisch der beste Weg: Welche Route bevorzugt wird, hängt von der verwendeten Metrik ab.
Distanzvektor-Router tauschen ihre Informationen nur mit direkten Nachbarn aus. Daher besitzt jeder Router eine lokale Sicht auf das Netz. Er kennt nicht zwingend die vollständige Topologie.
Das Grundprinzip lautet: Jeder Router teilt seinen Nachbarn mit, wie er die Entfernungen zu den Zielen momentan einschätzt.
Wie berechnet ein Router einen neuen Weg?
Zu Beginn trägt ein Router die Kosten seiner direkten Verbindungen ein. Noch unbekannte Ziele erhalten gedanklich den Wert unendlich. Danach verarbeitet er die Distanzangaben seiner Nachbarn.
Für Router $x$, seinen Nachbarn $v$ und das Ziel $y$ lautet ein Aktualisierungsschritt:
$$D_x(y)=\min\bigl(D_x(y),\,c(x,v)+D_v(y)\bigr)$$
Dabei bedeutet:
- $D_x(y)$: bisher beste bekannte Distanz von $x$ nach $y$,
- $c(x,v)$: direkte Kosten von $x$ zum Nachbarn $v$,
- $D_v(y)$: von $v$ gemeldete Distanz zum Ziel $y$.
Der Router addiert also die Kosten bis zum Nachbarn und die vom Nachbarn gemeldeten Restkosten. Dann vergleicht er diesen Kandidaten mit seinem bisherigen Wert.
Router A erreicht seinen Nachbarn B mit Kosten 3. B meldet für das Ziel D die Kosten 13.
Der Weg über B hätte für A daher die Kosten
$$3+13=16.$$
A übernimmt den Wert 16 nur, wenn er kleiner als der bisher beste bekannte Wert zu D ist. Wird die Route übernommen, ist B der Next Hop.
Wähle in jeder Lücke die passende Form und prüfe anschließend deine Antworten.
Ein Distanzvektor-Router tauscht Angaben mit seinen aus. Für einen Weg über einen Nachbarn werden die direkten Verbindungskosten und dessen gemeldete Distanz . Anschließend wird der Kandidat mit dem bisherigen Wert .
Wann ist das Netz konvergiert?
Nach jeder neuen Meldung prüft ein Router seine bekannten Wege. Ändert sich ein bester Weg, verbreitet er die neue Information. Dieser Austausch wird wiederholt.
Konvergenz
Ein Routingverfahren ist konvergiert, wenn die Router keine neuen Informationen mehr erhalten, die ihre jeweils besten Wege ändern.
Im beschriebenen Netz mit den Routern A bis D läuft die Anpassung aus Sicht von A so ab:
- Bei $T=0$ kennt A nur die direkten Wege zu B mit Kosten 3 und zu C mit Kosten 23.
- Bei $T=1$ verarbeitet A die Meldungen von B und C. Dadurch entstehen neue beste Wege zu C und D.
- Bei $T=2$ meldet B einen günstigeren Weg zu D. A übernimmt und verbreitet ihn.
- Bei $T=3$ ändert keine neue Meldung mehr einen besten Weg. Das Netz ist konvergiert.
Warum entsteht Count-to-Infinity?
Nach einer Verschlechterung oder einem Ausfall können noch alte Distanzangaben im Netz unterwegs sein. Zwei Router können sich dann gegenseitig scheinbar gültige Wege bestätigen, obwohl diese Wege eine Schleife bilden.
Routingloop
Bei einem Routingloop führen die gespeicherten Weiterleitungsentscheidungen ein Paket wiederholt durch dieselben Router, statt es zum Ziel zu bringen.
Die Verbindung C–D wird drastisch teurer. A kennt noch einen vermeintlich günstigen Weg zu D über B.
B hat zuvor von A die Distanz 10 zu D erhalten. Weil B A mit Kosten 3 erreicht, berechnet B:
$$3+10=13.$$
Hinter diesem Wert steckt jedoch der schleifenförmige Weg B–A–B–C–D. B erkennt aus der reinen Distanzangabe nicht, dass sein eigener Router bereits im angenommenen Weg vorkommt.
Nun meldet B die Kosten 13 an A. A erreicht B mit Kosten 3 und berechnet:
$$3+13=16.$$
A meldet später wieder einen erhöhten Wert. So wachsen die Kosten schrittweise, anstatt die starke Verschlechterung oder Unerreichbarkeit sofort korrekt abzubilden. Dieses langsame Hochzählen heißt Count-to-Infinity.
Gute Nachrichten über günstigere Wege verbreiten sich leicht. Schlechte Nachrichten über ausgefallene oder viel teurere Wege können beim Distanzvektor-Routing deutlich langsamer sichtbar werden.
Wie lassen sich Schleifen begrenzen?
Split Horizon verhindert, dass eine gelernte Pfadinformation über dasselbe Interface zurückgemeldet wird, über das sie empfangen wurde. Damit lassen sich vor allem direkte Schleifen zwischen zwei Routern verhindern.
Split Horizon löst nicht jedes Problem. Längere Schleifen mit mehreren beteiligten Routern können weiterhin entstehen.
Bei Triggered Updates wartet ein Router nach einer relevanten Routenänderung nicht bis zum nächsten regelmäßigen Austausch. Er sendet sofort eine Teilaktualisierung. Veraltete Informationen sollen dadurch schneller verschwinden.
Split Horizon und Triggered Updates begrenzen Risiken, garantieren aber nicht, dass jede mögliche Schleife sofort verschwindet.
RIP als Beispiel
RIP ist ein Distanzvektorprotokoll und verwendet die Hop-Anzahl als Metrik. Ein Metrikwert von 16 gilt als unendlich beziehungsweise unerreichbar; erreichbar sind damit höchstens Werte bis 15. Nachbarn tauschen ihre Routinginformationen regelmäßig im Abstand von 30 Sekunden aus. Triggered Updates ergänzen diesen regelmäßigen Austausch bei Änderungen.
Karteikasten
Überlege zuerst selbst und drehe die Karte anschließend zum Prüfen um.
Alles auf einen Blick
- Distanzvektor-Routing
- Lokale Sicht
- Austausch mit direkten Nachbarn
- Distanz und Next Hop
- Berechnung
- Direkte Kosten plus gemeldete Restdistanz
- Günstigsten Kandidaten übernehmen
- Stabiler Zustand
- Wiederholte Aktualisierung
- Konvergenz ohne weitere Änderungen
- Störungen
- Veraltete Meldungen
- Routingloops und Count-to-Infinity
- Begrenzung
- Split Horizon gegen kurze Schleifen
- Triggered Updates für schnellere Änderungen
- RIP
- Hop-Anzahl als Metrik
- 16 gilt als unerreichbar
- Lokale Sicht
Abschluss-Check
Wenn du die drei Abschlussfragen begründen kannst, kannst du Distanzvektor-Routing nicht nur beschreiben, sondern auch einen Aktualisierungsschritt berechnen und eine typische Störung diagnostizieren.
Mit Google fortfahren