3、关键性能指标(KPI)定义

做网络运维这些年,我越来越觉得——没有KPI的网络监控,就像闭着眼睛开车。你感觉一切正常,但下一秒可能就撞墙了。吞吐量、带宽利用率、时延、抖动、误码率、CRC错误计数,这六个指标是我日常排查问题的「六脉神剑」。今天咱们一个一个掰开揉碎了讲。

3.1 吞吐量(Throughput)

吞吐量,说白了就是单位时间内能传多少数据。单位通常是bps(比特每秒),或者更直观的Mbps、Gbps。

关键点:

  • 吞吐量 ≠ 带宽。带宽是理论最大值,吞吐量是实际能跑到的值。
  • 我遇到过很多客户,买了万兆网卡,结果吞吐量只有2Gbps。查了半天,发现是PCIe插槽带宽不够。嗯,硬件匹配这事儿,真不能想当然。

实战经验:我个人习惯用 iperf3 测吞吐量。命令很简单:iperf3 -c 服务器IP -t 30。跑30秒,看结果。如果吞吐量低于链路带宽的80%,就该排查了。

3.2 带宽利用率(Bandwidth Utilization)

带宽利用率,就是当前使用的带宽占总带宽的百分比。这个指标能告诉你链路是不是「快撑不住了」。

正常范围:

  • 日常:30%~60% 算正常
  • 高峰期:70%~80% 可以接受
  • 超过90%:危险!随时可能丢包

注意:我曾经遇到一个案例,某条链路的带宽利用率长期维持在95%以上,但业务方一直说「没感觉卡」。结果某天突然大范围丢包,整个业务挂了半小时。后来发现是突发流量把缓冲区撑爆了。所以,别等出事了再处理,利用率超过80%就该扩容了。

3.3 时延(Latency)

时延,就是数据从A点到B点需要的时间。单位通常是毫秒(ms)。

时延的构成:

  • 传播时延:光在光纤里跑的时间。100公里大约0.5ms。
  • 处理时延:路由器、交换机处理数据包的时间。
  • 排队时延:数据包在缓冲区排队的时间。这个最不可控。

我习惯用 ping 命令测时延。但要注意,ping 测的是往返时间(RTT),不是单向时延。如果链路不对称,单向时延可能差很多。

小技巧:如果发现时延忽高忽低,别急着怀疑链路。先看看是不是对端设备负载太高。我遇到过好几次,最后发现是服务器CPU跑满了,跟网络没关系。

3.4 抖动(Jitter)

抖动,就是时延的变化量。单位也是毫秒。这个指标对实时业务(语音、视频)特别重要。

为什么抖动很要命?

  • 时延大但稳定:可以缓冲,影响不大。
  • 时延小但抖动大:语音会断断续续,视频会卡顿。

我记得有一次帮客户排查视频会议卡顿的问题。带宽够,时延也正常,但抖动高达50ms。后来发现是链路上有个老旧的交换机在做流量整形。换掉之后,抖动降到5ms以下,问题解决。

建议阈值:对于VoIP业务,抖动应小于30ms。超过这个值,用户就会抱怨「听不清」。

3.5 误码率(BER)

误码率,就是传输过程中出错的比特数占总比特数的比例。单位通常是10的负几次方。

典型值:

链路类型 正常BER 需要关注
光纤链路 10^-12 或更低 10^-9 以上
铜缆链路 10^-10 或更低 10^-7 以上
无线链路 10^-6 或更低 10^-4 以上

误码率高了,最直接的影响就是重传增多,吞吐量下降。你想想看,如果每传1000个比特就有1个错的,那效率得多低?

避坑指南:我曾经遇到过一条光纤链路,误码率忽高忽低。查了三天,最后发现是光纤接头脏了。用酒精棉擦了一下,BER直接降到10^-13。所以,物理层的问题,别总想着用软件解决。

3.6 CRC错误计数

CRC(循环冗余校验)错误,是数据链路层用来检测数据包是否损坏的机制。如果接收端计算的CRC值和发送端的不一致,这个包就会被丢弃。

CRC错误常见原因:

  • 网线质量差或接触不良
  • 网卡故障或驱动问题
  • 电磁干扰(特别是铜缆)
  • 光纤收发器不匹配

我个人的习惯是,在交换机上用 show interface counters errors 查看CRC错误计数。如果发现某个端口的CRC错误在持续增长,基本可以断定物理层有问题。

经验之谈:CRC错误计数偶尔出现一两个,问题不大。但如果每分钟都在增长,那就得赶紧处理了。我曾经见过一个案例,CRC错误导致重传率高达30%,业务几乎不可用。最后换了一根网线就解决了。有时候,问题就这么简单。

知识体系总览

下面这张图,是我梳理的六个KPI之间的逻辑关系。你可以把它当作排查问题的路线图。

IB网络链路质量KPI体系 链路质量评估 容量维度 时间维度 质量维度 吞吐量 带宽利用率 时延 抖动 误码率(BER) CRC错误 三个维度相互影响,排查时需综合判断 从容量→时间→质量,逐层深入

这六个指标,单独看都有意义,但组合起来才能看清全貌。比如,吞吐量低可能是带宽利用率高导致的,也可能是误码率高导致的重传。你想想看,如果只看一个指标,很容易被误导。

我的排查习惯:先看吞吐量和带宽利用率,判断链路是否过载。再看时延和抖动,判断是否存在拥塞或设备问题。最后看误码率和CRC错误,确认物理层是否健康。这个顺序,能帮你快速定位问题。

好了,KPI的定义就讲到这里。这些指标是网络监控的基石,理解了它们,你就能看懂监控数据背后的故事了。