Subject: Re: knob to disable locally-originating qdisc optimisation?

From: Toke Høiland-Jørgensen <[email-masked]>
Date: Tue, 16 May 2023 21:23:08 +0200

Thorsten Glaser <[email-masked]> writes:

> On Thu, 27 Apr 2023, Stephen Hemminger wrote:
>
>>On Thu, 27 Apr 2023 13:21:26 -0700
>>Jakub Kicinski <[email-masked]> wrote:
>
>>> Doesn't ring a bell, what's your setup?
>
> Intel NUC with Debian bullseye on it and a custom qdisc that
> limits and delays outgoing traffic, therefore occasionally
> returning NULL from .dequeue even if the qdisc is not empty.
>
> iperf3 sending from the same NUC to a device on the network
> behind that qdisc where the corresponding iperf server runs.
>
>>It might be BQL trying to limit outstanding packets locally.
>
> Possibly?

Sounds like it's TSQ kicking in? The objective of that is to provide the
maximum backpressure against the application socket buffer, precisely so
the application can better react to congestion. Turning that off isn't
going to help your E2E latency, quite the contrary. Pushing stuff into a
qdisc so it can be ECN-marked is also nonsensical for locally generated
traffic; you don't need the ECN roundtrip, you can just directly tell
the local TCP sender to slow down (which is exactly what TSQ does).

-Toke