Shameful Wifi performance of hap ax2

I have recently purchased the Mikrotik hap ax2, after being crazy about the Mikrotik hap ac2. It was the most feature powerful router that I could thing of.
However the anticipated greater excitement was replaced by disappointment!!!

To the technical stuff now.
My problem is the WIFI performance of ax2 in both bands, 2.4Ghz as well as 5Ghz.

This is the config of the ax2.
This is with the latest release candidate. But I had the same results with the latest stable version. I was hoping that the release candidate could have some fixes.

# 2025-12-10 20:32:45 by RouterOS 7.21rc1
# software id = LUDP-XQAV
#
# model = C52iG-5HaxD2HaxD
# serial number = HK80AX9WYWA
/disk
add slot=ramdisk tmpfs-max-size=200000000 type=tmpfs
/interface bridge
add admin-mac=04:F4:1C:9C:FF:85 auto-mac=no comment=defconf name=bridge
add name=docker
/interface wifi
set [ find default-name=wifi1 ] channel.band=5ghz-ax .skip-dfs-channels=\
    10min-cac .width=20/40/80mhz configuration.chains=0,1 .country=Greece \
    .mode=ap .ssid=wifi5 .tx-chains=0,1 disabled=no \
    security.authentication-types=wpa2-psk .ft=no .ft-over-ds=no
set [ find default-name=wifi2 ] channel.band=2ghz-ax .skip-dfs-channels=\
    10min-cac .width=20/40mhz-Ce configuration.chains=0,1 .country=Greece \
    .installation=indoor .mode=ap .ssid=wifi2 .tx-chains=0,1 disabled=no \
    security.authentication-types=wpa2-psk .encryption=ccmp .ft=no \
    .ft-over-ds=no steering.neighbor-group=dynamic-wifi2-8b780c54 .rrm=\
    yes .wnm=yes
/interface veth
add address=10.0.0.2/24 container-mac-address=22:7E:53:82:FC:92 dhcp=no \
    gateway=10.0.0.1 gateway6="" mac-address=22:7E:53:82:FC:91 name=veth1
/interface vlan
add interface=ether1 name=vlan1 vlan-id=835
/interface pppoe-client
add add-default-route=yes disabled=no interface=vlan1 name=pppoe-out1 user=\
    onn1my@otenet.gr
/interface ethernet switch
set 0 cpu-flow-control=yes
/interface list
add comment=defconf name=WAN
add comment=defconf name=LAN
/interface wifi security
add authentication-types=wpa2-psk,wpa3-psk disabled=no encryption=\
    ccmp,gcmp,ccmp-256,gcmp-256 name=Samsung
add authentication-types=wpa2-psk,wpa3-psk disabled=no encryption=\
    ccmp,gcmp,ccmp-256,gcmp-256 name=cosmote
add authentication-types=wpa2-psk disabled=no encryption=ccmp name=\
    wormhole-wifi
/interface wifi configuration
add channel.width=20/40/80/160mhz country="United States" disabled=no mode=\
    station name=5G security=Samsung ssid=Samsung
add disabled=no mode=station name="cosmote bridge" security=cosmote ssid=\
    COSMOTE-pexsuv
add channel.band=2ghz-ax .width=20/40/80mhz country=Greece disabled=no \
    installation=indoor mode=ap name=wifi2 security=wormhole-wifi \
    security.ft=yes ssid=wifi2
add channel.band=5ghz-ax .width=20/40/80/160mhz country=Greece disabled=no \
    installation=indoor mode=ap name=wifi5 security=wormhole-wifi ssid=\
    wifi5
/ip pool
add name=lan ranges=192.168.1.100-192.168.1.200
/ip dhcp-server
add address-pool=lan interface=bridge name=defconf
/queue type
add fq-codel-limit=600 fq-codel-quantum=300 kind=fq-codel name=FQUP
add fq-codel-limit=1200 fq-codel-quantum=300 kind=fq-codel name=FQDOWN
/queue tree
add bucket-size=0.01 max-limit=48M name=DOWN parent=bridge priority=5 queue=\
    FQDOWN
add bucket-size=0.01 max-limit=5M name=UP parent=ether1 priority=1 queue=FQUP
add limit-at=102k max-limit=261k name=UP:acks packet-mark=up_tcp_ack parent=\
    UP priority=1 queue=FQUP
add bucket-size=0.01 limit-at=500k max-limit=1M name=DOWN:dns packet-mark=\
    down_dns parent=DOWN priority=1 queue=FQDOWN
add bucket-size=0.01 limit-at=10M max-limit=47M name=DOWN:other packet-mark=\
    down_other parent=DOWN queue=FQDOWN
add bucket-size=0.01 limit-at=153k max-limit=523k name=UP:dns packet-mark=\
    up_dns parent=UP priority=1 queue=FQUP
add bucket-size=0.01 limit-at=1M max-limit=4500k name=UP:other packet-mark=\
    up_other parent=UP queue=FQUP
add bucket-size=0.01 limit-at=153k max-limit=523k name=UP:ping packet-mark=\
    up_ping parent=UP priority=1 queue=FQUP
add bucket-size=0.01 limit-at=500k max-limit=1M name=DOWN:ping packet-mark=\
    down_ping parent=DOWN priority=1 queue=FQDOWN
add bucket-size=0.01 limit-at=1M max-limit=4500k name=UP:web packet-mark=\
    up_web parent=UP priority=3 queue=FQUP
add bucket-size=0.01 limit-at=10M max-limit=47M name=DOWN:web packet-mark=\
    down_web parent=DOWN priority=3 queue=FQDOWN
/container
add cmd=-s interface=veth1 layer-dir="" name=iperf3:latest remote-image=\
    networkstatic/iperf3:latest root-dir=/ramdisk
/container config
set registry-url=https://registry-1.docker.io
/disk settings
set auto-media-interface=bridge auto-media-sharing=yes auto-smb-sharing=yes
/interface bridge port
add bridge=bridge comment=defconf interface=ether2
add bridge=bridge comment=defconf interface=ether3
add bridge=bridge comment=defconf interface=ether4
add bridge=bridge comment=defconf interface=ether5
add bridge=bridge comment=defconf interface=wifi2
add bridge=bridge interface=wifi1
add bridge=docker interface=veth1
/ip neighbor discovery-settings
set discover-interface-list=LAN
/interface list member
add comment=defconf interface=bridge list=LAN
add comment=defconf interface=pppoe-out1 list=WAN
add interface=vlan1 list=WAN
add interface=ether1 list=WAN
/ip address
add address=192.168.1.1/24 comment=defconf interface=bridge network=\
    192.168.1.0
