[X-Unix] [OT] TCP ACK...

Simon Forster simon-lists at ldml.com
Thu Feb 2 09:15:32 PST 2006

Can someone with a better understanding of the TCP networking  
protocol than me tell me what should happen if machine B is receiving  
a bunch of data, sending TCP ACKs quite cheerfully and then machine A  
doesn't receive one of the ACKs? Who should jump in next? My layman  
view is that machine A should resend its previous bunch of data, to  
which machine B will again send an ACK - but I may well be wrong. I'm  
sure that this is documented but I haven't succeeded in finding an  
appropriate link yet - and I don't want to have to spend days  
understanding all the minutiae of detail surrounding TCP data flows  
before I find a suitable answer.

A bit more detail for those interested: We're accepting (on machine  
B) an HTTP file upload from a telco (sent by machine A) -  
unfortunately, frequently the uploaded data is truncated  
(particularly large files during busy times). I've looked at output  
from tcpdump, and  can quite clearly see the data coming in from  
machine A and ACKs going out fro machine B after every couple of  
datagrams (terminology?). On the interrupted feeds, you'll see an ACK  
go out... and then nothing. After 5 minutes, our server sends a  
finish every one minute, after which a reset will be returned  
(sometimes after a few finishes have been sent). What I'd like to  
know is what should happen if an acknowledgement isn't received by  
the sending server?

Thanks for shedding any light on this.


Simon Forster
  LDML Ltd, 62 Pall Mall, London, SW1Y 5HZ, UK
  Tel: +44 (0)845 257 6086   Fax: +44 (0)70 9230 5247

More information about the X-Unix mailing list