Zusammenfassung

  • Einfaches Split Horizon ließ eine Route gegenüber ihrem Lieferanten weg; Poison Reverse sandte sie mit Metrik 16 zurück und schloss den lernenden Router ausdrücklich als Rückweg aus.
  • Die negative Meldung beendet eine Schleife aus zwei Routern vor dem Timeout, vergrößert aber Updates und erkennt keinen Kreis aus drei oder mehr Teilnehmern.

Ein RFC dokumentierte laufende Praxis

RFC 1058 erschien im Juni 1988, als RIP längst im Einsatz war. Das Dokument sollte ein verbreitetes, noch nicht einheitlich beschriebenes Protokoll festhalten und Unterschiede zwischen Implementierungen ausgleichen. Unmittelbare Grundlage war das Berkeley-Unix-Programm routed; die Abstammung führte über Xerox PUP und XNS zu älteren Distanzvektorverfahren.

Darum beschreibt der RFC Stabilität nicht als abstrakten Zusatz. Ein Router besaß keine Gesamtkarte. Für jedes Ziel hielt er eine Metrik und den Nachbarn fest, dessen Meldung den besten Weg begründete. Benachbarte Systeme tauschten Entfernungen aus und trafen lokale Entscheidungen.

RIP war als internes Routingprotokoll für mäßig große, relativ homogene Netze gedacht. Der geringe Wissensbedarf erleichterte den Betrieb. Gleichzeitig trug eine Zahl nicht ihre vollständige Herkunft mit sich.

Ein Echo sah wie ein zweiter Zeuge aus

Erreicht A das Ziel D über B und verliert B seinen wirklichen Anschluss an D, kann B weiterhin eine positive Meldung von A hören. Wählt B daraufhin A, hat es keinen unabhängigen Ersatz gefunden. A wiederholt nur, was es zuvor von B gelernt hatte. A zeigt auf B und B auf A.

Beide können ihre lokale Regel korrekt anwenden und dennoch Pakete kreisen lassen. Mit jeder Wiederholung steigt die Entfernung. RIP nannte dieses Verhalten Counting to Infinity: Der Ausfall erscheint vorübergehend als immer längerer Weg.

Niemand muss täuschen. Der Fehler entsteht, weil die Nachbarschaftsmeldung nicht offenlegt, ob ihr Wert von einer früheren Aussage des Empfängers abstammt.

Sechzehn begrenzte Fehler und Reichweite

RIP erklärte 16 zur Unendlichkeit und ließ damit nur Metriken bis 15 als nutzbar gelten. Die bekannte Größenbeschränkung war zugleich ein Stabilitätsmechanismus. Eine größere Unendlichkeit könnte längere Pfade darstellen, würde aber falsche Entfernungen länger anwachsen lassen.

RFC 1058 formuliert den Zielkonflikt: Der Grenzwert muss über jeder echten Route liegen, soll aber so klein wie möglich bleiben. Die Zahl 16 ist deshalb kein weltweites Urteil über D. Sie erklärt diesen RIP-Weg in dieser Richtung und zu diesem Zeitpunkt für unbrauchbar. Ein anderer Pfad oder ein späteres Update kann gültig sein.

Schweigen verhinderte das Echo, Gift widerrief den Altbestand

Einfaches Split Horizon sendet eine gelernte Route nicht an den Nachbarn oder über die Schnittstelle zurück, von der sie stammt. Hat A D von B gelernt, fehlt D in As Update an B. Bs eigene Aussage wird nicht über A zur Bestätigung.

Poison Reverse lässt den Eintrag stehen, setzt ihn aber auf 16. A sagt B damit nicht, dass D überall verschwunden sei. Es sagt: B darf A nicht als nächsten Hop für D wählen, weil As eigener bester Weg zu B zurückführt.

Der Unterschied liegt in der Zeit. Bloßes Weglassen kann B eine alte positive Route über A bis zum Ablauf des Timers bewahren lassen. Eine eingehende 16 kann diesen Zustand sofort ersetzen. Schweigen verhindert neue Zirkulation; der explizite Widerruf verdrängt bereits gespeicherte Überzeugung.

Zusätzliche Bytes kauften schnelleren Entzug

Auf einem gemeinsamen Backbone kann ein Router viele Routen über dieselbe Schnittstelle lernen. Einfaches Split Horizon lässt sie im Rückweg alle weg. Poison Reverse führt sie als unerreichbar auf. Das Update wächst und kann im stabilen Zustand fast nur aus negativen Einträgen bestehen.

