Posts for the month of August 2020

Testing 3 different USB ethernet dongles

Intro

I sometimes need extra ethernet connectivity for debugging and development. Lets have a look at some I have around. All dongles are tested with USB3 host system, unless otherwise stated. Testing is done with iperf3.

Linksys USB3GIG-EJ

Box says Linksys USB Ethernet adapter gigabit USB 3.0, works like a charm:

rick@WINNIE:~$ iperf3 -c 192.168.88.1
Connecting to host 192.168.88.1, port 5201
[  5] local 172.22.29.135 port 51080 connected to 192.168.88.1 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec   112 MBytes   943 Mbits/sec    0   3.15 MBytes       
[  5]   1.00-2.00   sec   112 MBytes   944 Mbits/sec    0   3.15 MBytes       
[  5]   2.00-3.00   sec   111 MBytes   933 Mbits/sec    0   3.15 MBytes       
[  5]   3.00-4.00   sec   112 MBytes   944 Mbits/sec    0   3.15 MBytes       
[  5]   4.00-5.00   sec   112 MBytes   944 Mbits/sec    0   3.15 MBytes       
[  5]   5.00-6.00   sec   112 MBytes   943 Mbits/sec    0   3.15 MBytes       
[  5]   6.00-7.00   sec   112 MBytes   944 Mbits/sec    0   3.15 MBytes       
[  5]   7.00-8.00   sec   111 MBytes   933 Mbits/sec    0   3.15 MBytes       
[  5]   8.00-9.00   sec   112 MBytes   943 Mbits/sec    0   3.15 MBytes       
[  5]   9.00-10.00  sec   112 MBytes   944 Mbits/sec    0   3.15 MBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  1.10 GBytes   942 Mbits/sec    0             sender
[  5]   0.00-10.06  sec  1.10 GBytes   935 Mbits/sec                  receiver

iperf Done.

Wavlink NWU220G

The Wavlink WL-NWU220G is a USB 2.0 to Gigabit Ethernet Adapter. It's using the axe(4) driver under FreeBSD.

rick@WINNIE:~$ iperf3 -c 192.168.88.1
Connecting to host 192.168.88.1, port 5201
[  5] local 172.22.29.135 port 51086 connected to 192.168.88.1 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  34.0 MBytes   285 Mbits/sec    0   1.56 MBytes       
[  5]   1.00-2.00   sec  31.2 MBytes   262 Mbits/sec    0   3.00 MBytes       
[  5]   2.00-3.00   sec  30.0 MBytes   252 Mbits/sec    0   3.00 MBytes       
[  5]   3.00-4.00   sec  31.2 MBytes   262 Mbits/sec    0   3.00 MBytes       
[  5]   4.00-5.00   sec  31.2 MBytes   262 Mbits/sec    0   3.00 MBytes       
[  5]   5.00-6.00   sec  30.0 MBytes   252 Mbits/sec    0   3.00 MBytes       
[  5]   6.00-7.00   sec  31.2 MBytes   262 Mbits/sec    0   3.00 MBytes       
[  5]   7.00-8.00   sec  31.2 MBytes   262 Mbits/sec    0   3.00 MBytes       
[  5]   8.00-9.00   sec  30.0 MBytes   252 Mbits/sec    0   3.00 MBytes       
[  5]   9.00-10.00  sec  31.2 MBytes   262 Mbits/sec    0   3.00 MBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   312 MBytes   261 Mbits/sec    0             sender
[  5]   0.00-10.13  sec   311 MBytes   258 Mbits/sec                  receiver

iperf Done.

Still impressive, it's almost maxing out the maximum transfer speed of USB2.0 protocol, but by far not the gigabit port.

Sitecom LN-030v3

Also have a old Sitecom LN-030v3 adapter lying around. It is a USB 2.0 adapter with 100 Mbit ethernet speed. It's using the ure(4) driver under FreeBSD.

rick@WINNIE:~$ iperf3 -c 192.168.88.1
Connecting to host 192.168.88.1, port 5201
[  5] local 172.22.29.135 port 51094 connected to 192.168.88.1 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  14.1 MBytes   118 Mbits/sec    0    595 KBytes       
[  5]   1.00-2.00   sec  11.2 MBytes  94.3 Mbits/sec    0   1.14 MBytes       
[  5]   2.00-3.00   sec  11.2 MBytes  94.4 Mbits/sec    0   1.70 MBytes       
[  5]   3.00-4.00   sec  11.2 MBytes  94.4 Mbits/sec    0   2.26 MBytes       
[  5]   4.00-5.00   sec  11.2 MBytes  94.4 Mbits/sec    0   2.83 MBytes       
[  5]   5.00-6.00   sec  11.2 MBytes  94.4 Mbits/sec    0   3.00 MBytes       
[  5]   6.00-7.00   sec  11.2 MBytes  94.4 Mbits/sec    0   3.00 MBytes       
[  5]   7.00-8.00   sec  10.0 MBytes  83.9 Mbits/sec    0   3.00 MBytes       
[  5]   8.00-9.00   sec  0.00 Bytes  0.00 bits/sec    1   1.41 KBytes       

iperf3: error - unable to receive control message: Connection reset by peer

Using USB3 ports is causing the module to 'choke' and resets itself, which is highly unwanted. Trying on an (old) USB2 port:

rick@WINNIE:~$ iperf3 -c 192.168.88.1
Connecting to host 192.168.88.1, port 5201
[  5] local 172.22.29.135 port 51106 connected to 192.168.88.1 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  13.6 MBytes   114 Mbits/sec    0    601 KBytes       
[  5]   1.00-2.00   sec  12.4 MBytes   104 Mbits/sec    0   1.15 MBytes       
[  5]   2.00-3.00   sec  11.2 MBytes  94.4 Mbits/sec    0   1.71 MBytes       
[  5]   3.00-4.00   sec  11.2 MBytes  94.3 Mbits/sec    0   2.27 MBytes       
[  5]   4.00-5.00   sec  10.0 MBytes  83.9 Mbits/sec    0   2.83 MBytes       
[  5]   5.00-6.00   sec  11.2 MBytes  94.4 Mbits/sec    0   3.02 MBytes       
[  5]   6.00-7.00   sec  11.2 MBytes  94.4 Mbits/sec    0   3.02 MBytes       
[  5]   7.00-8.00   sec  11.2 MBytes  94.4 Mbits/sec    0   3.02 MBytes       
[  5]   8.00-9.00   sec  11.2 MBytes  94.4 Mbits/sec    0   3.02 MBytes       
[  5]   9.00-10.00  sec  11.2 MBytes  94.4 Mbits/sec    0   3.02 MBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   115 MBytes  96.3 Mbits/sec    0             sender
[  5]   0.00-10.27  sec   115 MBytes  93.7 Mbits/sec                  receiver

iperf Done.

Excellent speed, how-ever 10x slower of course then the Linksys alternative.

Conclusion

If you need maximum performance, use the adapter suited for the job, how-ever when performance is not critical the older adapter are also still well suited for the job, how-ever bear in mind potential issues with USB devices dropping out, so (stress-)test your hardware before using it.

Fun fact: All USB Ethernet dongles roughly costed 20-25 EUR the moment I bought them, which makes interesting to see that technology really ages quickly, since the old dongles are basically worth-less :-).