From mboxrd@z Thu Jan 1 00:00:00 1970 From: "David S. Miller" Subject: Re: Linux TCP implementation Date: Mon, 22 Mar 2004 18:28:58 -0800 Sender: netdev-bounce@oss.sgi.com Message-ID: <20040322182858.50e49a9e.davem@redhat.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: linux-kernel@vger.kernel.org, netdev@oss.sgi.com Return-path: To: "m k" In-Reply-To: Errors-to: netdev-bounce@oss.sgi.com List-Id: netdev.vger.kernel.org [ Post stuff like this to netdev@oss.sgi.com or linux-net@vger.kernel.org, most net developers do not read linux-kernel, thanks. ] On Mon, 22 Mar 2004 20:58:46 +0000 "m k" wrote: > Also, if the snd_cwnd is maintained in terms of packets and snd_ssthresh > and > snd_cwnd_clamp is maintained in terms of bytes, how come the comparison > between them. All of the congestion variables are maintained in terms of packets. The function you quote, tcp_cong_avoid(), determines if we increase the congestion window exponentially (when snd_cwnd is less than or equal to snd_ssthresh) or linearlly (when snd_cwnd is more than snd_ssthresh). This is bog-standard Van Jacobson congestion avoidance, nothing fancy.