4. 健康诊断指标体系

在高速以太网(100G/200G/400G/800G)运维中,链路“通不通”只是最低要求,真正决定业务体验的是链路“好不好”。健康诊断指标体系的作用,就是把“好不好”拆解成一组可采集、可比较、可告警的量化指标,并明确每个指标在芯片、模块、端口、队列等不同位置的采集点。本节围绕链路误码、FEC纠错、眼图余量、时延抖动、丢包、拥塞、PFC/ECN七类核心指标展开,说明它们的物理含义、典型采集位置以及相互之间的因果链。

一、物理层指标:误码与FEC纠错

链路误码通常用误码率(BER)或误码计数表示。在PAM4高速链路上,原始误码率(Pre-FEC BER)可能高达1e-5~1e-4,必须依靠FEC才能达到1e-12以下的业务可用水平。采集点主要分布在三个位置:SerDes PMA层的符号错误统计、PCS层的FEC解码前误码、以及FEC解码后的残余误码。工程上最常用的是Pre-FEC BER和Post-FEC BER两个值,前者反映物理链路质量,后者反映最终交付给MAC层的可靠性。

FEC纠错指标包括纠正的码字数(Corrected Codewords)、不可纠正码字数(Uncorrectable Codewords)、以及FEC符号错误分布。以RS(544,514)为例,每544个符号中可纠正15个符号错误。若某端口每秒纠正码字数持续上升,说明链路余量在下降;一旦出现不可纠正码字,就会直接导致丢包。采集点位于PCS子层的FEC解码器输出,可通过芯片寄存器或端口统计计数器读取。

Pre-FEC BER与FEC纠正计数是判断链路劣化的最早信号,通常比丢包告警提前数分钟到数小时出现,是健康诊断的“前哨指标”。

二、信号质量指标:眼图余量

眼图余量(Eye Margin)衡量接收端在采样时刻对噪声和抖动的容忍度,常用水平眼高(Eye Height)和垂直眼宽(Eye Width)表示,也可用BER轮廓(BER Contour)或眼图模板余量(Mask Margin)量化。采集点位于接收端SerDes的CDR之后、均衡器输出处。实际工程中,通过芯片内置的眼图扫描(Eye Scan)功能,可以在不中断业务的情况下获取二维眼图,并计算在目标BER(如1e-6)下的眼高和眼宽。

眼图余量的典型判据是:在目标BER下,眼高和眼宽均需大于模板要求的20%以上。若余量低于10%,链路在温度变化或电压波动时极易出现误码突增。眼图余量是预测性指标,适合用于链路质量趋势分析和模块替换决策。

三、网络层指标:时延抖动与丢包

时延抖动(Jitter)分为两类:物理层抖动(TJ/RJ/DJ)和网络层时延抖动(PDV,Packet Delay Variation)。物理层抖动由SerDes和参考时钟决定,采集点在CDR和PLL输出;网络层时延抖动则通过带时间戳的探测报文(如TWAMP、INT)测量,采集点在端口入队列和出队列的时间戳寄存器。对于金融交易、工业控制等场景,PDV超过100μs即可能影响业务。

丢包指标包括丢包计数、丢包率、丢包突发长度。采集点分布在MAC层、队列出口和FEC解码后。需要区分三类丢包:FEC不可纠正导致的物理丢包、队列溢出导致的拥塞丢包、以及ACL/策略导致的主动丢包。只有定位到丢包类型,才能选择正确的处理路径。

四、拥塞与流控指标:PFC/ECN

拥塞通过队列深度、队列丢弃计数、端口利用率、缓存占用率等指标刻画。采集点在入方向队列和出方向队列的统计寄存器。当出队列深度持续超过阈值(如80%缓存),说明下游存在瓶颈。

PFC(Priority Flow Control)指标包括PFC帧发送计数、PFC帧接收计数、每优先级暂停时长。采集点在MAC控制子层。PFC帧频繁发送说明下游队列即将溢出,但PFC本身会引发队头阻塞和死锁风险,因此需要结合PFC风暴检测。

ECN(Explicit Congestion Notification)指标包括ECN标记包计数、ECN标记率、以及CE(Congestion Encountered)比例。采集点在IP层转发路径的队列管理模块。ECN标记率上升说明拥塞正在形成,但尚未达到丢包程度,是比PFC更温和的拥塞信号。

