Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 27 Apr 2007 11:21:08 -0400
From:      Preethi Natarajan <nataraja@cis.udel.edu>
To:        freebsd-net@freebsd.org
Cc:        "Paul D. Amer" <amer@cis.udel.edu>
Subject:   TCP Delayed Ack implementation in 6.1
Message-ID:  <463214E4.9090401@cis.udel.edu>

next in thread | raw e-mail | index | archive | help
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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?463214E4.9090401>