Re: Raspberry Pi 3B+ and pitiful network speeds

From: MJ <mafsys1234_at_gmail.com>
Date: Wed, 23 Jun 2021 02:30:29 UTC
On 22/06/2021 10:37 pm, Denis Ovsienko wrote:
> On Tue, 22 Jun 2021 08:24:02 +1000
> MJ <mafsys1234@gmail.com> wrote:
>
>> [  1] 0.00-30.19 sec   310 MBytes  86.0 Mbits/sec
>>
>> Now, I could run these very same tests off Devuan if you like? This
>> may help disprove any network issues? Although, as I've stated, the
>> Devuan version running on the RPI3 consistently gets up to 3 times
>> this speed.
> Thank you for clarifying the test results Matt. From the numbers it
> indeed looks like the TCP throughput never reaches even 100Mb/s. Whilst
> the root cause of this might be a driver issue, or a consequence of the
> "early access" board USB implementation not working well in FreeBSD, it
> would help to eliminate trivial explanations as well.

Thank you too Denis for your guidance in testing this appliance.

The following is also addressed to all those interested:

Just as a follow up, I performed some tests this morning using the old Devuan SD Card and a new NetBSD 9.2.

The summary is:

Devuan/Linux is hands down faster. NetBSD 9.2 is almost 50% faster than FreeBSD 13. While NetBSD's result is not stellar it's still better than the pitiful FreeBSD throughput.

I will likely abandon using FreeBSD, but I should probably raise a bug report for this? I am not sure of the process for this or whether it's even wanted. That is, does FreeBSD care enough about little appliances like the Raspberry Pis to spend time fixing an obviously broken network driver/stack?

Likewise, I guess, this applies to NetBSD.

Anyway, thank you all for your assistance.

Matt.



==========================================================================================

Test 1: Sending from Devuan (RPI3B+) to FreeBSD 13 PC Server (with 1000Mbit connections):

==========================================================================================

iperf -c 192.168.1.106 -w 2m -t 30s -i 1
------------------------------------------------------------
Client connecting to 192.168.1.106, TCP port 5001
TCP window size:  448 KByte (WARNING: requested 1.91 MByte)
------------------------------------------------------------
[  3] local 192.168.1.24 port 50542 connected with 192.168.1.106 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0- 1.0 sec  20.9 MBytes   175 Mbits/sec
[  3]  1.0- 2.0 sec  37.4 MBytes   314 Mbits/sec
[  3]  2.0- 3.0 sec  38.9 MBytes   326 Mbits/sec
[  3]  3.0- 4.0 sec  38.6 MBytes   324 Mbits/sec
[  3]  4.0- 5.0 sec  38.9 MBytes   326 Mbits/sec
[  3]  5.0- 6.0 sec  38.9 MBytes   326 Mbits/sec
[  3]  6.0- 7.0 sec  38.8 MBytes   325 Mbits/sec
[  3]  7.0- 8.0 sec  38.9 MBytes   326 Mbits/sec
[  3]  8.0- 9.0 sec  38.9 MBytes   326 Mbits/sec
[  3]  9.0-10.0 sec  38.8 MBytes   325 Mbits/sec
[  3] 10.0-11.0 sec  38.4 MBytes   322 Mbits/sec
[  3] 11.0-12.0 sec  39.0 MBytes   327 Mbits/sec
[  3] 12.0-13.0 sec  38.9 MBytes   326 Mbits/sec
[  3] 13.0-14.0 sec  38.8 MBytes   325 Mbits/sec
[  3] 14.0-15.0 sec  38.9 MBytes   326 Mbits/sec
[  3] 15.0-16.0 sec  39.0 MBytes   327 Mbits/sec
[  3] 16.0-17.0 sec  38.8 MBytes   325 Mbits/sec
[  3] 17.0-18.0 sec  38.8 MBytes   325 Mbits/sec
[  3] 18.0-19.0 sec  39.0 MBytes   327 Mbits/sec
[  3] 19.0-20.0 sec  38.9 MBytes   326 Mbits/sec
[  3] 20.0-21.0 sec  38.8 MBytes   325 Mbits/sec
[  3] 21.0-22.0 sec  38.8 MBytes   325 Mbits/sec
[  3] 22.0-23.0 sec  38.8 MBytes   325 Mbits/sec
[  3] 23.0-24.0 sec  38.6 MBytes   324 Mbits/sec
[  3] 24.0-25.0 sec  39.0 MBytes   327 Mbits/sec
[  3] 25.0-26.0 sec  38.8 MBytes   325 Mbits/sec
[  3] 26.0-27.0 sec  39.0 MBytes   327 Mbits/sec
[  3] 27.0-28.0 sec  38.9 MBytes   326 Mbits/sec
[  3] 28.0-29.0 sec  38.9 MBytes   326 Mbits/sec
[  3] 29.0-30.0 sec  38.8 MBytes   325 Mbits/sec
[  3]  0.0-30.0 sec  1.12 GBytes   320 Mbits/sec


