Linux中的LAN带宽很低

大家,我连接两台1000Mbps的网卡。 其中一个(A)运行Fedora 8,另一个(B)运行Windows7。 我用Ixchariottesting它们之间的带宽,它显示大约10Mbps。 如果A和B都运行Windows7,我再次运行Ixchariot,它显示大约1000Mbps。 我从B传输文件到A(Fedora 8),速度约为10Mbps。 为什么两个testing下的带宽不同?

以下是来自ifconfig和ethtool的输出:

[root@Dom1 ~]# ifconfig eth0 Link encap:Ethernet HWaddr 00:24:1D:50:B9:C0 inet addr:192.168.1.101 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::224:1dff:fe50:b9c0/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:290214 errors:0 dropped:889731948 overruns:0 frame:0 TX packets:579263 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:19165638 (18.2 MiB) TX bytes:875177493 (834.6 MiB) Interrupt:17 Base address:0xc000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:4932 errors:0 dropped:0 overruns:0 frame:0 TX packets:4932 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:5011460 (4.7 MiB) TX bytes:5011460 (4.7 MiB) [root@Dom1 ~]# ethtool -S eth0 NIC statistics: tx_packets: 816440 rx_packets: 409104 tx_errors: 0 rx_errors: 0 rx_missed: 0 align_errors: 0 tx_single_collisions: 0 tx_multi_collisions: 0 unicast: 408962 broadcast: 38 multicast: 142 tx_aborted: 0 tx_underrun: 0 [root@Dom1 ~]# ethtool eth0 Settings for eth0: Supported ports: [ FIBRE ] Supported link modes: 1000baseT/Full Supports auto-negotiation: Yes Advertised link modes: Not reported Advertised auto-negotiation: Yes Speed: 1000Mb/s Duplex: Full Port: FIBRE PHYAD: 0 Transceiver: internal Auto-negotiation: on Supports Wake-on: pumbg Wake-on: g Current message level: 0x00000033 (51) Link detected: yes [root@Dom1 ~]# ethtool -i eth0 driver: r8169 version: 2.2LK-NAPI firmware-version: bus-info: 0000:03:00.0 

您的网卡或驱动程序确实有问题。 ifconfig报告RX数据包:290214错误:0丢弃:889731948超出:0帧:0因此,差不多有9万个数据包被丢弃,只有30万个数据包被接收! 这是胡德!

尝试调查日志( /var/log/messagesdmesg的输出)。