add address=10.0.0.1/24 interface=docker network=10.0.0.0
/ip dhcp-server network
add address=192.168.1.0/24 comment=defconf dns-server=192.168.1.4 gateway=\
    192.168.1.1 netmask=24
/ip dns
set allow-remote-requests=yes servers=192.168.1.4,8.8.8.8
/ip dns static
add address=192.168.88.1 comment=defconf name=router.lan type=A
/ip firewall filter
add action=accept chain=input comment=\
    "defconf: accept established,related,untracked" connection-state=\
    established,related,untracked
add action=drop chain=input comment="defconf: drop invalid" connection-state=\
    invalid
add action=accept chain=input comment="defconf: accept ICMP" protocol=icmp
add action=accept chain=input comment=\
    "defconf: accept to local loopback (for CAPsMAN)" dst-address=127.0.0.1
add action=drop chain=input comment="defconf: drop all not coming from LAN" \
    in-interface-list=!LAN
add action=accept chain=forward comment="defconf: accept in ipsec policy" \
    ipsec-policy=in,ipsec
add action=accept chain=forward comment="defconf: accept out ipsec policy" \
    ipsec-policy=out,ipsec
add action=accept chain=forward comment=\
    "defconf: accept established,related, untracked" connection-state=\
    established,related,untracked
add action=drop chain=forward comment="defconf: drop invalid" \
    connection-state=invalid
add action=drop chain=forward comment=\
    "defconf: drop all from WAN not DSTNATed" connection-nat-state=!dstnat \
    connection-state=new in-interface-list=WAN
/ip firewall mangle
add action=accept chain=input comment="wireguard mirotik" src-address=\
    192.168.2.0
add action=mark-packet chain=forward comment="UP - ACK" new-packet-mark=\
    up_tcp_ack out-interface-list=WAN packet-size=0-200 protocol=tcp
add action=mark-packet chain=forward comment="UP - Ping" new-packet-mark=\
    up_ping out-interface-list=WAN passthrough=no protocol=icmp
add action=mark-connection chain=forward comment="UP - DNS - udp & tcp" \
    dst-port=53 new-connection-mark=up_dns_conn out-interface-list=WAN \
    protocol=udp
add action=mark-connection chain=forward dst-port=53 new-connection-mark=\
    up_dns_conn out-interface-list=WAN protocol=tcp
add action=mark-packet chain=forward connection-mark=up_dns_conn \
    new-packet-mark=up_dns out-interface-list=WAN passthrough=no
add action=mark-connection chain=forward comment="UP - Web" dst-port=80,443 \
    new-connection-mark=up_web_conn out-interface-list=WAN protocol=tcp
add action=mark-connection chain=forward dst-port=80,443 new-connection-mark=\
    up_web_conn out-interface-list=WAN protocol=udp
add action=mark-packet chain=forward connection-mark=up_web_conn \
    new-packet-mark=up_web out-interface-list=WAN passthrough=no
add action=mark-connection chain=forward comment="UP - Other " \
    new-connection-mark=up_other_conn out-interface-list=WAN
add action=mark-packet chain=forward connection-mark=up_other_conn \
    new-packet-mark=up_other out-interface-list=WAN passthrough=no
add action=mark-packet chain=forward comment="Down - Ping" new-packet-mark=\
    down_ping protocol=icmp
add action=mark-connection chain=forward comment="DOWN - DNS - udp & tcp" \
    new-connection-mark=down_dns_conn protocol=udp src-port=53
add action=mark-connection chain=forward new-connection-mark=down_dns_conn \
    protocol=tcp src-port=53
add action=mark-packet chain=forward connection-mark=down_dns_conn \
    new-packet-mark=down_dns passthrough=no
add action=mark-connection chain=forward comment="DOWN - Web " \
    new-connection-mark=down_web_conn protocol=tcp src-port=80,443
add action=mark-connection chain=forward new-connection-mark=down_web_conn \
    protocol=udp src-port=80,443
add action=mark-packet chain=forward connection-mark=down_web_conn \
    new-packet-mark=down_web passthrough=no
add action=mark-connection chain=forward comment="DOWN - other" \
    new-connection-mark=down_other_conn
add action=mark-packet chain=forward connection-mark=down_other_conn \
    new-packet-mark=down_other
/ip firewall nat
add action=masquerade chain=srcnat comment="defconf: masquerade" \
    ipsec-policy=out,none out-interface-list=WAN
/ipv6 address
add from-pool=internet-ipv6 interface=bridge
/ipv6 dhcp-client
add interface=pppoe-out1 pool-name=internet-ipv6 pool-prefix-length=56 \
    request=prefix
/ipv6 firewall address-list
add address=::/128 comment="defconf: unspecified address" list=bad_ipv6
add address=::1/128 comment="defconf: lo" list=bad_ipv6
add address=fec0::/10 comment="defconf: site-local" list=bad_ipv6
add address=::ffff:0.0.0.0/96 comment="defconf: ipv4-mapped" list=bad_ipv6
add address=::/96 comment="defconf: ipv4 compat" list=bad_ipv6
add address=100::/64 comment="defconf: discard only " list=bad_ipv6
add address=2001:db8::/32 comment="defconf: documentation" list=bad_ipv6
add address=2001:10::/28 comment="defconf: ORCHID" list=bad_ipv6
add address=3ffe::/16 comment="defconf: 6bone" list=bad_ipv6
/ipv6 firewall filter
add action=accept chain=input comment=\
    "defconf: accept established,related,untracked" connection-state=\
    established,related,untracked
add action=drop chain=input comment="defconf: drop invalid" connection-state=\
    invalid
add action=accept chain=input comment="defconf: accept ICMPv6" protocol=\
    icmpv6
add action=accept chain=input comment="defconf: accept UDP traceroute" \
    dst-port=33434-33534 protocol=udp
add action=accept chain=input comment=\
    "defconf: accept DHCPv6-Client prefix delegation." dst-port=546 protocol=\
    udp src-address=fe80::/10
add action=accept chain=input comment="defconf: accept IKE" dst-port=500,4500 \
    protocol=udp
add action=accept chain=input comment="defconf: accept ipsec AH" protocol=\
    ipsec-ah
add action=accept chain=input comment="defconf: accept ipsec ESP" protocol=\
    ipsec-esp
add action=accept chain=input comment=\
    "defconf: accept all that matches ipsec policy" ipsec-policy=in,ipsec
add action=drop chain=input comment=\
    "defconf: drop everything else not coming from LAN" in-interface-list=\
    !LAN
add action=accept chain=forward comment=\
    "defconf: accept established,related,untracked" connection-state=\
    established,related,untracked