==========================================================================================

Test 2: Sending from FreeBSD 13 PC Server to Devuan (RPI3B+):

==========================================================================================

iperf -c rpi3 -w 2m -t 30s -i 1
------------------------------------------------------------
Client connecting to rpi3, TCP port 5001
TCP window size: 32.8 KByte (WARNING: requested 1.91 MByte)
------------------------------------------------------------
[  1] local 192.168.1.106 port 33418 connected with 192.168.1.24 port 5001
[ ID] Interval       Transfer     Bandwidth
[  1] 0.00-1.00 sec  14.4 MBytes   121 Mbits/sec
[  1] 1.00-2.00 sec  14.9 MBytes   125 Mbits/sec
[  1] 2.00-3.00 sec  13.9 MBytes   116 Mbits/sec
[  1] 3.00-4.00 sec  14.2 MBytes   120 Mbits/sec
[  1] 4.00-5.00 sec  14.9 MBytes   125 Mbits/sec
[  1] 5.00-6.00 sec  14.2 MBytes   120 Mbits/sec
[  1] 6.00-7.00 sec  14.2 MBytes   120 Mbits/sec
[  1] 7.00-8.00 sec  10.0 MBytes  83.9 Mbits/sec
[  1] 8.00-9.00 sec  13.8 MBytes   115 Mbits/sec
[  1] 9.00-10.00 sec  14.2 MBytes   120 Mbits/sec
[  1] 10.00-11.00 sec  14.0 MBytes   117 Mbits/sec
[  1] 11.00-12.00 sec  13.2 MBytes   111 Mbits/sec
[  1] 12.00-13.00 sec  17.0 MBytes   143 Mbits/sec
[  1] 13.00-14.00 sec  18.1 MBytes   152 Mbits/sec
[  1] 14.00-15.00 sec  17.9 MBytes   150 Mbits/sec
[  1] 15.00-16.00 sec  18.8 MBytes   157 Mbits/sec
[  1] 16.00-17.00 sec  18.6 MBytes   156 Mbits/sec
[  1] 17.00-18.00 sec  18.6 MBytes   156 Mbits/sec
[  1] 18.00-19.00 sec  18.1 MBytes   152 Mbits/sec
[  1] 19.00-20.00 sec  18.5 MBytes   155 Mbits/sec
[  1] 20.00-21.00 sec  18.9 MBytes   158 Mbits/sec
[  1] 21.00-22.00 sec  12.6 MBytes   106 Mbits/sec
[  1] 22.00-23.00 sec  14.5 MBytes   122 Mbits/sec
[  1] 23.00-24.00 sec  14.8 MBytes   124 Mbits/sec
[  1] 24.00-25.00 sec  22.1 MBytes   186 Mbits/sec
[  1] 25.00-26.00 sec  22.4 MBytes   188 Mbits/sec
[  1] 26.00-27.00 sec  22.0 MBytes   185 Mbits/sec
[  1] 27.00-28.00 sec  22.2 MBytes   187 Mbits/sec
[  1] 28.00-29.00 sec  22.5 MBytes   189 Mbits/sec
[  1] 29.00-30.00 sec  23.2 MBytes   195 Mbits/sec
[  1] 0.00-30.02 sec   507 MBytes   142 Mbits/sec

I didn't shut down all network traffic while doing this test, but clearly it's visible this exceeds even the best of FreeBSD by 200%.


==========================================================================================

Test 3: Sending from NetBSD 9.2 (RPI3B+) to FreeBSD 13 PC Server:

==========================================================================================

