无链路:排查清单
端口起不来是最常见的光学工单,也是最常靠试错解决的问题。这份清单按检查成本从低到高、命中故障的概率从高到低排序。按顺序执行;每一步要么修复链路,要么排除一整类原因。
1. 模块到底被看到了吗?
- 主机端:
show interfaces <if> transceiver(或对应的 NOS 命令)。什么都没列出 → 模块未插到位、笼子被禁用,或主机无法读取它的 EEPROM。 - 重新用力插好;换一个端口试试;在 CodingBox 的工作台上读一下模块(Check transceiver)——如果工作台能读到而交换机读不到,就该怀疑端口本身。
2. 它被接受了吗?
- 状态为 unsupported / invalid / Mod_Inv / errdisable → 主机不认识这个身份信息。这种状态下激光器往往被主机禁用,所以对端的 Rx 会读到 −40 dBm,尽管其实什么都没坏。
- 解决办法:在主机上放行第三方光模块,或对身份信息进行编码 → 厂商锁定。
3. 发射机开了吗?
- 端口在管理上是否已启用?是否为测试关闭了激光器关断特性(例如 UDLD、环路保护、 “laser off until link”)?
- SFP 类:TX_DISABLE 引脚/位清零(A2h 字节 110),无 TX_FAULT。QSFP:字节 86 的 Tx disable 清零。CMIS:模块状态为 Ready,数据通路为 Activated (CMIS 问题)。
- 工作台检查:CodingBox 的 DDM 显示 Tx 功率——如果 Tx 已使能却仍是 −40 dBm,模块已经损坏。
4. 对端有光吗?
读取两端的 Rx 功率(DDM 电平):
| Rx 读数 | 含义 | 下一步 |
|---|---|---|
| 两端均 −40 dBm(地板值) | 两个方向都没有光到达 | 光纤断裂、跳线未插、Tx/Rx 接反、BiDi 配对错误 |
| 仅一端 −40 dBm | 单方向无光 | 另一侧 Tx 已损坏或被禁用;配对中的一根光纤断了 |
| 低于灵敏度(例如 PIN 接收机上的 −25 dBm) | 有光,但太弱 | 连接器脏污、波段错误、超预算 → 第 6 步 |
| 高于过载点(> −3…0 dBm) | 光太强 | 短距链路上用了长距光模块 → 加衰减器 |
| 两端均在窗口内 | 光是正常的 | 问题不在光学层 → 第 7 步 |
5. 两端物理上匹配吗?
- 同一光纤类型(单模对多模)、同一波长 / BiDi 配对,CWDM 模块插在正确的复用器端口上,APC 与 UPC 不能混用,MPO 极性和针脚正确,Tx→Rx 不接反 → 物理层不匹配。
6. 预算够吗?
- 检查并清洁链路上的每一个连接器(检查 → 清洁 → 复查)。
- 与安装基线对比,或计算预算: 单位与换算、 CWDM 复用器/解复用器与链路预算。
- 仍然偏低 → 对链路做 OTDR(链路抖动)。
7. 速率、FEC 和模式匹配吗?
- 两端处于相同的速率和 FEC(25G+/PAM4 强制要求 RS-FEC);DAC 上启用了自动协商和链路训练;两端主机端口都配置了拆分;铜缆 SFP 的 SGMII 与 1000BASE-X → 速率与模式问题、 FEC 与链路训练。
- 模块自身的速率代码与预期速率一致(字节 12 / 合规代码)。
8. 模块被允许运行吗?
- 功率等级与端口能力是否匹配;模块是否卡在 LowPwr;是否过温 → 功率与散热。
9. 通过替换法隔离故障
- 依次在两端换上已知良好的模块。
- 环回测试:用一根短跳线把模块自己的 Tx 接到自己的 Rx(长距模块先加衰减)——环回下能通,就证明模块和端口没问题,故障在线路或对端。
- 换跳线,再换端口。
10. 查看日志
两端的接口计数器和 syslog 通常会指明是哪一层出了问题:LOS、unsupported、 FEC uncorrectable、speed mismatch、power exceeds。将日志信息与 症状索引对照。
在 CodingBox 中
两次工作台读取就能在一分钟内解决上面大多数问题:Check transceiver 用于身份、波长、光纤类型/传输距离和速率代码(第 2、5、7 步), DDM 用于 Tx/Rx 功率和标志位(第 3–4 步)。如果模块在工作台上是健康的,就不要再怀疑它,回头去查线路。
上面的步骤对应的正是主机在模块插入时自身执行的流程;带引脚、字节和时序的主机侧流程见主机做了什么。
正确解读端口指示灯(琥珀色、闪烁、模式按钮)并在物理上定位端口: 端口命名与指示灯。
当模块被证明良好、怀疑对象转向线路时——按频率排列的故障清单、仪表特征和修复方法: 光纤线路故障;仪表本身: 测试与测量。