G'day,

Just a small update on the Unifi security gateway stuff.  They have a new range of devices which are a lot more powerful.
( https://store.ui.com/us/en/collections/cloud-gateway-ultra/products/ucg-ultra )

The good news is that the limits set in the GUI now match exactly the "rate" set in the qcdisc.

root@UCG-Ultra:~# tc -p -s -d qdisc show dev eth4
qdisc htb 1: root refcnt 5 r2q 10 default 0x2 direct_packets_stat 0 ver 3.17 direct_qlen 1000
 Sent 13112672757 bytes 41407610 pkt (dropped 2863, overlimits 12123381 requeues 0)
 backlog 0b 0p requeues 0
qdisc fq_codel 2: parent 1:2 limit 2000p flows 1024 quantum 300 target 5ms interval 100ms memory_limit 4Mb ecn drop_batch 64
 Sent 13112672757 bytes 41407610 pkt (dropped 2863, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
  maxpacket 27888 drop_overlimit 0 new_flow_count 9175282 ecn_mark 0
  new_flows_len 1 old_flows_len 3
qdisc ingress ffff: parent ffff:fff1 ----------------
 Sent 104038056896 bytes 143646981 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0

root@UCG-Ultra:/etc/systemd# tc -d class show dev eth4
class htb 1:1 root rate 35Mbit ceil 35Mbit linklayer ethernet burst 1491b/1 mpu 0b cburst 1491b/1 mpu 0b level 7
class htb 1:2 parent 1:1 leaf 2: prio 7 quantum 1514 rate 64bit ceil 35Mbit linklayer ethernet burst 1500b/1 mpu 0b cburst 1491b/1 mpu 0b level 0
class fq_codel 2:1bf parent 2:
class fq_codel 2:274 parent 2:
class fq_codel 2:296 parent 2:
class fq_codel 2:2ca parent 2:
class fq_codel 2:34a parent 2:
class fq_codel 2:364 parent 2:

root@UCG-Ultra:~# tc -p -s -d qdisc show dev ifbeth4
qdisc htb 1: root refcnt 2 r2q 10 default 0x2 direct_packets_stat 0 ver 3.17 direct_qlen 1000
 Sent 108770017013 bytes 143572868 pkt (dropped 24028, overlimits 43487579 requeues 0)
 backlog 0b 0p requeues 0
qdisc fq_codel 2: parent 1:2 limit 2000p flows 1024 quantum 1514 target 5ms interval 100ms memory_limit 4Mb ecn drop_batch 64
 Sent 108770017013 bytes 143572868 pkt (dropped 24028, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
  maxpacket 69876 drop_overlimit 10448 new_flow_count 14414347 ecn_mark 0 drop_overmemory 10448
  new_flows_len 1 old_flows_len 2

root@UCG-Ultra:/etc/systemd# tc -d class show dev ifbeth4
class htb 1:1 root rate 800Mbit ceil 800Mbit linklayer ethernet burst 1400b/1 mpu 0b cburst 1400b/1 mpu 0b level 7
class htb 1:2 parent 1:1 leaf 2: prio 7 quantum 1514 rate 64bit ceil 800Mbit linklayer ethernet burst 1500b/1 mpu 0b cburst 1400b/1 mpu 0b level 0
class fq_codel 2:111 parent 2:
class fq_codel 2:3cc parent 2:

So 35Mb/s and 800Mb/s match what is configured in the GUI.

image.png

The bad news is still no cake.

The bottleneck in my house is now the air interfaces.   I'll run some flent tests soon.

Thanks,
Dave Seddon


Other device details....

root@UCG-Ultra:~# uname -a
Linux UCG-Ultra 5.4.213-ui-ipq5322 #5.4.213 SMP PREEMPT Fri Jan 26 01:53:55 CST 2024 aarch64 GNU/Linux

root@UCG-Ultra:~# cat /proc/cpuinfo
processor : 0
BogoMIPS : 48.00
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer : 0x51
CPU architecture: 8
CPU variant : 0xa
CPU part : 0x801
CPU revision : 4

processor : 1
BogoMIPS : 48.00
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer : 0x51
CPU architecture: 8
CPU variant : 0xa
CPU part : 0x801
CPU revision : 4

processor : 2
BogoMIPS : 48.00
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer : 0x51
CPU architecture: 8
CPU variant : 0xa
CPU part : 0x801
CPU revision : 4

processor : 3
BogoMIPS : 48.00
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer : 0x51
CPU architecture: 8
CPU variant : 0xa
CPU part : 0x801
CPU revision : 4


root@UCG-Ultra:~# cat /proc/interrupts
           CPU0       CPU1       CPU2       CPU3      
  4:   49385470   71684295   74561605   77496134     GIC-0  20 Level     arch_timer
  6:          0          0          0          0     GIC-0  39 Level     arch_mem_timer
  8:          0          0          0          0     GIC-0 195 Level     edma_txcmpl_4
  9:          0          0          0          0     GIC-0 196 Level     edma_txcmpl_5
 10:          0          0          0          0     GIC-0 197 Level     edma_txcmpl_6
 11:          0          0          0          0     GIC-0 198 Level     edma_txcmpl_7
 12:    1301701          0          0          0     GIC-0 199 Level     edma_txcmpl_8
 13:   16537922          0          0          0     GIC-0 200 Level     edma_txcmpl_9
 14:   16902391          0          0          0     GIC-0 201 Level     edma_txcmpl_10
 15:   19093638          0          0          0     GIC-0 202 Level     edma_txcmpl_11
 16:     218358          0          0          0     GIC-0 203 Level     edma_txcmpl_12
 17:   14172534          0          0          0     GIC-0 204 Level     edma_txcmpl_13
 18:   12228644          0          0          0     GIC-0 205 Level     edma_txcmpl_14
 19:   14848643          0          0          0     GIC-0 206 Level     edma_txcmpl_15
 20:  141424886          0          0          0     GIC-0 171 Level     edma_rxdesc_12
 21:   10923594          0          0          0     GIC-0 172 Level     edma_rxdesc_13
 22:   10953671          0          0          0     GIC-0 173 Level     edma_rxdesc_14
 23:   13031550          0          0          0     GIC-0 174 Level     edma_rxdesc_15
 24:          0          0          0          0     GIC-0 223 Level     edma_misc
 33:    5199506          0          0          0     GIC-0 321 Level     bam_dma
 34:        929          0          0          0     GIC-0 322 Level     msm_serial0
 35:   10465714          0          0          0     GIC-0 345 Level     mmc0
 36:          3          0          0          0     GIC-0 348 Level     7804000.sdhci
 37:      40125          0          0          0     GIC-0 324 Level     78b5000.spi
 38:    5187812          0          0          0     GIC-0 326 Level     78b7000.spi
 39:    9865790          0          0          0     GIC-0 325 Level     i2c_qup
 45:          0          0          0          0     GIC-0 450 Edge      smp2p
 46:          0          0          0          0     GIC-0 453 Edge      q6v5 wdog
 47:          0          0          0          0     GIC-0 352 Edge      tsens_interrupt
 48:          0          0          0          0     GIC-0  23 Level     arm-pmu
 49:          0          0          0          0     GIC-0 299 Edge      tzerror
 50:        360          0          0          0     GIC-0  96 Level     xhci-hcd:usb1
 51:          0          0          0          0     smp2p   0 Edge      q6v5 fatal
 52:          0          0          0          0     smp2p   1 Edge      q6v5 ready
 53:          0          0          0          0     smp2p   2 Edge      q6v5 handover
 54:          0          0          0          0     smp2p   3 Edge      q6v5 stop
 55:          0          0          0          0     smp2p   8 Edge      q6v5_wcss_userpd1_fatal
 56:          0          0          0          0     smp2p   9 Edge      q6v5_wcss_userpd1_ready
 57:          0          0          0          0     smp2p  12 Edge      q6v5_wcss_userpd1_spawn_ack
 58:          0          0          0          0     smp2p  11 Edge      q6v5_wcss_userpd1_stop_ack
 59:          0          0          0          0   msmgpio  52 Edge      Reset Button
IPI0:  11014796   16872295   17455146   17378253       Rescheduling interrupts
IPI1:     54693   31818397   30245960  124867604       Function call interrupts
IPI2:         0          0          0          0       CPU stop interrupts
IPI3:         0          0          0          0       CPU stop (for crash dump) interrupts
IPI4:         0          0          0          0       Timer broadcast interrupts
IPI5:       914          0          0          0       IRQ work interrupts
IPI6:         0          0          0          0       CPU wake-up interrupts
Err:          0

On Tue, Jan 9, 2024 at 3:28 PM Nils Andreas Svee <me@lochnair.net> wrote:
Well my NIC has 4 queues as far as I can tell, so it could likely work, but as you say it’s like killing a mosquito with a gatling gun.

Those graphs are sweet though, and it’s been in my backlog for awhile to do something with Grafana to get something similar, like this one from a few years ago you’ve seen too: https://forum.openwrt.org/t/sqm-reporting/59960/96

Best Regards,
Nils Andreas Svee

On Jan 9, 2024, at 18:17, Dave Taht <dave.taht@gmail.com> wrote:

Principal limitation for libreqos on a small box is has to have
multiple hardware queues and support eBPF.

Seriously folks, running libreqos at home is *serious overkill*,
although I have to admit the traffic graphs are mesmerizing!!! One of
our ISPs has been setting them to music:
https://www.youtube.com/@trendaltoews7143

Herbert has been working on adding all sorts of other analytics to it also.

On Tue, Jan 9, 2024 at 12:07 PM dave seddon <dave.seddon.ca@gmail.com> wrote:

Nils - I guess you could run LibreQoS on N100?

On Tue, Jan 9, 2024 at 8:57 AM Nils Andreas Svee via Cake <cake@lists.bufferbloat.net> wrote:

On Jan 9, 2024, at 17:05, Dave Taht <dave.taht@gmail.com> wrote:

On Tue, Jan 9, 2024 at 10:40 AM Nils Andreas Svee via Cake
<cake@lists.bufferbloat.net> wrote:

Though frankly, I don’t plan on updating the sch_cake and tc binaries when new firmwares are released anymore, as they don’t publish the GPL archives on their webpage after the redesign, and they don’t respond to requests for them either by the looks of the forums. So if it breaks there’s not much I can do anymore.


This irks me enormously. It is the direct outcome of the cambium
elevate lawsuit, where both companies lost, the ISPs lost, open source
practices long established about publishing sources, lost, and the
lawyers went on to other nasty things leaving this trail of awful
precedents  in their wake.

https://www.mtin.net/blog/ubnt-vs-cambium/

Wow, hadn’t read about that. They even sued an ISP just for using Cambium’s software on their hardware?
That is crazy, just evil corporate lawyers doing their thing I guess.

I do not know what to do about it. It also irks me that as a
contributor to "smart queues" they are not maintaining it well.

It leaves something to be desired yes, and I would’ve hoped to see CAKE included too of course,
but even WireGuard is only available in the latest release candidates with the redesigned web UI, so I’m not holding my breath.

I still have an EdgeRouter 4 that serves the family farm and one of the 8-port switches under my desk, if only because I don’t wanna spend money on replacing them, and they do serve their purpose.

I’ve since moved though, and now live in an area that has FTTH, so I needed something beefier to handle CAKE on a 750/750 subscription, because obviously there’s still bloat even on that ;)

One of those Chinese boxes with a N100 in it and OpenWrt on top works wonders :)

Best Regards,
Nils Andreas Svee
_______________________________________________
Cake mailing list
Cake@lists.bufferbloat.net
https://lists.bufferbloat.net/listinfo/cake



--
Regards,
Dave Seddon
+1 415 857 5102



--
40 years of net history, a couple songs:
https://www.youtube.com/watch?v=D9RGX6QFm5E
Dave Täht CSO, LibreQos



--
Regards,
Dave Seddon
+1 415 857 5102