From: Kathleen Nichols <nichols@pollere.com>
To: codel@lists.bufferbloat.net
Subject: Re: [Codel] fq_codel: revenge of the standing queue
Date: Tue, 04 Sep 2012 13:02:43 -0700 [thread overview]
Message-ID: <50465E63.4000606@pollere.com> (raw)
In-Reply-To: <1346784623.13121.65.camel@edumazet-glaptop>
I can't keep up with the pace here, but I'm compelled to express puzzlement
at the notion that fq_codel gives *longer* standing queues than codel. The
opposite happens with sfq_codel which is, I believe, doing the same basic
things as fq_codel (a similar approach to that below for queues/bins that go
empty) except for being packet scheduled rather than byte scheduled. I
see this wonderful, well-controlled behavior without "reverse traffic"
issues.
This is why I think Eric's work on this rocks.
imho,
Kathie
On 9/4/12 11:50 AM, Eric Dumazet wrote:
> On Tue, 2012-09-04 at 11:35 -0700, Dave Taht wrote:
>
>> 2) New flows
>>
>> The next issue (at these 10 and 100Mbit rates) is the "new flow" idea
>> in fq_codel. It is VERY useful pushing sparse flows to the fore of the
>> queues, and also provided a boost to long RTT flows. However at high
>> levels of occupancy and low bandwidth, flows empty their queue
>> rapidly, become "new flows", and then mislead codel for that flow into
>> resetting itself again, since we end up with a short delay for the
>> re-entrance. This isn't a particularly horrible behavior, but as my
>> own hope for this feature was to make voip better primarily, and
>> everything else we got from it was a bonus.
>>
>> TSQ really made this oddity show up big. I think on routed traffic it
>> will be less of an issue.
>
> This is simply not true, and based on misunderstanding on what does
> fq_codel.
>
> A flow never leaves the new flow list before doing a full RR cycle in
> old flow list (even without any packet in this flow)
>
> _IF_ we did a full RR cycle, then we accumulated a full quantum of
> credit, and lost our rank the 'fq_codel RR queue' (the combination of
> the 2 internal queues, new and old)
>
> Therefore, we allow the flow to be queued in 'new flow', to recover a
> bit of the lost rank in queue.
>
> Basically you dont interpret correctly the 'new_flow_count' counter.
>
> It means almost nothing at all, since for a given TCP flow, we _can_
> increment this counter several time.
>
>
>
> _______________________________________________
> Codel mailing list
> Codel@lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/codel
>
next prev parent reply other threads:[~2012-09-04 20:02 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-04 18:35 Dave Taht
2012-09-04 18:50 ` Eric Dumazet
2012-09-04 20:02 ` Kathleen Nichols [this message]
2012-09-04 20:22 ` Dave Taht
2012-09-04 19:02 ` Eric Dumazet
2012-09-04 19:51 ` Dave Taht
2012-09-04 20:10 ` Eric Dumazet
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/codel.lists.bufferbloat.net/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=50465E63.4000606@pollere.com \
--to=nichols@pollere.com \
--cc=codel@lists.bufferbloat.net \
/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