[PATCH net-next] tcp: start receiver buffer autotuning sooner

Subsystems: networking [general], networking [tcp], the rest

STALE2896d REVIEWED: 1 (0M)

1 review trailer.

3 messages, 2 authors, 2018-10-02 · open the first message on its own page

[PATCH net-next] tcp: start receiver buffer autotuning sooner

From: Yuchung Cheng <hidden>
Date: 2018-10-02 05:22:47

Previously receiver buffer auto-tuning starts after receiving
one advertised window amount of data. After the initial receiver
buffer was raised by patch a337531b942b ("tcp: up initial rmem to
128KB and SYN rwin to around 64KB"), the reciver buffer may take
too long to start raising. To address this issue, this patch lowers
the initial bytes expected to receive roughly the expected sender's
initial window.

Fixes: a337531b942b ("tcp: up initial rmem to 128KB and SYN rwin to around 64KB")
Signed-off-by: Yuchung Cheng <redacted>
Signed-off-by: Wei Wang <redacted>
Signed-off-by: Neal Cardwell <ncardwell@google.com>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reviewed-by: Soheil Hassas Yeganeh <redacted>
---
 net/ipv4/tcp_input.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c
index 7a59f6a96212..bf1aac315490 100644
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
@@ -438,7 +438,7 @@ void tcp_init_buffer_space(struct sock *sk)
 	if (!(sk->sk_userlocks & SOCK_SNDBUF_LOCK))
 		tcp_sndbuf_expand(sk);
 
-	tp->rcvq_space.space = tp->rcv_wnd;
+	tp->rcvq_space.space = min_t(u32, tp->rcv_wnd, TCP_INIT_CWND * tp->advmss);
 	tcp_mstamp_refresh(tp);
 	tp->rcvq_space.time = tp->tcp_mstamp;
 	tp->rcvq_space.seq = tp->copied_seq;
-- 
2.19.0.605.g01d371f741-goog

Re: [PATCH net-next] tcp: start receiver buffer autotuning sooner

From: David Miller <davem@davemloft.net>
Date: 2018-10-02 05:26:05

From: Yuchung Cheng <redacted>
Date: Mon,  1 Oct 2018 15:42:32 -0700
Previously receiver buffer auto-tuning starts after receiving
one advertised window amount of data. After the initial receiver
buffer was raised by patch a337531b942b ("tcp: up initial rmem to
128KB and SYN rwin to around 64KB"), the reciver buffer may take
too long to start raising. To address this issue, this patch lowers
the initial bytes expected to receive roughly the expected sender's
initial window.

Fixes: a337531b942b ("tcp: up initial rmem to 128KB and SYN rwin to around 64KB")
Signed-off-by: Yuchung Cheng <redacted>
Signed-off-by: Wei Wang <redacted>
Signed-off-by: Neal Cardwell <ncardwell@google.com>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reviewed-by: Soheil Hassas Yeganeh <redacted>
Applied, sorry for applying v1 instead of v2 the the rmem increasing patch.
:-/

Re: [PATCH net-next] tcp: start receiver buffer autotuning sooner

From: Yuchung Cheng <hidden>
Date: 2018-10-02 05:47:54

On Mon, Oct 1, 2018 at 3:46 PM, David Miller [off-list ref] wrote:
From: Yuchung Cheng <redacted>
Date: Mon,  1 Oct 2018 15:42:32 -0700
quoted
Previously receiver buffer auto-tuning starts after receiving
one advertised window amount of data. After the initial receiver
buffer was raised by patch a337531b942b ("tcp: up initial rmem to
128KB and SYN rwin to around 64KB"), the reciver buffer may take
too long to start raising. To address this issue, this patch lowers
the initial bytes expected to receive roughly the expected sender's
initial window.

Fixes: a337531b942b ("tcp: up initial rmem to 128KB and SYN rwin to around 64KB")
Signed-off-by: Yuchung Cheng <redacted>
Signed-off-by: Wei Wang <redacted>
Signed-off-by: Neal Cardwell <ncardwell@google.com>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reviewed-by: Soheil Hassas Yeganeh <redacted>
Applied, sorry for applying v1 instead of v2 the the rmem increasing patch.
:-/
No problem thanks for the fast response!
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help