mirror of
https://github.com/ipxe/ipxe
synced 2025-12-24 06:22:59 +03:00
[smsc75xx] Add driver for SMSC/Microchip LAN75xx USB Ethernet NICs
This driver is functional but any downloads via a TCP-based protocol tend to perform poorly. The 1Gbps Ethernet line rate is substantially higher than the 480Mbps (in practice around 280Mbps) provided by USB2, and the device has only 32kB of internal buffer memory. Our 256kB TCP receive window therefore rapidly overflows the RX FIFO, leading to multiple dropped packets (usually within the same TCP window) and hence a low overall throughput. Reducing the TCP window size so that the RX FIFO does not overflow greatly increases throughput, but is not a general-purpose solution. Further investigation is required to determine how other OSes (e.g. Linux) cope with this scenario. It is possible that implementing TCP SACK would provide some benefit. Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
@@ -172,6 +172,7 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
|
||||
#define ERRFILE_ata ( ERRFILE_DRIVER | 0x00740000 )
|
||||
#define ERRFILE_srp ( ERRFILE_DRIVER | 0x00750000 )
|
||||
#define ERRFILE_qib7322 ( ERRFILE_DRIVER | 0x00760000 )
|
||||
#define ERRFILE_smsc75xx ( ERRFILE_DRIVER | 0x00770000 )
|
||||
|
||||
#define ERRFILE_aoe ( ERRFILE_NET | 0x00000000 )
|
||||
#define ERRFILE_arp ( ERRFILE_NET | 0x00010000 )
|
||||
|
||||
Reference in New Issue
Block a user