我的网卡丢了很多包

Mic*_*ine 9 networking linux nic centos tcp

我有一台在 CentOS 5.3 上运行的服务器(彗星聊天服务器,将有很多 tcp 连接)。最近我发现它很慢(http 服务和 ssh)所以我使用“ifconfig”命令来弄清楚发生了什么。

eth0      Link encap:Ethernet  HWaddr 00:1C:C0:B5:D5:EA  
          inet addr:10.0.0.61  Bcast:10.0.0.255  Mask:255.255.255.0
          inet6 addr: fe80::21c:c0ff:feb5:d5ea/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:871861 errors:0 dropped:489662344145 overruns:0 frame:0
          TX packets:639044 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:207239658 (197.6 MiB)  TX bytes:169416201 (161.5 MiB)
          Interrupt:225 Base address:0x6000 

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:44497 errors:0 dropped:0 overruns:0 frame:0
          TX packets:44497 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:11470951 (10.9 MiB)  TX bytes:11470951 (10.9 MiB)
Run Code Online (Sandbox Code Playgroud)

当我重新启动它的网络时,一切顺利。但是过一段时间又会变慢。

有人可以帮忙吗?

更新:

================================================== ==============================

按照 Rajat 的要求,我会发布一些信息用于诊断

 uname -a
Linux im.cluster.myserver.com 2.6.18-128.el5 #1 SMP Wed Jan 21 10:41:14 EST 2009 x86_64 x86_64 x86_64 GNU/Linux


sudo /sbin/lspci | grep Ethernet
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03)

 sudo dmesg | grep eth0
eth0: RTL8168d/8111d at 0xffffc20000006000, 00:1c:c0:b5:d5:ea, XID 281000c0 IRQ 225
r8169: eth0: link up
r8169: eth0: link up
eth0: no IPv6 routers present
r8169: eth0: link up
eth0: no IPv6 routers present



 sudo /sbin/ethtool eth0
Settings for eth0:
        Supported ports: [ TP MII ]
        Supported link modes:   10baseT/Half 10baseT/Full 
                                100baseT/Half 100baseT/Full 
                                1000baseT/Half 1000baseT/Full 
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full 
                                100baseT/Half 100baseT/Full 
                                1000baseT/Half 1000baseT/Full 
        Advertised auto-negotiation: Yes
        Speed: 1000Mb/s
        Duplex: Full
        Port: MII
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: pumbg
        Wake-on: p
        Current message level: 0x00000033 (51)
        Link detected: yes



sudo /sbin/ethtool -k eth0
Offload parameters for eth0:
Cannot get device udp large send offload settings: Operation not supported
rx-checksumming: on
tx-checksumming: off
scatter-gather: off
tcp segmentation offload: off
udp fragmentation offload: off
generic segmentation offload: off


 sudo /sbin/ethtool -S eth0
NIC statistics:
     tx_packets: 4483119
     rx_packets: 7443820
     tx_errors: 0
     rx_errors: 0
     rx_missed: 0
     align_errors: 0
     tx_single_collisions: 0
     tx_multi_collisions: 0
     unicast: 3591906
     broadcast: 442720
     multicast: 3851914
     tx_aborted: 0
     tx_underrun: 0
Run Code Online (Sandbox Code Playgroud)

pQd*_*pQd 7

要检查的几件事:

  • 运行ethtool eth0并查看您在接口上的速度/双工状态,然后检查您连接服务器的端口上的开关是否具有相同的设置 [预期为:全双工、100 或 1000 MBit/s。两边一样]

  • 如果没有双工不匹配 - 检查交换机端口和网络接口 - 也许其中之一有问题

  • 检查/更换跳线,可能是有问题或有干扰源