add action=accept chain=forward comment="defconf: accept ICMPv6" protocol=\
    icmpv6
add action=accept chain=forward comment="defconf: accept HIP" protocol=139
add action=accept chain=forward comment="defconf: accept IKE" dst-port=\
    500,4500 protocol=udp
add action=accept chain=forward comment="defconf: accept ipsec AH" protocol=\
    ipsec-ah
add action=accept chain=forward comment="defconf: accept ipsec ESP" protocol=\
    ipsec-esp
add action=accept chain=forward comment=\
    "defconf: accept all that matches ipsec policy" ipsec-policy=in,ipsec
add action=accept chain=forward comment=SSH-rasp dst-port=48178 log-prefix=\
    vpn protocol=tcp
add action=accept chain=forward comment=letsencrypt disabled=yes dst-port=80 \
    protocol=tcp
add action=accept chain=forward comment="https" dst-port=443 \
    protocol=tcp
add action=accept chain=forward comment=jellyfin dst-port=8096 protocol=tcp
add action=accept chain=forward comment=bitcoin dst-port=8333 protocol=tcp
add action=accept chain=forward comment="radiosync " dst-port=6789 protocol=\
    tcp
add action=accept chain=forward comment=elementum disabled=yes dst-port=45678 \
    protocol=tcp
add action=accept chain=forward comment=qbitorrent-tcp dst-port=48123 \
    protocol=tcp
add action=accept chain=forward comment=qbittorrent-udp dst-port=48123 \
    protocol=udp
add action=accept chain=forward comment=wireguard disabled=yes dst-port=15831 \
    protocol=udp
add action=drop chain=forward comment="defconf: drop invalid" \
    connection-state=invalid
add action=drop chain=forward comment=\
    "defconf: drop packets with bad src ipv6" src-address-list=bad_ipv6
add action=drop chain=forward comment=\
    "defconf: drop packets with bad dst ipv6" dst-address-list=bad_ipv6
add action=drop chain=forward comment="defconf: rfc4890 drop hop-limit=1" \
    hop-limit=equal:1 protocol=icmpv6
add action=drop chain=forward comment=\
    "defconf: drop everything else not coming from LAN" in-interface-list=\
    !LAN
/ipv6 firewall mangle
add action=change-mss chain=forward comment="Change MSS" new-mss=\
    clamp-to-pmtu protocol=tcp tcp-flags=syn
add action=mark-packet chain=forward comment="UP - Ping" new-packet-mark=\
    up_ping out-interface-list=WAN protocol=icmpv6
add action=mark-connection chain=forward comment="UP - DNS - udp & tcp" \
    dst-port=53 new-connection-mark=up_dns_conn out-interface-list=WAN \
    protocol=udp
add action=mark-connection chain=forward dst-port=53 new-connection-mark=\
    up_dns_conn out-interface-list=WAN protocol=tcp
add action=mark-packet chain=forward connection-mark=up_dns_conn \
    new-packet-mark=up_dns out-interface-list=WAN
add action=mark-connection chain=forward comment="UP - Web" dst-port=80,443 \
    new-connection-mark=up_web_conn out-interface-list=WAN protocol=udp
add action=mark-connection chain=forward dst-port=80,443 new-connection-mark=\
    up_web_conn out-interface-list=WAN protocol=tcp
add action=mark-packet chain=forward connection-mark=up_web_conn \
    new-packet-mark=up_web out-interface-list=WAN
add action=mark-connection chain=forward comment="UP - other internet" \
    new-connection-mark=up_other_internet_conn out-interface-list=WAN
add action=mark-packet chain=forward connection-mark=up_other_internet_conn \
    new-packet-mark=up_other out-interface-list=WAN passthrough=no
add action=mark-packet chain=forward comment="DOWN - ping" new-packet-mark=\
    down_ping protocol=icmpv6
add action=mark-connection chain=forward comment="DOWN - DNS - udp & tcp" \
    new-connection-mark=down_dns_conn protocol=udp src-port=53
add action=mark-connection chain=forward new-connection-mark=down_dns_conn \
    protocol=tcp src-port=53
add action=mark-packet chain=forward connection-mark=down_dns_conn \
    new-packet-mark=down_dns
add action=mark-connection chain=forward comment="DOWN - Web" \
    new-connection-mark=down_web_conn protocol=tcp src-port=80,443
add action=mark-connection chain=forward new-connection-mark=down_web_conn \
    protocol=udp src-port=80,443
add action=mark-packet chain=forward connection-mark=down_web_conn \
    new-packet-mark=down_web
add action=mark-connection chain=forward comment="DOWN - Other" \
    new-connection-mark=down_other_conn
add action=mark-packet chain=forward connection-mark=down_other_conn \
    new-packet-mark=down_other passthrough=no
/ipv6 nd
set [ find default=yes ] advertise-dns=yes
/system clock
set time-zone-name=Europe/Athens
/system logging
add topics=wireless,debug
add topics=wireless,info
add topics=container,debug
/system package update
set channel=testing
/tool mac-server
set allowed-interface-list=LAN
/tool mac-server mac-winbox
set allowed-interface-list=LAN

The following metrics are between my laptop and the ax2.
I have installed iperf3 in a container and is running as a server (iperf3 -s)

Case 1. Laptop is connected through ethernet with the router.

dimitris@USB-arch: \~
$ iperf3 -c 10.0.0.2 -i2 -t 20                                                                                                         \[20:09:47\]
Connecting to host 10.0.0.2, port 5201
\[  5\] local 192.168.1.200 port 41748 connected to 10.0.0.2 port 5201
\[ ID\] Interval           Transfer     Bitrate         Retr  Cwnd
\[  5\]   0.00-2.00   sec   227 MBytes   950 Mbits/sec    0    735 KBytes
\[  5\]   2.00-4.00   sec   225 MBytes   943 Mbits/sec    0    735 KBytes
\[  5\]   4.00-6.00   sec   225 MBytes   943 Mbits/sec    0    758 KBytes
\[  5\]   6.00-8.00   sec   225 MBytes   943 Mbits/sec    0    771 KBytes
\[  5\]   8.00-10.00  sec   224 MBytes   939 Mbits/sec    0    853 KBytes
\[  5\]  10.00-12.00  sec   225 MBytes   942 Mbits/sec    0    853 KBytes
\[  5\]  12.00-14.00  sec   225 MBytes   943 Mbits/sec    0    853 KBytes
\[  5\]  14.00-16.00  sec   224 MBytes   938 Mbits/sec    0   1.22 MBytes
\[  5\]  16.00-18.00  sec   224 MBytes   942 Mbits/sec    0   1.22 MBytes
\[  5\]  18.00-20.00  sec   224 MBytes   942 Mbits/sec    0   1.22 MBytes

