我有一个运行 CentOS 5.11 的 Web 设备。它有相当多的流量(抱歉,我没有具体数字,但我知道它正在使用中)。
由于某种原因,我看到 ifconfig 错误计数缓慢增加。
eth0 Link encap:Ethernet HWaddr AA:BB:CC:DD:EE:FF
inet addr:1.1.1.1 Bcast:1.1.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:202723544 errors:0 dropped:4959 overruns:0 frame:37
TX packets:158354057 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:4261083782 (3.9 GiB) TX bytes:1224803677 (1.1 GiB)
Interrupt:83 Memory:f6bf0000-f6c00000
(IP 和 MAC 已重命名以保护无辜者)。
丢帧数每天大约增加 90-100 帧。这是否表示存在问题?这是“正常”情况吗?
另外,是什么frame:37
意思?
答案1
我偶然发现了一篇博客文章,我认为它回答了这个问题:
以下是详细信息:
RX packets:
表示数据包总数已收到。这包括到达接口的所有网络数据单元(包括格式错误/无效/被拒绝的内容)。- (RX)
errors:
表示有“错误”的数据包数量。网络上的许多文档都很快将此计数器标记为未通过 CRC 校验的帧数。虽然这当然是一种可能的解释,但这并不是发生错误的唯一原因。其他可能性包括(但不限于):- 太长的帧。
- 环形缓冲区溢出(环形缓冲区是“NIC 在向内核发出 IRQ 之前将帧传输到的缓冲区”)
- fifo 溢出(解释如下)
- 丢失的数据包
- (RX)
overruns:
表示 fifo 溢出的次数。当内核无法跟上环形缓冲区的消耗速度时,就会发生溢出。 - (RX)
frames:
表示未对齐的传入帧的数量(帧大小不能被八整除)。
资料来源:
http://searchnetworking.techtarget.com/tip/Common-network-errors-and-causes
http://www.gnu.org/software/inetutils/manual/inetutils.html
http://blog.hyfather.com/blog/2013/03/04/ifconfig/
答案2
我认为“帧”是收到的带有帧错误(通常意味着错误的帧校验和)的数据包的计数。某种损坏。某个硬件损坏可能是原因,但您可以通过双工不匹配(一侧为全双工,另一侧为半双工)看到这一点,因此请先检查这一点。
你没有看到那么多,所以它很可能是一个边缘组件,而不是完全失效的组件。