[TOTOLINK X5000R][OpenWrt 24.10] WiFi -> WAN capped at 100Mbps?

Hi,

I've noticed that WiFi devices in my network can't even reach 100Mbps download speed with my 150/40Mbps network connection, while there is no such problem with the Ethernet devices. Also, from the iperf3 tests results below, it looks like it only affects the WiFi -> WAN connection?

PC - Ethernet 1Gbps - https://www.waveform.com/tools/bufferbloat?test-id=3279882c-00a5-4362-8cdf-a2a1a4acb625
Android - WiFi 802.11ax / 5GHz - https://www.waveform.com/tools/bufferbloat?test-id=f9c0decc-5a05-4dc4-a893-745f0db947c1
Android - WiFi 802.11ax / 2.4GHz - https://www.waveform.com/tools/bufferbloat?test-id=1c0a8afd-5d19-4e92-aa7a-4038b0d2c4c1
PC - WiFi 802.11ac / 5GHz - https://www.waveform.com/tools/bufferbloat?test-id=f23ad578-81ef-4267-add1-e1a359d19b88
PC - WiFi 802.11n / 2.4GHz - https://www.waveform.com/tools/bufferbloat?test-id=0eaa1d96-098b-47ff-b96d-7d0a709f7c99

iperf3 LAN tests:

Android (WiFi 802.11ax / 5GHz) -> PC (WiFi 802.11ax / 5GHz)
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.00   sec  24.4 MBytes   204 Mbits/sec
[  5]   1.00-2.01   sec  20.5 MBytes   171 Mbits/sec
[  5]   2.01-3.01   sec  21.5 MBytes   180 Mbits/sec
[  5]   3.01-4.01   sec  23.5 MBytes   197 Mbits/sec
[  5]   4.01-5.01   sec  28.1 MBytes   236 Mbits/sec
[  5]   5.01-5.02   sec   384 KBytes   334 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-5.02   sec   118 MBytes   198 Mbits/sec                  receiver

Android (WiFi 802.11ax / 5GHz) -> PC (Ethernet 1Gbps)
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.01   sec  50.1 MBytes   417 Mbits/sec
[  5]   1.01-2.00   sec  53.2 MBytes   448 Mbits/sec
[  5]   2.00-3.00   sec  52.0 MBytes   437 Mbits/sec
[  5]   3.00-4.02   sec  54.8 MBytes   453 Mbits/sec
[  5]   4.02-5.01   sec  49.5 MBytes   418 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-5.01   sec   260 MBytes   435 Mbits/sec                  receiver

iwinfo:

phy0-ap0  ESSID: "XXX"
          Access Point: XX:XX:XX:XX:XX:XX
          Mode: Master  Channel: 1 (2.412 GHz)  HT Mode: HE20
          Center Channel 1: 1 2: unknown
          Tx-Power: 20 dBm  Link Quality: 53/70
          Signal: -57 dBm  Noise: -90 dBm
          Bit Rate: 60.2 MBit/s
          Encryption: mixed WPA2/WPA3 PSK/SAE (CCMP)
          Type: nl80211  HW Mode(s): 802.11ax/b/g/n
          Hardware: 14C3:7915 14C3:7915 [MediaTek MT7915E]
          TX power offset: none
          Frequency offset: none
          Supports VAPs: yes  PHY name: phy0

phy1-ap0  ESSID: "XXX"
          Access Point: XX:XX:XX:XX:XX:XX
          Mode: Master  Channel: 36 (5.180 GHz)  HT Mode: HE80
          Center Channel 1: 42 2: unknown
          Tx-Power: 23 dBm  Link Quality: 63/70
          Signal: -47 dBm  Noise: -92 dBm
          Bit Rate: 887.0 MBit/s
          Encryption: mixed WPA2/WPA3 PSK/SAE (CCMP)
          Type: nl80211  HW Mode(s): 802.11ac/ax/n
          Hardware: 14C3:7915 14C3:7915 [MediaTek MT7915E]
          TX power offset: none
          Frequency offset: none
          Supports VAPs: yes  PHY name: phy1

/etc/config/network:

config interface 'loopback'
        option device 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'
        option ula_prefix 'fdc0:6fd7:a09c::/48'
        option packet_steering '1'

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'lan1'
        list ports 'lan2'
        list ports 'lan3'
        list ports 'lan4'

config interface 'lan'
        option device 'br-lan'
        option proto 'static'
        option ipaddr '192.168.1.1'
        option netmask '255.255.255.0'
        option ip6assign '60'

config interface 'wan'
        option device 'wan'
        option proto 'pppoe'
        option username 'XXX'
        option password 'XXX'
        option ipv6 'auto'

config interface 'wan6'
        option device 'wan'
        option proto 'dhcpv6'

Tested on OpenWrt 24.10.0 and 24.10.1.

start by getting rid of mixed wifi encryption, reboot, retest, post your wireless config file.

Switched to WPA2-PSK and rebooted:
PC - Ethernet - https://www.waveform.com/tools/bufferbloat?test-id=4fbff7fc-5cc0-45b8-a20d-5eacb52d473b
PC - WiFi 802.11ac / 5GHz - https://www.waveform.com/tools/bufferbloat?test-id=44763d9a-4e44-4dd0-8cbe-0c7122edff4c
PC - WiFi 802.11n / 2.4GHz - https://www.waveform.com/tools/bufferbloat?test-id=da92443c-ea25-41d0-8830-c56eaa1b2665
Android - WiFi 802.11ax / 5GHz - https://www.waveform.com/tools/bufferbloat?test-id=c895372c-ee68-49e3-bc44-0b957135c04d
Android - WiFi 802.11ax / 2.4GHz - https://www.waveform.com/tools/bufferbloat?test-id=fca8d726-f5b8-4963-b191-c3a9b59b37fa

/etc/config/wireless:

config wifi-device 'radio0'
        option type 'mac80211'
        option path '1e140000.pcie/pci0000:00/0000:00:01.0/0000:02:00.0'
        option band '2g'
        option channel '1'
        option htmode 'HE20'
        option country 'PL'
        option cell_density '0'

config wifi-iface 'default_radio0'
        option device 'radio0'
        option network 'lan'
        option mode 'ap'
        option ssid 'XXX'
        option encryption 'psk2'
        option key 'XXX'

config wifi-device 'radio1'
        option type 'mac80211'
        option path '1e140000.pcie/pci0000:00/0000:00:01.0/0000:02:00.0+1'
        option band '5g'
        option channel '36'
        option htmode 'HE80'
        option country 'PL'
        option cell_density '0'

config wifi-iface 'default_radio1'
        option device 'radio1'
        option network 'lan'
        option mode 'ap'
        option ssid 'XXX'
        option encryption 'psk2'
        option key 'XXX'

you're using PPPoE, it eats lots of CPU ..

install htop via ssh, and run it while you do your test, watch the CPU usage.

have you enabled hw offloading ?

what's the speed of your internet connection ?

1 Like

It looks like enabling hardware flow offloading solved the problem (and helped me find out that I actually have 200Mbps connection instead of 150Mbps!):

PC - Ethernet - https://www.waveform.com/tools/bufferbloat?test-id=a75f3ac4-065a-4f3f-8dd0-0ec5be2cc94d
Android - WiFi 802.11ax 5GHz - https://www.waveform.com/tools/bufferbloat?test-id=b4f93a69-090b-4e21-9dc4-740357bd0126

It's weird, because I remember it was the very first thing that I tested and because it was recommended for this model almost everywhere I searched for. I guess for some reason it did not kicked in when I enabled it for the first time?

Anyway, problem is solved, so thank you so much for your help!

1 Like

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.