Skip to content

光模块诊断和故障处理 ​

《H3C RoCE 网络开局一本通》拆分章节,文档版本:6W102。

返回总目录 · 上一篇


8.1 简介 ​

光模块用于光信号的传输,传输媒质为光纤。光纤传输方式损耗低,传输距离远,在长距离传输方面具有很强的优势。光模块又叫做光收发一体模块,简称为光模块英文名称叫 Transceiver 即 Transmitter+Receiver。

8.2 工作原理 ​

H3C 设备支持多种封装类型的光模块,如 QSFP-DD、 QSFP28、 CFP、 CFP2、 CXP、 QSFP+、 SFP28、 SFP+ 和 SFP 等。

以 SFP 封装光模块为例,主要包含光发射组件(TOSA)、光接收组件(ROSA)、电路板(PCBA)、 光纤接口和外壳等。

光信号和电信号转化过程如下:

  • 在发送方向, PCBA 上的驱动芯片驱动激光器芯片发光,将从交换机、路由器等网络设备上接收的数据信息调制到特定波长的光上传输出去,实现电光转换;

  • 在接收方向,对端传输过来光信号经过光探测器产生变化的电流信号,再经过跨阻放大器 TIA 转化成包含数据信息的电压信号,处理后发给后端 PHY/MAC 芯片,完成光电转换。

图 8-1 光模块组成

图示

8.3 光模块在网络中的位置 ​

光模块位于物理层,不同类型光模块的物理层架构类似,以下以 400G 光模块为例进行介绍。 图 8-2 中架构图(1)是以太网 IEEE802.3 中定义的 400G 以太网物理层的架构,架构图(2)和架构图(3)分别对应 400G 光模块无 PHY 芯片和有 PHY 芯片物理层架构。


图 8-2 光模块物理层架构

图示

通过上图可知:光模块工作在物理层中的 PMD 子层,同时包含 PMA 层的部分功能(部分光模块只有 PMD 子层),不涉及到 PCS 层的编解码。也就是说光模块不会选择性的收发报文或消息,只负责传输比特流,并不关注发的比特是 “0” 还是 “1”。

8.4 光模块分类 ​

光模块有可插拔光模块和不可插拔光模块,本手册主要介绍的是可插拔光模块。

可插拔光模块有多种分类方法,最常见的是按照封装或速率类型分类, 100G 及以上速率光模块和线缆如表 8-1 所示。

表 8-1 光模块和线缆类型 ​

光模块及线缆类型接口类型传输速率
QSFP-DD光模块LC接口400Gbps
QSFP-DD模块
QSFP-DD光模块MPO接口400Gbps
QSFP-DD电缆-400Gbps
QSFP56光模块MPO接口200Gbps
QSFP56光模块LC接口200Gbps
QSFP56模块
QSFP56电缆200Gbps
QSFP56 to QSFP56电缆-200Gbps
QSFP56光缆200Gbps

光模块及线缆类型接口类型传输速率
QSFP28光模块MPO或LC接口100/50Gbps
QSFP28模块QSFP28 BIDI光模块LC接口
QSFP28电缆100Gbps
QSFP28光缆-
CFP模块100G CFP光模块LC接口100Gbps
40G CFP光模块40Gbps
CFP2模块CFP2光模块MPO接口或LC接口100Gbps
CXP模块CXP光模块MPO接口100Gbs
CXP光缆-p

按照传输距离可细分规格或类型:一般短距在 500m 以内的光模块,多为多模光模块;长距在 10km~40km 之间或超长距在 40km 以上的光模块,为单模光模块。 更多 H3C 光模块的详细信息,请见参见《H3C 光模块手册》。

8.5 光模块的诊断功能 ​

光模块的诊断功能是工程与技术人员维护光链路正常运行最重要的维护手段。 光模块常见诊断项目包括:温度、电压、发送偏置电流、发送光功率与接收光功率。 表 8-2 光模块诊断项目

