[Bloat] Question about fq_codel vs modem buffers

Dave Taht dave.taht at gmail.com
Sat May 2 12:09:49 EDT 2015


On Sat, May 2, 2015 at 4:45 AM, Alan Jenkins
<alan.christopher.jenkins at gmail.com> wrote:
> On 02/05/15 03:49, Rich Brown wrote:
>>
>> I posted a message about using SQM & OpenWrt on Tom's Hardware, and got a
>> response from someone who's somewhat knowledgeable. I'm not sure of the
>> proper response, so I wanted to ask here first. Here's the question that has
>> me stumped.
>>
>>
>> http://www.tomshardware.com/answers/id-2615979/high-latency-person-internet.html#15786081
>>
>> My thoughts:
>>
>> I know fq_codel takes control of the bottleneck by being set to a couple
>> percent below the fastest link speeds observed in each direction.

in software rate limiting *HTB* takes control of the bottleneck.
fq_codel then manages the queue length and packet scheduling.

IF the fq_codel algorithm is instead located close to the mac layer of
the hardware and can "see" the latency, then it can respond to changes
in line rate.

This is how BQL works. It works fairly poorly (today) on wifi as there
are too many buffers between fq_codel and the wifi device (and a few
other reasons)

>> The author of the rebuttal says that the (DSL or Cable) modem buffers will
>> fill up if the "upload drops from 3 to 2mbps". I can think of two ways this
>> can happen:
>>         - Actual link bit rate drops
>>         - Congestion/oversubscription in the head end causes effective
>> data rate to drop

I tried to answer on the post, couldn't get it to take my answer. I wrote:

@kewix25:

You are correct:

A) if your line rate is not fixed, then software shaping htb +
fq_codel to a rate below that observed on one test will misbehave on
the times that the line rate drops below that. It is generally unknown
to what extent ISP line rates vary in this way, although line quality
and contention ARE two figures that most ISPs monitor closely. In all
my testing I have only found one cable plant (a large apartment
building) that regularly showed major variance in the actual line rate
achieved.

B) Bufferbloat.net's push has always been for the ISPs and CPE makers
to fix their gear in either hardware or software.

If in software:

It would help that - after getting a sqm-scripts install that worked -
for users (and their ISPs!) be monitoring the line with smokeping, to
see the cases where the line rate might drop and latencies skyrocket.

Other ongoing measurements are possible (see gargoyle-router project
for one implementation) - but the right answer has always been to get
the hardware right.

C) The promise in latency sensing AQM algorithms like pie and codel is
indeed that they can dynamically adjust to changes of rate... when the
algorithms are close enough to the hardware to measure it accurately.
Next up for bufferbloat.net's researchers is trying to tackle wifi,
which is far, far far more dynamic than dsl and cable links.

There is some discussion of these questions on the bufferbloat.net bloat list.
>> But I don't know enough about the physical characteristics of cable/dsl
>> links to understand how they actually work, nor how fq_codel can (or can't)
>> accommodate degradation.
>>
>> Could someone help me shape a response? Thanks.
>>
>> Rich
>
>
> Basically don't worry too much about this.  The criticism was correct. Your
> critic is not spreading damagingly incorrect technical information and is
> on-cause AFAICT.  I don't think there's anything left to add to that thread
> now, just accept the criticism (post an agreement if you like, or not).
>
> You have to "throttle" to under the link speed in openwrt.  If the link
> speed drops below that, your bloated modem will become the slowest link
> again ("bottleneck" - where it narrows and flows slowest, get it?), and a
> queue will build there.
>
> OP has a variable (rural) link so it sucks.  But if you're noticing
> 1000-4000ms bufferbloat that sucks more in many cases, if you can avoid it
> by throttling below your slowest usable link speed, you'll likely benefit
> from that.
>
> Particularly if you're above 5Mbps anyway like this guy; allegedly that's
> the cutoff where throughput stops mattering so much for web browsing.
>
> https://www.igvita.com/2012/07/19/latency-the-new-web-performance-bottleneck/
> (un-cited, graph, sorry, I wish I knew where it came from).
>
> As he says, the correct technical solution is to fix the modem to run
> fq_codel.  Then fq_codel will limit the queue that builds up at the
> bottleneck.  It avoids the need for throttling and will work with variable
> line rates.  But the modems aren't open-source, so we're demonstrating the
> fix with external routers.  Eventually ISPs will wise up and procure modems
> with fixes.  Like the PIE queuing discipline which is being standardized for
> next-generation cable modems.  (It's a start anyway, even if it's not as
> good as fq_codel).
>
> Alan
>
>
> _______________________________________________
> Bloat mailing list
> Bloat at lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/bloat



-- 
Dave Täht
Open Networking needs **Open Source Hardware**

https://plus.google.com/u/0/+EricRaymond/posts/JqxCe2pFr67



More information about the Bloat mailing list