Iperf3 low performance between router and AP

Hello,

I have a router with 3 wired accesspoints(deco M4r v2) and 1 wired RPI zero V2.
for the 3 accesspoints I would expect speed between the router and the AP to be close to 1000 Mbit. however when I check with Iperf, the performance is far less.

root@OpenWrtRouter:~# iperf3 -c 192.168.180.4
Connecting to host 192.168.180.4, port 5201
[  5] local 192.168.180.1 port 57520 connected to 192.168.180.4 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  34.6 MBytes   290 Mbits/sec    0    455 KBytes
[  5]   1.00-2.00   sec  34.2 MBytes   287 Mbits/sec   17    359 KBytes
[  5]   2.00-3.00   sec  33.5 MBytes   281 Mbits/sec    0    380 KBytes
[  5]   3.00-4.00   sec  33.8 MBytes   283 Mbits/sec    0    400 KBytes
[  5]   4.00-5.00   sec  34.0 MBytes   285 Mbits/sec    0    411 KBytes
[  5]   5.00-6.00   sec  33.9 MBytes   284 Mbits/sec    2    307 KBytes
[  5]   6.00-7.00   sec  34.2 MBytes   287 Mbits/sec    0    331 KBytes
[  5]   7.00-8.00   sec  33.9 MBytes   284 Mbits/sec    0    341 KBytes
[  5]   8.00-9.00   sec  33.6 MBytes   282 Mbits/sec    0    356 KBytes
[  5]   9.00-10.00  sec  33.6 MBytes   282 Mbits/sec    0    370 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   340 MBytes   285 Mbits/sec   19             sender
[  5]   0.00-10.01  sec   339 MBytes   284 Mbits/sec                  receiver

iperf Done.
root@OpenWrtRouter:~# iperf3 -c 192.168.180.5
Connecting to host 192.168.180.5, port 5201
[  5] local 192.168.180.1 port 39528 connected to 192.168.180.5 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  31.1 MBytes   261 Mbits/sec  104    354 KBytes
[  5]   1.00-2.00   sec  31.6 MBytes   265 Mbits/sec    0    375 KBytes
[  5]   2.00-3.00   sec  32.0 MBytes   268 Mbits/sec   41    281 KBytes
[  5]   3.00-4.00   sec  30.8 MBytes   258 Mbits/sec    0    313 KBytes
[  5]   4.00-5.00   sec  31.2 MBytes   262 Mbits/sec    0    341 KBytes
[  5]   5.00-6.00   sec  31.6 MBytes   265 Mbits/sec   33    293 KBytes
[  5]   6.00-7.00   sec  31.6 MBytes   265 Mbits/sec    0    328 KBytes
[  5]   7.00-8.00   sec  31.5 MBytes   264 Mbits/sec    9    286 KBytes
[  5]   8.00-9.00   sec  31.5 MBytes   264 Mbits/sec    0    314 KBytes
[  5]   9.00-10.00  sec  31.5 MBytes   264 Mbits/sec    0    344 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   315 MBytes   264 Mbits/sec  187             sender
[  5]   0.00-10.01  sec   314 MBytes   263 Mbits/sec                  receiver

iperf Done.
root@OpenWrtRouter:~# iperf3 -c 192.168.180.6
Connecting to host 192.168.180.6, port 5201
[  5] local 192.168.180.1 port 44456 connected to 192.168.180.6 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  33.6 MBytes   282 Mbits/sec    8    352 KBytes
[  5]   1.00-2.00   sec  33.5 MBytes   281 Mbits/sec    0    376 KBytes
[  5]   2.00-3.00   sec  32.8 MBytes   275 Mbits/sec    0    399 KBytes
[  5]   3.00-4.00   sec  33.1 MBytes   278 Mbits/sec   39    294 KBytes
[  5]   4.00-5.00   sec  32.6 MBytes   274 Mbits/sec    0    325 KBytes
[  5]   5.00-6.00   sec  32.2 MBytes   270 Mbits/sec    0    358 KBytes
[  5]   6.00-7.00   sec  32.8 MBytes   275 Mbits/sec    0    378 KBytes
[  5]   7.00-8.00   sec  33.0 MBytes   277 Mbits/sec    0    399 KBytes
[  5]   8.00-9.00   sec  32.8 MBytes   275 Mbits/sec    0    410 KBytes
[  5]   9.00-10.00  sec  33.8 MBytes   283 Mbits/sec    5    303 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   330 MBytes   277 Mbits/sec   52             sender
[  5]   0.00-10.01  sec   329 MBytes   276 Mbits/sec                  receiver

iperf Done.
root@OpenWrtRouter:~# iperf3 -c 192.168.180.10
Connecting to host 192.168.180.10, port 5201
[  5] local 192.168.180.1 port 51874 connected to 192.168.180.10 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  39.2 MBytes   329 Mbits/sec    0    390 KBytes
[  5]   1.00-2.00   sec  39.2 MBytes   329 Mbits/sec    0    390 KBytes
[  5]   2.00-3.00   sec  38.9 MBytes   326 Mbits/sec    0    390 KBytes
[  5]   3.00-4.00   sec  38.8 MBytes   325 Mbits/sec    0    413 KBytes
[  5]   4.00-5.00   sec  39.5 MBytes   331 Mbits/sec    0    462 KBytes
[  5]   5.00-6.00   sec  38.8 MBytes   325 Mbits/sec    0    462 KBytes
[  5]   6.00-7.00   sec  39.1 MBytes   328 Mbits/sec    0    462 KBytes
[  5]   7.00-8.00   sec  38.6 MBytes   324 Mbits/sec    0    462 KBytes
[  5]   8.00-9.00   sec  38.5 MBytes   323 Mbits/sec    0    462 KBytes
[  5]   9.00-10.00  sec  39.0 MBytes   327 Mbits/sec    0    462 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   390 MBytes   327 Mbits/sec    0             sender
[  5]   0.00-10.01  sec   390 MBytes   327 Mbits/sec                  receiver

iperf Done.

the last one is my Rpi 0 and I think 320Mbit is the limitation of the usb port port so that would make sense.

but the other 3 are devices with 1Gb/s eth so won't expect them to be slower then 300Mb/s.

is this performance issue because of poor hardware?
or is there some other reason my connections are this slow?

Running iPerf3 on a device like an AP or router is not always representative of the actual link speed or performance that you can expect through a device. That is because these types of devices often have specialized hardware for routing and/or switching, but they have relatively weak 'general purpose' CPUs. This is because they are designed to move traffic through the device, not generate or terminate it on device.

An iPerf test generates or terminates the traffic on the CPU of the host in question -- in the case of many APs and consumer routers, the CPU itself really doesn't have the performance to generate/terminate traffic at line rate.

1 Like

I see,
testing the other way actually gives even worse performance but retry always =0.

Is there another way to determine the performance of the connection? What I actually would like to know if there might be some issue with the wiring on one of them.

If you're looking to ensure the physical wiring is good, plug a normal general purpose computer into each side and run iPerf3 on the computers. If the AP/router devices have gigabit switches built-in, you can connect the computers to the AP/router's internal switch and use the main cable to link the two AP/routers.

1 Like

thnks,
I will try this some other time, but that would work.

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