诊断项详细描述正常工作范围偏差备注
Temperature模块外壳温度商温模块:0~70℃
工温模块:-40~85℃
±3℃-
Voltage模块电源电压3.135~3.465V±3%由单板二次电源提供
TX Bias发送偏置电流由激光器芯片决定±10%驱动激光器发光
TX Power发送光功率不同模块不一样,具体
见《H3C光模块手册》
±3dB仅在正常工作范围内确保准确性
RX Power接收光功率不同模块不一样,具体
见《H3C光模块手册》
±3dB仅在正常工作范围内确保准确性
  • Temperature:光模块壳温,单位为℃。商业温度光模块规格温度为 0~70 ℃,工业温度光模块规格温度为 -40~85 ℃;光模块只有工作在温度规格范围内才能保证数据传输的可靠性,诊断温度是否正常需要结合环境温度判断。

  • Voltage:光模块供电电压,一般为 3.3V±5%,由单板二次电源提供。

  • TX Bias 电流:驱动激光器发光的电流,单位为 mA。不同类型的激光器电流大小不同。采用 VCSEL 激光器的多模光模块的 TX Bias 电流一般在 10mA 以下,而单模光模块一般相对较大。

  • TX Power:光模块发送光功率,单位为 dBm。正常工作状态下非常稳定,出现如下情况,基本可以确认模块硬件故障:

  • 温度稳定状态下发生偏差 ± 3dB 以上的变化。

  • 无发光时 TX Bias 电流正常。

  • RX Power:光模块接收光功率,单位为 dBm。在模块正常接收功率范围内准确性较好,偏差小于 ±3dB。当 RX Power 过高或者过低、 RX LOS 在告警状态下,使用 display transceiver diagnosis 命令读取的的功率数据可能不准确。

  • 接收光功率过低通常可以排查如下问题:

  • 对端光模块发送问题,如光模块存在故障,光口有异物等。

  • 中间光链路问题,如光纤传输距离过长,光纤质量差。

  • 本端光模块接收问题,如光模块存在故障,光口有异物等。

  • 接收光功率过高常见于传输距离在 10km 以上的光模块。通常可以传输链路中增加光衰来解决。 如增加足够光衰或拔掉光纤依然有告警,则模块可能已损坏。

目前大多数光模块都支持光模块的诊断功能,但也有例外。如电缆、电口光模块,这些光模块内部没有光器件,所以不支持光功率查看;早期由于技术原因,部分有源光缆(AOC)、 QSFP-40G-BIDI-SR-MM850 光模块也不支持。

8.6 光模块的告警功能 ​

告警是指当光模块内部芯片检测到不同程度的异常、或是模块状态发生重大改变时,自动产生警告信息,用来预测风险或标识故障的功能。告警有两种上报方式:

  • 硬件:通过中断或专用硬件管脚上报,如 SFP 系列光模块的 RX LOS 和 TX FAULT、 QSFP 系列光模块的 IntL。

  • 软件:模块自动产生告警,并更新符合 MSA 标准定义的寄存器取值,告警寄存器记录的是当前或历史时刻发生的异常。实际应用中需要主机通过管理接口轮询对应地址的寄存器告警标志位,以获取具体的告警内容,并及时保存时间戳。

告警类型主要包含诊断相关告警和故障告警:

  • 诊断相关告警:诊断相关告警是指模块根据表 8-2 中的 5 个诊断功能,结合模块出厂设定的阈值进行判断产生的告警。这类告警一般通过软件的方式上报,包含 warning 和 alarm 两个级别。 Warning 是较轻的告警,不是一定会产生故障,以预警为主;而 alarm 则是较严重的告警,大概率无法保证链路长期稳定的工作。基于历史策略方面原因,目前 H3C 软件绝大部分版本中只支持 alarm 级别的告警,仅少数版本支持 warning 级别的告警。由于这类告警依赖于诊断,因此不支持诊断功能的模块也不会产生此类告警。

  • 故障告警(模块内部感知到明确故障时产生的告警),主要包括:

  • 40G 光模块新增了 TX LOS 告警,表示光模块没有收到设备发出的电信号。

  • 25G 及 100G 以上的光模块新增了 TX&RX LOL (Loss of lock) /CDR unlock 告警功能。 TX LOL 表示光模块无法从设备发出的电信号中恢复出时钟, RX LOL 表示无法从接收的光信号中恢复出时钟。


当查询到上述故障类告警时,链路一般都存在严重的故障,可能伴随有 CRC 或者端口 UP/DOWN 震荡,甚至无法 Link UP。

不同封装类型光模块的故障告警功能一般性支持情况如下所示,指定传输距离的光模块具体支持哪些告警建议向技术人员单独进行确认。

表 8-3 光模块故障告警 ​

模块类型接口速率DDM相关告
警
故障告警备注
SFP/ESFPGE及以下支持TXFAULT/RXLOS-
SFP+10G支持TXFAULT/RXLOS-
SFP2825G支持TXFAULT/RXLOS
CDR unlock(仅软件)
-
QSFP+40G支持TXFAULT
TXLOS
RXLOS
仅支持软件方式告警
早期模块不支持TX
POWER相关告警
QSFP28100G支持TXFAULT
TXLOS
RXLOS
TXLOL
RXLOL
仅支持软件方式告警
LOL等同于CDR UNLOCK
CFP/CFP2100G支持TXFAULT
TXLOS
RXLOS
TXLOL
RXLOL
实际字符略有差异
硬件支持可编程告警
QSFP-DD400G支持TXFAULT
TXLOS
RXLOS
TXLOL
RXLOL
仅支持软件方式告警

8.7 故障相关信息的收集 ​

包含光模块信息、项目信息、故障信息以及现场所做的一系列定位操作,收集的信息越充分,对分析定位的帮助越大。

1. 光模块信息的收集 ​

