Development issues regarding the cerowrt test router project
 help / color / mirror / Atom feed
From: Eric Dumazet <eric.dumazet@gmail.com>
To: paulmck@linux.vnet.ibm.com
Cc: "Paolo Valente" <paolo.valente@unimore.it>,
	"Toke Høiland-Jørgensen" <toke@toke.dk>,
	"codel@lists.bufferbloat.net" <codel@lists.bufferbloat.net>,
	"cerowrt-devel@lists.bufferbloat.net"
	<cerowrt-devel@lists.bufferbloat.net>,
	bloat <bloat@lists.bufferbloat.net>,
	"Jonathan Morton" <chromatix99@gmail.com>,
	"John Crispin" <blogic@openwrt.org>
Subject: Re: [Cerowrt-devel] [Bloat] [Codel] FQ_Codel lwn draft article review
Date: Wed, 28 Nov 2012 11:00:22 -0800	[thread overview]
Message-ID: <1354129222.14302.508.camel@edumazet-glaptop> (raw)
In-Reply-To: <20121128174440.GD2474@linux.vnet.ibm.com>

On Wed, 2012-11-28 at 09:44 -0800, Paul E. McKenney wrote:
> You lost me on this one.  It looks to me like net/sched/sch_fq_codel.c
> in fact does hash packets into flows, so FQ-CoDel is stochastic in the
> the same sense that SFQ is.  In particular, FQ-CoDel can hash a thin
> session into the same flow as a thick session, which really is the
> birthday effect.
> 
> Now FQ-CoDel uses a 1024-bucket hash table compared to SFQ's default
> of 128 buckets, so FQ-CoDel will have smaller collision probabilities
> than will SFQ on a given set of flows.  In addition, FQ-CoDel seems
> to be able to tolerate a limited number of collisions among thin flows,
> while SFQ doesn't distinguish thin from thick.
> 
> But the possibility of stochastic collision behavior really is there
> with FQ-CoDel.  I hasten to add that in practice, I do not expect this
> possibility of stochastic behavior to be a problem in the common case.
> 
> Or am I missing your point?  Or perhaps your definition of either
> fairness or stochastic?

Thats absolutely correct, fq_codel uses a stochastic hashing exactly
like SFQ.

In fact, I wrote fq_codel using same base, after patching SFQ and
hitting some limits last year.

Note that I played a bit with a version using a non stochastic hash,
we tested it here in our labs.

This can help if you really want to avoid a thick flow sharing a thin
flow bucket, but given that all packets are going eventually into the
Internet (or equivalent crowded network), its not really a clear win.

