CoDel AQM discussions
 help / color / mirror / Atom feed
From: Jesper Dangaard Brouer <brouer@redhat.com>
To: Dan Siemon <dan@coverfire.com>
Cc: codel@lists.bufferbloat.net, cerowrt-devel@lists.bufferbloat.net,
	bloat@lists.bufferbloat.net
Subject: Re: [Codel] [Bloat] Latest codel, fq_codel, and pie sim study from cablelabs now available
Date: Tue, 14 May 2013 14:12:03 +0200	[thread overview]
Message-ID: <20130514141203.37787649@redhat.com> (raw)
In-Reply-To: <1368498364.1479.5.camel@ganymede.home>

On Mon, 13 May 2013 22:26:04 -0400
Dan Siemon <dan@coverfire.com> wrote:

> On Thu, 2013-05-02 at 15:04 +0300, Jonathan Morton wrote:
> > I can easily see a four-tier system working for most consumers, just
> > so long as the traffic for each tier can be identified - each tier
> > would have it's own fq_codel queue:

I generally like it, but some notes below.

> > 1) Network control traffic, eg. DNS, ICMP, even SYNs and pure ACKs -
> > max 1/16th bandwidth, top priority

I used a separate queue for ACK packets, and directly calculated the
needed bandwidth for ACK packets based on the downstream link.
See:
 http://sourceforge.net/p/adsl-optimizer/code/HEAD/tree/trunk/kode/optimizer/queues/include/functions.inc#l94

(My future idea was to implement an ACK aware qdisc, that would drop
accumulative ACK packets or delay ACKs to influence downstream behavior)

> > 2) Latency-sensitive unresponsive flows, eg. VoIP and gaming - max
> > 1/4 bandwidth, high priority
> > 
> > 3) Ordinary bulk traffic, eg. web browsing, email, general purpose
> > protocols - no bandwidth limit, normal priority

So, these two above is "known-good" traffic, that gets categorized into
these.

> > 4) Background traffic, eg. BitTorrent - no bandwidth limit, low
> > priority, voluntarily marked, competes at 1:4 with normal.

I worked with two classes for this, (1) a default fall-through traffic
class, where uncategorized traffic end-up. (2) a known "bad" low-prio
traffic class, for traffic I could categorize as BitTorrent etc.

http://sourceforge.net/p/adsl-optimizer/code/HEAD/tree/trunk/kode/optimizer/queues/htb/optimizer_htb.sh#l227


> The above is close to what I implemented:
> http://git.coverfire.com/?p=linux-qos-scripts.git;a=blob;f=src-3tos.sh;h=3e88c2fa5f2feb0163c052086541ba17579a3c37;hb=HEAD

Nice, and thank you for mentioning my (old) site: http://www.adsl-optimizer.dk

And actually have a script that mentions (and can use) the ADSL
linklayer options :-)


> The above aims for per-host fairness and three tiers per host. Each
> tier has an fq_codel QDisc (configurable).
> 
> Some performance results can be found at:
> http://www.coverfire.com/archives/2013/01/01/improving-my-home-internet-performance/

p.s. I love your "ping-exp" tool and the nice graphs it generates!

Others go clone:
 git clone http://git.coverfire.com/ping-exp.git


-- 
Best regards,
  Jesper Dangaard Brouer
  MSc.CS, Sr. Network Kernel Developer at Red Hat
  Author of http://www.iptv-analyzer.org
  LinkedIn: http://www.linkedin.com/in/brouer

  parent reply	other threads:[~2013-05-14 12:12 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-01 11:23 [Codel] " Dave Taht
2013-05-01 20:26 ` [Codel] [Bloat] " Simon Barber
2013-05-02  0:00   ` Jonathan Morton
2013-05-02  2:20     ` Simon Barber
2013-05-02  4:59       ` Andrew McGregor
2013-05-02 12:04       ` Jonathan Morton
2013-05-02 13:29         ` Simon Perreault
2013-05-14  2:26         ` Dan Siemon
2013-05-14  4:56           ` Tristan Seligmann
2013-05-14 10:24             ` Dave Taht
2013-05-14 13:02               ` Eric Dumazet
2013-06-11 18:19             ` [Codel] [Cerowrt-devel] " Michael Richardson
2013-05-14 12:12           ` Jesper Dangaard Brouer [this message]
2013-05-06 17:54       ` [Codel] " Jesper Dangaard Brouer
2013-05-06 18:46         ` Jonathan Morton
2013-05-06 20:47           ` Jesper Dangaard Brouer
2013-05-07 16:22             ` Greg White
2013-05-07 13:31       ` [Codel] [Cerowrt-devel] " Michael Richardson
2013-05-07 16:30         ` [Codel] [Bloat] [Cerowrt-devel] " Greg White
2013-05-07 19:56           ` [Codel] [Bloat] " Wes Felter
2013-05-07 20:30             ` Eric Dumazet
2013-05-08 22:25               ` Dave Taht
2013-05-08 22:54                 ` Eric Dumazet
2013-05-09  1:45                   ` Andrew McGregor

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=20130514141203.37787649@redhat.com \
    --to=brouer@redhat.com \
    --cc=bloat@lists.bufferbloat.net \
    --cc=cerowrt-devel@lists.bufferbloat.net \
    --cc=codel@lists.bufferbloat.net \
    --cc=dan@coverfire.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