I’ve observed package loss on the AGX Orin development board on the ethernet interface, where a similar setup on a TX2 development board works fine. There is no package loss when bitrate is below 1 mbps and above ~500, but does otherwise drop quite a few packages. I’m measuring package drop using iperf3 by inspecting the “Retr” column (retransmissions on TCP).
My setup is quite simple. I have a windows computer running Iperf3 server connected to an ethernet switch. The Orin dev-board is connected to the same switch. The orin runs an iperf3 client.
I’m reducing bandwith using two methods. The first is to limit bandwith in iperf3 using the -b
argument, and the other method is to swap the ethernet cable between the windows computer and switch with a similar cable where I’ve cut two of the wire-pairs to cap it at 100 mbps. Both methods yields similar results. And for verification, the TX2 dev-board never gives any package loss using both methods (indicating that the cables, windows computer and switch are working correctly). I also tried running iperf3 over wifi, which works perfectly without retransmissions.
A sample output from Iperf3:
$ ./iperf3 -c <server-ip> -b 100mbps
Connecting to host <server-ip>, port 5201
[ 5] local <orin-ip> port 51596 connected to <server-ip> port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 12.0 MBytes 100 Mbits/sec 40 113 KBytes
[ 5] 1.00-2.00 sec 11.9 MBytes 99.6 Mbits/sec 10 84.1 KBytes
[ 5] 2.00-3.00 sec 12.0 MBytes 101 Mbits/sec 3 101 KBytes
[ 5] 3.00-4.00 sec 11.9 MBytes 99.6 Mbits/sec 11 107 KBytes
[ 5] 4.00-5.00 sec 11.9 MBytes 99.6 Mbits/sec 5 84.1 KBytes
[ 5] 5.00-6.00 sec 12.0 MBytes 101 Mbits/sec 4 99.8 KBytes
[ 5] 6.00-7.00 sec 11.9 MBytes 99.6 Mbits/sec 13 97.0 KBytes
[ 5] 7.00-8.00 sec 12.0 MBytes 101 Mbits/sec 6 108 KBytes
[ 5] 8.00-9.00 sec 11.9 MBytes 99.6 Mbits/sec 5 87.0 KBytes
[ 5] 9.00-10.00 sec 11.9 MBytes 99.6 Mbits/sec 4 94.1 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 119 MBytes 100 Mbits/sec 101 sender
[ 5] 0.00-10.00 sec 119 MBytes 100 Mbits/sec receiver
And at max speed:
$ ./iperf3 -c <server-ip>
Connecting to host <server-ip>, port 5201
[ 5] local <orin-ip> port 51600 connected to <server-ip> port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 114 MBytes 957 Mbits/sec 0 255 KBytes
[ 5] 1.00-2.00 sec 113 MBytes 947 Mbits/sec 0 255 KBytes
[ 5] 2.00-3.00 sec 113 MBytes 951 Mbits/sec 0 255 KBytes
[ 5] 3.00-4.00 sec 113 MBytes 947 Mbits/sec 0 255 KBytes
[ 5] 4.00-5.00 sec 114 MBytes 952 Mbits/sec 0 255 KBytes
[ 5] 5.00-6.00 sec 113 MBytes 948 Mbits/sec 0 255 KBytes
[ 5] 6.00-7.00 sec 113 MBytes 950 Mbits/sec 0 255 KBytes
[ 5] 7.00-8.00 sec 113 MBytes 947 Mbits/sec 0 255 KBytes
[ 5] 8.00-9.00 sec 113 MBytes 952 Mbits/sec 0 255 KBytes
[ 5] 9.00-10.00 sec 113 MBytes 947 Mbits/sec 0 255 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 1.11 GBytes 950 Mbits/sec 0 sender
[ 5] 0.00-10.00 sec 1.10 GBytes 949 Mbits/sec receiver
Our system is designed with100 mbps cables (which will give ~1 package lost per MB transferred). We’ve also previously relied on relatively reliable UDP-messages (since we’ve had a stable local network in our system). I guess we’re mainly concerned that our systems performance will be reduced swapping TX2 for Orin.
Have you (or anyone else) already seen this issue? Maybe someone could test with a similar board to evaluate whether or not my ethernet device on the Orin dev-board is broken? I’m also interested to find if this is a HW issue or if it’s simply the device driver of the ethernet device that isn’t as mature as that of the TX2 such that I can update something in the future to improve network stability.