SQM not showing Cake

OpenWrt 19.07.1

/etc/config/sqm
config queue 'eth1'
        option interface 'eth1'
        option qdisc_advanced '0'
        option debug_logging '0'
        option verbosity '5'
        option script 'piece_of_cake.qos'
        option linklayer 'ethernet'
        option overhead '8'
        option upload '6400'
        option download '25000'
        option qdisc 'fq_codel'
        option enabled '1'
culex@OpenWrt:~$ tc -s qdisc
qdisc noqueue 0: dev lo root refcnt 2
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc fq_codel 0: dev eth0 root refcnt 2 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms me                                                   mory_limit 4Mb ecn
 Sent 222858130257 bytes 221419256 pkt (dropped 56, overlimits 0 requeues 6122)
 backlog 0b 0p requeues 6122
  maxpacket 1514 drop_overlimit 0 new_flow_count 14022 ecn_mark 0
  new_flows_len 0 old_flows_len 0
qdisc cake 8008: dev eth1 root refcnt 2 bandwidth 6400Kbit besteffort triple-isolate nonat nowash no-ack-filte                                                   r split-gso rtt 100.0ms noatm overhead 8
 Sent 29884501167 bytes 64334847 pkt (dropped 52648, overlimits 142041152 requeues 0)
 backlog 0b 0p requeues 0
 memory used: 259904b of 4Mb
 capacity estimate: 6400Kbit
 min/max network layer size:           28 /    1500
 min/max overhead-adjusted size:       36 /    1508
 average network hdr offset:           14

                  Tin 0
  thresh       6400Kbit
  target          5.0ms
  interval      100.0ms
  pk_delay       17.1ms
  av_delay        1.7ms
  sp_delay         18us
  backlog            0b
  pkts         64387495
  bytes     29916931103
  way_inds       163368
  way_miss       291638
  way_cols            0
  drops           52648
  marks               0
  ack_drop            0
  sp_flows            1
  bk_flows            1
  un_flows            0
  max_len          1514
  quantum           300

qdisc ingress ffff: dev eth1 parent ffff:fff1 ----------------
 Sent 33705615641 bytes 50389683 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc noqueue 0: dev br-lan root refcnt 2
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc noqueue 0: dev eth0.1 root refcnt 2
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc cake 8009: dev ifb4eth1 root refcnt 2 bandwidth 25Mbit besteffort triple-isolate nonat wash no-ack-filte                                                   r split-gso rtt 100.0ms noatm overhead 8
 Sent 32608670208 bytes 49194333 pkt (dropped 1195350, overlimits 39500526 requeues 0)
 backlog 0b 0p requeues 0
 memory used: 757888b of 4Mb
 capacity estimate: 25Mbit
 min/max network layer size:           46 /    1500
 min/max overhead-adjusted size:       54 /    1508
 average network hdr offset:           14

                  Tin 0
  thresh         25Mbit
  target          5.0ms
  interval      100.0ms
  pk_delay        533us
  av_delay         69us
  sp_delay          6us
  backlog            0b
  pkts         50389683
  bytes     34411071203
  way_inds       459301
  way_miss       274528
  way_cols            0
  drops         1195350
  marks               0
  ack_drop            0
  sp_flows            2
  bk_flows            1
  un_flows            0
  max_len          1514
  quantum           762

This has happened to me a couple of times, if i remember right try setting it to fq_codel/simple.qos, save and apply, navigate to another section of Luci or reboot, then go back to sqm and see if it appears.

It gave me an idea. I switched to layer_cake then the cake discipline showed up. Then switched back to piece of cake. I just assume its all working correctly. tc qdisc doesn't appear to be affected by UI changes. qdisc fc_codel eth0 and qdisc cake dev eth1 regardless of settings. Not sure how its supposed to work.

fq_codel -

qdisc noqueue 0: dev lo root refcnt 2
qdisc fq_codel 0: dev eth0 root refcnt 2 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 4Mb ecn
qdisc cake 8027: dev eth1 root refcnt 2 bandwidth 6400Kbit diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100.0ms noat                                                                                                    m overhead 8
qdisc ingress ffff: dev eth1 parent ffff:fff1 ----------------
qdisc noqueue 0: dev br-lan root refcnt 2
qdisc noqueue 0: dev eth0.1 root refcnt 2
qdisc cake 8028: dev ifb4eth1 root refcnt 2 bandwidth 24Mbit besteffort triple-isolate nonat wash no-ack-filter split-gso rtt 100.0ms noa                                                                                                    tm overhead 8

cake

qdisc noqueue 0: dev lo root refcnt 2
qdisc fq_codel 0: dev eth0 root refcnt 2 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 4Mb ecn
qdisc cake 802b: dev eth1 root refcnt 2 bandwidth 6400Kbit diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100.0ms noatm overhead 8
qdisc ingress ffff: dev eth1 parent ffff:fff1 ----------------
qdisc noqueue 0: dev br-lan root refcnt 2
qdisc noqueue 0: dev eth0.1 root refcnt 2
qdisc cake 802c: dev ifb4eth1 root refcnt 2 bandwidth 24Mbit besteffort triple-isolate nonat wash no-ack-filter split-gso rtt 100.0ms noatm overhead 8

Is it the same?

Look in the upper right hand corner of Luci and make sure all your changes have been saved, should be set to wan/wan6 (eth.* depending on device) under most circumstances.

This should help find which interface you need.

The GUI should show the available qdiscs, but will not do so if cake was installed after sqm was started and the router was not rebooted in between. Maybe you could either reboot the router or delete the /var/run/sqm/available_qdiscs directory on your router (which should trigger a new check of the available qdiscs).

Neither layer_cake nor piece_of_cake will wirk with any qdisc but cake itself so both scripts will ignore the requested qdisc...

1 Like