[LibreQoS] qdisc_watchdog_schedule_range_ns granularity

Thorsten Glaser t.glaser at tarent.de
Sat Oct 22 19:39:35 EDT 2022

On Sat, 22 Oct 2022, Dave Taht wrote:

> I'm rather interested in your work because I don't understand how well
> cake's shaper interacts with all the other loads, neither, htb. We're

Interesting. Do keep in mind that this experimental qdisc will not
become a generally useful one; rather one that attempts to mirror
what an L4S slice in the 5G network does for *one* UE. We’re using
this, on Intel NUCs acting as routers, so people can develop/test
and possibly fine-tune their final application algorithms that will
then be useful out in the field, where you don’t have this much insight
or debugging info.

> hacking on this, running at speeds (10gbps) that are hard to measure

OK, that’s tricky indeed.

> at... with tools that don't exist yet, with kernel dependencies we
> don't understand.

Hey, that’s also where I am ;-)

> How are you measuring, below? ebpf?

No, relayfs again. The commit to add that was rather small even:

> > See commit 2a61f1ea843dc767d291074eee9b2f1b8d3992a7 in
> > git at github.com:tarent/sch_jens.git branch master for the

Basically save away the time we expect the watchdog to call us,
then compare that with now the next time we’re called.

As for packages’ qdisc latency, same as fq_codel basically, just
(now) in ns.

The model here is: extralatency is simulated “before” the packets
enter the qdisc, so while they’re put into the FIFO they are not
considered arrived there yet. That’s (again) to help debugging the
end user algorithms (turns out that BBR2 is no worse than L4S-based
things at very small latencies).

Then we have the normal queue delay, controlled by the arrival time
of the packet (if extralatency is used, with that added) and its
eventual departure time, no earlier than the previous packet’s
departure plus ns_per_byte times its size. We ECN CE mark based on
that as well, which (and the dropping of too old packets) is what
Ericsson tells us is what the RAN does.

I have absolutely no idea how to even begin to use eBPF, tbh…
I’ve never encountered this Linux-specific tech before.

Infrastrukturexperte • tarent solutions GmbH
Am Dickobskreuz 10, D-53121 Bonn • http://www.tarent.de/
Telephon +49 228 54881-393 • Fax: +49 228 54881-235
HRB AG Bonn 5168 • USt-ID (VAT): DE122264941
Geschäftsführer: Dr. Stefan Barth, Kai Ebenrett, Boris Esser, Alexander Steeg

/⁀\ The UTF-8 Ribbon
╲ ╱ Campaign against      Mit dem tarent-Newsletter nichts mehr verpassen:
 ╳  HTML eMail! Also,     https://www.tarent.de/newsletter
╱ ╲ header encryption!

More information about the LibreQoS mailing list