This is a static archive of our old Q&A Site. Please post any new questions and answers at ask.wireshark.org.

No “ACK” from receiver, failed to send data

0

Hi,

I encountered a problem where receiver did not "ACK" back to sender after both sender and receiver successfully established connection and send "PSH, ACK" to receiver. From the log, I can see connection established, and lots of TCP Transmission".

What could be the problem. Anyone can help?

thank you

asked 27 Apr '17, 00:42

tbw's gravatar image

tbw
6112
accept rate: 0%

Maybe if you make a capture file available somewhere such as cloudshark, dropbox, pastebin, etc., someone might be able to help.

(27 Apr '17, 06:48) cmaynard ♦♦

thanks for the suggestion. Uploaded the capture file to dropbox. Appreciate anyone can help to find out why there is no "ACK" from the receiver.

https://www.dropbox.com/s/915h8yngooi4u31/tan_0427.pcap?dl=0

thank you very much

(27 Apr '17, 20:41) tbw

One Answer:

0

Except for the 20 TCP ACK packets from 169.254.1.108, every other TCP packet that host sends contains an invalid TCP checksum. As such, they are never ACK'd by 169.254.239.8.

answered 28 Apr '17, 11:21

cmaynard's gravatar image

cmaynard ♦♦
9.4k1038142
accept rate: 20%

thank you very much, appreciate your help. The invalid TCP checksum, is it because of the Header Checksum which supposes to be set to 0000?

thanks again,

(28 Apr '17, 19:04) tbw

No, and there are no TCP checksums with the value of 0x0000, at least in the capture file you provided. Try applying a display filter of tcp.checksum == 0x0000; you won't find any.

The invalid TCP checksum values vary; they are not simply 0x0000. It would seem that they are simply being improperly computed by the sending host, in this case, 169.254.1.108.

Assuming you have the TCP preference "Validate the TCP checksum if possible" enabled, you can apply the following filter to find those with valid checksums: tcp.stream eq 0 and ip.src eq 169.254.1.108 and tcp.checksum.status == "Good" vs. those with invalid checksums: tcp.stream eq 0 and ip.src eq 169.254.239.8 and tcp.checksum.status == "Bad".

(01 May '17, 12:47) cmaynard ♦♦