From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Miller Subject: Re: [PATCH net-next v2] tcp: up initial rmem to 128KB and SYN rwin to around 64KB Date: Sat, 29 Sep 2018 11:23:14 -0700 (PDT) Message-ID: <20180929.112314.687721909787322730.davem@davemloft.net> References: <20180928200902.62121-1-ycheng@google.com> Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: edumazet@google.com, netdev@vger.kernel.org, ncardwell@google.com, weiwan@google.com, soheil@google.com To: ycheng@google.com Return-path: Received: from shards.monkeyblade.net ([23.128.96.9]:56806 "EHLO shards.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728197AbeI3Awn (ORCPT ); Sat, 29 Sep 2018 20:52:43 -0400 In-Reply-To: <20180928200902.62121-1-ycheng@google.com> Sender: netdev-owner@vger.kernel.org List-ID: From: Yuchung Cheng Date: Fri, 28 Sep 2018 13:09:02 -0700 > Previously TCP initial receive buffer is ~87KB by default and > the initial receive window is ~29KB (20 MSS). This patch changes > the two numbers to 128KB and ~64KB (rounding down to the multiples > of MSS) respectively. The patch also simplifies the calculations s.t. > the two numbers are directly controlled by sysctl tcp_rmem[1]: > > 1) Initial receiver buffer budget (sk_rcvbuf): while this should > be configured via sysctl tcp_rmem[1], previously tcp_fixup_rcvbuf() > always override and set a larger size when a new connection > establishes. > > 2) Initial receive window in SYN: previously it is set to 20 > packets if MSS <= 1460. The number 20 was based on the initial > congestion window of 10: the receiver needs twice amount to > avoid being limited by the receive window upon out-of-order > delivery in the first window burst. But since this only > applies if the receiving MSS <= 1460, connection using large MTU > (e.g. to utilize receiver zero-copy) may be limited by the > receive window. > > This patch also lowers the initial bytes expected to receive in > the receiver buffer autotuning algorithm - otherwise the receiver > may take two to three rounds to increase the buffer to the > appropriate level (2x sender congestion window). > > With this patch TCP memory configuration is more straight-forward and > more properly sized to modern high-speed networks by default. Several > popular stacks have been announcing 64KB rwin in SYNs as well. > > Signed-off-by: Yuchung Cheng > Signed-off-by: Wei Wang > Signed-off-by: Neal Cardwell > Signed-off-by: Eric Dumazet > Reviewed-by: Soheil Hassas Yeganeh Applied, thanks.