TCP Delayed Ack implementation in 6.1



Hello,

I have a question about the TCP delayed ack implementation in FreeBSD 6.1

According to specs, if delayed acks are enabled, the receiver delays transmitting acks for the delack time period or acks every other incoming packet.

I have an experimental setup where:
- RTT between server & client ~90ms.
- one-way data transmission from server to client.
- tcp delayed acks enabled
- delacktimer = 200ms.
- tcp inflight (BDP) calculation is disabled.

From tcpdump at client side:
Time: 38s.695ms: S->C data (282b)
Time: 38s.707ms: S->C data (1448b)
Time: 38s.707ms: C->S ack
Time: 38s.719ms: S->C data (1448b)
Time: 38s.719ms: C->S ack
Time: 38s.731ms: S->C data (1448b)
Time: 38s.741ms: S->C data (1166b)
Time: 38s.741ms: C->S ack

I do not understand the reason for the second ack from C->S (Time 38s.719ms). Clearly this ack has not delayed for 200ms from the previous ack and acks only 1 packet. Am I missing something?


Thanks a ton,
Preethi

_______________________________________________
freebsd-net@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscribe@xxxxxxxxxxx"



Relevant Pages

  • Re: the TCP MSS resource exhaustion commit
    ... > What about ACKs from a simple TCP device such as a microcontroller? ... If the microcontroller doesn't have enough RAM to do delayed ACKs ... The detection logic only applies to TCP packets containing payload, ...
    (freebsd-current)
  • Re: TCP delayed acks not being delayed?
    ... it doesn't make sense to delay empty acks. ... Delayed acks don't affect the download speed on one tcp ... pretty much typical practice to disable nagle, ...
    (freebsd-questions)