General list for discussing Bufferbloat
 help / color / mirror / Atom feed
From: "Bjørn Ivar Teigen" <bjorn@domos.no>
To: "Toke Høiland-Jørgensen" <toke@toke.dk>,
	bloat <bloat@lists.bufferbloat.net>
Subject: Re: [Bloat] Beyond Bufferbloat: End-to-End Congestion Control Cannot Avoid Latency Spikes
Date: Tue, 2 Nov 2021 14:02:47 +0000	[thread overview]
Message-ID: <CAKf5G6K1WS4UF1Px==W6U+pn2AdPCkBxi6=jVRQGzzhcq6FwJA@mail.gmail.com> (raw)
In-Reply-To: <875yta7o0h.fsf@toke.dk>

[-- Attachment #1: Type: text/plain, Size: 2747 bytes --]

Thanks for the feedback! Please find my answers below.

> A direct consequence is that we need AQMs at all points in the internet
> > where congestion is likely to happen, even for short periods, to mitigate
> > the impact of latency spikes. Here I am assuming we ultimately want an
> > Internet without lag-spikes, not just low latency on average.
>
> This was something I was wondering when reading your paper. How will
> AQMs help? When the rate drops the AQM may be able to react faster, but
> it won't be able to affect the flow xmit rate any faster than your
> theoretical "perfect" propagation time...


> So in effect, your paper seems to be saying "a flow that saturates the
> link cannot avoid latency spikes from self-congestion when the link rate
> drops, and the only way we can avoid this interfering with *other* flows
> is by using FQ"? Or?
>

Yes, I agree, and that's a very nice way to put it. I would phrase the AQMs
role as "mitigating the negative effects of transient congestion".
Isolating flows from each other, for instance with FQ, is an important part
of that in my opinion.

I'm sure this is familiar to people on this list, but I'll summarize my
views anyway.
Whenever a queue forms the options are very limited: We can choose to drop
packets, and we can choose the order in which the queue is emptied.
FIFO service is one option, but we can also choose some other scheduling
and/or packet loss scheme. FQ is just a specific choice here where latency
is divided close to equally among different flows.

I really like the following analogy to make this point very clear: "If you
have a bag of 100 balls and withdraw one every second, how long does it
take to empty the bag? Now, we can color half the balls red and the other
half blue, and then pick the red balls first. It still takes 100 seconds to
empty the bag." The same principle holds for packet scheduling, only we can
drop packets as well (and thus not pay the delay cost of forwarding them).
Once a queue has formed, the latency and packet loss *must* be divided
among the different packets in the queue, and it's up to the scheduling
part of the AQM to make that choice. What the correct choice is will depend
on many things.


> Also, another follow-on question that might be worth looking into is
> short flows: Many flows fit entirely in an IW, or at least never exit
> slow start. So how does that interact with what you're describing? Is it
> possible to quantify this effect?
>

Thanks, this seems interesting! I'll have a think about this and get back
to you.

Cheers,
-- 
Bjørn Ivar Teigen
Head of Research
+47 47335952 | bjorn@domos.no <name@domos.no> | www.domos.no
WiFi Slicing by Domos

[-- Attachment #2: Type: text/html, Size: 5409 bytes --]

  reply	other threads:[~2021-11-02 14:03 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-02 10:46 Bjørn Ivar Teigen
2021-11-02 12:14 ` Toke Høiland-Jørgensen
2021-11-02 14:02   ` Bjørn Ivar Teigen [this message]
2021-11-02 14:07 ` Dave Taht
2021-11-03 16:13   ` Bjørn Ivar Teigen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://lists.bufferbloat.net/postorius/lists/bloat.lists.bufferbloat.net/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAKf5G6K1WS4UF1Px==W6U+pn2AdPCkBxi6=jVRQGzzhcq6FwJA@mail.gmail.com' \
    --to=bjorn@domos.no \
    --cc=bloat@lists.bufferbloat.net \
    --cc=toke@toke.dk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox