From: Dave Taht <dave.taht@gmail.com>
To: Bob Briscoe <bob.briscoe@bt.com>
Cc: bloat <bloat@lists.bufferbloat.net>
Subject: Re: [Bloat] What is fairness, anyway? was: Re: finally... winning on wired!
Date: Wed, 11 Jan 2012 08:26:06 +0100 [thread overview]
Message-ID: <CAA93jw4KJdYwrAuk7-yHDYCGBh1s6mE47eAYu2_LRfY45-qZ2g@mail.gmail.com> (raw)
In-Reply-To: <201201090538.q095cYa4031441@bagheera.jungle.bt.co.uk>
On Mon, Jan 9, 2012 at 6:38 AM, Bob Briscoe <bob.briscoe@bt.com> wrote:
> Dave,
> You're conflating removal of standing queues with bandwidth allocation. The
> former is a problem in HGs and hosts. The latter isn't a problem in HGs and
> hosts.
I've been trying to understand your point here more fully.
1) removal of standing queues is a problem in HGs and hosts
On the host side, the standing queue problem is something that happens often
in wireless in particular.
Additionally you ship packets around in aggregates, and those
aggregates can be delayed, lost, or rescheduled.
FQ reduces the damage done when packets are being bulk shipped in this
way.
http://www.teklibre.com/~d/bloat/ping_log.ps
(This graph also shows that the uncontrolled
device driver queue depth totals about 50ms in this case)
In the benchmarks I've been running against wireless, even on fairly light
loads, FQ reduces bursty packet loss, tcp resets, and the like. Statistically
it's difficult to 'see', and I'm trying to come up with better methods to do so
besides double-blind A/B testing and *most importantly*
trying to convince more people to discard their biases and
actually try the code.
Or take a look at some packet captures.
As for the AP side, you have both a bandwidth allocation and FQ problem
with wireless, compounded by the packet aggregation problem.
Still a big problem in either wireless case is a need to expire old packets and
manage the depth of the queue based on the actual bandwidth between
two devices actually available at that instant of time. Otherwise you
get nonsense like 10+ second ping times.
So as for managing the the overall length of the standing queues,
conventional AQM techniques, such as RED, blue, etc... apply but
as for coping with the bursty nature of wireless in particular (and TSO'd
streams) FQ helps break up the container-loads into manageable pieces.
2) Bandwidth allocation isn't a problem in HGs and hosts.
On hosts, on wired, it is not a problem. On wireless, see above.
On home gateways, which run uplinks at anywhere between 128KB/sec
in parts of the world, to 1Mbit in others, & 4Mbit fairly typical on cable,
it's a huge problem. Regardless of any level of queue management
as applied above (fq and aqm), the only decent way known to deal with
'bufferbloat' on bad devices beyond the HG, is to limit your own bandwidth
to what you've measured as below what the messed up edge provider
is providing....
and manage it from there across the needs of your site, where various
AQM and FQ technologies can make a dent in your own problems.
So perhaps I misunderstood your point here?
Certainly the use model of the internet has changed significantly
and TCP is in dire need of viable complementary protocols such
as ledbat, etc. I also happen to like hipl, and enjoy but am befuddled
by the ccn work on-going.
And certainly I look forward to seeing less edge devices misbehaving
with excessive buffering and lack of AQM.
I'd like in particular, a contractual model - I mean, you are typically buying
'x bandwidth' as part of your ISP contract -
made available to correctly, and automatically provision downstream devices.
something as simple as a extension to dhcp would nice,
or something like parsable data for 'http://whatsmydarnbandwidth.myisp.com'
would help.
Having to infer the available bandwidth and amount of buffering
with tools such as shaperprobe is useful but a poor second to
a contractual model for a baseline and tighter feedback loops
for ongoing management.
--
Dave Täht
SKYPE: davetaht
US Tel: 1-239-829-5608
FR Tel: 0638645374
http://www.bufferbloat.net
next prev parent reply other threads:[~2012-01-11 7:26 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-01-02 0:40 [Bloat] " Dave Taht
2012-01-02 5:22 ` Eric Dumazet
2012-01-02 8:07 ` Dave Taht
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 [this message]
[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
2012-01-14 16:35 Jesper Dangaard Brouer
2012-01-15 9:49 ` Dave Taht
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=CAA93jw4KJdYwrAuk7-yHDYCGBh1s6mE47eAYu2_LRfY45-qZ2g@mail.gmail.com \
--to=dave.taht@gmail.com \
--cc=bloat@lists.bufferbloat.net \
--cc=bob.briscoe@bt.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