From: David Woodhouse <dwmw2@infradead.org>
To: Dave Taht <dave.taht@gmail.com>
Cc: "Paolo Valente" <paolo.valente@unimore.it>,
"Toke Høiland-Jørgensen" <toke@toke.dk>,
"Eric Raymond" <esr@thyrsus.com>,
"codel@lists.bufferbloat.net" <codel@lists.bufferbloat.net>,
"cerowrt-devel@lists.bufferbloat.net"
<cerowrt-devel@lists.bufferbloat.net>,
bloat <bloat@lists.bufferbloat.net>,
paulmck@linux.vnet.ibm.com, "John Crispin" <blogic@openwrt.org>
Subject: Re: [Codel] [Cerowrt-devel] FQ_Codel lwn draft article review
Date: Mon, 03 Dec 2012 15:58:23 +0000 [thread overview]
Message-ID: <1354550303.24281.103.camel@shinybook.infradead.org> (raw)
In-Reply-To: <CAA93jw7v53AgKF48=hu2HwvB8LZusz_FPczOutnVkDtGy+bRbg@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 2463 bytes --]
On Mon, 2012-12-03 at 12:31 +0100, Dave Taht wrote:
> ADSL benefits from closely tieing buffering to being nearly
> zero and to signalling the actual packet delivery from the hardware.
Er, does it?
ADSL is basically just ATM with a strange PHY. You have a bunch of
options for how you use this ATM link. Mostly it's RFC2364 PPP-over-ATM
or it's PPPoE on top of RFC2684 Ethernet-over-ATM.
In about the 3.4 kernel I fixed PPPoATM to limit its queue depth to 2
packets, so the PPP netdev queue/qdisc is *fairly* much in control. And
thus I think fq_codel should work, even if we don't have BQL on PPP?
In net-next a couple of days ago, I fixed the BR2684 driver to limit
*its* queue depth to 2 packets too, so there there's "only" the
txqueuelen on the 'nas0' virtual Ether-on-ATM device, which defaults to
100 packets, below the PPP netdev. If you cut that down to single
figures, perhaps fq_codel stands a chance on PPPoEoA too?
I'd actually like to track those packets all the way down, and make BQL
work on PPP devices generically — by installing a skb destructor so that
we get notified when the packet *actually* leaves the box, however many
layers of tunnelling it goes through. What we have so far is helpful,
but surely BQL will still make things better?
There's also straight IP on that virtual Ethernet interface too, which
is rarer. And then the nas0 interface would be the one with your default
route, and you'd be using fq_codel directly on that. So it should be OK.
I have posted an RFC patch to the netdev list which adds BQL to BR2684
virtual Ethernet devices, but it's "interesting" because the ATM driver
normally prepends a header before handing it to the ATM device... which
means that the packet we account as *completed* is larger than the
packet we account as *sending*... and the BQL code panics the box when
that happens. I have a workaround, which seems mostly OK.
However, none of this helps much in the case where the PPPoE part and
the Ethernet-over-ATM part are done on separate boxes; a separate ADSL
"modem" and then your own box doing PPPoE to it. In that case, you just
hope that the "modem" does some kind of flow control... is that even
possible for PPPoE or would it have to use pause frames at the Ethernet
level?
--
David Woodhouse Open Source Technology Centre
David.Woodhouse@intel.com Intel Corporation
[-- Attachment #2: smime.p7s --]
[-- Type: application/x-pkcs7-signature, Size: 6171 bytes --]
next prev parent reply other threads:[~2012-12-03 15:58 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CAA93jw5yFvrOyXu2s2DY3oK_0v3OaNfnL+1zTteJodfxtAAzcQ@mail.gmail.com>
2012-11-23 8:57 ` [Codel] " 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 ` [Codel] [Cerowrt-devel] " dpreed
2012-11-24 19:57 ` [Codel] " Andrew McGregor
2012-11-26 21:13 ` Rick Jones
2012-11-26 21:19 ` Dave Taht
2012-11-26 22:16 ` Toke Høiland-Jørgensen
2012-11-26 23:21 ` Toke Høiland-Jørgensen
2012-11-26 23:39 ` [Codel] [Cerowrt-devel] " dpreed
2012-11-26 23:58 ` Toke Høiland-Jørgensen
2012-11-26 17:20 ` [Codel] " Paul E. McKenney
2012-11-26 21:05 ` Rick Jones
2012-11-26 23:18 ` [Codel] [Bloat] " Rick Jones
2012-11-27 22:03 ` [Codel] [Cerowrt-devel] " Jim Gettys
2012-11-27 22:31 ` [Codel] [Bloat] " David Lang
2012-11-27 22:54 ` Paul E. McKenney
2012-11-27 23:15 ` Andrew McGregor
2012-11-28 0:51 ` Paul E. McKenney
2012-11-28 17:36 ` Paul E. McKenney
2012-11-28 14:06 ` [Codel] [Cerowrt-devel] [Bloat] " Michael Richardson
2012-11-27 22:49 ` [Codel] [Cerowrt-devel] " Paul E. McKenney
2012-11-27 23:53 ` 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 ` [Codel] [Bloat] " Michael Richardson
2012-11-28 18:51 ` Eric Dumazet
2012-11-28 21:44 ` Michael Richardson
2012-11-28 19:00 ` Eric Dumazet
2012-12-02 21:37 ` Toke Høiland-Jørgensen
2012-12-02 21:47 ` Andrew McGregor
2012-12-03 8:04 ` 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 ` [Codel] " 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 ` Eric Dumazet
2012-12-03 15:03 ` Paul E. McKenney
2012-12-03 15:58 ` David Woodhouse [this message]
2012-12-04 3:13 ` Dan Siemon
2012-12-05 0:01 ` Sebastian Moeller
[not found] ` <1354613026.72238.YahooMailNeo@web126202.mail.ne1.yahoo.com>
2012-12-05 3:41 ` [Codel] [Bloat] " Dan Siemon
[not found] ` <1354739624.4431.YahooMailNeo@web126205.mail.ne1.yahoo.com>
2012-12-06 4:12 ` Dan Siemon
2012-11-30 1:09 ` 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/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=1354550303.24281.103.camel@shinybook.infradead.org \
--to=dwmw2@infradead.org \
--cc=bloat@lists.bufferbloat.net \
--cc=blogic@openwrt.org \
--cc=cerowrt-devel@lists.bufferbloat.net \
--cc=codel@lists.bufferbloat.net \
--cc=dave.taht@gmail.com \
--cc=esr@thyrsus.com \
--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