I use a java socket API to send data over TCP network. Recently I've got a strange bug: I'm sending 45 bytes into socket stream, but reciver gots only 42 of them. Looking through a tcpdump I see that the data section 42 bytes, although IP Packet size - IP Header size - TCP Header = 45! (see the image ) How it's possible? asked 19 Mar '14, 09:01 Andrey Tolma... |
One Answer:
Look at the line for the frame in the packet details:
Your capture is probably set to only grab 96 bytes. answered 19 Mar '14, 09:03 grahamb ♦ |
and it's a good thing the IP total length is not adjusted accordingly, or the TCP expert would go crazy over missing sequence numbers :-)
@Andrey If you want to capture the entire packet with tcpdump use the -s 0 option.