Messages in this thread | ![/](/images/icornerl.gif) | | Date | Mon, 11 Dec 2023 14:54:49 +0100 | From | Andrew Lunn <> | Subject | Re: [PATCH 0/3] net: microchip_t1s: additional phy support and collision detect handling |
| |
> ## with collision detection enabled > > iperf3 normal > - - - - - - - - - - - - - - - - - - - - - - - - - > [ ID] Interval Transfer Bitrate Retr > [ 5] 0.00-10.00 sec 5.54 MBytes 4.65 Mbits/sec 0 sender > [ 5] 0.00-10.01 sec 5.40 MBytes 4.53 Mbits/sec receiver > > iperf3 reverse > - - - - - - - - - - - - - - - - - - - - - - - - - > [ ID] Interval Transfer Bitrate Retr > [ 5] 0.00-10.00 sec 929 KBytes 761 Kbits/sec 293 sender > [ 5] 0.00-10.00 sec 830 KBytes 680 Kbits/sec receiver > > > ## with collision detection disabled > > iperf3 normal > - - - - - - - - - - - - - - - - - - - - - - - - - > [ ID] Interval Transfer Bitrate Retr > [ 5] 0.00-10.00 sec 6.39 MBytes 5.36 Mbits/sec 0 sender > [ 5] 0.00-10.04 sec 6.19 MBytes 5.17 Mbits/sec receiver > > iperf3 reverse > - - - - - - - - - - - - - - - - - - - - - - - - - > [ ID] Interval Transfer Bitrate Retr > [ 5] 0.00-10.27 sec 1.10 MBytes 897 Kbits/sec 268 sender > [ 5] 0.00-10.00 sec 1.01 MBytes 843 Kbits/sec receiver > > # Conclusions > > The arm system running the lan865x macphy uses a not yet mainlined driver, see > https://lore.kernel.org/all/20231023154649.45931-1-Parthiban.Veerasooran@microchip.com/ > > The lan865x driver crashed out every once in a while on reverse mode, there > is definetly something biased in the driver for tx over rx. > > Then again it's not accepted yet. > > Disabling collision detection seemes to have an positive effect. > Slightly higher speeds and slightly fewer retransmissions.
I would want to first understand why there is such a big difference with the direction. Is it TCP backing off because of the packet loss? Or is there some other problem.
Maybe try with UDP streams, say with a bandwidth of 5Mbps. Do you loose 4Mbps in one direction? Or a much smaller number of packets.
Are there any usable statistics? FCS errors?
Andrew
| ![\](/images/icornerr.gif) |