Zusammenfassung

  • RFC 3479 nummerierte geschützte LDP-Operationen und ließ ein kumulatives ACK den dauerhaft gesicherten Präfix des Empfängers markieren.
  • Beim Wiederverbinden wurde der ungewisse Suffix erneut gesendet; Checkpoints spülten Bestätigungen und drei Cork-Schritte stoppten beide Richtungen gemeinsam.

Nach einem TCP-Abbruch wussten zwei LDP-Peers nicht automatisch dasselbe. Eine Label-Anfrage konnte nur gesendet, bereits empfangen, verarbeitet oder dauerhaft gespeichert worden sein. Die neue Verbindung kannte den alten Endpunkt nicht. RFC 3479 machte aus dieser Lücke eine Abrechnung zwischen zwei getrennten Protokollen.

Der FT Session TLV bestimmte den Umfang. S aktivierte sequenznummerierte Operationen, A konnte sie für alle Labels verlangen, C wählte Checkpointing und durfte ohne S eingesetzt werden. Diese Bits definierten die Menge, über die später gesprochen wurde. Ein ACK ohne erhaltene Aushandlung hat keinen eindeutigen Beweisumfang.

Eine geschützte Operation trug FT Protection TLV und eine sitzungsspezifische Nummer. Der Empfänger musste die Nachricht oder den daraus abgeleiteten Zustand sichern, bevor er FT ACK sendete. Ob vollständige Nachricht oder Ergebniszustand gespeichert wurde, blieb Implementierungssache. Dauerhaftigkeit war der gemeinsame Vertrag.

ACKs waren kumulativ. Vier bestätigte den Präfix eins bis vier, nicht spätere Operationen. Bestätigungen durften gesammelt, verzögert und wiederholt, aber nicht außer Reihenfolge gesendet werden. Wuchs der unbestätigte Bestand zu stark, konnte der Nummernraum erschöpfen und neue FT-Nachrichten blockieren. Weniger ACK-Verkehr vergrößerte somit die offene Schuld.

Nach Wiederaufbau meldete jeder Peer seine letzte gesicherte Sequenz. Der Sender gab alles dahinter erneut aus; der Empfänger verarbeitete es wie beim ersten Empfang. Der verlorene TCP-Bytestrom kehrte nicht zurück. Nur der unbewiesene Suffix der Operationsgeschichte wurde rekonstruiert.

Zwei Paare konnten net-zero werden: Label Request mit Label Abort sowie Label Mapping mit Label Withdraw. Lokales Vorhandensein beider Hälften genügte jedoch nicht. Eine Hälfte konnte die alte Sitzung bereits überquert haben. Erst das ACK des Peers zeigte, was angekommen war; danach durfte sicher gefaltet werden.

Auch Address und Address Withdraw wurden geschützt. Sonst konnte nach dem Neustart eine Adresse nur auf einer Seite gültig erscheinen. Eine inzwischen ungültige Adresse verlangte ausdrücklichen Withdraw. Ohne beidseitig erhaltenen Zustand galt der alte Satz als zurückgezogen und wurde neu angekündigt.

Checkpointing änderte die Körnung. Ein geschützter Keepalive forderte, alle früheren check-pointable Messages oder ihre Folgen zu sichern und die Grenze zu bestätigen. Mit C ohne S besaßen gewöhnliche Nachrichten keine einzelnen aktiven Nummern; der Checkpoint synchronisierte die Menge. Mit S umfasste er sequenzierte Labels und Adressen. Der Name allein definierte keine Vollständigkeit.

Für kontrolliertes Abschalten reichte eine Richtung nicht. Der abschaltende Knoten musste auch bestätigen, dass er die vom Peer empfangene Geschichte gesichert hatte. FT Cork erzeugte drei Schritte: Quieszenz-Anfrage, Abschluss und Stopp neuer Operationen beim Gegenüber, dann der Rückschluss. Erst danach endeten beide Protokolle an derselben Grenze.

Konnte ein Peer Zustand nicht sichern oder Operationen nicht puffern, musste er FT Reconnect Flag löschen. Tat dies eine Seite, wurde der alte FT-Zustand verworfen. Geänderte Session-Parameter, etwa Labelraum-Grenzen, verhinderten ebenfalls einfache Fortsetzung, weil alte Operationen neue Bedeutung haben konnten.

Die IESG Note gehört in die Hauptgeschichte. Sie bemängelte unzureichende Anleitung zu Timern und Wiederholungen, warnte vor vorzeitigem Failover und lehnte die Spezifikation als allgemeines Vorbild künftiger TCP-Fehlertoleranz ab. Das Verfahren ordnete Belege, lieferte aber keinen universell sicheren Betriebspunkt.

Der Artikel wiederholt nicht RFC 3478 zu stale Forwarding und Zeitfenstern oder RFC 3612 zur Grenze zwischen Erhaltung, ACK und Forwarding-Wahrheit. Sein Gegenstand ist das Kontrollprotokoll: Schutzumfang, Sequenzen, dauerhafte Grenze, Neuausgabe, net-zero, Checkpoint und Cork.

Nach Heng Lus Reality-Layer-Disziplin beginnt die Prüfung mit alter und neuer Session-ID, S/A/C/R und unveränderten Parametern. Für beide Peers werden gesendete Sequenz, gesicherter Zustand und tatsächlich übertragene ACK getrennt aufgebaut. Am Fehlerpunkt werden offene und gepufferte Operationen eingefroren; danach jede Wiederholung, Faltung und alle drei Cork-Nachrichten begründet.

Ein ACK umfasst keine Zukunft. Ein Checkpoint umfasst keine nicht ausgehandelte Population. Ein Cork ist keine bilaterale Quieszenz. Keiner dieser Belege beweist Anwendungszustellung. Sie beantworten die vorgelagerte Frage, welchen Abschnitt der Operationsgeschichte beide Peers gemeinsam anerkennen können.

Darum ist RFC 3479 Internetgeschichte. Sie nannte Amnesie nicht Wiederherstellung, sondern begrenzte den Dissens zweier Erinnerungen. Sequenzen grenzten die Frage ein, ACKs fanden die gemeinsame Vergangenheit, Wiederholung reparierte den Suffix und Cork setzte einen gemeinsamen Punkt.

Quellen