lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Fri, 27 Dec 2019 12:06:05 -0500 From: Neal Cardwell <ncardwell@...gle.com> To: Eric Dumazet <edumazet@...gle.com> Cc: "David S . Miller" <davem@...emloft.net>, netdev <netdev@...r.kernel.org>, Eric Dumazet <eric.dumazet@...il.com>, Soheil Hassas Yeganeh <soheil@...gle.com>, Yuchung Cheng <ycheng@...gle.com>, Martin KaFai Lau <kafai@...com> Subject: Re: [PATCH net-next v2 5/5] tcp_cubic: make Hystart aware of pacing On Mon, Dec 23, 2019 at 3:28 PM Eric Dumazet <edumazet@...gle.com> wrote: > > For years we disabled Hystart ACK train detection at Google > because it was fooled by TCP pacing. > > ACK train detection uses a simple heuristic, detecting if > we receive ACK past half the RTT, to exit slow start before > hitting the bottleneck and experience massive drops. > > But pacing by design might delay packets up to RTT/2, > so we need to tweak the Hystart logic to be aware of this > extra delay. > > Tested: > Added a 100 usec delay at receiver. > > Before: > nstat -n;for f in {1..10}; do ./super_netperf 1 -H lpaa24 -l -4000000; done;nstat|egrep "Hystart" > 9117 > 7057 > 9553 > 8300 > 7030 > 6849 > 9533 > 10126 > 6876 > 8473 > TcpExtTCPHystartTrainDetect 10 0.0 > TcpExtTCPHystartTrainCwnd 1230 0.0 > > After : > nstat -n;for f in {1..10}; do ./super_netperf 1 -H lpaa24 -l -4000000; done;nstat|egrep "Hystart" > 9845 > 10103 > 10866 > 11096 > 11936 > 11487 > 11773 > 12188 > 11066 > 11894 > TcpExtTCPHystartTrainDetect 10 0.0 > TcpExtTCPHystartTrainCwnd 6462 0.0 > > Disabling Hystart ACK Train detection gives similar numbers > > echo 2 >/sys/module/tcp_cubic/parameters/hystart_detect > nstat -n;for f in {1..10}; do ./super_netperf 1 -H lpaa24 -l -4000000; done;nstat|egrep "Hystart" > 11173 > 10954 > 12455 > 10627 > 11578 > 11583 > 11222 > 10880 > 10665 > 11366 I guess all these tests are with the "fq" qdisc with pacing enabled? > Signed-off-by: Eric Dumazet <edumazet@...gle.com> > --- > net/ipv4/tcp_cubic.c | 13 ++++++++++++- > 1 file changed, 12 insertions(+), 1 deletion(-) Thanks, Eric. The revised heuristic for paced traffic seems like a nice improvement. Acked-by: Neal Cardwell <ncardwell@...gle.com> thanks, neal
Powered by blists - more mailing lists