Hello, I'm having some curious bandwidth problems which I hope somebody can save me from. Two scenarios: Scenario (1) Two machines, directly connected via crossover, (100Mbit, full duplex). Box 1: 333MHz K5 with a 'Lite-On Communications Inc LNE100TX'. kernel: 2.4.8-19mdk Box 2: 1GHz PIII with a '3c905C', kernel: 2.4.17 Running on box 1 is a simple tcp server spitting out lumps of data to anybody who connects. On box 2 is a complementry client program to take the data and throw it away. In this configuration, I consistantly get get 10.98 Megabytes/second. Scenario (2) As before, except a third machine is inserted between the other two as a gateway (again connected via crossover to both boxes). Box 3: 700MHz C3 with two 'Intel Corporation 82557 [Ethernet Pro 100]', kernel: 2.4.12-ac3 When the same client+server programs are run, I get 0.904 Megabytes/second. ---------- Obviously something is very wrong here, so we did some snooping. We noticed we were getting a large number of buffer overruns on 'Box 3'. (Transmit buffer on the interface connected to box 2 - client, and Receive buffer on the interface connected to box 1 - server): eth0 Link encap:Ethernet HWaddr 00:03:2D:00:25:43 inet addr:10.0.0.2 Bcast:10.255.255.255 Mask:255.0.0.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1208495 errors:0 dropped:0 overruns:4 frame:0 TX packets:2032372 errors:28 dropped:0 overruns:278 carrier:28 collisions:0 txqueuelen:100 Interrupt:12 Base address:0xe400 Memory:c8810000-c8810c40 eth1 Link encap:Ethernet HWaddr 00:03:2D:00:2D:07 inet addr:192.168.123.254 Bcast:192.168.123.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1933904 errors:0 dropped:0 overruns:27191 frame:0 TX packets:1107503 errors:0 dropped:0 overruns:1 carrier:0 collisions:0 txqueuelen:100 Interrupt:11 Base address:0xcc00 Memory:c8812000-c8812c40 (Interestingly, when we swaped the intel card in box 3 (eth1) for a realtek FA310TX, we got no receive overruns, but frame errors instead -- still with poor performance). We tried using different cables - no change. We increased/decreased the TxDescriptors and RxDescriptors variables in the e100 driver - marginal change here, but never got more than 1.2 MB/sec We tried the eepro100 driver instead of the e100 driver - no change. The client and server programs can be found at: http://developers.antefacto.net/~killian/linux-net/0.html Thanks, Killian. - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html