Zusammenfassung

  • Das kumulative ACK bestätigt alle früheren Bytes. Ein SACK-Block beschreibt nur einen Bereich, den der Empfänger jetzt zu halten behauptet und später verwerfen kann.
  • Der Sender bewahrt die Daten, fügt Teilberichte zu seinem Scoreboard zusammen und wählt Wiederholungen innerhalb der Überlastungsregeln.
  • D-SACK meldet Duplikate, beweist aber keine Ursache. Mehr gemeinsame Evidenz übertrug dem Empfänger keine Befehlsgewalt.

Gemeldet und trotzdem nicht freigegeben

Der Empfänger wartet auf Byte 5000 und hält bereits [5500,9000). SACK zeigt diese Insel, sodass der Sender nicht den gesamten Flug wiederholen muss.

Löschen darf er seine Kopie dennoch nicht. Der Empfänger kann gemeldete Daten unter Speicherdruck verwerfen; ein Timeout kann eine alte Karte überholen. Erst das kumulative ACK beendet die Aufbewahrungspflicht.

Der Hinweis ändert die Strategie. Nur das gemeinsame Versprechen ändert die Verantwortung.

Das alte Versprechen blieb unangetastet

RFC 793 lässt ACK X alle kleineren Oktette bestätigen und X als nächstes erwartetes Byte benennen. Diese starke Grenze sagt nichts über Inseln hinter der ersten Lücke. Gleiche ACKs unterscheiden weder einzelne noch mehrere Verluste von Umordnung.

RFC 1072 schlug 1988 die erste selektive Option vor. In dieser Form wurde sie nicht zur gemeinsamen Praxis; RFC 6247 verschob sie später nach Historic. Veröffentlichung und Implementierungskonsens sind verschiedene Ereignisse.

Ein Bericht kleiner als die Warteschlange

RFC 2018 überarbeitete das Verfahren 1996. SACK-Permitted wird im SYN ausgehandelt; zwei 32-Bit-Grenzen beschreiben jeden Block. Das normale ACK behält seine Bedeutung.

Vierzig Optionsbytes tragen höchstens vier Blöcke, mit Zeitstempeln gewöhnlich drei. Der Empfänger setzt den durch das neueste Segment veränderten Block zuerst und wiederholt jüngere Blöcke, weil auch der Rückweg Berichte verlieren kann.

Das Scoreboard ist deshalb ein lokales Sender-Modell aus begrenzten Ansichten, kein vollständiger Abzug des Empfangsspeichers.

Reneging trennt Rat von Quittung

RFC 2018 nennt SACK advisory. Der Empfänger darf einen gemeldeten Bereich verwerfen. Der Sender kann ihn in normaler Erholung zunächst überspringen, muss das Original aber bis zur kumulativen Bestätigung halten.

Nach einem Übertragungs-Timeout sind alte Markierungen vorsichtig zu behandeln. Der Rückweg zur Grundsemantik begrenzt den Ausfall der Zusatzinformation. RFC 6675 standardisierte ein konservatives Sender-Scoreboard: Berichte ändern die Schätzung, der Sender wählt das nächste Segment.

Ein Duplikat kennt seine Ursache nicht

RFC 2883 ließ D-SACK doppelte Daten melden. Dahinter können Umordnung, ACK-Verlust, Replikation oder ein zu früher Timer stehen. Das Dokument schreibt keine einheitliche Reaktion vor und warnt vor unbedingtem Vertrauen in den Empfänger.

RFC 5681 hält außerdem die Überlastungspflichten fest. Eine genauere Lücke nutzt das erlaubte Fenster besser, vergrößert es aber nicht.

Die Quellen beweisen Regeln und Grenzen, kein weltweites Einsatzdatum, keinen Verlustort und keine Identität des Meldenden. SACKs historische Leistung war korrigierbare Evidenz, die weder Quittung noch Befehl noch Senderecht wurde.