
September 25th, 2004, 01:40 PM
|
|
Registered User
|
|
Join Date: Sep 2004
Posts: 1
Time spent in forums: < 1 sec
Reputation Power: 0
|
|
|
delayed acknowledgement assistance?
Hi all. I've read TCP/IP illustrated 5 times and still cannot find this answer.
The delayed ack timer is ALWAYS triggered upon reception of a segment from the sender correct? If I'm a server and I receive a packet, I start the delayed ack timer immediately. If the application layer provides me with data to send during that time, I send it along with the ACK before the timer expires. If I do this, the ack WONT be considered a delayed ACK since the timer never expired. However, if I don’t have data to send, the timer will fire and I will just send back an ack. THIS will be considered a delayed ACK Is that correct?
It seems the general consensus concerning delayed acks is:
The receiver will ack immediately if it has enough data to do so (2 MSS worth). If the receiver has received an odd amount of packets, it will wait (usually 200ms) for another packet from the sender. Is this correct?
Now here's what's weird. After viewing some tcpdump logs..... It appears as if the receiver will ack back immediately, as long as it has SOME info to send back to the sender. An example was when I was watching telnet traffic. I typed the "h" key on my keyboard and it produced three packets. I attached the output in txt format of this sniffer
Thanks for any help
|