6.1.5. Neu übertragene TCP-Pakete (Retransmitted TCP Packets)
Dieser Abschnitt spezifiziert die Behandlung des ECN-Feldes in neu übertragenen TCP-Segmenten.
6.1.5.1. Grundprinzip
Wenn ein TCP-Segment neu übertragen wird:
- Das Segment KANN verloren gegangen sein
- ODER das Segment wurde möglicherweise CE-markiert und dann verworfen
- Die Ursache des Verlusts ist unbekannt
6.1.5.2. ECT in neu übertragenen Segmenten
Der Sender SOLLTE:
- Not-ECT in neu übertragenen Segmenten setzen
- Dies ist das konservative und empfohlene Verhalten
Begründung:
- Vermeidung von Doppelmarkierung: Wenn das Original verloren ging aufgrund schwerer Überlastung, könnte die Neuübertragung auch CE-markiert werden
- Fairness: Verhindert, dass ein Fluss wiederholt CE-Markierungen für dasselbe Datensegment empfängt
- Robustheit: Funktioniert korrekt auch wenn Middleboxen ECN-Pakete verwerfen
6.1.5.3. Alternative: ECT in Neuübertragungen
Der Sender KANN alternativ:
- ECT in neu übertragenen Segmenten verwenden
- Dies ist akzeptabel, aber nicht empfohlen
Wenn ECT in Neuübertragungen verwendet wird:
- Der Sender MUSS weiterhin angemessen auf ECE reagieren
- Mögliche Doppelzählung von Überlastungsereignissen MUSS vermieden werden
6.1.5.4. Erkennung der Neuübertragungsursache
TCP kann nicht zuverlässig zwischen unterscheiden:
- Paketverlust aufgrund von Warteschlangenüberlauf
- Paketverlust aufgrund von Übertragungsfehlern
- Vermeintlicher Verlust (Paket verzögert, nicht verloren)
Daher ist Not-ECT in Neuübertragungen der konservative Ansatz.
6.1.5.5. Spurious Retransmissions
Wenn eine Neuübertragung "spurious" ist (Original war nicht verloren):
- Not-ECT in der Neuübertragung verursacht keinen Schaden
- Das Original (mit ECT) lieferte bereits das Signal
- Keine funktionale Beeinträchtigung
6.1.5.6. Interaktion mit SACK
Wenn TCP SACK (Selective Acknowledgment) verwendet:
- Selektiv neu übertragene Segmente SOLLTEN Not-ECT verwenden
- Gleiche Begründung gilt wie für normale Neuübertragungen
6.1.5.7. Fast Retransmit
Für Segmente, die durch Fast Retransmit neu übertragen werden:
- SOLLTE Not-ECT verwenden
- Fast Retransmit zeigt wahrscheinlichen Paketverlust an
- Not-ECT vermeidet zusätzliche CE-Markierung während Überlastung
6.1.5.8. Timeout-basierte Neuübertragungen
Für Segmente, die nach RTO (Retransmission Timeout) neu übertragen werden:
- MUSS Not-ECT verwenden
- RTO zeigt schwerwiegende Überlastung oder Pfadprobleme an
- Not-ECT ist hier besonders wichtig
6.1.5.9. Empfehlung
Zusammenfassung der Empfehlung:
Für alle neu übertragenen TCP-Segmente:
IP_ECN_Field = Not-ECT (00)
Dies ist das einfachste, robusteste und empfohlene Verhalten.