高速链路健康诊断指标体系与采集点分布 从物理层到网络层的七类核心指标 · 采集位置与因果传导关系 物理层 信号层 网络层 流控层 链路误码 BER Pre-FEC BER / Post-FEC BER 采集点:PMA符号统计 / PCS解码后 FEC纠错 纠正码字数 / 不可纠正码字数 采集点:PCS FEC解码器寄存器 眼图余量 Eye Margin 眼高 / 眼宽 / Mask Margin 采集点:RX SerDes CDR后 / Eye Scan 时延抖动 PDV TJ / RJ / DJ / 包间时延变化 采集点:时间戳寄存器 / TWAMP 丢包 Packet Loss 丢包计数 / 丢包率 / 突发长度 采集点:MAC层 / 队列出口 拥塞 Congestion 队列深度 / 缓存占用 / 端口利用率 采集点:入/出队列统计寄存器 PFC流控 PFC帧发送/接收 / 暂停时长 采集点:MAC控制子层 ECN标记 ECN标记包计数 / CE比例 采集点:IP转发队列管理模块 输入 不可纠正→丢包 余量不足→误码 影响 队列溢出→触发PFC 拥塞标记 PFC风暴→丢包 图例 直接输入/影响 间接/条件传导 拥塞/流控路径 物理层指标 网络层指标 诊断优先级建议 1. 先看Pre-FEC BER趋势 2. 再看FEC纠正计数增速 3. 结合眼图余量判断物理层 4. 最后关联PFC/ECN与丢包

五、指标间的因果传导与诊断顺序

七类指标并非孤立,而是存在明确的因果传导链。物理层眼图余量下降会导致Pre-FEC BER上升;Pre-FEC BER上升会使FEC纠正计数增加;当误码超出FEC纠错能力时,出现不可纠正码字并导致丢包;同时,链路误码和丢包会引发重传,重传又加剧拥塞,拥塞触发PFC或ECN标记,PFC风暴反过来造成更多丢包。因此,诊断时应遵循“从物理层到网络层、从预测性指标到结果性指标”的顺序。

实际排查中,建议先观察Pre-FEC BER的长期趋势,若其缓慢上升,再检查眼图余量是否同步下降,从而判断是模块老化、光纤污染还是温度漂移。若Pre-FEC BER正常但丢包计数上升,则应转向队列深度、PFC帧计数和ECN标记率,判断是否为拥塞导致。这种分层定位方法可以避免在错误的层级反复排查。

六、采集点与采集方式对照

指标 典型采集点 采集方式 告警阈值示例
Pre-FEC BER PMA/PCS层 芯片寄存器轮询 >1e-6 关注,>1e-5 告警
FEC纠正码字数 PCS FEC解码器 统计计数器差值 每秒增速 >1000 关注
眼图余量 RX SerDes CDR后 Eye Scan / 模板测试 Mask Margin <20% 告警
时延抖动 端口时间戳寄存器 TWAMP / INT探针 PDV >100μs 关注
丢包率 MAC层 / 队列出口 计数器差值 >0.001% 告警
队列深度 出队列统计 寄存器轮询 >80%缓存 告警
PFC帧计数 MAC控制子层 计数器差值 每秒 >100 关注
ECN标记率 IP队列管理 计数器差值 >5% 关注
表中阈值为教学示例参考值,实际部署时应根据链路速率、FEC类型、业务SLA和芯片厂商建议进行调整,不可直接照搬。

七、指标采集的工程实现要点

在工程实现上,指标采集需要解决三个问题:采集频率、数据精度和关联分析。采集频率方面,Pre-FEC BER和FEC计数建议每10秒轮询一次,眼图余量可每5分钟扫描一次,PFC/ECN计数建议每1秒采集一次以捕捉突发。数据精度方面,计数器通常为32位或64位,需注意回绕处理,建议使用差值法而非绝对值判断。关联分析方面,应将同一端口的物理层指标、队列指标和流控指标打上统一时间戳,便于回溯因果链。

以某400G端口为例,假设每10秒采集一次,Pre-FEC BER从1e-7缓慢升至8e-6,同时FEC纠正码字数从每秒200升至每秒1500,眼图余量从35%降至18%,而丢包计数仍为0。此时链路尚未丢包,但已进入亚健康状态,应触发预警并安排模块更换或光纤清洁。若等到丢包计数上升再处理,业务已经受到影响。这正是健康诊断指标体系的核心价值:在业务受损之前发现劣化趋势。

综上,链路误码、FEC纠错、眼图余量、时延抖动、丢包、拥塞、PFC/ECN七类指标分别覆盖了从物理层到流控层的完整观测面。理解每个指标的定义、采集点和相互传导关系,是构建高速网络健康诊断系统的基础。实际部署时,应结合芯片能力、业务SLA和运维成本,选择合理的采集粒度和告警阈值,形成可落地的指标体系。