General list for discussing Bufferbloat
 help / color / mirror / Atom feed
From: Dave Taht <dave.taht@gmail.com>
To: Eric Dumazet <eric.dumazet@gmail.com>
Cc: bloat <bloat@lists.bufferbloat.net>
Subject: Re: [Bloat] finally... winning on wired!
Date: Mon, 2 Jan 2012 09:07:32 +0100	[thread overview]
Message-ID: <CAA93jw7xUdAmtnXdr0n76sz76yFiYV687H9PNPh437JVbo8J6g@mail.gmail.com> (raw)
In-Reply-To: <1325481751.2526.23.camel@edumazet-laptop>

On Mon, Jan 2, 2012 at 6:22 AM, Eric Dumazet <eric.dumazet@gmail.com> wrote:
> Le lundi 02 janvier 2012 à 01:40 +0100, Dave Taht a écrit :
>
>> SFQ has generally been quite good in many respects. SFQ also does
>> improved hashing on net-next. But: QFQ seemed very promising also, and
>> it took until now to see it clearly, with BQL turned on.
>>
>> To look in more detail at sfq vs qfq, under even heavier load:
>>
>> http://www.teklibre.com/~d/bloat/pfifo_sfq_vs_qfq_linear50.png
>>
>> It's really very rare in my life that I've seen a win vs an existing
>> system of these orders of magnitude. It's taken me a week to make sure
>> the results were real, and repeatable... I thought about sitting on
>> them for a while longer actually. I'd really like someone else to
>> repeat these tests and tell me I'm not seeing things!
>>
>> I have hopes QFQ will do even better at 10Mbit vs SFQ.
>
> Happy New Year Dave
>
> This makes no sense to me.

GOOD! I spent the holiday disbelieving the quality of the results and
writing tests to automate getting them. Instead of having a holiday.

> For most uses on a host or residential router, SFQ should perform the
> same than QFQ.

Well, I don't know. QFQ's scheduling mechanism is interesting, and the
bursty quality of streams generated from a web browser and IW10
(web sites are about 1MB in size these days, 70+ tcp streams),
is different from what we used to understand. Similarly, we get
these enormous bursts of of TSO/GSO offloads that are hard to
requeue....

But that's why we test... I have to tie the general architecture above
into HTB and try it at 4Mbit or so, and then figure out a way to
simulate web access. I kept seeing things like DNS, and tcp syn/syn acks
dramatically 'leaping forward' in the queue, in the packet captures,
in the QFQ case. QFQ kept 'winning big' for  the past 6 weeks
(between crashes), and I didn't understand why.

The other thing I like about QFQ is the ability to play with pfifo_drop_head
and red as sub-qdiscs and to be able to 'see' multi-queue
behavior with things such as ledbat, (bittorrent) which is the one thing
that keeps me awake at night:

http://tools.ietf.org/html/draft-ietf-ledbat-congestion-09

"   Further study is required to fully understand the behaviour of LEDBAT
   with non-drop-tail, non-FIFO queues. "

> QFQ is the thing you want to use on a big node, when SFQ limits are
> reached (SFQ as implemented in linux : at most 127 concurrent flows, and
> at most 127 packets in queue. This could be changed with an increase of
> memory cost [ which are really small anyway : about 4 Kbytes per SFQ
> queue ].

My primary interest in QFQ came from trying to find a solution for GigE and
above for servers and desktops, as well as something that could be
embedded on GigE (more notably 10GigE) ethernet cards themselves.

The amount of extra cpu and memory QFQ eats turned out to be trivial.

And hey, I found a bug. You solved it. A nice way to wake up this morning.

>A "nolimit" implementation could use a dynamic memory allocator
> schem, eventually consuming less memory on typical use :)

The memory use on the router with either SFQ or QFQ is minimal, as is cpu.

> Please try the patch I posted this morning to solve this SFQ bug.

Hell. I'd hoped to go do the holiday that I just missed. :)

> http://patchwork.ozlabs.org/patch/133793/

Yea, that seems like sanity. I just have to patch 2 sources trees,
recompile, update 2 laptops, reflash two routers, and can test that...

but I was seriously thinking of taking today off.

>
>



-- 
Dave Täht
SKYPE: davetaht
US Tel: 1-239-829-5608
FR Tel: 0638645374
http://www.bufferbloat.net

  reply	other threads:[~2012-01-02  8:07 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-02  0:40 Dave Taht
2012-01-02  5:22 ` Eric Dumazet
2012-01-02  8:07   ` Dave Taht [this message]
2012-01-02 21:31     ` Dave Taht
2012-01-02 22:14       ` Albert Rafetseder
2012-01-02 22:33         ` Dave Taht
2012-01-04 15:25       ` [Bloat] What is fairness, anyway? was: " Jim Gettys
2012-01-04 16:16         ` Dave Taht
2012-01-04 17:23           ` Jim Gettys
2012-01-04 17:36           ` Justin McCann
2012-01-04 17:40             ` Eric Dumazet
     [not found]             ` <CAFkTFa89mOmbcOV1PWX3my04rK4NsEvyakcQV2j54qa0gzAViQ@mail.g mail.com>
2012-01-05 17:52               ` Bob Briscoe
2012-01-06 17:42                 ` Jim Gettys
2012-01-06 18:09                   ` Dave Taht
2012-01-06 19:57                   ` Eric Dumazet
2012-01-06 20:34                 ` Jonathan Morton
2012-01-07 19:42                   ` Bob Briscoe
2012-01-07 22:16                     ` Wesley Eddy
2012-01-08  0:40                 ` Dave Taht
     [not found]                   ` <CAA93jw7xKwdUeT7wFNoiM8RQp1--==Eazdo0ucc44vz+L1U06g@mail.g mail.com>
2012-01-09  5:38                     ` Bob Briscoe
2012-01-11  7:26                       ` Dave Taht
     [not found]                         ` <CAA93jw4KJdYwrAuk7-yHDYCGBh1s6mE47eAYu2_LRfY45-qZ2g@mail.g mail.com>
2012-01-14 11:06                           ` Bob Briscoe
2012-01-13 21:45                   ` Dan Siemon
2012-01-14 15:55                     ` Dave Taht
2012-01-04 16:22         ` Eric Dumazet
2012-02-05  0:24         ` George B.
2012-02-05  0:43           ` Jonathan Morton
2012-02-05  1:57             ` George B.
2012-02-05  2:05               ` john thompson
2012-02-05  7:39             ` Eric Dumazet
     [not found]               ` <CAA93jw68yntHkhETQ1a9-Azu7UXEuU9f5fgOsB25hvA240iApg@mail.gmail.com>
2012-02-05 14:24                 ` Dave Taht
2012-02-05 17:53               ` Justin McCann
2012-02-05 18:21                 ` 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/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=CAA93jw7xUdAmtnXdr0n76sz76yFiYV687H9PNPh437JVbo8J6g@mail.gmail.com \
    --to=dave.taht@gmail.com \
    --cc=bloat@lists.bufferbloat.net \
    --cc=eric.dumazet@gmail.com \
    /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