Angenommen, ein bestimmtes TCP-Fragment ist in zwei IP-Datagramme fragmentiert und das erste Datagramm kommt auf dem TCP-Server an, das zweite Datagramm jedoch nie.
Nach einer bestimmten Zeit sendet der TCP-Server ein Keepalive und stellt fest, dass der Client am Leben ist. Was macht der TCP-Server dann mit diesem ersten Datagramm? Wartet man auf das Eintreffen des zweiten Datagramms oder verwirft es das erste Datagramm?
Es gibt keine endgültige Antwort auf diese Frage;
Wenn Sie diesen Artikel über adaptive Neuübertragung sehen, werden Sie feststellen, dass TCP RTT als Faktor für die Berechnung geeigneter Verzögerungen verwendet.
Dies ist ein ausführlicherer Artikel. Im Wesentlichen gibt es keinen speziellen Timeout-Wert nur für die Fragmentierung.
In diesem Cisco-Artikel wird jedoch darauf hingewiesen, dass eine virtuelle IOS XR-Firewall ein Standardzeitlimit von 10 Sekunden für Fragmente mit einem eigenen konfigurierbaren Timer aufweist. Ich verknüpfe dies damit, dass Betriebssysteme und Geräte sich unterschiedlich verhalten. Wenn Sie beispielsweise eine Verbindung über ein solches Gerät weiterleiten, kann dies Ihre Verbindung beeinträchtigen.
Es ist am besten, zwei Computer derselben Konfiguration mit einem Crossover zu verbinden und von dort aus mit dem Testen zu beginnen, wenn Sie die Auswirkungen der Fragmentierungsverzögerung testen möchten.
quelle