主要包括故障链路两端光模块的条码、类型、诊断、告警以及寄存器信息。同时还可以收集光模块照片,用于辅助判断光模块真伪。

以下命令在不同设备上的支持情况可能不同,具体以设备实际支持情况为准。

通用光模块信息收集命令如表 8-4 所示。

表 8-4 通用光模块信息收集命令 ​

操作命令备注
显示可插拔接口模块的主要特征
参数
display transceiver interface
interface-type
interface-number

-
显示可插拔接口模块的电子标签
信息
display transceiver manuinfo
interface interface-type
interface-number
-
显示可插拔光模块的数字诊断参
数的当前测量值
display transceiver diagnosis
interface interface-type
interface-number

温度读数允许误差为±3°C;光功
率读数允许误差为±3dB
显示可插拔接口模块的当前故障
告警信息
display transceiver alarm
interface interface-type
interface-number
此命令行记录的是历史告警信息,
而不是实时状态;由于主机软件底
层不停轮询告警和诊断用于更新网
管MIB信息,而该操作会导致故障记
录被自动清除,因此该命令行显示
结果只有在故障状态持续存在时是
准确的
此命令行需要快速连续读2遍以上,
第一遍为无效结果需要被读清
显示光模块的详细信息(适用于
Comware V7及以上版本)
display transceiver
information interface
interface-type
interface-number
probe视图下执行
显示光模块的详细信息(适用于display transceiver interfacehidecmd视图执行

操作命令备注
Comware V5及以下版本)interface-type
interface-number
display transceiver
显示可插拔光模块软件内部的核moduleinfo interface本命令适用于Comware V7及以上
心数据结构的信息interface-type
interface-number
版本,需要在probe视图下执行

对于 QSFP+/QSFP28 系列光模块,可在 probe 视图下执行如下命令收集寄存器信息。 表 8-5 收集 QSFP+/QSFP28 系列光模块寄存器信息相关命令

操作命令备注
显示指定接口光模块上内部寄存
器的索引号为0、起始地址为0、
长度为128的寄存器区域的内容
display hardware internal
transceiver register
interface interface-type
interface-number device 0
address 0 length 128
Probe视图下执行
此命令行需要快速连续读2遍以上,
第一遍为无效结果需要被读清
显示指定接口光模块上内部寄存
器的索引号为0、起始地址为80、
长度为128的寄存器区域的内容
display hardware internal
transceiver register
interface interface-type
interface-number device 0
address 80 length 128
Probe视图下执行
显示指定接口光模块上内部寄存
器的索引号为3、起始地址为80、
长度为128的寄存器区域的内容
display hardware internal
transceiver register
interface interface-type
interface-number device 3
address 80 length 128
Probe视图下执行

对于 SFP/SFP+/SFP28 系列光模块,可在 probe 视图下执行如下命令收集寄存器信息。 表 8-6 收集 SFP/SFP+/SFP28 系列光模块寄存器信息

操作命令备注
display hardware internal
显示指定接口光模块上内部寄存transceiver register
器的索引号为a0、起始地址为0、interface interface-typeProbe视图下执行
长度为128的寄存器区域的内容interface-number device a0
address 0 length 128
显示指定接口光模块上内部寄存display hardware internalProbe视图下执行

操作命令备注
器的索引号为a2、起始地址为0、transceiver register此命令行需要快速连续读2遍以上,
长度为128的寄存器区域的内容interface interface-type第一遍为无效结果需要被读清
interface-number device a2
address 0 length 128

对于 CFP/CFP2 系列光模块,可在 probe 视图下执行如下命令收集寄存器信息。 表 8-7 收集 CFP/CFP2 系列光模块寄存器信息

操作命令备注
显示指定接口光模块上内部寄存
器的索引号为0、起始地址为
8000、长度为128的寄存器区域的
内容
display hardware internal
transceiver register
interface interface-type
interface-number device 0
address 8000 length 128
Probe视图下执行
显示指定接口光模块上内部寄存
器的索引号为0、起始地址为
a000、长度为128的寄存器区域的
内容
display hardware internal
transceiver register
interface interface-type
interface-number device 0
address a0000 length 128
Probe视图下执行
此命令行需要快速连续读2遍以上,
第一遍为无效结果需要被读清
显示指定接口光模块上内部寄存
器的索引号为0、起始地址为
a200、长度为128的寄存器区域的
内容
display hardware internal
transceiver register
interface interface-type
interface-number device 0
addressa200length 128
Probe视图下执行
此命令行需要快速连续读2遍以上,
第一遍为无效结果需要被读清
显示指定接口光模块上内部寄存
器的索引号为0、起始地址为
a280、长度为128的寄存器区域的
内容
display hardware internal
transceiver register
interface interface-type
interface-number device 0
addressa280length 128
Probe视图下执行
显示指定接口光模块上内部寄存
器的索引号为0、起始地址为
a280、长度为128的寄存器区域的
内容
display hardware internal
transceiver register
interface interface-type
interface-number device 0
addressa400length 128
Probe视图下执行
此命令行需要快速连续读2遍以上,
第一遍为无效结果需要被读清