---

\[ ID\] Interval           Transfer     Bitrate         Retr
\[  5\]   0.00-20.00  sec  2.19 GBytes   943 Mbits/sec    0            sender
\[  5\]   0.00-20.01  sec  2.19 GBytes   941 Mbits/sec                  receiver

iperf Done.

No complaint here. Just to set a baseline for the speed of the max speed through ethernet and container app.

Case 2.
This is using the 2.4ghz (wifi2 interface of mikrotik). The laptop is less than 1 meter away from the mikrotik.

dimitris@USB-arch: \~
$ iperf3 -c 10.0.0.2 -i2 -t 20                                                                                                         \[20:10:11\]
Connecting to host 10.0.0.2, port 5201
\[  5\] local 192.168.1.2 port 57578 connected to 10.0.0.2 port 5201
\[ ID\] Interval           Transfer     Bitrate         Retr  Cwnd
\[  5\]   0.00-2.00   sec  37.9 MBytes   159 Mbits/sec    0    913 KBytes
\[  5\]   2.00-4.00   sec  36.6 MBytes   154 Mbits/sec    0   1.04 MBytes
\[  5\]   4.00-6.00   sec  34.1 MBytes   143 Mbits/sec    0   1.04 MBytes
\[  5\]   6.00-8.00   sec  37.1 MBytes   156 Mbits/sec    0   1.10 MBytes
\[  5\]   8.00-10.00  sec  29.5 MBytes   124 Mbits/sec    0   1.10 MBytes
\[  5\]  10.00-12.00  sec  34.1 MBytes   143 Mbits/sec    0   1.10 MBytes
\[  5\]  12.00-14.00  sec  32.6 MBytes   137 Mbits/sec    0   1.10 MBytes
\[  5\]  14.00-16.00  sec  29.8 MBytes   125 Mbits/sec    0   1.10 MBytes
\[  5\]  16.00-18.00  sec  32.4 MBytes   136 Mbits/sec    0   1.10 MBytes
\[  5\]  18.00-20.00  sec  32.8 MBytes   137 Mbits/sec    0   1.10 MBytes

---

\[ ID\] Interval           Transfer     Bitrate         Retr
\[  5\]   0.00-20.00  sec   337 MBytes   141 Mbits/sec    0            sender
\[  5\]   0.00-20.04  sec   334 MBytes   140 Mbits/sec                  receiver

iperf Done.

dimitris@USB-arch: \~
$ iwconfig wlan0                                                                                                                       \[20:11:49\]
wlan0     IEEE 802.11  ESSID:"Wormhole2"
Mode:Managed  Frequency:2.412 GHz  Access Point: 04:F4:1C:9C:FF:8A
Bit Rate=300 Mb/s   Tx-Power=20 dBm
Retry short limit:7   RTS thr:off   Fragment thr:off
Power Management:on
Link Quality=70/70  Signal level=-40 dBm
Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
Tx excessive retries:0  Invalid misc:588   Missed beacon:0

Case 3
The laptop is connected through the wifi1 interface (5Ghz)

dimitris@USB-arch: \~
$ iperf3 -c 10.0.0.2 -i2 -t 20                                                                                                         \[20:11:58\]
Connecting to host 10.0.0.2, port 5201
\[  5\] local 192.168.1.194 port 48840 connected to 10.0.0.2 port 5201
\[ ID\] Interval           Transfer     Bitrate         Retr  Cwnd
\[  5\]   0.00-2.00   sec  64.4 MBytes   270 Mbits/sec  234   1.43 MBytes
\[  5\]   2.00-4.00   sec  64.2 MBytes   269 Mbits/sec   45   1.15 MBytes
\[  5\]   4.00-6.00   sec  64.5 MBytes   271 Mbits/sec    0   1.23 MBytes
\[  5\]   6.00-8.00   sec  64.8 MBytes   272 Mbits/sec    0   1.26 MBytes
\[  5\]   8.00-10.00  sec  65.0 MBytes   273 Mbits/sec    0   1.26 MBytes
\[  5\]  10.00-12.00  sec  64.4 MBytes   270 Mbits/sec    0   1.26 MBytes
\[  5\]  12.00-14.00  sec  64.2 MBytes   269 Mbits/sec    0   1.30 MBytes
\[  5\]  14.00-16.00  sec  61.4 MBytes   257 Mbits/sec    0   1.39 MBytes
\[  5\]  16.00-18.00  sec  65.0 MBytes   273 Mbits/sec    6   1.12 MBytes
\[  5\]  18.00-20.00  sec  64.5 MBytes   271 Mbits/sec    0   1.32 MBytes

---

\[ ID\] Interval           Transfer     Bitrate         Retr
\[  5\]   0.00-20.00  sec   642 MBytes   269 Mbits/sec  285            sender
\[  5\]   0.00-20.01  sec   639 MBytes   268 Mbits/sec                  receiver

iperf Done.

dimitris@USB-arch: \~
$ iwconfig wlan0                                                                                                                       \[20:13:01\]
wlan0     IEEE 802.11  ESSID:"Wormhole5"
Mode:Managed  Frequency:5.68 GHz  Access Point: 04:F4:1C:9C:FF:89
Bit Rate=866.7 Mb/s   Tx-Power=22 dBm
Retry short limit:7   RTS thr:off   Fragment thr:off
Power Management:on
Link Quality=70/70  Signal level=-30 dBm
Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
Tx excessive retries:0  Invalid misc:533   Missed beacon:0

I'm not expecting the link speed to be equal to the real throughput. But I had better speeds using the hap ac2
From my phone the results are so much worse.

In 2.4 Ghz (wifi2) I have trouble connecting from my phone.
The logs on the mikrotik show this each time I tap on the wireless network on my phone. After repeatedly attempts to connect to the wifi and without any change on my phone, I get connected:

2025-12-10 20:21:34 wireless,debug 5A:.....6E@wifi2(wifi2) associated, signal strength -18
2025-12-10 20:21:34 wireless,debug 5A:.....6E@wifi2(wifi2) disassociated, could not associate, signal strength -17
2025-12-10 20:21:56 radvd,warning invalid mtu 9048 on vlan1 from fe80::aede:48ff:fe01:5011
2025-12-10 20:22:24 wireless,debug 5A:.....6E@wifi2(wifi2) associated, signal strength -25
2025-12-10 20:22:24 wireless,debug 5A:.....6E@wifi2(wifi2) disassociated, could not associate, signal strength -25
2025-12-10 20:22:25 wireless,debug 5A:.....6E@wifi2(wifi2) associated, signal strength -25
2025-12-10 20:22:25 wireless,debug 5A:.....6E@wifi2(wifi2) disassociated, could not associate, signal strength -25
2025-12-10 20:22:26 wireless,debug 5A:.....6E@wifi2(wifi2) associated, signal strength -28
2025-12-10 20:22:26 wireless,debug 5A:.....6E@wifi2(wifi2) disassociated, could not associate, signal strength -28
2025-12-10 20:22:27 wireless,debug 5A:.....6E@wifi2(wifi2) associated, signal strength -24
2025-12-10 20:22:27 wireless,debug 5A:.....6E@wifi2(wifi2) disassociated, could not associate, signal strength -24
2025-12-10 20:23:05 ssh,info publickey accepted for user: dimitris
2025-12-10 20:23:05 system,info,account user dimitris logged in from 192.168.1.194 via ssh
2025-12-10 20:23:24 wireless,debug 5A:.....6E@wifi2(wifi2) associated, signal strength -22
2025-12-10 20:23:24 wireless,debug 5A:.....6E@wifi2(wifi2) disassociated, could not associate, signal strength -22
2025-12-10 20:23:26 wireless,debug 5A:.....6E@wifi2(wifi2) associated, signal strength -21
2025-12-10 20:23:26 wireless,debug 5A:.....6E@wifi2(wifi2) disassociated, could not associate, signal strength -21
2025-12-10 20:23:27 wireless,debug 5A:.....6E@wifi2(wifi2) associated, signal strength -21
2025-12-10 20:23:27 wireless,debug 5A:.....6E@wifi2(wifi2) disassociated, could not associate, signal strength -21
2025-12-10 20:23:28 wireless,debug 5A:.....6E@wifi2(wifi2) associated, signal strength -21
2025-12-10 20:23:28 wireless,info 5A:.....6E@wifi2(wifi2) connected, signal strength -21
2025-12-10 20:23:29 dhcp,info defconf assigned 192.168.1.193 for 5A:....E Samsung-s-A52s

When I can finally connect, I cannot get the maximum speed of my internet FTTH line (50mbps/5mbps). But let aside the internet speed. Let's compare to the lan speed.
I have installed an iperf3 app on the phone and I'm connecting as client to the 10.0.0.2 server (container)

This is the link information from my phone when I connect to 2.4Ghz. Again, my phone is less than a meter away from the router.


UPLOAD speed test (phone->mikrotik)

DOWNLOAD speed test (mikrotik->phone)

and the following screenshots for the 5Ghz band:


UPLOAD speed test (phone->mikrotik)

DOWNLOAD speed test (mikrotik->phone)

