[Cerowrt-devel] SQM Question #5: Link Layer Adaptation Overheads

Sebastian Moeller moeller0 at gmx.de
Mon Jan 6 05:56:57 EST 2014

Hi Dave, hi List,

On Jan 6, 2014, at 04:29 , Dave Taht <dave.taht at gmail.com> wrote:

> On Sat, Jan 4, 2014 at 10:40 AM, Fred Stratton <fredstratton at imap.cc> wrote:
>> Link Names:
>> For consistency, if ADSL is used as a portmanteau term, them VDSL should be
>> used as the equivalent for VDSL and VDSL2.
>> CeroWRT has to decide whether it is an experimental build, or something that
>> will eventually be used in production, so these decisions can be made
>> consistently.
> Well, what I was aiming for was for us to get the sqm scripts and gui
> up to where they were better than the standard openwrt qos scripts and
> then push them up to openwrt to where they could be more widely
> deployed.
> Aside from being able to dynamically assign priorities in the gui, we
> are there.  Except that nfq_codel is currently getting better results
> than fq_codel at low bandwidths, and I'm tempted to pour all of
> simple.qos into C.

	Since you wore nfq_codel, what is the secret sauce here?

> As for cero's future - certainly since all the snowden revelations
> I've been going around saying that "friends don't let friends run
> factory firmware". I would like a stable build of sqm and cerowrt to
> emerge, and to then go off and work on improving wifi. Regrettably
> what seems to be happening is more backwards than forwards on the
> former, and ramping up on the ath9k and ath10k is taking more time
> than I'd like, and it seems likely I'll be working on those primarily
> on another platform and only eventually pushing the results out to
> cero, mainline kernel
> So it's still at the "keep plugging away" point for sqm, ipv6, cero in
> general, with the stable release always just out of sight.
> Tackling the ipv6 problem is next on my agenda on cero, and getting a
> test suite going is next on my day job.

	Any further hints on the nature of your day job possible :) 

>> I concur with your ADSL setup suggestion as default. I have been running the
>> Sebastian Moeller ping script overnight to calculate ADSL overhead for the
>> last several days. After several hours of curve fitting using Octave, an
>> overhead result is displayed. This novel approach works well.
> It would be nice to get to where we could autoconfigure a router using
> tools like these with no human intervention. This includes bandwidth
> estimation.

	I fully agree that it would be nice. Also it ail e hard unless we take control over the actual bottleneck link… With DSL connections, the DSL modem knows a lot about the link properties, if the modem would be onboard we could programmatically as about bandwidth and encapsulation; for the more typical case with an independent modem or even modem router we have no clear path accessing that information. With cable I have even less hope, as will never get the modem into the router (then again DOCSIS 3.1's typically faster speeds and mandatory pie in the modem might make the situation less dire than on the DSL side).
	So for ATM based links, I think we can estimate a number of relevant parameters about encapsulation and an aggregate up- and down-bandwidth measurement (which alas is not too helpful unless we know the degree of asymmetry or one of the bandwidth, in both cases we are likely to know everything a priori anyway). But the current prototype code I have is really slow (3 hours measurement time with otherwise quiet home network; ~20 processing) and memory demanding (the ascii ping traces take up ~260MB) so will not be able to run on the router (also the current implementation in matlab/octave does not lend itself well for an embedded platform…)

Best Regards

>> The overhead for the particular setup I use was 40 for PPPoE, and 10 for
>> PPPoA.
>> The default you suggest is a suitable starting point, I suggest.
>> On 04/01/14 18:16, Rich Brown wrote:
>>> QUESTION #5: I still don’t have any great answers for the Link Layer
>>> Adaptation overhead descriptions and recommendations. In an earlier message,
>>> (see
>>> https://lists.bufferbloat.net/pipermail/cerowrt-devel/2013-December/001914.html
>>> and following messages), Fred Stratton described the overheads carried by
>>> various options, and Sebastian Moeller also gave some useful advice.
>>> After looking at the options, I despair of giving people a clear
>>> recommendation that would be optimal for their equipment. Consequently, I
>>> believe the best we can do is come up with “good enough” recommendations
>>> that are not wrong, and still give decent performance.
>>> In this spirit, I have changed Draft #3 of the “Setting up SQM” page to
>>> reflect this understanding. See
>>> http://www.bufferbloat.net/projects/cerowrt/wiki/Setting_up_AQM_for_CeroWrt_310
>>>        ADSL/ATM link: Choose “ADSL/ATM", and set Per Packet Overhead to
>>> 40
>>>        VDSL2 link: Choose “VDSL”, and set Per Packet Overhead to 8
>>>        Other kind of link (e.g., Cable, Fiber, Ethernet, other not
>>> listed): Choose “None (default)”, and set Per Packet Overhead to 0
>>> NB: I have changed the first menu choice to “ADSL/ATM” and the second to
>>> “VDSL” in the description. I would ask that we change to GUI to reflect
>>> those names as well. This makes it far easier/less confusing to talk about
>>> the options.
>>> As always, I welcome help in setting out clear recommendations that work
>>> well for the vast majority of people who try CeroWrt. Thanks.
>>> Rich
>>> _______________________________________________
>>> Cerowrt-devel mailing list
>>> Cerowrt-devel at lists.bufferbloat.net
>>> https://lists.bufferbloat.net/listinfo/cerowrt-devel
>> _______________________________________________
>> Cerowrt-devel mailing list
>> Cerowrt-devel at lists.bufferbloat.net
>> https://lists.bufferbloat.net/listinfo/cerowrt-devel
> -- 
> Dave Täht
> Fixing bufferbloat with cerowrt: http://www.teklibre.com/cerowrt/subscribe.html
> _______________________________________________
> Cerowrt-devel mailing list
> Cerowrt-devel at lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/cerowrt-devel

More information about the Cerowrt-devel mailing list