对于 QSFP-DD 系列光模块,可执行如下命令收集信息。


表 8-8 收集 QSFP-DD 系列光模块寄存器信息 ​

操作命令备注
显示可插拔400G光模块
的当前运行参数
display transceiver active-control
interface interface-type
interface-number
Probe视图下执行
显示可插拔400G光模块
支持的能力
display transceiver advertising
interfaceinterface-type
interface-number
Probe视图下执行
显示可插拔400G光模块
支持的应用及相关信息
display transceiver application
interface interface-type
interface-number
Probe视图下执行
显示可插拔400G光模块
的状态信息
display transceiver status interface
interface-type interface-number
Probe视图下执行
正常工作时模块状态应当为
ModuleReady,数据通道状
态为Activated
显示指定接口光模块上内
部寄存器的索引号为0、起
始地址为0、长度为128的
寄存器区域的内容
display hardware internal transceiver
register interface interface-type
interface-number device 0 address0
length 128
Probe视图下执行
此命令行需要快速连续读2
遍以上,第一遍为无效结果
需要被读清
显示指定接口光模块上内
部寄存器的索引号为2、起
始地址为0、长度为128的
寄存器区域的内容
display hardware internal transceiver
register interface interface-type
interface-number device 2 address 80
length 128
Probe视图下执行
显示指定接口光模块上内
部寄存器的索引号为10、
起始地址为80、长度为
128的寄存器区域的内容
display hardware internal transceiver
register interface interface-type
interface-number device 10 address 80
length 128
Probe视图下执行
显示指定接口光模块上内
部寄存器的索引号为11、
起始地址为80、长度为
128的寄存器区域的内容
display hardware internal transceiver
register interface interface-type
interface-number device 11 address 80
length 128
Probe视图下执行
此命令行需要快速连续读2
遍以上,第一遍为无效结果
需要被读清

2. 项目及故障信息的收集 ​

项目相关信息主要包括:

  • 用户采购同型号光模块数量、实际上线使用数量、模块上线运行时间。

  • 两端光模块分别插在什么设备上、中间链路是哪种光纤类型 / 相距多远、是否有传输设备等。


  • 设备使用地点、机房建设情况,以判断是否存在高低温及潮湿环境或工业污染情况。

  • 故障信息主要包括:

  • 现象:端口 CRC、端口不 UP、端口 UP/DOWN 震荡、模块识别错误、模块信息无法读取等。

  • 范围:同型号模块 / 端口 / 链路全部还是部分故障。

  • 状态及频率:当前故障是否已消失 / 多久发生一次。

3. 现场执行的定位操作 ​

建议依次做一些基本的定位操作再申请备件更换,包括但不限于:

  • 在不改变故障端口 / 模块工作状态前提下(即不对端口进行任何操作,也不插拔光模块),寻找额外的同型号光模块与故障端口 / 模块对接,用于确认故障发生在哪一侧。

  • 使用短光纤外部环回,即直接将光模块的 TX 和 RX 光纤接口连接。如果故障消失,表示本端口工作正常。注意仅限传输距离在 10km 以下的光模块,超长距光模块严禁使用短光纤直接进行外部环回,否则可能会烧毁接收端器件。

  • 端口内部环回功能排除后端芯片工作异常。配置内部环回后,故障消失,表示后端芯片工作正常。

  • shutdown / undo shutdown 端口 / 插拔光模块。

  • 完整的交叉验证:问题端口更换同型号光模块,有问题的光模块放到其他端口验证。

  • 使用清洁工具或其他专业仪器对光模块及光纤端面进行清洁。

4. 其他信息的收集 ​

其他信息的收集没有严格的条例,重点关注规律性的现象,比如:

  • 光模块故障率的批次性差异。

  • 端口故障有无设备相关性。

  • 故障发生前,设备否有软件版本变更、光纤链路是否有进行过调整。

  • 客户是否有部署链路监测系统记录光模块的诊断信息,并观察到参数的明显变化。

  • 有时真相就隐藏在一些微小的线索当中,只要抓住,往往能够大幅提高分析定位的效率。

  1. 自检项目
  • 光模块与设备是否适配?

  • 参考各产品光模块适配表。

  • 客户光纤类型与模块类型是否匹配?

  • 10G 以上速率多模光模块建议使用水绿色的 OM3 多模光纤,如使用橙色的 OM1 多模光纤长度不得超过 30m。

