aboutsummaryrefslogtreecommitdiffstats
path: root/LICENSES
diff options
context:
space:
mode:
authorYuchung Cheng <ycheng@google.com>2018-09-27 11:21:19 -0700
committerDavid S. Miller <davem@davemloft.net>2018-09-29 11:22:22 -0700
commita337531b942bd8a03e7052444d7e36972aac2d92 (patch)
tree32b97fbbf43d08936e0fbe9227158b0ea6508d36 /LICENSES
parenthns3: Another build fix. (diff)
downloadlinux-dev-a337531b942bd8a03e7052444d7e36972aac2d92.tar.xz
linux-dev-a337531b942bd8a03e7052444d7e36972aac2d92.zip
tcp: up initial rmem to 128KB and SYN rwin to around 64KB
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. 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 <ycheng@google.com> Signed-off-by: Wei Wang <weiwan@google.com> Signed-off-by: Neal Cardwell <ncardwell@google.com> Signed-off-by: Eric Dumazet <edumazet@google.com> Reviewed-by: Soheil Hassas Yeganeh <soheil@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'LICENSES')
0 files changed, 0 insertions, 0 deletions