Zusammenfassung

  • IPv6 Neighbor Unreachability Detection verlangte eine aktuelle positive Bestätigung des Hinwegs. Alterte sie, wechselte der Eintrag zu STALE, blieb aber unangetastet, solange kein Paket ihn benutzte.
  • Der erste Versand öffnete DELAY für Belege aus höheren Schichten; erst ohne Fortschritt begann PROBE. RFC 7048 führte später UNREACHABLE und exponentielles Backoff ein, damit ein anderer Next Hop bevorzugt werden konnte, ohne den einzigen erreichbaren Kandidaten vorschnell aufzugeben.

STALE war keine Ausfallklasse

Der Host kennt weiterhin die IPv6-Adresse seines Routers und die zugehörige Link-Layer-Adresse. Die letzte Kommunikation gelang, danach herrschte Ruhe. Weder widersprach ein Paket dem gespeicherten Binding, noch meldete die Schnittstelle einen Defekt. Lediglich die letzte Bestätigung ist alt.

Genau dafür schuf RFC 1970 1996 den Zustand STALE. RFC 2461 und RFC 4861 behielten das Modell bei. STALE bedeutet: Seit der letzten positiven Bestätigung sind mehr als ReachableTime Millisekunden vergangen. Solange kein Paket gesendet wird, geschieht nichts.

Ein ungenutzter alter Eintrag kann aus Sicht der Korrektheit im Cache bleiben. Speicherbereinigung darf ihn aus Ressourcengründen entfernen, doch das ist keine protokollische Feststellung der Unerreichbarkeit. Eine Uhr allein sollte weder Multicast-Auflösung erzeugen noch eine weiterhin unbestrittene Zuordnung vernichten.

Ein eingehendes Lebenszeichen bewies den Hinweg nicht

NUD beurteilt den Pfad aus Sicht des Senders. Eine empfangene Router Advertisement belegt nur die Richtung vom Router zum Host. Eine unaufgeforderte Neighbor Advertisement ebenfalls. Keine von beiden beweist, dass ein kürzlich gesendetes Paket die IP-Schicht des Nachbarn erreicht hat.

Deshalb erkannte die Spezifikation zwei positive Belege an. Eine angeforderte Neighbor Advertisement zeigt, dass die eigene Neighbor Solicitation hin und die Antwort zurück gelangte. Alternativ kann eine höhere Schicht einen Fortschritt melden, der ohne die Zustellung früherer Pakete unmöglich wäre.

Bei TCP bestätigt ein neues ACK den Empfang zuvor gesendeter Daten. Neue, nicht duplizierte Daten können umgekehrt zeigen, dass frühere ACKs die Gegenstelle erreichten. Für ein Ziel außerhalb des Links belegt dieser Fortschritt zugleich die kürzliche Funktion des First-Hop-Routers. UDP oder ein weiterleitender Router haben nicht immer solche Hinweise und müssen aktiv prüfen.

Der Beleg blieb eng begrenzt. Er authentifizierte keinen Nachbarn, garantierte keine Anwendung und sagte nichts über künftige Verfügbarkeit. Er rechtfertigte lediglich die lokale Weiterverwendung des Cache-Bindings.

Zuerst durfte der Nutzverkehr antworten

Beim ersten Senden über STALE verwendet der Host die gespeicherte Link-Layer-Adresse und setzt den Eintrag auf DELAY. Standardmäßig dauert diese Phase fünf Sekunden.

DELAY ist eine Optimierung für vorhandene Evidenzquellen. Startet nach einer Pause eine TCP-Verbindung, kann schon der Handshake Fortschritt melden. Dann kehrt der Eintrag ohne zusätzliche Neighbor Solicitation zu REACHABLE zurück.

Erst wenn die Frist ohne Bestätigung endet, sendet der Host eine Unicast-Solicitation und wechselt zu PROBE. Das Binding ist noch bekannt; geprüft wird dieser konkrete Pfad. Eine Multicast-Auflösung würde bereits die weitergehende Frage stellen, welche Link-Layer-Adresse das IPv6-Ziel nun besitzt.

So koppelte das Protokoll Aufwand an Aktivität. Zeit minderte Vertrauen, Nutzung machte den Zweifel relevant, DELAY wartete auf einen kostenlosen Beleg, und PROBE erzeugte nur bei fortbestehendem Zweifel Kontrollverkehr.

Dreißig Sekunden waren kein gemeinsamer Takt

RFC 4861 nennt 30 Sekunden Basis-Erreichbarkeitszeit, eine Sekunde Retransmission, fünf Sekunden Verzögerung und drei Unicast-Solicitations als Standardkonstanten. Die tatsächliche ReachableTime wird jedoch zufällig zwischen dem 0,5- und 1,5-Fachen der Basis gewählt. Router Advertisements können außerdem Basis- und Retransmissionswerte liefern.