Its more an academic issue...



  parent reply	other threads:[~2012-11-28 19:00 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CAA93jw5yFvrOyXu2s2DY3oK_0v3OaNfnL+1zTteJodfxtAAzcQ@mail.gmail.com>
2012-11-23  8:57 ` [Cerowrt-devel] " Dave Taht
2012-11-23 22:18   ` Paul E. McKenney
2012-11-24  0:07     ` Toke Høiland-Jørgensen
2012-11-24 16:19       ` Dave Taht
2012-11-24 16:36         ` dpreed
2012-11-24 19:57         ` [Cerowrt-devel] [Codel] " Andrew McGregor
2012-11-26 21:13         ` Rick Jones
2012-11-26 21:19           ` Dave Taht
2012-11-26 22:16         ` [Cerowrt-devel] " Toke Høiland-Jørgensen
2012-11-26 23:21           ` Toke Høiland-Jørgensen
2012-11-26 23:39             ` dpreed
2012-11-26 23:58               ` Toke Høiland-Jørgensen
2012-11-26 17:20       ` Paul E. McKenney
2012-11-26 21:05       ` [Cerowrt-devel] [Codel] " Rick Jones
2012-11-26 23:18         ` [Cerowrt-devel] [Bloat] " Rick Jones
2012-11-27 22:03     ` [Cerowrt-devel] " Jim Gettys
2012-11-27 22:31       ` [Cerowrt-devel] [Bloat] " David Lang
2012-11-27 22:54         ` Paul E. McKenney
2012-11-27 23:15           ` [Cerowrt-devel] [Codel] " Andrew McGregor
2012-11-28  0:51             ` Paul E. McKenney
2012-11-28 17:36             ` Paul E. McKenney
2012-11-28 14:06         ` [Cerowrt-devel] " Michael Richardson
2012-11-27 22:49       ` [Cerowrt-devel] " Paul E. McKenney
2012-11-27 23:53         ` [Cerowrt-devel] [Codel] " Greg White
2012-11-28  0:27           ` Paul E. McKenney
2012-11-28  3:43             ` Kathleen Nichols
2012-11-28  4:38               ` Paul E. McKenney
2012-11-28 16:01                 ` Paul E. McKenney
2012-11-28 16:16                   ` Jonathan Morton
2012-11-28 17:44                     ` Paul E. McKenney
2012-11-28 18:37                       ` [Cerowrt-devel] [Bloat] " Michael Richardson
2012-11-28 18:51                         ` [Cerowrt-devel] [Codel] [Bloat] " Eric Dumazet
2012-11-28 21:44                           ` Michael Richardson
2012-11-28 19:00                       ` Eric Dumazet [this message]
2012-12-02 21:37                         ` [Cerowrt-devel] [Bloat] [Codel] " Toke Høiland-Jørgensen
2012-12-02 21:47                           ` [Cerowrt-devel] [Codel] [Bloat] " Andrew McGregor
2012-12-03  8:04                             ` [Cerowrt-devel] [Bloat] [Codel] " Dave Taht
2012-12-02 22:07                           ` Eric Dumazet
2012-12-02 22:15                             ` Toke Høiland-Jørgensen
2012-12-02 22:30                               ` Eric Dumazet
2012-12-02 22:51                                 ` Toke Høiland-Jørgensen
2012-11-28 17:20       ` [Cerowrt-devel] " Paul E. McKenney
2012-12-02 23:06         ` Paul E. McKenney
2012-12-03 11:24           ` Toke Høiland-Jørgensen
2012-12-03 11:31             ` Dave Taht
2012-12-03 12:54               ` Toke Høiland-Jørgensen
2012-12-03 14:58                 ` Paul E. McKenney
2012-12-03 15:19                   ` Toke Høiland-Jørgensen
2012-12-03 15:49                   ` [Cerowrt-devel] [Codel] " Eric Dumazet
2012-12-03 15:03               ` [Cerowrt-devel] " Paul E. McKenney
2012-12-03 15:58               ` David Woodhouse
2012-12-04  3:13                 ` [Cerowrt-devel] [Codel] " Dan Siemon
2012-12-04  9:23                   ` [Cerowrt-devel] [Bloat] " Alex Burr
2012-12-05  3:41                     ` Dan Siemon
     [not found]                       ` <1354739624.4431.YahooMailNeo@web126205.mail.ne1.yahoo.com>
2012-12-06  4:12                         ` Dan Siemon
2012-12-05  0:01                   ` [Cerowrt-devel] " Sebastian Moeller
2012-11-30  1:09       ` [Cerowrt-devel] [Bloat] " Dan Siemon

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/cerowrt-devel.lists.bufferbloat.net/

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

  git send-email \
    --in-reply-to=1354129222.14302.508.camel@edumazet-glaptop \
    --to=eric.dumazet@gmail.com \
    --cc=bloat@lists.bufferbloat.net \
    --cc=blogic@openwrt.org \
    --cc=cerowrt-devel@lists.bufferbloat.net \
    --cc=chromatix99@gmail.com \
    --cc=codel@lists.bufferbloat.net \
    --cc=paolo.valente@unimore.it \
    --cc=paulmck@linux.vnet.ibm.com \
    --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