[Bloat] Question about fq_codel vs modem buffers
Alan Jenkins
alan.christopher.jenkins at gmail.com
Sat May 2 07:45:05 EDT 2015
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.
>
> 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
>
> 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
More information about the Bloat
mailing list