多模光模块不得使用亮黄色的单模光纤。

  • 客户光纤极性是否正确?

  • 极性用来保证模块发出的信号经过传输到达另一只模块的接收端,错误时两侧模块一般均无收光。

  • 多芯 MTP/MPO 系统推荐使用 B 型(交叉)方法。

  • 传输距离在 40km 以上的光模块是否存在短光纤对接?

  • 使用 40km 以上光模块进行外环或短光纤对接会导致接收端烧毁,故障现象一般是恒定出现接收光功率过高,拔掉光纤也无法恢复。


  • 一端模块发送波长与另一端模块接收波长是否匹配?

波长不匹配也可能导致收光异常的现象,尤其是采用 BIDI 和 WDM 技术的单模光模块。

  • 两侧端口的配置(速率、双工模式、 FEC)是否一致?

  • 两侧端口的配置(速率、双工模式、 FEC)是否一致? 当不同厂家设备端口对接无法 UP、端口外环或对接测试正常 UP 时应重点排查端口配置是否一致。

8.8 光模块故障分析方法 ​

用户侧光口故障分析的前提条件是假定光模块已与 H3C 设备做过充分的适配测试。如果没有做过适配,则一切问题皆有可能。未与 H3C 设备进行过适配的光模块,主要是指客户自行采购的第三方光模块。下面是光模块一些常见问题的分析方法。

1. 第三方光模块的常见问题 ​

第三方光模块是指非 H3C 生产销售的光模块。这些模块方案设计千差万别,实际应用中可能与 H3C 设备存在一些兼容性问题。常见的问题有:模块不识别、寄存器无法访问、高速信号参数失配。

  • 模块不识别

display transceiver interface 显示信息中, Transceiver Type 显示

UNKNOWN_SFP_PLUS 或者 UNKNOWN_QSFP_PLUS 等类似信息。这类问题一般在非 MSA 标准定义的特殊光模块类型,如 AOC、 ZR、 BIDI、 CWDM、 DWDM 等光模块上比较常见。原因一般是由于没有明确的行业标准规定,光模块厂家按照自己的理解进行设计,导致存在寄存器设置与 H3C 软件识别流程不匹配的情况。 H3C 销售的光模块寄存器是经过特殊定制的、与 H3C 软件识别流程相匹配的,所以不存在识别问题。

  • 寄存器无法访问

设备通过 SCL/SDA 总线读写光模块寄存器,当上下拉电阻设置不合适、模块与设备的总线频率或时序不一致、或者遇到部分协议规定范围外的总线操作时,就可能出现光模块寄存器无法访问的故障现象。而光模块一般都无法自动恢复,可能需要手动插拔故障才能消除,严重时也可能会导致设备宕机。

  • 高速信号参数失配

高速信号是用来传输数据业务的。相对 SCL/SDA 这样的低速管理信号,参数适配更为复杂。 事实上 H3C 认证通过的大部分光模块都或多或少进行过一些信号调整,以确保在高低温等不同条件下都能够充分适配 H3C 绝大多数主机或板卡。而第三方光模块往往是一套默认的出厂参数,适配性肯定不如 H3C 光模块。即使前期做过一些小规模的测试,但很难覆盖到不同个体间的差异性,不能排除会存在部分模块与某些特定端口、甚至特定设备无法兼容的情况。

2. 光模块命令行信息的异常现象及分析 ​

光模块命令行常见异常显示日志信息:

  • The transceiver is absent

表示端口没有检测到模块插入,即光模块不在位。出现该日志后,可通过插进光模块来尝试解决,若光模块插进后,仍然存在问题,可能是光模块与端口之间的物理连接发生了故障, 比如金手指接触不良。

  • Transceiver info I/O error 或 Reading information from the transceiver failed

光模块与端口间的管理接口故障。此时光模块寄存器信息一般都不可访问,需要通过交叉验证分析原因。

交叉验证,即将异常光模块和接口与正常相同型号光模块和接口交叉互换,来判断具体是光模块故障还是设备接口故障。

  • Transceiver info checksum error

Checksum error 是光模块某些只读寄存器的值存在校验和错误,一般不影响业务。导致该问题有以下两种可能性:

  • 光模块的只读寄存器被永久的改写了。

  • 插入光模块时,软件没有读到正确的值。此种情况一般只需要在光模块稳定工作后重新读一下寄存器信息即可做出准确判断。

  • The transceiver does not support this function.

表示不支持查看制造信息或诊断信息。导致出现该问题的可能性有两种:

  • 光模块本身不支持,是正常现象。这些模块包括:

  • 第三方光模块(设备软件未安装第三方光模块 license)

  • 电缆及少数光模块,具体型号请向 H3C 技术支持人员确认。

  • 光模块某些寄存器信息被改写,被软件识别为第三方光模块或伪模块。这种情况建议将光模块返回 H3C 售后进行分析。

  • 诊断电压异常

光模块正常工作的电压范围一般为 3.135~3.465V 之间。如果显示工作电压轻微超出正常工作电压时,可能与主板二次电源有关,可通过查看相邻物理端口的光模块电压是否存在相同现象判断。当显示工作电压超出正常工作电压较多时,说明电压诊断已经不准了,通常可以判断为光模块故障。

