ip -s link 的计数怎么读
ip -s link 输出接口级的分层计数:收发字节与包数之外,还有 errors、dropped、missed、overrun 等错误类计数。这几类含义并不相同:errors 偏向链路侧问题(坏帧、CRC 校验失败),dropped 与 missed 多与资源不足或驱动丢弃相关,overrun 则说明接收环来不及处理。判读时必须分类,不能笼统地看「有错误」。
基本信息
| 基本查看 | ip -s link show eth0 |
|---|---|
| 更详细 | ip -s -s link show eth0 会输出更多统计层 |
| errors 指向 | 链路侧问题,如坏帧与校验错误 |
| dropped、missed 指向 | 资源不足或驱动侧丢弃,与缓冲相关 |
| overrun 指向 | 接收环来不及处理,需结合中断与队列评估 |
典型使用场景
- 收包异常时区分是链路坏帧还是缓冲不足
- 交换机与主机计数对不上时,确认丢在哪一侧
- 压测中出现丢包,用接口计数与网卡计数交叉验证
- 更换线缆或模块后确认错误计数是否停止增长
- 建立接口层基线,作为后续变更的对比基准
读取方法
读取方法
ip -s link show eth0 # 接口层收发与错误计数
ip -s -s link show eth0 | head -40 # 更细的分层统计
ethtool -S eth0 | grep -iE 'err|drop|miss' # 与网卡驱动计数对照
ip -s link show eth0 > /tmp/l1; sleep 60; ip -s link show eth0 > /tmp/l2 # 间隔采样计数分类与指向
| 计数 | 含义 | 指向 |
|---|---|---|
| errors | 收发过程中的错误总数 | 链路侧坏帧、校验失败 |
| dropped | 被丢弃的报文数 | 资源不足或策略丢弃 |
| missed | 因缓冲区不足未接收的报文 | 收包缓冲或处理能力不足 |
| overrun | 接收环未及时处理的报文 | 中断延迟或 CPU 处理不过来 |
| no_buffer | 无可用描述符而丢弃 | 环缓冲偏小 |
判读顺序
- 先分类:是链路错误类还是资源丢弃类
- 再看增量:累计值大但不增长通常不是当前问题
- 然后与网卡驱动计数对照,确认丢在哪一层
- 最后与对端和交换机计数交叉验证,避免单侧归因
累计值必须用增量来解读:接口可能运行了几个月,早期故障留下的计数会一直留在数字里,只有持续增长才说明问题正在发生。
虚拟接口的计数含义与物理接口不完全一致,例如某些虚拟网卡不提供 overrun 这类计数,跨环境对比时要注意口径。