On Fri, 1 Oct 2004, Berend De Schouwer wrote:
Up to here: normal syn, syn/ack, ack. Negotiated mss 1460 and win 536.
09:37:41.118891 IP (tos 0x0, ttl 64, id 40414, offset 0, flags [DF], length: 308) 10.16.2.143.32768 > 192.168.4.2.1023: . 1:269(268) ack 1win 5840
Send 268 bytes of data, in one segment, in one fragment. 268 is half of the window size, and much less than mss.
09:37:41.118904 IP (tos 0x0, ttl 64, id 40415, offset 0, flags [DF], length: 83) 10.16.2.143.32768 > 192.168.4.2.1023: P 269:312(43) ack 1win
Sent a second packet. I assume this is the first (and only) fragment of the second segment. Remainder of the 311 bytes of data.
This is the second TCP segment of the 311 bytes application message. Not fragmented.
5840 09:37:41.331573 IP (tos 0x0, ttl 121, id 8308, offset 0, flags [DF], length: 40) 192.168.4.2.1023 > 10.16.2.143.32768: . [tcp sum ok] ack 312 win 16305
Ack the first segment.
No, this acks both segments (sequence number 312. SYN + 311 octets of data).
The remote TCP works correct.
09:37:41.353036 IP (tos 0x0, ttl 121, id 8312, offset 0, flags [DF], length: 68) 192.168.4.2.1023 > 10.16.2.143.32768: P [tcp sum ok] 1:29 (28) ack 312 win 16305
Sends me data (but tells me my data is broken.)
The remote application is broken in the way discussed.
The rest of the packets are the final ACK, and the FIN sequence.
Regards Henrik - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html