[Cake] Running Cake at long RTTs

Sebastian Moeller moeller0 at gmx.de
Tue Oct 27 13:14:23 EDT 2015

Hi Toke,

On Oct 27, 2015, at 17:50 , Toke Høiland-Jørgensen <toke at toke.dk> wrote:

> Sebastian Moeller <moeller0 at gmx.de> writes:
>>> - Turn the hard packet queue size into a lower bound rather than an
>>> upper bound.
>> 	This seems dangerous for low memory configurations?
> Well, yeah, the max packet count allowed can be higher this way, but I
> guess the only sane answer to that is "don't configure cake for 100Mbit
> and 1s+ of latency if you don't have the memory to spare”.

	What about cake honoring it as a hard limit but complaining to syslog, if cake deems the limit too low? If I recall correctly, having a qdisc OOM a router basically functionally bricks the router (unit the next reboot) or forces a reboot, both not ideal.

> Having the (now lower) bound be a bit lower than it is currently may be
> a good idea, but not sure what it should be... The current 10240 matches
> fq_codel.

	Oh, I guess that is fine, it just means that for low memory devices we need to teach sqm-scripts to reign in a bit...

>>> - Scale the target to be 1/16th of the interval.
>> 	Codel theory claims 5-10%, so 1/20 to 1/10, so it seems you
>> 	confirm the theory, not sure why cake did not do this as a
>> 	default… rem, what actually was cake setting target to? Asked
>> 	differently how sensitive to target being exactly 1/16th was the
>> 	throughput?
> Yup. 1/16th has the benefit of being implementable as a 4bit shift :)

	So is 1/8th ;) just curious, which values did you try? Codel RFC argues for 5-10% with 10% giving ever so slightly more bandwidth, while 5% keeps latency under load increase a bit smaller. But I really like that reality fits theory here, chalk this one up for code;l’s designers ;)

> Before, the target was hard-coded as 5 ms; so this was definitely an
> oversight.

	Not sure, we had discussed this and Jonathan argued that it requires empiric testing if I recall correctly, exactly what you have done ;)
I still believe that for any automatic choice cake does there should be a manual override option for experimentation, most urgently a manual target specification that will override all automatic optimizations. Well, just as for the queue max size I believe cake should complain if it thinks things are unreasonable but still do follow the users request if non impossible…

Best Regards

> -Toke

More information about the Cake mailing list