Nach einer Änderung sind diese Einträge nicht redundant. Sie überschreiben veraltete positive Zustände, ohne auf Alterung zu warten. Bandbreite wird gegen Konvergenzzeit getauscht.

RFC 1058 erlaubt daher einfache Unterdrückung, Poison Reverse, eine Betreiberwahl oder Mischformen, die nach einer Änderung zeitweise 16 senden und danach wieder schweigen. Nicht die Bedeutung der 16 ist verhandelbar, sondern Umfang und Dauer ihrer Übermittlung.

Zwei Router waren sichtbar, drei konnten sich verstecken

Zeigen A und B gegenseitig aufeinander, brechen Rückmeldungen mit 16 die Schleife sofort. Eine positive Route kann nicht bis zum Timeout im Spiegel bestehen bleiben.

Bei drei Routern verschwindet die Herkunft hinter der nächsten Ecke. A kann B wählen, B kann C wählen und C kann A wählen. Keiner sendet die Route unmittelbar positiv an den Nachbarn zurück, von dem er sie gerade gelernt hat. Dennoch besteht der Kreis. Split Horizon sieht nur die direkte Beziehung; die Metriken steigen weiter bis 16.

Triggered Updates verkürzen die Gefahr. Ändert sich die gewählte Route, wird die neue Metrik vor dem nächsten periodischen Lauf gesendet. Abhängige Nachbarn übernehmen und verbreiten die Verschlechterung. Das bleibt asynchron: Meldungen können sich verspäten, mit regulären Updates kreuzen oder auf weitere Änderungen treffen. Eine schnelle Kaskade ist keine gemeinsame Transaktion.

Widerrufen, dann löschen

Eine abgelaufene Route wurde nicht sofort entfernt. RIP markierte sie zunächst mit 16, verbreitete sie während einer Garbage-Collection-Frist und löschte erst danach den Eintrag. Sofortiges Löschen spart lokalen Zustand, korrigiert aber keine positiven Kopien bei Nachbarn.

Negative Information braucht somit eine eigene Lebenszeit. Sie darf verschwinden, aber erst nachdem sie den Zustand erreichen konnte, den sie widerruft.

Das Problem überdauerte die Adressversion

RFC 1812 machte Split Horizon für RIP-Implementierungen verpflichtend und Poison Reverse zur Empfehlung. Wegen des zusätzlichen Verkehrs blieb eine Betreiberoption zulässig; die unendlichen Rückmeldungen sollten zeitlich begrenzt werden können.

RFC 2080 übernahm die Regel in RIPng für IPv6, bevorzugte Poison Reverse und empfahl eine Auswahl pro Schnittstelle. Neue Präfixe beseitigten nicht das Risiko, eine abgeleitete Aussage als neue Evidenz zurückzubekommen.

RFC 2091 führte für Bedarfsschaltungen geordnete und bestätigte Trigger-Updates ein. Poison Reverse blieb vorgeschrieben. Zuverlässige Zustellung beweist den Empfang, nicht die Unabhängigkeit der Quelle.

RFC 2453 behielt in RIPv2 die Metrik 16, Split Horizon, Poison Reverse, Trigger und die Grenze der Zwei-Router-Schleife zusammen. Ein erweitertes Paketformat schuf keine vollständige Pfadsicht.

Was „unerreichbar“ tatsächlich belegte

Die vergiftete Route bewies nur, dass der sendende Router in diesem Empfangskontext nicht als nächster Hop dienen darf, wenn sein eigener Weg durch den Empfänger zurückführt. Sie bewies keinen globalen Ausfall, keine Erschöpfung aller Alternativen, keine Schuld und keine Absicht.

Darin liegt die historische Leistung. RIP übertrug keinen vollständigen Pfad, machte aber einen Teil der Herkunft durch Richtung, Endmetrik und Zeit entscheidbar. Es stoppte schnell die Schleife, die es sehen konnte, und benannte die längere Schleife, die außerhalb seines Blickfelds blieb.

Quellen und Beweisgrenzen

Die RFCs belegen Algorithmus und Anforderungen, nicht heutige Herstellerstandards, Einsatzanteile, die Konvergenz eines bestimmten Netzes oder Absicht hinter einer Schleife. Trigger RIP gilt für seinen Bedarfsschaltungskontext; RIPngs Präferenz beweist keine Aktivierung auf jeder Schnittstelle.