[Bloat] Excessive throttling with fq
Neal Cardwell
ncardwell at google.com
Wed Feb 19 08:52:16 EST 2020
On Wed, Feb 19, 2020 at 1:58 AM Alexey Ivanov <savetherbtz at gmail.com> wrote:
>
> FWIW, we recently noticed a similar issue with our CUBIC senders after
> we've enabled FQ on them (4.15 kernel.)
>
> Disabling train detection in hystart did fix the problem:
>
> # echo 2 > /sys/module/tcp_cubic/parameters/hystart_detect
>
> [1]
> https://github.com/torvalds/linux/blob/master/net/ipv4/tcp_cubic.c#L76-L77
Yes, Hystart was not designed to work with pacing, so when fq is used
Hystart ACK train detection needs to be disabled.
Eric Dumazet made some recent fixes (Linux v5.6) to make Hystart
dynamically adapt to the presence of pacing to avoid this issue:
473900a504e5 tcp_cubic: optimize hystart_update()
35821fc2b41c tcp_cubic: remove one conditional from hystart_update()
cff04e2da308 tcp_cubic: switch bictcp_clock() to usec resolution
42f3a8aaae66 tcp_cubic: tweak Hystart detection for short RTT flows
ede656e84658 tcp_cubic: make Hystart aware of pacing
f278b99ca6b2 tcp_cubic: refactor code to perform a divide only when needed
neal
More information about the Bloat
mailing list