Besteht die neu zusammengesetzte PDU von Wireshark aus einer TCP-Segmentgröße > MSS?

Besteht die neu zusammengesetzte PDU von Wireshark aus einer TCP-Segmentgröße > MSS?

Ich schaue mir einen Wireshark-Datensatz an, den mir jemand zur Verfügung gestellt hat, um etwas für ihn zu analysieren. Wireshark hat praktischerweise 3 TCP-Segmente neu zusammengesetzt, die alle ein einzelnes TLS-Paket transportierten. Das TLS-Paket passte nicht in die 1460 Byte MSS, daher hat der Host 3 TCP-Segmente daraus gemacht und Wireshark hat Folgendes erkannt:

[3 Reassembled TCP Segments (5914 bytes): #8(1440), #10(1440), #12(3034)]
    [Frame: 8, payload: 0-1439 (1440 bytes)]
    [Frame: 10, payload: 1440-2879 (1440 bytes)]
    [Frame: 12, payload: 2880-5913 (3034 bytes)]
    [Segment count: 3]
    [Reassembled TCP length: 5914]
    [Reassembled TCP Data: ... ]

Das ist großartig, aber was ich nicht verstehe, ist, warum das 3. Segment eine Größe hat, die den MSS dieser TCP-Verbindung überschreitet, der beim SYN/SYN+ACK mit 1460 Bytes ausgehandelt wurde.

Antwort1

Den Grund dafür habe ich dann selbst gefunden: Das liegt anGroßes Empfangs-Offloadwie erklärt unterhttp://rtoodtoo.net/generic_segmentation_offload_and_wireshark/. Die Netzwerkschnittstellenkarte oder der Kernel des Hosts hat mehrere TCP-Segmente gesammelt und zu einem einzigen großen Segment zusammengeführt, bevor sie an den Benutzerbereich weitergegeben wurden.

Daher erschien es Wireshark so, als würde es den Datenverkehr als ein einzelnes TCP-Segment/IP-Paket aufzeichnen, das die zulässige MTU und MSS überschreitet.

verwandte Informationen