Hi,
@dtaht, I just compiled version v22.03.0-rc5 (Unifi NanoHD / mt76) removing two patches as per @nbd request:
334-mac80211-add-a-per-PHY-AQL-limit-to-improve-fairness.patch
335-mac80211-add-debugfs-file-to-display-per-phy-AQL-pen.patch
Same scenario, my devices are idle except this macOS (Silicon 2x2 MIMO), awdl0
down (to avoid periodic scanning):
@reaper$ ➜ ~ ifconfig awdl0
awdl0: flags=8902<BROADCAST,PROMISC,SIMPLEX,MULTICAST> mtu 1500
options=400<CHANNEL_IO>
ether 76:60:97:60:8b:ee
nd6 options=201<PERFORMNUD,DAD>
media: autoselect
status: inactive
Good WiFi connectivity:
Good ping:
PING openwrt.lan (192.168.1.1): 56 data bytes
64 bytes from 192.168.1.1: icmp_seq=0 ttl=64 time=3.276 ms
64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=6.343 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=64 time=6.214 ms
64 bytes from 192.168.1.1: icmp_seq=3 ttl=64 time=3.049 ms
64 bytes from 192.168.1.1: icmp_seq=4 ttl=64 time=6.681 ms
64 bytes from 192.168.1.1: icmp_seq=5 ttl=64 time=6.037 ms
64 bytes from 192.168.1.1: icmp_seq=6 ttl=64 time=7.082 ms
64 bytes from 192.168.1.1: icmp_seq=7 ttl=64 time=6.676 ms
64 bytes from 192.168.1.1: icmp_seq=8 ttl=64 time=6.314 ms
64 bytes from 192.168.1.1: icmp_seq=9 ttl=64 time=4.219 ms
64 bytes from 192.168.1.1: icmp_seq=10 ttl=64 time=6.119 ms
64 bytes from 192.168.1.1: icmp_seq=11 ttl=64 time=6.158 ms
64 bytes from 192.168.1.1: icmp_seq=12 ttl=64 time=6.185 ms
64 bytes from 192.168.1.1: icmp_seq=13 ttl=64 time=6.222 ms
64 bytes from 192.168.1.1: icmp_seq=14 ttl=64 time=6.440 ms
64 bytes from 192.168.1.1: icmp_seq=15 ttl=64 time=3.133 ms
64 bytes from 192.168.1.1: icmp_seq=16 ttl=64 time=6.351 ms
64 bytes from 192.168.1.1: icmp_seq=17 ttl=64 time=6.311 ms
64 bytes from 192.168.1.1: icmp_seq=18 ttl=64 time=6.450 ms
64 bytes from 192.168.1.1: icmp_seq=19 ttl=64 time=6.191 ms
64 bytes from 192.168.1.1: icmp_seq=20 ttl=64 time=6.340 ms
64 bytes from 192.168.1.1: icmp_seq=21 ttl=64 time=6.361 ms
64 bytes from 192.168.1.1: icmp_seq=22 ttl=64 time=3.325 ms
64 bytes from 192.168.1.1: icmp_seq=23 ttl=64 time=6.513 ms
64 bytes from 192.168.1.1: icmp_seq=24 ttl=64 time=6.335 ms
64 bytes from 192.168.1.1: icmp_seq=25 ttl=64 time=6.211 ms
64 bytes from 192.168.1.1: icmp_seq=26 ttl=64 time=7.090 ms
64 bytes from 192.168.1.1: icmp_seq=27 ttl=64 time=6.216 ms
64 bytes from 192.168.1.1: icmp_seq=28 ttl=64 time=3.363 ms
64 bytes from 192.168.1.1: icmp_seq=29 ttl=64 time=3.574 ms
64 bytes from 192.168.1.1: icmp_seq=30 ttl=64 time=6.296 ms
64 bytes from 192.168.1.1: icmp_seq=31 ttl=64 time=6.343 ms
64 bytes from 192.168.1.1: icmp_seq=32 ttl=64 time=6.414 ms
64 bytes from 192.168.1.1: icmp_seq=33 ttl=64 time=6.055 ms
64 bytes from 192.168.1.1: icmp_seq=34 ttl=64 time=6.343 ms
64 bytes from 192.168.1.1: icmp_seq=35 ttl=64 time=6.156 ms
64 bytes from 192.168.1.1: icmp_seq=36 ttl=64 time=6.307 ms
64 bytes from 192.168.1.1: icmp_seq=37 ttl=64 time=6.174 ms
64 bytes from 192.168.1.1: icmp_seq=38 ttl=64 time=6.321 ms
64 bytes from 192.168.1.1: icmp_seq=39 ttl=64 time=6.189 ms
64 bytes from 192.168.1.1: icmp_seq=40 ttl=64 time=5.814 ms
64 bytes from 192.168.1.1: icmp_seq=41 ttl=64 time=6.259 ms
64 bytes from 192.168.1.1: icmp_seq=42 ttl=64 time=6.300 ms
64 bytes from 192.168.1.1: icmp_seq=43 ttl=64 time=6.357 ms
64 bytes from 192.168.1.1: icmp_seq=44 ttl=64 time=6.473 ms
64 bytes from 192.168.1.1: icmp_seq=45 ttl=64 time=6.273 ms
64 bytes from 192.168.1.1: icmp_seq=46 ttl=64 time=6.300 ms
64 bytes from 192.168.1.1: icmp_seq=47 ttl=64 time=6.413 ms
64 bytes from 192.168.1.1: icmp_seq=48 ttl=64 time=6.139 ms
64 bytes from 192.168.1.1: icmp_seq=49 ttl=64 time=6.452 ms
64 bytes from 192.168.1.1: icmp_seq=50 ttl=64 time=6.311 ms
64 bytes from 192.168.1.1: icmp_seq=51 ttl=64 time=3.324 ms
64 bytes from 192.168.1.1: icmp_seq=52 ttl=64 time=6.395 ms
64 bytes from 192.168.1.1: icmp_seq=53 ttl=64 time=6.475 ms
64 bytes from 192.168.1.1: icmp_seq=54 ttl=64 time=6.507 ms
64 bytes from 192.168.1.1: icmp_seq=55 ttl=64 time=6.594 ms
64 bytes from 192.168.1.1: icmp_seq=56 ttl=64 time=3.588 ms
64 bytes from 192.168.1.1: icmp_seq=57 ttl=64 time=4.248 ms
64 bytes from 192.168.1.1: icmp_seq=58 ttl=64 time=6.372 ms
64 bytes from 192.168.1.1: icmp_seq=59 ttl=64 time=6.972 ms
64 bytes from 192.168.1.1: icmp_seq=60 ttl=64 time=6.401 ms
64 bytes from 192.168.1.1: icmp_seq=61 ttl=64 time=6.366 ms
64 bytes from 192.168.1.1: icmp_seq=62 ttl=64 time=5.819 ms
^C
--- openwrt.lan ping statistics ---
63 packets transmitted, 63 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 3.049/5.897/7.090/1.071 ms
Waveform results (1000/50 cable DOCSIS 3.1 connection with SQM configured at 312/47:
** Note: huge difference between upload and download, and bigger latency than with 22.02.1, but is it a tad more stable?
flent rrul_be -H openwrt.lan --step-size=.05 (click me to download)
And a 300 s run:
flent rrul_be -H openwrt.lan --step-size=.05 -l 300 (click me to download)
And just for a little more completeness, a run of Apple's tool:
@reaper$ ➜ ~ networkQuality -v
==== SUMMARY ====
Upload capacity: 31.799 Mbps
Download capacity: 229.290 Mbps
Upload flows: 20
Download flows: 12
Responsiveness: Medium (893 RPM)
Base RTT: 14
Start: 11/7/2022, 7:08:30 am
End: 11/7/2022, 7:08:45 am
OS Version: Version 12.4 (Build 21F79)
** Note: in general with version 22.02.1 I get over 3,000 RPM easy. Latency, to my understanding, stills worse after removing the patches suggested by @nbd and running v22.03.0-rc5.
And this is it. @nbd, let me know if you need me to compile something else. @dtaht, any other suggestions?
Kind regards, and apologies for taking so long Real Life TM is very demanding lately.