I've been having intermittent wifi throughput issues for a while now - and I'm not entirely sure how to continue debugging.
I've found (especially when using zoom) one client (MacBook) may get awful throughput (500kbps tested via fast.com), when another right next to it may get full throughput (~70mbps).
This first started happening after upgrading to a more recent snapshot from https://dc502wrt.org/
Any thoughts / ideas on what it could be greatly appreciated!
Running iperf3 normally:
After reconnecting to 5g a few times - same as before now tests at 72mbps via fast.com Tx rate 975mbps
[I] ➜ iperf3 -c 192.168.1.1
Connecting to host 192.168.1.1, port 5201
[ 5] local 192.168.1.3 port 55463 connected to 192.168.1.1 port 5201
[ ID] Interval Transfer Bitrate
[ 5] 0.00-1.00 sec 60.2 MBytes 505 Mbits/sec
[ 5] 1.00-2.00 sec 66.9 MBytes 562 Mbits/sec
[ 5] 2.00-3.00 sec 68.6 MBytes 575 Mbits/sec
[ 5] 3.00-4.00 sec 68.8 MBytes 578 Mbits/sec
[ 5] 4.00-5.00 sec 69.9 MBytes 587 Mbits/sec
[ 5] 5.00-6.00 sec 70.5 MBytes 591 Mbits/sec
[ 5] 6.00-7.00 sec 67.3 MBytes 565 Mbits/sec
[ 5] 7.00-8.00 sec 69.3 MBytes 580 Mbits/sec
[ 5] 8.00-9.00 sec 70.4 MBytes 591 Mbits/sec
[ 5] 9.00-10.00 sec 65.5 MBytes 549 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate
[ 5] 0.00-10.00 sec 678 MBytes 568 Mbits/sec sender
[ 5] 0.00-10.02 sec 677 MBytes 567 Mbits/sec receiver
iperf Done.
and when everything is slow:
Tx still 975mbps, results way off. Client in same place
[I] ➜ iperf3 -c 192.168.1.1
Connecting to host 192.168.1.1, port 5201
[ 5] local 192.168.1.3 port 55304 connected to 192.168.1.1 port 5201
[ ID] Interval Transfer Bitrate
[ 5] 0.00-1.00 sec 1.61 MBytes 13.5 Mbits/sec
[ 5] 1.00-2.00 sec 1.79 MBytes 15.0 Mbits/sec
[ 5] 2.00-3.00 sec 2.47 MBytes 20.7 Mbits/sec
[ 5] 3.00-4.00 sec 2.33 MBytes 19.5 Mbits/sec
[ 5] 4.00-5.00 sec 1.91 MBytes 16.1 Mbits/sec
[ 5] 5.00-6.00 sec 9.06 MBytes 76.0 Mbits/sec
[ 5] 6.00-7.00 sec 10.5 MBytes 87.9 Mbits/sec
[ 5] 7.00-8.00 sec 8.59 MBytes 72.1 Mbits/sec
[ 5] 8.00-9.00 sec 7.68 MBytes 64.4 Mbits/sec
[ 5] 9.00-10.00 sec 9.27 MBytes 77.8 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate
[ 5] 0.00-10.00 sec 55.2 MBytes 46.3 Mbits/sec sender
[ 5] 0.00-10.19 sec 54.8 MBytes 45.1 Mbits/sec receiver
I think I've disabled all QoS and SQM running, although this still feels like one client is being penalised for some reason? I'm not too sure how to validate this. I think it may be dnscrypt-proxy - so I've removed it and will keep an eye on it...
Router config & debug info (I've dumped anything I think may be relevant):
===== ./getstats.sh at Mon Jan 18 10:46:39 UTC 2021 =====
[ cat /etc/banner ]
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
-----------------------------------------------------
OpenWrt SNAPSHOT, r13342-e35e40ad82
-----------------------------------------------------
[ date ]
Mon Jan 18 10:46:39 UTC 2021
[ cat /etc/openwrt_release ]
DISTRIB_ID='OpenWrt'
DISTRIB_RELEASE='SNAPSHOT'
DISTRIB_REVISION='r13342-e35e40ad82'
DISTRIB_TARGET='mvebu/cortexa9'
DISTRIB_ARCH='arm_cortex-a9_vfpv3-d16'
DISTRIB_DESCRIPTION='OpenWrt SNAPSHOT r13342-e35e40ad82'
DISTRIB_TAINTS='busybox'
[ uname -a ]
Linux OpenWrt 5.4.42 #0 SMP Sat May 23 11:38:12 2020 armv7l GNU/Linux
[ uptime ]
10:46:39 up 7:45, load average: 0.02, 0.01, 0.00
[ top -b | head -n 20 ]
Mem: 151824K used, 358096K free, 3916K shrd, 13724K buff, 49736K cached
CPU: 0% usr 0% sys 0% nic 100% idle 0% io 0% irq 0% sirq
Load average: 0.02 0.02 0.00 2/92 5610
PID PPID USER STAT VSZ %VSZ %CPU COMMAND
1838 1 root S 786m 158% 0% /usr/sbin/dnscrypt-proxy -config /etc/dnscrypt-proxy2/dnscrypt-proxy.toml
4240 1 root S 32900 6% 0% /usr/sbin/smbd -F
4851 4240 root S 31508 6% 0% {cleanupd} /usr/sbin/smbd -F
4850 4240 root S 31504 6% 0% {smbd-notifyd} /usr/sbin/smbd -F
4241 1 root S 19476 4% 0% /usr/sbin/nmbd -F
4971 1 dnsmasq S 8048 2% 0% /usr/sbin/dnsmasq -C /var/etc/dnsmasq.conf.cfg01411c -k -x /var/run/dnsmasq/dnsmasq.cfg01411c.pid
3407 1 nobody S 2008 0% 0% avahi-daemon: running [OpenWrt.local]
3320 1 root S 1972 0% 0% /usr/sbin/uhttpd -f -h /www -r OpenWrt -x /cgi-bin -u /ubus -t 60 -T 30 -k 20 -A 1 -n 3 -N 100 -R -p 0.0.0.0:80 -p [::]:80 -C /etc/uhttpd.crt -K /etc/uhttpd.key -s 0.0.0.0:443 -s [::]:443 -q
1813 1 root S 1872 0% 0% /sbin/rpcd
2030 1 root S 1784 0% 0% /usr/sbin/hostapd -s -g /var/run/hostapd/global
2031 1 root S 1716 0% 0% /usr/sbin/wpa_supplicant -n -s -g /var/run/wpa_supplicant/global
1183 1 root S 1624 0% 0% /usr/sbin/haveged -F -w 1024 -d 32 -i 32 -v 1
2097 1 root S 1604 0% 0% /sbin/netifd
1 0 root S 1416 0% 0% /sbin/procd
3384 1 root S 1376 0% 0% /usr/bin/dbus-daemon --system
2187 1 root S 1272 0% 0% /usr/sbin/odhcpd
[ du -sh / ; du -sh /* ]
149.6M /
649.0K /bin
0 /dev
1.6M /etc
7.7M /lib
0 /mnt
4.0M /overlay
0 /proc
68.9M /rom
32.0K /root
545.5K /sbin
0 /sys
4.1M /tmp
58.4M /usr
0 /var
3.8M /www
[ User-installed packages ]
luci-app-argon-config
luci-theme-argon
netperf
[ ifconfig ]
br-lan Link encap:Ethernet HWaddr 14:91:82:31:89:C7
inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::1691:82ff:fe31:89c7/64 Scope:Link
inet6 addr: fdff:1e4f:d98a::1/60 Scope:Global
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:904502 errors:0 dropped:0 overruns:0 frame:0
TX packets:2761091 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:276033578 (263.2 MiB) TX bytes:2493789633 (2.3 GiB)
br-wan Link encap:Ethernet HWaddr 16:91:82:31:89:C7
inet6 addr: fe80::1491:82ff:fe31:89c7/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2749506 errors:0 dropped:0 overruns:0 frame:0
TX packets:857744 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2478518027 (2.3 GiB) TX bytes:285333620 (272.1 MiB)
eth0 Link encap:Ethernet HWaddr 14:91:82:31:89:C7
inet6 addr: fe80::1691:82ff:fe31:89c7/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:898033 errors:0 dropped:0 overruns:0 frame:0
TX packets:2069134 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1024
RX bytes:287850979 (274.5 MiB) TX bytes:1650425671 (1.5 GiB)
Interrupt:38
eth0.1 Link encap:Ethernet HWaddr 14:91:82:31:89:C7
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:862503 errors:0 dropped:0 overruns:0 frame:0
TX packets:2069076 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:270173646 (257.6 MiB) TX bytes:1642133556 (1.5 GiB)
eth1 Link encap:Ethernet HWaddr 16:91:82:31:89:C7
inet6 addr: fe80::1491:82ff:fe31:89c7/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2749506 errors:0 dropped:0 overruns:0 frame:0
TX packets:857765 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1024
RX bytes:2528009135 (2.3 GiB) TX bytes:288768641 (275.3 MiB)
Interrupt:37
eth1.2 Link encap:Ethernet HWaddr 16:91:82:31:89:C7
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2749506 errors:0 dropped:0 overruns:0 frame:0
TX packets:857744 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2478518027 (2.3 GiB) TX bytes:285333620 (272.1 MiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:71 errors:0 dropped:0 overruns:0 frame:0
TX packets:71 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:14360 (14.0 KiB) TX bytes:14360 (14.0 KiB)
pppoe-wan Link encap:Point-to-Point Protocol
inet addr:194.75.17.253 P-t-P:172.16.11.242 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1
RX packets:2743022 errors:0 dropped:0 overruns:0 frame:0
TX packets:851238 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:2456253229 (2.2 GiB) TX bytes:266407634 (254.0 MiB)
wlan0 Link encap:Ethernet HWaddr 16:91:82:31:89:C9
inet6 addr: fe80::1491:82ff:fe31:89c9/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:229169 errors:0 dropped:0 overruns:0 frame:0
TX packets:305951 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:45214783 (43.1 MiB) TX bytes:115319185 (109.9 MiB)
wlan1 Link encap:Ethernet HWaddr 16:91:82:31:89:C8
inet6 addr: fe80::1491:82ff:fe31:89c8/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:605572 errors:0 dropped:0 overruns:0 frame:0
TX packets:1304975 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:75015018 (71.5 MiB) TX bytes:910762135 (868.5 MiB)
[ logread]
(omitted because long)
See: https://termbin.com/qd8dl
[ dmesg ]
(omitted because it's very long)
See https://termbin.com/qd8dl
===== end of ./getstats.sh =====
root@OpenWrt:~# cat /etc/config/dhcp
config dnsmasq
option domainneeded '1'
option localise_queries '1'
option rebind_protection '1'
option rebind_localhost '1'
option local '/lan/'
option domain 'lan'
option expandhosts '1'
option authoritative '1'
option readethers '1'
option leasefile '/tmp/dhcp.leases'
option localservice '1'
option serversfile '/tmp/adb_list.overall'
option noresolv '1'
option confdir '/tmp/dnsmasq.d'
list server '8.8.8.8'
list server '8.8.4.4'
config dhcp 'lan'
option interface 'lan'
option start '100'
option limit '150'
option leasetime '12h'
option dhcpv6 'server'
option ra 'server'
option ra_management '1'
config dhcp 'wan'
option interface 'wan'
option ignore '1'
config odhcpd 'odhcpd'
option maindhcp '0'
option leasefile '/tmp/hosts/odhcpd'
option leasetrigger '/usr/sbin/odhcpd-update'
option loglevel '4'
root@OpenWrt:~# cat /etc/config/network
config interface 'loopback'
option ifname 'lo'
option proto 'static'
option ipaddr '127.0.0.1'
option netmask '255.0.0.0'
config globals 'globals'
option ula_prefix 'fdff:1e4f:d98a::/48'
config interface 'lan'
option type 'bridge'
option ifname 'eth0.1'
option proto 'static'
option ipaddr '192.168.1.1'
option netmask '255.255.255.0'
option ip6assign '60'
option igmp_snooping '1'
list dns '8.8.8.8'
list dns '8.8.4.4'
config interface 'wan'
option ifname 'eth1.2'
option proto 'pppoe'
option type 'bridge'
option ipv6 'auto'
option peerdns '0'
list dns '8.8.8.8'
list dns '8.8.4.4'
option username 'XXX'
option password 'XXX'
config interface 'wan6'
option ifname 'eth1.2'
option proto 'dhcpv6'
option type 'bridge'
config switch
option name 'switch0'
option reset '1'
option enable_vlan '1'
config switch_vlan
option device 'switch0'
option vlan '1'
option ports '0 1 2 3 5t'
config switch_vlan
option device 'switch0'
option vlan '2'
option ports '4 6t'
config wifi-device 'radio0'
option type 'mac80211'
option hwmode '11a'
option bursting '1'
option ff '1'
option compression '1'
option turbo '1'
option path 'soc/soc:pcie/pci0000:00/0000:00:01.0/0000:01:00.0'
option htmode 'VHT80'
option country 'GB'
option distance '101'
option channel '44'
config wifi-iface 'default_radio0'
option device 'radio0'
option mode 'ap'
option macaddr '16:91:82:31:89:c9'
option wpa_disable_eapol_key_retries '1'
option ssid 'OpenWrt_5G'
option key 'xxx'
option encryption 'psk-mixed'
option network 'lan'
option ieee80211r '1'
option nasid '1691823189c9'
option mobility_domain '4f67'
option reassociation_deadline '10000'
option ft_over_ds '1'
option ft_psk_generate_local '1'
option ieee80211w '1'
config wifi-device 'radio1'
option type 'mac80211'
option hwmode '11g'
option disabled '0'
option htmode 'HT40'
option country 'GB'
option path 'soc/soc:pcie/pci0000:00/0000:00:02.0/0000:02:00.0'
option channel 'auto'
option distance '101'
config wifi-iface 'default_radio1'
option device 'radio1'
option network 'lan'
option mode 'ap'
option ssid 'OpenWrt'
option macaddr '16:91:82:31:89:c8'
option encryption 'psk2'
option wpa_disable_eapol_key_retries '1'
option bursting '1'
option ff '1'
option compression '1'
option noscan '1'
option turbo '1'
option key 'xxx'
option ieee80211w '1'
option ieee80211r '1'
option nasid '1691823189c8'
option mobility_domain '67c5'
option reassociation_deadline '10000'
option ft_over_ds '1'
option ft_psk_generate_local '1'