如果电压真的过低或过高,光模块内部器件工作异常,是无法读到任何诊断数据的。

说明: 显示接口 GigabitEthernet1/0/1 上插入的可插拔光模块的数字诊断参数的当前测量值。 <Sysname> display transceiver diagnosis interface gigabitethernet 1/0/1 GigabitEthernet1/0/1 transceiver diagnostic information: Current diagnostic parameters: Temp(°C) Voltage(V) Bias(mA) RX power(dBm) TX power(dBm) 36 3.31 6.13 -35.64 -5.19 Alarm thresholds: Temp( ℃ ) Voltage(V) Bias(mA) RX power(dBM) TX power(dBM) High 50 3.55 1.44 -10.00 5.00 Low 30 3.01 1.01 -30.00 0.00

  • 诊断温度异常。

光模块诊断温度与其被使用的环境温度有关。由于光模块功耗及设备散热设计差异,一般来说光模块的诊断温度会比环境温度高 5~25 ℃。如果出现现实应用中不可能的温度值,一般是光模块故障。

  • 发送偏置电流、光功率诊断数值超出告警范围。 发送偏置电流、发送光功率和接收光功率三项参数没有固定的正常工作范围,不同型号有所不同。

发送偏置电流与发送光功率都用于对发送端器件的监控。正常工作时光模块的发送光功率大小主要与温度有关,温度恒定时发光功率一般不会有较大变化,因此如果发光功率明显降低则说明光模块可能已经发生一定程度的失效。发送偏置电流与发送光功率线性相关,因此如果发现发光功率正常而发送偏置电流超出范围也可以判定为光模块故障。 TX Bias 明显的异常值一般< 3mA,关光时除外。

  • 接收光功率诊断数值超出告警范围。 接收光功率理论上等于对端发光功率减去链路损耗,收光超出范围可能是对端光模块发送故障、链路故障或者本端光模块接收故障,经验上以对端发送故障相对概率较高。对于多通道 LC 接口的光模块,由于共享同一条链路,如果链路故障,一般所有通道都会收光异常;如果是模块故障,一般只有少数通道收光异常。

  • 诊断光功率显示 -36.96dBm 或 -40dBm。

  • -36.96dBm 或 -40dBm 一般被认为是无光,只要光模块支持光功率诊断功能,正常应用中不会出现这样的数值。

如果发光是该数值,要确认是否存在“关光”的条件,包括端口是否 shutdown、模块是否进入“低功耗”、“故障”或“静噪”(单板无电信号输出时模块不发光)状态。 如果收光是该数值,并不一定是完全“无光”:当接收光功率低于某个值时,已经远远超出了光器件接收能力,此时寄存器只能按照一个最小值及 -36.96dBm 或 -40dBm 显示;当接收光功率高于某个值时,也可能会触发保护机制将光器件“关断”,此时光器件也无法再接收, 这种情况常见于 40km 以上光模块。

  • 40G 和 100G 多通道光模块通道间光功率差异过大。

  • 40G 速率以上的光模块大多包含多路光,一般来说 H3C 光模块每一路的收发光功率会在出厂时自动调校好,不同的通道间相差一般不会很大,这个差值没有固定的标准,不同类型光模块要求具体值也不一样。

如果发现不同通道间的发光功率差值超过 3dB 以上,可能存在一定的器件失效风险,请收集模块的条码及诊断信息后向 H3C 技术人员确认。

对于不同通道间的接收光功率差值超过 3dB 的情况,要具体问题具体分析。对端模块发送故障、光纤异常或者本端接收侧故障都是有可能的。

• 存在任何告警信息。 端口正常 UP 过程中不应该产生任何的告警信息,如发现光模块存在告警应及时排查两侧设备、 模块以及链路中可能存在的问题,尽可能将所有的告警消除。尤其要重视 high alarm 等告警类型,像温度、电压、接收光功率过高告警可能导致模块永久性损坏。

光模块的所有信息基本上都是从寄存器原始数据中解析得到的。综上所述,异常情况主要包括如下几种类型:

  • 寄存器接口硬件故障导致寄存器不可读。

硬件故障最常见的现象是诊断、告警及寄存器信息不可读,如 display transceiver diagnosis interface 和 display transceiver alarm interface 命令行返回 Transceiver info I/O error 或 Reading information from the transceiver failed。这种情况下只要通过交叉验证就可以判断是端口还是模块故障。

