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.