iperf -c 192.168.1.106 -w 2m -t 30s -i 1
------------------------------------------------------------
Client connecting to 192.168.1.106, TCP port 5001
TCP window size: 80.5 KByte (WARNING: requested 1.91 MByte)
------------------------------------------------------------
[  3] local 192.168.1.24 port 65524 connected with 192.168.1.106 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0- 1.0 sec  16.0 MBytes   134 Mbits/sec
[  3]  1.0- 2.0 sec  16.4 MBytes   137 Mbits/sec
[  3]  2.0- 3.0 sec  16.6 MBytes   139 Mbits/sec
[  3]  3.0- 4.0 sec  16.5 MBytes   138 Mbits/sec
[  3]  4.0- 5.0 sec  16.2 MBytes   136 Mbits/sec
[  3]  5.0- 6.0 sec  16.5 MBytes   138 Mbits/sec
[  3]  6.0- 7.0 sec  16.5 MBytes   138 Mbits/sec
[  3]  7.0- 8.0 sec  16.4 MBytes   137 Mbits/sec
[  3]  8.0- 9.0 sec  16.5 MBytes   138 Mbits/sec
[  3]  9.0-10.0 sec  18.1 MBytes   152 Mbits/sec
[  3] 10.0-11.0 sec  21.4 MBytes   179 Mbits/sec
[  3] 11.0-12.0 sec  16.8 MBytes   141 Mbits/sec
[  3] 12.0-13.0 sec  16.5 MBytes   138 Mbits/sec
[  3] 13.0-14.0 sec  16.6 MBytes   139 Mbits/sec
[  3] 14.0-15.0 sec  15.9 MBytes   133 Mbits/sec
[  3] 15.0-16.0 sec  16.1 MBytes   135 Mbits/sec
[  3] 16.0-17.0 sec  16.5 MBytes   138 Mbits/sec
[  3] 17.0-18.0 sec  16.5 MBytes   138 Mbits/sec
[  3] 18.0-19.0 sec  16.5 MBytes   138 Mbits/sec
[  3] 19.0-20.0 sec  16.5 MBytes   138 Mbits/sec
[  3] 20.0-21.0 sec  16.5 MBytes   138 Mbits/sec
[  3] 21.0-22.0 sec  16.6 MBytes   139 Mbits/sec
[  3] 22.0-23.0 sec  16.5 MBytes   138 Mbits/sec
[  3] 23.0-24.0 sec  16.5 MBytes   138 Mbits/sec
[  3] 24.0-25.0 sec  16.4 MBytes   137 Mbits/sec
[  3] 25.0-26.0 sec  16.5 MBytes   138 Mbits/sec
[  3] 26.0-27.0 sec  16.6 MBytes   139 Mbits/sec
[  3] 27.0-28.0 sec  16.5 MBytes   138 Mbits/sec
[  3] 28.0-29.0 sec  20.5 MBytes   172 Mbits/sec
[  3] 29.0-30.0 sec  16.5 MBytes   138 Mbits/sec
[  3]  0.0-30.0 sec   504 MBytes   141 Mbits/sec

==========================================================================================

Test 4: Sending from FreeBSD 13 PC Server to NetBSD 9.2 (RPI3B+) :

==========================================================================================


iperf -c rpi3 -w 2m -t 30s -i 1
------------------------------------------------------------
Client connecting to rpi3, TCP port 5001
TCP window size: 32.8 KByte (WARNING: requested 1.91 MByte)
------------------------------------------------------------
[  1] local 192.168.1.106 port 65345 connected with 192.168.1.24 port 5001
[ ID] Interval       Transfer     Bandwidth
[  1] 0.00-1.00 sec  10.1 MBytes  84.9 Mbits/sec
[  1] 1.00-2.00 sec  11.0 MBytes  92.3 Mbits/sec
[  1] 2.00-3.00 sec  11.2 MBytes  94.4 Mbits/sec
[  1] 3.00-4.00 sec  14.4 MBytes   121 Mbits/sec
[  1] 4.00-5.00 sec  15.1 MBytes   127 Mbits/sec
[  1] 5.00-6.00 sec  15.9 MBytes   133 Mbits/sec
[  1] 6.00-7.00 sec  16.0 MBytes   134 Mbits/sec
[  1] 7.00-8.00 sec  16.2 MBytes   136 Mbits/sec
[  1] 8.00-9.00 sec  16.2 MBytes   136 Mbits/sec
[  1] 9.00-10.00 sec  16.4 MBytes   137 Mbits/sec
[  1] 10.00-11.00 sec  16.4 MBytes   137 Mbits/sec
[  1] 11.00-12.00 sec  16.2 MBytes   136 Mbits/sec
[  1] 12.00-13.00 sec  16.6 MBytes   139 Mbits/sec
[  1] 13.00-14.00 sec  15.4 MBytes   129 Mbits/sec
[  1] 14.00-15.00 sec  16.2 MBytes   136 Mbits/sec
[  1] 15.00-16.00 sec  16.2 MBytes   136 Mbits/sec
[  1] 16.00-17.00 sec  16.5 MBytes   138 Mbits/sec
[  1] 17.00-18.00 sec  16.8 MBytes   141 Mbits/sec
[  1] 18.00-19.00 sec  16.2 MBytes   136 Mbits/sec
[  1] 19.00-20.00 sec  15.0 MBytes   126 Mbits/sec
[  1] 20.00-21.00 sec  16.2 MBytes   136 Mbits/sec
[  1] 21.00-22.00 sec  17.1 MBytes   144 Mbits/sec
[  1] 22.00-23.00 sec  16.8 MBytes   141 Mbits/sec
[  1] 23.00-24.00 sec  17.1 MBytes   144 Mbits/sec
[  1] 24.00-25.00 sec  17.1 MBytes   144 Mbits/sec
[  1] 25.00-26.00 sec  17.0 MBytes   143 Mbits/sec
[  1] 26.00-27.00 sec  17.4 MBytes   146 Mbits/sec
[  1] 27.00-28.00 sec  17.0 MBytes   143 Mbits/sec
[  1] 28.00-29.00 sec  17.1 MBytes   144 Mbits/sec
[  1] 29.00-30.00 sec  16.8 MBytes   141 Mbits/sec
[  1] 0.00-30.02 sec   474 MBytes   132 Mbits/sec