对于 display transceiver interface、 display transceiver manuinfo interface、 display transceiver information interface、 display transceiver moduleinfo interface 命令行,仍然可能在接口故障时正常显示,原因是这部分信息并不是实时读取,而是在模块插入时缓存的,只有在检测到模块插拔时才会清除或更新缓存。

  • 软件问题导致读取的原始数据不正确或解析处理错误。 软件包括网络设备软件与光模块固件:

  • 网络设备软件主要是把从寄存器中读到的原始数据 “ 翻译 ” 成与光模块相关的参数信息,比如波长、发送接收光功率等。当设备软件访问光模块的时机 / 方式不正确、或“翻译”的方法有误时,很容易得到错误的数据,此时升级设备软件就能解决问题。错误的设备软件操作还可能导致光模块寄存器数值被永久性的改写,如出现日志 Transceiver info checksum error 或提示“ NOT sold by H3C ”就可能属于这种情况。

  • 光模块本身并不是纯硬件,大部分光模块都是有固件运行。当固件存在运行错误时,就可能出现像上面电压、温度、光功率等值明显不符合逻辑的现象。一般来说,此类问题发生的概率非常低,而且都是在长时间运行后出现,手动插拔一下故障现象就会消失。由于绝大多数光模块本身不支持在线升级,如果用户无法接受,也可以按照硬件故障的方式进行更换。

3. 链路“闪断”问题 ​

链路“闪断”问题一般是指端口在正常工作中出现的瞬时 DOWN 掉后马上又恢复正常 UP 的事件。 之所以单独说明是由于客户现场这类问题的复现往往有较大的随机性,并且介入定位时故障现象大概率已经消失,一般无法及时抓取或保存故障时刻的光模块和端口状态快照,给问题分析定位带来了很大的困难。模块相关分析除了 8.7 故障相关信息的收集提到的故障信息收集方法外,建议在系统侧对光模块和端口进行持续的参数及状态监控:

  • 监控包含故障发生时刻前后的光模块诊断数据,重点观察光功率是否有明显的变化;

  • 监控光模块告警记录,确认告警产生的时间与“闪断”时间是否一致;

  • 如果用户没有条件进行上述操作,请联系 H3C 技术支持工程师进行定位处理。

8.9 光模块常见问题 FAQ ​

8.9.1 如何根据客户光纤链路的情况选择使用哪种传输距离的光模块? ​

光模块最大传输距离是在满足特定光纤衰减系数以及一定数量的接头衰减条件下计算出来的相对值。不同光纤的衰减系数、接头衰减均存在差异。如果客户用的是低损光纤,那么使用传输距离为 10km 的光模块有可能传输距离达到 20km。反之如果客户使用的光纤质量较差,那么使用传输距离为 10km 的光模块有可能都无法达到 10km 传输距离。 我们可通过如下 2 个公式来评估光模块能否使用:


1. 光纤链路衰减计算公式 ​

光纤链路衰减 = 光纤衰减 + 所有接头衰减

  • 光纤衰减 = 光纤长度 * 光纤衰减系数。以太网 IEEE802.3 标准定义如下:多模光纤在 850nm 波长附近的衰减系数为 3.5dB/km; G.652 单模光纤在 1310nm 波长附近的衰减系数为

  • 0.4~0.5dB/km,一般取 0.45dB/km; G.652 单模光纤在 1550nm 波长附近的衰减系数一般取 0.25dB/km。建议客户向供应商确认光纤衰减系数。

常见光纤光衰参考值如下所示:

  • 100m OM3/OM4 光纤在 850nm 波长附近参考光衰值为 1dB 左右。

  • 10km 单模光纤在 1310nm 波长附近参考光衰为 4.5dB 左右。

  • 40km 单模光纤在 1550nm 波长附近参考光衰为 8~11dB。在 1310nm 波长附近的参考光衰为 18dB。

  • 接头衰减,接头包含光纤连接器、冷(机械)接点和熔接点三种类型。单模光纤连接器一般按照 0.5dB 每个计算,多模光纤连接器最大不应当超过 0.75dB,其他接头应当小于 0.5dB。

以上只是理论计算,具体以实际为准。工程上可以使用光时域反射计(OTDR)准确测量跨段及接头的数量、衰减和反射情况。

2. 光模块功率预算公式 ​

光模块功率预算 = 对端光模块发送光功率 – 本端光模块最小接收光功率(接收灵敏度) 只有当光模块功率预算 – 光纤链路衰减 > 功率代价时,传输才是可靠的。功率代价是指光模块为克服一定程度的链路损伤需要额外付出的功率,工程上也称之为裕量,一般按照 3dB 计算。

8.9.2 光纤及光模块端面如何进行清洁? ​

光纤及光模块端面对脏污非常敏感,纤芯及纤芯周边大面积的脏污不仅会导致插入损耗的增加,也会引起较大的反射产生回波损耗。图 8-3 是干净与各种不同类型脏污下光纤连接器端面的对比。


图 8-3 光纤连接器端面 ​

图示

光纤与光模块端面主要有干、湿两种清洁方法,建议两种方法结合使用:

  • 干法最为常用且效率较高,但可能产生静电而吸附细小的颗粒物或毛发纤维。

  • 湿法是使用酒精等溶剂,对附着力较强的固态物质或油脂清洁效果更好。

  • 端面清洁包含多种工具,适合现场小规模清洁的主要包括清洁纸、清洁布、棉签、清洁笔、清洁盒、 压缩气体清洁剂等。

