From: Bob Briscoe <bob.briscoe@bt.com>
To: Dave Taht <dave.taht@gmail.com>
Cc: bloat <bloat@lists.bufferbloat.net>
Subject: Re: [Bloat] What is fairness, anyway? was: Re: finally... winning on wired!
Date: Sat, 14 Jan 2012 11:06:46 +0000 [thread overview]
Message-ID: <201201141107.q0EB7YI9020577@bagheera.jungle.bt.co.uk> (raw)
In-Reply-To: <CAA93jw4KJdYwrAuk7-yHDYCGBh1s6mE47eAYu2_LRfY45-qZ2g@mail.g mail.com>
Dave,
[There's a lot in yr email, but I have to finish
day job-stuff (well actually that's a misnomer -
it's now become day, night and weekend job). So here's a v quick response: ]
Yes, FQ can (and generally does) improve matters,
particularly when the AQM isn't good*. But FQ
prevents all attempts by end-systems to do a lot
better (e.g. uTP). uTP is only the start of what
could be done. FQ aims for isolation between
flows, and consequently removes the signals hosts
would need to be able to do a lot better.
The catch-22 is that a network node can't rely on
hosts to do a lot better. The upshot: FQ does a
not-so-good job in case hosts don't do any job at
all, but it completely prevents hosts doing a brilliant job...
...unless FQ starts making exceptions using DPI,
then we start down an ultimately fruitless cul de
sac where apps identify themselves as a protocol
that is brilliant, without actually behaving
brilliantly, just to take advantage of the
exceptions built into the HG,.. yada yada.
I need to understand your points about why
wireless is different - will read closer, think
and respond again when I have more time.
Bob
* (can you clarify what experiment the plot you
linked to is illustrating - you've not made it
clear what you're comparing between)
At 07:26 11/01/2012, Dave Taht wrote:
>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
________________________________________________________________
Bob Briscoe, BT Innovate & Design
next prev parent reply other threads:[~2012-01-14 11:07 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
[not found] ` <CAA93jw4KJdYwrAuk7-yHDYCGBh1s6mE47eAYu2_LRfY45-qZ2g@mail.g mail.com>
2012-01-14 11:06 ` Bob Briscoe [this message]
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=201201141107.q0EB7YI9020577@bagheera.jungle.bt.co.uk \
--to=bob.briscoe@bt.com \
--cc=bloat@lists.bufferbloat.net \
--cc=dave.taht@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