Die Streuung verhindert, dass viele Systeme am selben Link gleichzeitig prüfen. Damit war die verbreitete Kurzform „nach 30 Sekunden tot“ nie korrekt.

Eine Router Advertisement kann den Zeitmaßstab beeinflussen, aber nicht sich selbst als erreichbar bestätigen. Parametrisierung und Evidenz bleiben getrennte Befugnisse.

Die schnelle Löschung konnte zusätzliche Last erzeugen

Im ursprünglichen Modell von RFC 4861 wiederholte PROBE Unicast-Anfragen und verwarf den Eintrag nach dem Grenzwert. Mit den Standards waren das drei Sendungen im Abstand von einer Sekunde. Danach konnte der Host einen anderen Router wählen oder erneut per Multicast auflösen.

Bei echten Alternativen war das schnell und sinnvoll. War der Nachbar der einzige Weg, konnte eine kurze Layer-2-Störung länger dauern. Das Löschen schuf keinen Ersatz, sondern verwandelte gezielte Prüfungen in Multicast-Suche auf einem ohnehin gestörten Link.

RFC 6583 beschrieb die Rückkopplung im Betrieb. Auf einem großen IPv6-Subnetz können Auflösungen für nicht vorhandene Ziele den NDP-Prozess überlasten. Werden dadurch Pflege und Antworten für aktive Nachbarn verdrängt, verschwinden gültige Einträge, Multicast nimmt zu und bestehende Verbindungen brechen ein. NUD für benutzte Ziele soll deshalb Vorrang vor spekulativen Neueinträgen erhalten.

2014 erklärte RFC 7048 NUD für „zu ungeduldig“. Das Update ergänzte den konzeptionellen Zustand UNREACHABLE. Nach dem üblichen Schwellwert gilt der Nachbar für die Routerwahl nicht mehr als bekannt erreichbar; eine Alternative kann bevorzugt werden. Die Link-Layer-Adresse darf dennoch erhalten bleiben, Pakete dürfen sie bei Bedarf weiter verwenden, und Prüfungen laufen mit exponentiellem Backoff weiter.

Schließlich muss auf Multicast gewechselt werden, um eine geänderte Link-Layer-Adresse zu entdecken. Ohne weitere Nutzung dürfen die Prüfungen pausieren. Ein Beispiel verteilt Wiederholungen auf 1, 4, 13 und 40 Sekunden und nennt 60 Sekunden als möglichen Maximalabstand. Das ist ein Entwurfsbeispiel, kein Befund über heutige Produkte.

UNREACHABLE trennte Umwahl und Aufgabe

„Einen anderen Next Hop vorziehen“ und „jede Wiederherstellung dieses Nachbarn beenden“ sind verschiedene Entscheidungen. Bei redundanten Routern sollte die erste rasch fallen. Ohne Alternative darf die zweite länger auf eine Layer-2-Konvergenz, eine Funkunterbrechung oder einen Interface-Neustart warten.

Exponentielles Backoff erhält die Chance auf Rückkehr, ohne dauerhaft zu senden. Die Definition positiver Evidenz blieb unverändert: Fortschritt aus höheren Schichten oder eine angeforderte Antwort stellt REACHABLE her; ein unaufgefordertes Signal reicht nicht. RFC 7048 änderte die Reaktion auf Scheitern, nicht den Maßstab für Erfolg.

DAD stellte mit denselben Nachrichten eine andere Frage

RFC 4862 nutzt Neighbor Solicitation und Advertisement zur Duplicate Address Detection. DAD prüft vor der Zuweisung, ob eine tentative Unicast-Adresse bereits beansprucht wird. NUD prüft während des Betriebs den Vorwärtspfad zu einem bereits gewählten Nachbarn.

Begrenztes Schweigen kann bei DAD die Adressnutzung erlauben. Bei NUD lässt Schweigen Evidenz altern; erst Nutzung startet DELAY und PROBE. Gleiche Pakettypen verleihen den Schlussfolgerungen nicht dieselbe Reichweite.

Quellen und Evidenzgrenzen

Chronik und Zustände stammen aus RFC 1970, 2461 und 4861. RFC 4862 grenzt DAD ab, RFC 6583 beschreibt Betriebsdruck und RFC 7048 aktualisiert die Wiederherstellung. Die Dokumente belegen keine heutigen Herstellerdefaults, Verbreitung, Cachegrößen, Ausfallraten oder Konformität eines bestimmten Netzes.