[Cake] Cake performance optimization

Dave Taht dave.taht at gmail.com
Mon Nov 23 04:21:41 EST 2015

Well, a few things entered cake that have cost performance since I
last tried to address it, notably the rate estimator, which has no
real use at present.

I have started to tune it a bit here and there (like the now
optimization I put in there recently). On x86_64, even at a GigE,
cake's cpu use is down in the noise, so it's still hard to find
hotspots, etc.

My take oni nbound shaping speed is that it is ruled by other factors
larger than cake, and that profiling was needed to find where on
platforms like the wndr3800. (profiling is hard in that platform, too,
sigh). But I wanted to make sure the algorithms were as correct as
possible before going into speed optimization mode.

I tend to rather dislike connmark stuff - it tends to be slow - also.
I don't see what use you are putting this code to?

ipt -t mangle -A QOS_MARK_${IFACE} -m mark --mark
0x01${IPT_MASK_STRING} \ -j DSCP --set-dscp-class EF ipt -t mangle -A
QOS_MARK_${IFACE} -m mark --mark 0x02${IPT_MASK_STRING} \ -j DSCP
--set-dscp-class AF41 ipt -t mangle -A QOS_MARK_${IFACE} -m mark
--mark 0x03${IPT_MASK_STRING} \ -j DSCP --set-dscp-class AF11 ipt -t
mangle -A QOS_MARK_${IFACE} -m mark --mark 0x04${IPT_MASK_STRING} \ -j
DSCP --set-dscp-class CS1

The inbound limit seems to be right at around that speed with either
cake or fq_codel, at present, on that hardware. Could you also go
measure htb + fq_codel?

Most of the work nowadays is on the linksys 1200ac and tp-link archer c7v2....
Dave Täht
Let's go make home routers and wifi faster! With better software!

On Mon, Nov 23, 2015 at 10:07 AM, Vincent Frentzel <vincent at frentzel.eu> wrote:
> I have been running cake on my now *vintage* wndr3800 on a 100/6 mbps link
> and so far have only been able to reach 65-70 mbps download speed.System
> load is rather high at 0.8 - 0.9 under stress.
> I was wondering if the current cake roadmap includes some optimizations (low
> hanging ones?) or the wndr3800 definitely needs to go...
> Im using diffserv4 and find myself using a combination of MARK/CONNMARK and
> -J DSCP to finally set the DSCP for cake. Im thinking that a leaner process
> would be to have cake work from MARK or CONNMARK directly. Im not sure what
> the ultimate performance gain would be though...
> Here is the link to my current .qos script:
> https://github.com/zcecc22/sqm-scripts/blob/master/src/nxt_routed_cake.qos
> The MARK/CONNMARK rules are stored in the standard openwrt firewall3 config
> with some added save/restore mark in firewall.user
> _______________________________________________
> Cake mailing list
> Cake at lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/cake

More information about the Cake mailing list