图 8-4 光模块清洁工具

图示

清洁纸、清洁布、清洁盒可以用来清洁光纤端面。


图 8-5 光纤端面清洁(一)

图示

图 8-6 光纤端面清洁(一) ​

图示

清洁笔不仅可以清洁光纤,也可以清洁光模块,下图是使用 MPO/MTP 清洁笔清洁光纤及模块端面的示例, LC 型光纤和光模块与此类似。

图 8-7 光模块清洁(一)

图示


图 8-8 光模块清洁(二) ​

图示

部分光模块由于成本原因去掉了插芯,使用端面检测仪可以直接看到光芯片,如图 8-9 所示。 图 8-9 去掉插芯的光模块

图示

对于去掉插芯的光模块,当内端面脏污,清洁笔的作用就非常有限了,推荐使用压缩气体清洁剂, 或借助更专用的端面清洗系统进行清洁。

8.9.3 光模块能否外环或者用短光纤对接? ​

光模块发送光功率经过光纤传输衰减后的实际光功率在对端光模块的正常接收光功率范围之内是能够对接的必要条件之一。外环或者短光纤对接时光纤的衰减基本可以忽略,因此只要光模块的最大发送光功率小于等于最大接收光功率,就可以满足对接要求。

8.9.4 接口有 CRC 错误或 Local Fault 一定是本端口的问题吗? ​

不一定,绝大多数错误检测都是在接收端进行的。报文从发送端发出,经过传输路径,最后到接收端,整条路径上任意一个位置异常都可能导致接收端检测到错误。因此,不论是 CRC 错误还是 Local Fault,甚至是光模块上报的 RX LOS,都无法指明故障位置所在。


CRC 错误是 MAC 层对接收到的报文进行 CRC 算法校验后发现错误报文的计数。 Local Fault 是 RS 子层检测到接收的数据中包含特定格式的序列,用来指示对端发送到本端接收方向存在的故障。 当光模块故障时,可能产生 CRC 错误,也可能产生 Local fault (即端口 UP/DOWN 震荡或者端口不 UP)。端口 CRC 错误与 Local Fault 都表示通信中的不可靠链接,但都不是直接对光模块传输的信号或数据进行检测得到的结果,因此也不能说明故障与本端光模块直接相关。

8.9.5 为什么 H3C 光模块条码插在其他友商设备上与 H3C 读到的不一致? ​

H3C 光模块制造信息(包含条码、生产日期等)是按照 H3C 企业标准定义的,在 MSA 通用标准外的其他存储区域通过加密算法二次写入的电子标签信息。而友商仅能按照 MSA 通用标准读取通用信息,两个信息的格式定义、存储地址都不相同,软件版本中没有解密算法是无法解析出有效信息的。

8.9.6 H3C 千兆电口光模块(SFP-GE-T)无法读取制造信息或条码是否正常? ​

千兆电口光模块内部没有空间存放 H3C 制造信息,读不到是正常的。

8.9.7 40G 和 100G 长距光模块光功率诊断数值为何与光功率计实测的不一致? ​

对于 40G 和 100G 光模块, display transceiver diagnosis 命令行显示的是每个光通道的光功率,单位是 dBm。工程上通常使用光功率计来测量链路中各个位置的光功率大小,单位可以自由选择 dBm 或者 mW。

由于 40G 和 100G 长距光模块通过波分复用技术将波长为 1310nm 附近的 4 路光合并到一根光纤里传播,因此直接用光功率计测试的结果是 4 个光通道的总功率,光模块总功率等于所有通道的光功率算数和。计算光模块总功率前,需要将功率由计量单位 dBM 转化为 mW,然后再进行求和。

𝑃𝑑𝑑𝑑 dBm 与 mW 之间的转换公式为:𝑃𝑚𝑚 = 10 10。

如果各个通道的光功率相差不大,那么总功率(dBm) ≈ 每个通道的光功率(dBm) +6。

8.9.8 100G QSFP28 SR4/eSR4 光模块到底是用 8 芯跳线还是 12 芯跳线? ​

100G 短距光模块,多采用 MPO 接口,主要配合如下三种光纤连接器使用,如图 8-10。

图 8-10 MPO 连接器

图示


类型一可容纳 2 排 24 根纤芯,主要配合 100GBASE-SR10 光模块使用,常见的封装有 CXP/CFP/CFP2;

类型二可容纳 1 排 12 根纤芯,类型二可容纳 1 排 8 根纤芯,两者间的差异只是在中间位置是否有 4 根额外的纤芯。

QSFP 光模块内部光纤连接器不使用中间 4 芯,所以类型一和类型二都是可以应用于 QSFP 封装光模块的,选择类型二 8 芯的连接器可以节省了 50% 的纤芯。