1. 列车以太网链路层丢包基线测量与判读
为什么先做链路层基线,而不是直接抓包
列车静态编组时,车厢间以太网链路已经固定,没有牵引振动、受电弓干扰和车辆段无线环境变化,这是最干净的测量窗口。此时测到的丢包如果已经存在,说明问题来自物理层误码、端口协商或交换机配置,而不是运行中的动态干扰。基线测量的价值在于给后续动态工况提供一个"干净参照":静态下吞吐量应接近线速、丢包率应为 0,一旦动态工况偏离这个参照,就能快速判断是环境引入还是配置遗留。
本案例的对象是某列车 3 车交换机的一个千兆业务端口,对端为 5 车交换机对应端口,中间经过 3-4 车、4-5 车两段车载链路。测试仪一端接 3 车端口,另一端接 5 车端口,构成点到点链路。测量项为 RFC 2544 的吞吐量与丢包率,帧长取 64、512、1518 字节三档,每档测试 60 秒。
测试连接与判读逻辑
测试参数与执行要点
测试前先确认两端端口状态一致:速率、双工、流控、MTU 必须匹配,否则测到的丢包是协商问题而非链路问题。RFC 2544 吞吐量采用二分法搜索,从线速开始逐步降低负载,找到零丢包的最大速率;丢包率测试则在固定负载下统计丢失帧比例。三档帧长的意义不同:64 字节小帧考验转发能力和物理层误码敏感度,1518 字节大帧暴露 MTU 和缓冲问题。
| 帧长 | 测试负载 | 持续时间 | 关注点 |
|---|---|---|---|
| 64 B | 100% 线速起测 | 60 s | 小帧丢包多为物理层误码或转发瓶颈 |
| 512 B | 100% 线速起测 | 60 s | 中间帧长,反映综合转发能力 |
| 1518 B | 100% 线速起测 | 60 s | 大帧丢包指向 MTU 或缓冲配置 |
基线数据记录与判读示例
下表为教学示例数据,用于说明判读方法,非实测结果。假设测试仪在 3 车 Gi0/1 与 5 车 Gi0/1 之间测得如下基线:
| 帧长 | 吞吐量 | 丢包率 | CRC 错误 | 判读 |
|---|---|---|---|---|
| 64 B | 998 Mbps | 0% | 0 | 正常,记录基线 |
| 512 B | 999 Mbps | 0% | 0 | 正常,记录基线 |
| 1518 B | 999 Mbps | 0% | 0 | 正常,记录基线 |
若 64 字节档出现 0.3% 丢包且伴随 CRC 错误计数增长,而 1518 字节档正常,则优先怀疑物理层:检查 M12 连接器插针氧化、线缆弯折半径、光模块收光功率。若 1518 字节档丢包而小帧正常,则优先查 MTU 是否被某段链路限制、端口缓冲是否不足、流控是否误开导致 pause 帧堆积。
基线数据应记录测试日期、编组编号、端口号、固件版本和测试仪型号,后续动态工况复测时保持相同帧长和负载,才能做有效对比。静态基线一旦建立,动态工况下任何偏离都可作为排障起点。
不要在静态编组未完成、端口尚未稳定协商时开始测试;也不要在测试期间让其他业务流量经过被测链路,否则吞吐量和丢包率会被污染,基线失去参照价值。