[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <MDEHLPKNGKAHNMBLJOLKGEFDNAAC.davids@webmaster.com>
Date: Thu, 29 May 2008 09:56:09 -0700
From: "David Schwartz" <davids@...master.com>
To: <linux-kernel@...r.kernel.org>
Subject: RE: Question regarding TCP behavior
> Greetings.
>
> I have a question about how linux's TCP stack behaves.
> I apologize if this is not the right place to ask this question and
> please redirect me.
>
> When a TCP end point (A) sends x bytes of data to the other end point (B),
> does B immediately ACK the received bytes or will it do so only
> when the data
> is passed to the upper layer ?
>
>
> Thanks
> Thomas
If the TCP connection was idle and there is no unacknowledged data in either
direction, the answer is neither.
Acknowledging the data immediately is wasteful. There's a very good chance
another packet is right behind this one and delaying the acknowledgement
would save a packet.
Waiting for upper layers is disastrous, it could result in the other end
timing out and retransmitting and would limit the end of slow start based on
user-space speeds.
Google "delayed ACK".
http://www.freesoft.org/CIE/RFC/1122/110.htm
DS
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists