3c905TX RXs 10 times slower than TXs
Peter K. Espen 6525 Applied Physics Inc.
pkespen@sandia.gov
Tue Sep 1 23:27:03 1998
Windows NT 4.0 SP3 Pentium with 3c905TX
RedHat 5.1.5 (2.0.35-2) with 3c905TX
connected with 6 foot "null-ethernet" twisted pair cable.
The two systems are communicating correctly and all TCP/IP
services (telnet, ftp, samba, http, etc.) between the two
systems are working great.
The problem is that receiving data on the linux box is approx.
10 times slower than transmissions. I have some perl utilities
that allow me to measure data transfer rates without disk I/O.
Sending data from Linux to NT I get approx. 50Mbps throughput and
NT to Linux I am getting < 5Mbps. This difference is also
seen in ftp transfers between NT and Linux. Ftp from NT to
Linux is about 10 times slower than ftp from Linux to NT.
I have run tests between NT and DEC Unix boxes at work, and
between Sun Ultras and Redhat Linux at work and I cannot duplicate
this difference.
I have tried all combinations of full-duplex and half-duplex
(by using various "options=" to the 3c59x v0.99E driver) settings
that I can think of. I have also tried altering the settings on the
3c905TX on the NT side, with no changes.
I can successfully deteriorate the throughput rate from Linux to
NT, but the throughput from NT to Linux is always about 10 times
slower.
Any ideas?
Thanks.
Peter Espen
pkespen@sandia.gov
some more info:
Sep 1 18:28:47 linux kernel: 3c59x.c:v0.99E 5/12/98 Donald Becker http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html
Sep 1 18:28:47 linux kernel: eth0: 3Com 3c905 Boomerang 100baseTx at 0xfe80, 00:60:08:c8:53:70, IRQ 10
Sep 1 18:28:47 linux kernel: 8K word-wide RAM 3:5 Rx:Tx split, autoselect/NWay Autonegotiation interface.
Sep 1 18:28:47 linux kernel: MII transceiver found at address 24, status 786b.
Sep 1 18:28:47 linux kernel: Enabling bus-master transmits and whole-frame receives.
[root@linux nic]# ./vortex-diag -aa
vortex-diag.c:v1.05 5/22/98 Donald Becker (becker@cesdis.gsfc.nasa.gov)
Found a 3Com PCI Ethernet 3c905 rev 0 at 0xfe80.
The Vortex chip may be active, so FIFO registers will not be read.
To see all register values use the '-f' flag.
Initial window 7, registers values by window:
Window 0: 0000 0000 0000 0000 0000 00bf ffff 0000.
Window 1: FIFO FIFO 0000 2000 8000 00ff 13fc 2000.
Window 2: 6000 c808 7053 0000 0000 0000 06c6 4000.
Window 3: 02d8 0163 0000 0000 e040 0bff 13ff 6000.
Window 4: 0000 06d0 0000 0cc0 0003 8802 0000 8000.
Window 5: 1ffc fffc 06c6 0600 0007 069e 06c6 a000.
Window 6: 0000 0000 0000 0700 1000 01a4 00f0 c000.
Window 7: ebe8 059e 0000 0000 8000 00ff 500c e000.
Vortex chip registers at 0xfe80
0xFE90: **FIFO** **FIFO** 00008000 000013fc
0xFEA0: 00000021 00000000 0388403a 06000038
0xFEB0: 00000000 00000e06 059eea60 00000000
No interrupt sources are pending.
Transceiver/media interfaces available: MII.
MAC settings: half-duplex.