My final questions are these:
Should I return the device? (I don't want to)
Is it my setup? Is it the drivers-wifi chip combination of ax2?
What else could be wrong?

I'm open to suggestions.

2 Likes

Definitely something is not right, speeds should be much higher.

I have Chateau 5G R17 ax which is device with same specs as hAP ax2 + 5g modem and here are my iperf3 (running in ROS container on device) tests over 5GHz ax wifi on iPhone, approx. 1m from device:

1 Like

I would normally add -P 4 (4 or more streams) and/or increase the window size a lot.
(probably 400k) -w 400k

Otherwise latency tends to kill the performance.

1 Like

i’m on 7.21_RC1 Hap ax2 I see no issue here.

 2.4g WiFi
freq: 2437.0
        RX: 28735684 bytes (89609 packets)
        TX: 179312732 bytes (5687377 packets)
        signal: -38 dBm
        rx bitrate: 573.5 MBit/s 40MHz HE-MCS 11 HE-NSS 2 HE-GI 0 HE-DCM 0
        tx bitrate: 573.5 MBit/s 40MHz HE-MCS 11 HE-NSS 2 HE-GI 0 HE-DCM 0
        bss flags: short-preamble short-slot-time
        dtim period: 1
        beacon int: 100


iperf3 -c 192.168.0.5 -u -b 75M -P 4 -t 30    

[ ID] Interval           Transfer     Bitrate         Jitter    Lost/Total Datagrams
[  5]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.000 ms  0/194239 (0%)  sender
[  5]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.190 ms  0/194239 (0%)  receiver
[  7]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.000 ms  0/194239 (0%)  sender
[  7]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.195 ms  0/194239 (0%)  receiver
[  9]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.000 ms  0/194240 (0%)  sender
[  9]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.188 ms  0/194240 (0%)  receiver
[ 11]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.000 ms  0/194239 (0%)  sender
[ 11]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.191 ms  0/194239 (0%)  receiver
[SUM]   0.00-30.00  sec  1.05 GBytes   300 Mbits/sec  0.000 ms  0/776957 (0%)  sender
[SUM]   0.00-30.00  sec  1.05 GBytes   300 Mbits/sec  0.191 ms  0/776957 (0%)  receiver

5g WiFi

freq: 5180.0
        RX: 317722 bytes (658 packets)
        TX: 1070095740 bytes (709043 packets)
        signal: -49 dBm
        rx bitrate: 1200.9 MBit/s 80MHz HE-MCS 11 HE-NSS 2 HE-GI 0 HE-DCM 0
        tx bitrate: 1200.9 MBit/s 80MHz HE-MCS 11 HE-NSS 2 HE-GI 0 HE-DCM 0
        bss flags: short-slot-time
        dtim period: 1
        beacon int: 100
        

iperf3 -c 192.168.0.5 -u -b 75M -P 10 -t 30 
    
    
    - - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Jitter    Lost/Total Datagrams
[  5]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.000 ms  0/194238 (0%)  sender
[  5]   0.00-30.01  sec   268 MBytes  75.0 Mbits/sec  0.084 ms  47/194238 (0.024%)  receiver
[  7]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.000 ms  0/194238 (0%)  sender
[  7]   0.00-30.01  sec   268 MBytes  75.0 Mbits/sec  0.132 ms  14/194238 (0.0072%)  receiver
[  9]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.000 ms  0/194239 (0%)  sender
[  9]   0.00-30.01  sec   268 MBytes  74.9 Mbits/sec  0.096 ms  126/194239 (0.065%)  receiver
[ 11]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.000 ms  0/194239 (0%)  sender
[ 11]   0.00-30.01  sec   268 MBytes  75.0 Mbits/sec  0.088 ms  85/194239 (0.044%)  receiver
[ 13]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.000 ms  0/194238 (0%)  sender
[ 13]   0.00-30.01  sec   268 MBytes  75.0 Mbits/sec  0.118 ms  24/194238 (0.012%)  receiver
[ 15]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.000 ms  0/194239 (0%)  sender
[ 15]   0.00-30.01  sec   268 MBytes  75.0 Mbits/sec  0.118 ms  0/194239 (0%)  receiver
[ 17]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.000 ms  0/194239 (0%)  sender
[ 17]   0.00-30.01  sec   268 MBytes  75.0 Mbits/sec  0.098 ms  33/194239 (0.017%)  receiver
[ 19]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.000 ms  0/194239 (0%)  sender
[ 19]   0.00-30.01  sec   268 MBytes  75.0 Mbits/sec  0.115 ms  0/194239 (0%)  receiver
[ 21]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.000 ms  0/194239 (0%)  sender
[ 21]   0.00-30.01  sec   268 MBytes  75.0 Mbits/sec  0.091 ms  41/194239 (0.021%)  receiver
[ 23]   0.00-30.00  sec   268 MBytes  75.0 Mbits/sec  0.000 ms  0/194239 (0%)  sender
[ 23]   0.00-30.01  sec   268 MBytes  75.0 Mbits/sec  0.086 ms  86/194239 (0.044%)  receiver
[SUM]   0.00-30.00  sec  2.62 GBytes   750 Mbits/sec  0.000 ms  0/1942387 (0%)  sender
[SUM]   0.00-30.01  sec  2.62 GBytes   750 Mbits/sec  0.103 ms  456/1942387 (0.023%)  receiver

A little packet loss as expected!

That is UDP limited to 75.0 Mbits/sec with -b 75M, what speeds are without limit?

x10 -P flag

I know, then is multiplied by it, but just for curiosity.

It gets messy after that….

Here you go -b 100M -P 10

- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Jitter Lost/Total Datagrams
[ 5] 0.00-30.00 sec 316 MBytes 88.5 Mbits/sec 0.000 ms 0/229101 (0%) sender
[ 5] 0.00-30.01 sec 310 MBytes 86.5 Mbits/sec 0.027 ms 4961/229100 (2.2%) receiver
[ 7] 0.00-30.00 sec 315 MBytes 88.2 Mbits/sec 0.000 ms 0/228458 (0%) sender
[ 7] 0.00-30.01 sec 284 MBytes 79.4 Mbits/sec 0.032 ms 22634/228457 (9.9%) receiver
[ 9] 0.00-30.00 sec 316 MBytes 88.4 Mbits/sec 0.000 ms 0/228874 (0%) sender
[ 9] 0.00-30.01 sec 284 MBytes 79.4 Mbits/sec 0.137 ms 23222/228874 (10%) receiver
[ 11] 0.00-30.00 sec 316 MBytes 88.4 Mbits/sec 0.000 ms 0/229025 (0%) sender
[ 11] 0.00-30.01 sec 300 MBytes 84.0 Mbits/sec 0.035 ms 11418/229024 (5%) receiver
[ 13] 0.00-30.00 sec 316 MBytes 88.3 Mbits/sec 0.000 ms 0/228777 (0%) sender
[ 13] 0.00-30.01 sec 286 MBytes 79.9 Mbits/sec 0.023 ms 21836/228776 (9.5%) receiver
[ 15] 0.00-30.00 sec 316 MBytes 88.4 Mbits/sec 0.000 ms 0/229076 (0%) sender
[ 15] 0.00-30.01 sec 316 MBytes 88.4 Mbits/sec 0.085 ms 0/229067 (0%) receiver
[ 17] 0.00-30.00 sec 316 MBytes 88.3 Mbits/sec 0.000 ms 0/228825 (0%) sender
[ 17] 0.00-30.01 sec 300 MBytes 84.0 Mbits/sec 0.035 ms 11280/228824 (4.9%) receiver
[ 19] 0.00-30.00 sec 316 MBytes 88.4 Mbits/sec 0.000 ms 0/228858 (0%) sender
[ 19] 0.00-30.01 sec 284 MBytes 79.4 Mbits/sec 0.021 ms 23085/228857 (10%) receiver
[ 21] 0.00-30.00 sec 316 MBytes 88.3 Mbits/sec 0.000 ms 0/228680 (0%) sender
[ 21] 0.00-30.01 sec 309 MBytes 86.5 Mbits/sec 0.029 ms 4675/228679 (2%) receiver
[ 23] 0.00-30.00 sec 317 MBytes 88.6 Mbits/sec 0.000 ms 0/229382 (0%) sender
[ 23] 0.00-30.01 sec 300 MBytes 84.0 Mbits/sec 0.139 ms 11765/229368 (5.1%) receiver
[SUM] 0.00-30.00 sec 3.09 GBytes 884 Mbits/sec 0.000 ms 0/2289056 (0%) sender
[SUM] 0.00-30.01 sec 2.90 GBytes 831 Mbits/sec 0.056 ms 134876/2289026 (5.9%) receiver

Yes, but is higher… I never achieved 1Gbps+ as advertised…

So can we agree It’s as expected then :wink:

Yes, I was curious is it just me, approx. 800Mbit are real speeds over this device on ax.

And you never will...with any hardware.
The speed advertised is not transfer speed but (wireless) connection speed. Wifi has a lot of overhead.

2 Likes

Guessed so, still it’s large overhead.

2.4 or 5ghz? I can push easily -u -b 300M -P 10 -t 30 with wall between (average rssi -56dbm on client)

[SUM] 0.00-30.00 sec 1.00 GBytes 288 Mbits/sec 0.000 ms 0/744985 (0%) sender
[SUM] 0.00-30.02 sec 1.00 GBytes 287 Mbits/sec 0.261 ms 71/744751 (0.0095%) receiver

But this is good old cap ac….

Thank you guys for your measurements as well!

However it would be useful for comparison reasons, to use iperf3 without -u flag which is udp protocol and foes not reflect real throughput, as well as without the -b flag, so we can see the max real throughput of the link.

Well if you want to add error correction ie tcp that will lower the speed of course. happy to do that though :smiley:

Sorry got distracted erm best effort for tcp is

- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 58.4 MBytes 48.9 Mbits/sec 175 sender
[ 5] 0.00-10.01 sec 57.8 MBytes 48.4 Mbits/sec receiver
[ 7] 0.00-10.00 sec 49.0 MBytes 41.1 Mbits/sec 129 sender
[ 7] 0.00-10.01 sec 48.4 MBytes 40.5 Mbits/sec receiver
[ 9] 0.00-10.00 sec 77.5 MBytes 65.0 Mbits/sec 125 sender
[ 9] 0.00-10.01 sec 76.6 MBytes 64.2 Mbits/sec receiver
[ 11] 0.00-10.00 sec 80.8 MBytes 67.7 Mbits/sec 67 sender
[ 11] 0.00-10.01 sec 79.9 MBytes 66.9 Mbits/sec receiver
[ 13] 0.00-10.00 sec 148 MBytes 125 Mbits/sec 195 sender
[ 13] 0.00-10.01 sec 146 MBytes 123 Mbits/sec receiver
[ 15] 0.00-10.00 sec 83.2 MBytes 69.8 Mbits/sec 181 sender
[ 15] 0.00-10.01 sec 81.8 MBytes 68.5 Mbits/sec receiver
[ 17] 0.00-10.00 sec 60.1 MBytes 50.4 Mbits/sec 166 sender
[ 17] 0.00-10.01 sec 59.2 MBytes 49.6 Mbits/sec receiver
[ 19] 0.00-10.00 sec 79.6 MBytes 66.8 Mbits/sec 99 sender
[ 19] 0.00-10.01 sec 78.6 MBytes 65.9 Mbits/sec receiver
[ 21] 0.00-10.00 sec 79.1 MBytes 66.3 Mbits/sec 118 sender
[ 21] 0.00-10.01 sec 78.0 MBytes 65.3 Mbits/sec receiver
[ 23] 0.00-10.00 sec 114 MBytes 95.6 Mbits/sec 103 sender
[ 23] 0.00-10.01 sec 113 MBytes 94.4 Mbits/sec receiver
[SUM] 0.00-10.00 sec 830 MBytes 696 Mbits/sec 1358 sender
[SUM] 0.00-10.01 sec 819 MBytes 686 Mbits/sec receiver

I did some more measurements, using the proposed settings of @ToTheFull
Ok, I understand that my wifi wlan card on the laptop is ac and not ax.

But does that mean that on 2.4Ghz it would not be able to max out the UDP of 300mbps?

and what is the situation with the phone? Right now connected at 5Ghz band I can’t go over 47mbps

[code]

2.40Ghz

Connected to 0a (on wlan0)
freq: 2412.0
RX: 499273 bytes (949 packets)
TX: 105414 bytes (589 packets)
signal: -37 dBm
rx bitrate: 300.0 MBit/s MCS 15 40MHz short GI
tx bitrate: 300.0 MBit/s MCS 15 40MHz short GI
bss flags: short-preamble short-slot-time
dtim period: 1
beacon int: 100

iperf3 -c 10.0.0.2 -u -b 75M -P 4 -t 30


[ ID] Interval Transfer Bitrate Jitter Lost/Total Datagrams
[ 5] 0.00-30.00 sec 139 MBytes 38.9 Mbits/sec 0.000 ms 0/100822 (0%) sender
[ 5] 0.00-30.06 sec 138 MBytes 38.6 Mbits/sec 2.458 ms 0/100822 (0%) receiver
[ 7] 0.00-30.00 sec 138 MBytes 38.6 Mbits/sec 0.000 ms 0/99980 (0%) sender
[ 7] 0.00-30.06 sec 137 MBytes 38.3 Mbits/sec 0.372 ms 0/99976 (0%) receiver
[ 9] 0.00-30.00 sec 138 MBytes 38.7 Mbits/sec 0.000 ms 0/100276 (0%) sender
[ 9] 0.00-30.06 sec 136 MBytes 38.0 Mbits/sec 1.213 ms 0/100276 (0%) receiver
[ 11] 0.00-30.00 sec 137 MBytes 38.2 Mbits/sec 0.000 ms 0/99002 (0%) sender
[ 11] 0.00-30.06 sec 136 MBytes 38.0 Mbits/sec 0.800 ms 0/99002 (0%) receiver
[SUM] 0.00-30.00 sec 552 MBytes 154 Mbits/sec 0.000 ms 0/400080 (0%) sender
[SUM] 0.00-30.06 sec 548 MBytes 153 Mbits/sec 1.211 ms 0/400076 (0%) receiver

iperf Done.

iperf3 -c 10.0.0.2 -P 4 -t 30 - - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-30.00 sec 120 MBytes 33.4 Mbits/sec 0 sender
[ 5] 0.00-30.03 sec 118 MBytes 33.0 Mbits/sec receiver
[ 7] 0.00-30.00 sec 121 MBytes 33.8 Mbits/sec 0 sender
[ 7] 0.00-30.03 sec 118 MBytes 33.1 Mbits/sec receiver
[ 9] 0.00-30.00 sec 119 MBytes 33.4 Mbits/sec 0 sender
[ 9] 0.00-30.03 sec 118 MBytes 33.0 Mbits/sec receiver
[ 11] 0.00-30.00 sec 120 MBytes 33.5 Mbits/sec 0 sender
[ 11] 0.00-30.03 sec 118 MBytes 32.9 Mbits/sec receiver
[SUM] 0.00-30.00 sec 479 MBytes 134 Mbits/sec 0 sender
[SUM] 0.00-30.03 sec 473 MBytes 132 Mbits/sec receiver

iperf3 -c 10.0.0.2 -u -b 1000M -P 4 -t 30


[ ID] Interval Transfer Bitrate Jitter Lost/Total Datagrams
[ 5] 0.00-30.00 sec 138 MBytes 38.5 Mbits/sec 0.000 ms 0/99777 (0%) sender
[ 5] 0.00-30.01 sec 137 MBytes 38.3 Mbits/sec 0.059 ms 0/99776 (0%) receiver
[ 7] 0.00-30.00 sec 137 MBytes 38.4 Mbits/sec 0.000 ms 0/99548 (0%) sender
[ 7] 0.00-30.01 sec 136 MBytes 38.0 Mbits/sec 1.181 ms 0/99492 (0%) receiver
[ 9] 0.00-30.00 sec 141 MBytes 39.3 Mbits/sec 0.000 ms 0/101807 (0%) sender
[ 9] 0.00-30.01 sec 140 MBytes 39.0 Mbits/sec 0.144 ms 0/101790 (0%) receiver
[ 11] 0.00-30.00 sec 138 MBytes 38.7 Mbits/sec 0.000 ms 0/100147 (0%) sender
[ 11] 0.00-30.01 sec 138 MBytes 38.5 Mbits/sec 0.207 ms 0/100109 (0%) receiver
[SUM] 0.00-30.00 sec 554 MBytes 155 Mbits/sec 0.000 ms 0/401279 (0%) sender
[SUM] 0.00-30.01 sec 550 MBytes 154 Mbits/sec 0.398 ms 0/401167 (0%) receiver

iperf Done.

5Ghz
freq: 5680.0
RX: 25452861 bytes (167940 packets)
TX: 1049812991 bytes (1930913 packets)
signal: -34 dBm
rx bitrate: 866.7 MBit/s VHT-MCS 9 80MHz short GI VHT-NSS 2
tx bitrate: 866.7 MBit/s VHT-MCS 9 80MHz short GI VHT-NSS 2
bss flags: short-slot-time
dtim period: 1
beacon int: 100

iperf3 -c 10.0.0.2 -u -b 75M -P 4 -t 30


[ ID] Interval Transfer Bitrate Jitter Lost/Total Datagrams
[ 5] 0.00-30.00 sec 268 MBytes 75.0 Mbits/sec 0.000 ms 0/194240 (0%) sender
[ 5] 0.00-30.00 sec 268 MBytes 75.0 Mbits/sec 0.159 ms 0/194240 (0%) receiver
[ 7] 0.00-30.00 sec 268 MBytes 75.0 Mbits/sec 0.000 ms 0/194240 (0%) sender
[ 7] 0.00-30.00 sec 268 MBytes 75.0 Mbits/sec 0.158 ms 0/194240 (0%) receiver
[ 9] 0.00-30.00 sec 268 MBytes 75.0 Mbits/sec 0.000 ms 0/194240 (0%) sender
[ 9] 0.00-30.00 sec 268 MBytes 75.0 Mbits/sec 0.152 ms 0/194240 (0%) receiver
[ 11] 0.00-30.00 sec 268 MBytes 75.0 Mbits/sec 0.000 ms 0/194240 (0%) sender
[ 11] 0.00-30.00 sec 268 MBytes 75.0 Mbits/sec 0.149 ms 0/194240 (0%) receiver
[SUM] 0.00-30.00 sec 1.05 GBytes 300 Mbits/sec 0.000 ms 0/776960 (0%) sender
[SUM] 0.00-30.00 sec 1.05 GBytes 300 Mbits/sec 0.154 ms 0/776960 (0%) receiver

iperf Done.

iperf3 -c 10.0.0.2 -P 4 -t 30


[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-30.00 sec 469 MBytes 131 Mbits/sec 135 sender
[ 5] 0.00-30.04 sec 467 MBytes 130 Mbits/sec receiver
[ 7] 0.00-30.00 sec 405 MBytes 113 Mbits/sec 273 sender
[ 7] 0.00-30.04 sec 402 MBytes 112 Mbits/sec receiver
[ 9] 0.00-30.00 sec 489 MBytes 137 Mbits/sec 90 sender
[ 9] 0.00-30.04 sec 488 MBytes 136 Mbits/sec receiver
[ 11] 0.00-30.00 sec 370 MBytes 104 Mbits/sec 289 sender
[ 11] 0.00-30.04 sec 368 MBytes 103 Mbits/sec receiver
[SUM] 0.00-30.00 sec 1.69 GBytes 485 Mbits/sec 787 sender
[SUM] 0.00-30.04 sec 1.68 GBytes 482 Mbits/sec receiver

iperf Done.

iperf3 -c 10.0.0.2 -u -b 1000M -P 4 -t 30


[ ID] Interval Transfer Bitrate Jitter Lost/Total Datagrams
[ 5] 0.00-30.00 sec 534 MBytes 149 Mbits/sec 0.000 ms 0/386360 (0%) sender
[ 5] 0.00-30.01 sec 441 MBytes 123 Mbits/sec 0.555 ms 0/386357 (0%) receiver
[ 7] 0.00-30.00 sec 536 MBytes 150 Mbits/sec 0.000 ms 0/387991 (0%) sender
[ 7] 0.00-30.01 sec 386 MBytes 108 Mbits/sec 0.124 ms 0/387706 (0%) receiver
[ 9] 0.00-30.00 sec 535 MBytes 149 Mbits/sec 0.000 ms 0/387184 (0%) sender
[ 9] 0.00-30.01 sec 405 MBytes 113 Mbits/sec 0.044 ms 0/387184 (0%) receiver
[ 11] 0.00-30.00 sec 536 MBytes 150 Mbits/sec 0.000 ms 0/387973 (0%) sender
[ 11] 0.00-30.01 sec 382 MBytes 107 Mbits/sec 0.159 ms 0/387736 (0%) receiver
[SUM] 0.00-30.00 sec 2.09 GBytes 598 Mbits/sec 0.000 ms 0/1549508 (0%) sender
[SUM] 0.00-30.01 sec 1.58 GBytes 451 Mbits/sec 0.221 ms 0/1548983 (0%) receiver

[/code]

My AC phone Pixel 5 in this case seems ok to me. i’ve disabled 40 wide so I can’t test that right now.

interface/wifi/registration-table/print detail stats interval=1 proplist=interface,uptime,signal,band,auth-type,tx-rate,rx-rate

6 A interface=wifi1 uptime=14m46s signal=-61 band=5ghz-ac auth-type=ft-wpa3-psk tx-rate=780.0Mbps rx-rate=780.0Mbps 

1 Like

Your configuration is pretty good, very smart use of memory for a ramdisk, FQ Codel queues, multiple subnets and advanced firewall rules. I have somewhat similar configuration but decided to do some tweaks to minimize wireless radio performance issues:

  • upgraded thermal pads and thermal paste to minimize throttling
  • set it in ventilated alluminium 9” rack enclosure
  • assigned all devices that support 5AX on wifi1 (5GHz) exclusively with “/interface wifi access-list interface=wifi1” so they won’t roam from one interface to another
  • set max-limit (90% of max uplink throughput) for queue tree, assigned queues to parent interface “upload queue to ether1 and download queue to bridge” in order to keep fast-track on

To prevent clients from roaming between interfaces was very important part because it was difficult to balance radio signal to match signal strength on 2GHz and 5GHz. Higher the frequency, higher the strength needed to be to compensate for the wave length. I had 20%-25% higher power for 5GHz compare to 2GHz interface.

Few questions:

  1. there’s a trace of jumbo frames in the logs provided, but nothing in the ROS configuration, do you have some clients that can’t talk to the router?

  2. what is ether1 mtu? do you see fragmented packets with the captured tcpdump?

  3. in Logs do you see devices roam between interfaces frequently?

  4. you don’t have fast-track enabled, what’s CPU and temperature under load?

  5. would you live with simplier queue configuration (attached to parent interfaces) but with fast track enabled?

  6. with your queue configuration what is TX/RX Queue Drops values?

  7. how’s busy is given radio spectrum? what do wireless interfaces “Frequency Usage” show? have you tried manually assign least busiest frequency?