对于光模块故障问题的排查,首先要明确故障现象,常见的故障有光模块无法识别、上报非我司光模块、无法读取光模块告警和光功率、端口无法UP、端口频繁UPDOWN、端口下有大量CRC等。对于光模块无法识别问题,需要先确认I2C/MDIO通信是否正常,再确认当前的软件版本是否支持该类型的模块;对于上报非我司光模块问题,需要检查光模块的品牌是否为H3C,然后再判断模块是否为伪造光模块,最后通过多次插拔操作,看是否是接口连接问题;对于无法读取光模块告警和光功率问题,首先判断模块是否为伪造光模块,然后通过多次插拔操作,看是否是接口连接问题;对于端口无法UP问题,首先检查光纤、两端的光模块是否匹配,再检查光模块的收发光功率是否在正常范围之内,并通过强制双工/速率、插拔模块、shutdown/undo shutdown端口等操作尝试是否能恢复;对于端口频繁UPDOWN、端口下有大量CRC问题,同样需要检查光模块的收发光功率以及执行强制双工/速率、插拔模块、shutdown/undo shutdown端口操作尝试恢复故障,如果无法恢复,则需要进行光模块、端口的交叉替换测试,并收集相关的故障信息反馈分析。
二、流程相关操作说明:
1. 检查光模块是否能够正常识别
通过display transceiver interface命令可以显示可插拔模块的主要特征参数,如果光模块无法识别,会提示UNKNOWN字样。
<H3C>display transceiver interface
Ten-GigabitEthernet1/8/0/1 transceiver information:
Transceiver Type : UNKNOWN_XFP
Connector Type : UNKNOWN
Wavelength(nm) : UNKNOWN
Transfer Distance(km) : 92(SMF)
Digital Diagnostic Monitoring : YES
Vendor Name : vF1-
2. 检查I2C/MDIO通信是否正常
设备访问光模块是通过I2C/MDIO总线访问的,如果光模块无法正常识别,需要确认I2C/MDIO通信是否正常。具体方法为通过display transceiver alarm interface去读取光模块告警和诊断。该命令用于显示可插拔模块的当前故障告警信息,会实时读取光模块内告警寄存器位,所以排查I2C/MDIO通信是否挂住时可以使用此命令做一个初步判断,如果挂住或异常会提示reading failed字样,表示可能I2C/MDIO通信不正常;反之如果可以正常读取告警信息,一般通信是正常的。
[H3C] display transceiver alarm interface ten1/0/3
Reading information from the transceiver failed.
3. 确认软件版本对该模块类型的支持情况
软件版本说明书中,对于当前版本能够支持的光模块类型有相应的描述:
接口线缆介质类型及最大传输距离 |
说明:光模块型号上的-A/-D/-*没有明确的特殊含义,在产品层面,它们只是一个区分位,以便使用不同的BOM编码来表示。该后缀不作为光模块参数是否一致的判断依据,各个模块具体参数请查阅官网上的《H3C光模块手册》。
4、更换/升级软件版本
如果当前版本的版本说明书中没有支持对应的模块类型,那么需要确认在新版本中是否能够支持。如果新版本可以支持,则需要对设备版本进行升级。
5、检查是否上报非我司光模块
当光模块插入设备时,会上报光模块非H3C销售的log日志信息,具体告警信息如下:
%Mar 22 15:24:34:693 2017 COFCO-F4_DC_AS_S10506-N12 OPTMOD/4/PHONY_MODULE: -MDC=1-Chassis=1-Slot=0; FortyGigE1/0/0/34: This transceiver is NOT sold by H3C. H3C therefore shall NOT guarantee the normal function of the device or assume the maintenance responsibility thereof!
6、检查是否为我司品牌光模块
根据光模块上的标签判断是否为H3C认证光模块。
7、更换为我司模块
更换为H3C光模块,并确认当前软件版本可以支持此类型的光模块。
8、检查是否能正常读取光模块告警和光功率
检查通过display transceiver alarm interface和display transceiver diagnosis interface命令是否能正常读取光模块告警和光功率。同时,可以通过查看光模块告警信息来确认是本端问题还是光纤或者对端问题。
<H3C>display transceiver alarm interface GigabitEthernet 2/0/1
GigabitEthernet2/0/1 transceiver current alarm information:
TX fault
PCS receive local fault
Alarm信息中如果存在接收有问题那一般是对端或者光纤问题当然也包括排查中断传输设备(如果有传输设备),而如果是发送或者电流电压那就需要排查本端。各类光模块alarm信息如下:
字段 | 说明 |
SFP/SFP+ | |
RX loss of signal | 接收信号丢失 |
TX fault | 发送错误 |
RX power high | 接收光功率高 |
RX power low | 接收光功率低 |
TX power high | 发送光功率高 |
TX power low | 发送光功率低 |
TX bias high | 偏置电流高 |
TX bias low | 偏置电流低 |
Temp high | 温度高 |
Temp low | 温度低 |
Voltage high | 电压高 |
Voltage low | 电压低 |
Transceiver info I/O error | 模块读写错误 |
Transceiver info checksum error | 模块信息校验和错误 |
Transceiver type and port configuration mismatch | 模块类型和端口配置不匹配 |
Transceiver type not supported by port hardware | 端口不支持该模块类型 |
XFP | |
RX loss of signal | 接收信号丢失 |
RX not ready | 接收状态未就绪 |
RX CDR loss of lock | RX CDR时钟失锁 |
TX fault | 发送错误 |
TX not ready | 发送状态未就绪 |
TX CDR loss of lock | TX CDR时钟失锁 |
Module not ready | 模块状态未就绪 |
APD supply fault | APD错误 |
TEC fault | TEC错误 |
Wavelength unlocked | 光信号波长失锁 |
RX power high | 接收光功率高 |
RX power low | 接收光功率低 |
TX power high | 发送光功率高 |
TX power low | 发送光功率低 |
TX bias high | 偏置电流高 |
TX bias low | 偏置电流低 |
Temp high | 温度高 |
Temp low | 温度低 |
Voltage high | 电压高 |
Voltage low | 电压低 |
Transceiver info I/O error | 模块读写错误 |
Transceiver info checksum error | 模块信息校验和错误 |
Transceiver type and port configuration mismatch | 模块类型和端口配置不匹配 |
Transceiver type not supported by port hardware | 端口不支持该模块类型 |
XENPAK | |
Receive optical power fault | 接收光功率错误 |
PMA/PMD receiver local fault | PMA/PMD接收器本地错误 |
PCS receive local fault | PCS接收器本地错误 |
PHY XS receive local fault | PHY XS接收本地错误 |
TX fault (注:Transmitter fault) | 发送器错误 |
Laser bias current fault | 激光器偏置电流错误 |
Laser output power fault | 激光器输出光功率错误 |
PMA/PMD transmitter local fault | PMA/PMD发送器本地错误 |
PCS transmit local fault | PCS发送本地错误 |
PHY XS transmit local fault | PHY XS发送本地错误 |
WIS local fault | WIS本地错误 |
Laser temperature fault | 激光器温度错误 |
RX power high | 接收光功率高 |
RX power low | 接收光功率低 |
TX power high | 发送光功率高 |
TX power low | 发送光功率低 |
TX bias high | 偏置电流高 |
TX bias low | 偏置电流低 |
Temp high | 温度高 |
Temp low | 温度低 |
Transceiver info I/O error | 模块读写错误 |
Transceiver info checksum error | 模块信息校验和错误 |
Transceiver type and port configuration mismatch | 模块类型和端口配置不匹配 |
Transceiver type not supported by port hardware | 端口不支持该模块类型 |
9、检查是否为伪造光模块
通常情况下,可以直接使用debug port info chassis XX slot YY 0 PortNo 0命令来初步判断是否是伪造H3C的模块:
szOrigManu = UNKNOWN
szVendorName = H3C
szPartNumber = SFP-10G-SR
szRev = A
szSn = HCB1601090062
szProductDate = 16-01-09
bTailored = TURE
bCtmCurDiagParaShw = FALSE
bCtmAlmTHShw = FALSE
cMaxTXPowerI = 0xffffffff
ucMaxTXPowerD = 0x0
cMinTXPowerI = 0xfffffff9
ucMinTXPowerD = 0x3
cMinRXPowerI = 0xfffffff9
ucMinRXPowerD = 0x5
cMaxRXPowerI = 0xffffffff
ucMaxRXPowerD = 0x0
bNewTailored = TURE
szEtagSN = 210231A0A6N146000001
szEtagDate = 20140601
szEtagBOM =
H3C的模块原始厂家(szOrigManu)一般情况下应该是Finisar/WTD/Innolight/ AVAGO等等这些模块,不会出现UNKNOWN或者直接写成H3C的情况。厂家型号(szPartNumber)不会出现类似这种SFP-10G-SR,也不会是H3C官网上SFP-XG-SX-MM850-A这种型号。正常情况下是有具体的型号的,大多数是以-H3C结尾的。如果能把电子标签伪造出来的,应该是已经知道了H3C的加密算法,可以请H3C供应链同事反查这个条码(szEtagSN),和szSn对照,如果对应就是没问题的,不对应就是假的。
正常情况下H3C的模块信息如下:
szOrigManu = WTD
szVendorName = H3C
szPartNumber = RTXM191-404-H3C
szRev = 3.0
szSn = EC140300450019
szProductDate = 14-01-21
bTailored = TURE
bCtmCurDiagParaShw = FALSE
bCtmAlmTHShw = FALSE
cMaxTXPowerI = 0xfffffffd
ucMaxTXPowerD = 0x0
cMinTXPowerI = 0xfffffff7
ucMinTXPowerD = 0x5
cMinRXPowerI = 0xffffffed
ucMinRXPowerD = 0x0
cMaxRXPowerI = 0xfffffffd
ucMaxRXPowerD = 0x0
bNewTailored = TURE
szEtagSN = 210231A0BYN145000010
szEtagDate = 20140515
10、多次插拔是否能够恢复正常
在光模块刚插入时,系统会去判断一下光模块是否是伪光模块,如果是伪光模块,后面不再进行插拔的话,每隔一段时间就会打印一次告警。如果多次插拔后能够恢复正常,那么很有可能是第一次检测到光模块插入时,读取到的寄存器信息认为不是我司定制光模块,但后续再访问又能正常识别为我司定制光模块。
11、检查接口、模块金手指
检查接口内是否有异物,光模块的金手指是否被污染、是否有明显氧化迹象。

12、检查端口是否能正常UP
通过display interface、观察面板指示灯,确认端口是否能正常UP。
Ten-GigabitEthernet1/0/29
Current state: UP
Line protocol state: UP
………………
Input (total): 8630250229 packets, 9747272605488 bytes
8616483500 unicasts, 9198192 broadcasts, 2213872 multicasts, 0 pauses
Input (normal): 8627895564 packets, - bytes
8616483500 unicasts, 9198192 broadcasts, 2213872 multicasts, 0 pauses
13、光纤/光模块匹配
对于光口需要排查两端光模块类型以及光纤是否匹配。
根据display transceiver interface中的Transceiver Type 信息查看光模块类型,与对端光模块类型是否匹配。如果对端使用SFP光模块,本端使用SFP+光模块,那么接口是无法UP的。本端是SFP的光模块,对端也必须是SFP的模块,如果对端是SFP+的模块,那么是对接不成功的。需要注意的是由于SFP+(10GE)与SFP(1GE)外形一样,所以需要注意两者不要混用。
根据display transceiver interface中的Transfer Distance信息查看光模块的传输距离,根据当前所使用的光纤类型,判断长度是否在光模块支持的传输距离范围内。如果是多模模块,应该使用多模光纤;单模模块,使用单模光纤。多模和多模的判断可以看光纤表皮的标识,一般也可以通过颜色来简单判断,单模用黄色表皮,多模光纤一般用橙色的。
14、更换光纤/光模块
两端光模块需要匹配,有一点需要注意由于SFP+(10GE)与SFP(1GE)外形一样所以需要注意两者不要混用。确定光模块和光纤不匹配后,请更换成正确的型号。
另外,不同类型的模块,光纤不同等级对应不同的传输距离,可以参考下表:
类型 | 等级 | 规格μm | 1G以太网1GBASE-LX | 10G以太网10GBASE-S | 40/100G |
多模 | OM1 | 62.5/125 | 550m | 33m |
|
OM2 | 50/125 | 550m | 82m |
| |
OM3 | 50/125 | 550m | 300m | 100m | |
OM4 | 50/125 |
| 550m | 150m | |
单模 | OS1 | 9/125 |
| 2km(1310mm、1510mm) |
|
OS2零水峰 | 9/125 |
| 10km(1310mm) 40km(1510mm) |
|
15、端口频繁UPDOWN/CRC
通过查看设备log信息,查看是否存在端口平凡UPDOWN的情况:
通过display interface命令查看端口下是否存在CRC错误包统计,并不断增长:
%Mar 28 14:24:22:423 2017 B6FD01S04 IFNET/3/LINK_UPDOWN: GigabitEthernet1/0/19 link status is DOWN.
%Mar 28 14:24:24:099 2017 B6FD01S04 IFNET/3/LINK_UPDOWN: GigabitEthernet1/0/19 link status is UP.
%Mar 28 14:30:22:458 2017 B6FD01S04 IFNET/3/LINK_UPDOWN: GigabitEthernet1/0/19 link status is DOWN.
%Mar 28 16:24:05:931 2017 B6FD01S04 IFNET/3/LINK_UPDOWN: GigabitEthernet1/0/19 link status is DOWN.
%Mar 28 16:24:07:553 2017 B6FD01S04 IFNET/3/LINK_UPDOWN: GigabitEthernet1/0/19 link status is UP.
Ten-GigabitEthernet1/0/29
Current state: UP
Line protocol state: UP
………………
Input (total): 8630250229 packets, 9747272605488 bytes
8616483500 unicasts, 9198192 broadcasts, 2213872 multicasts, 0 pauses
Input (normal): 8627895564 packets, - bytes
8616483500 unicasts, 9198192 broadcasts, 2213872 multicasts, 0 pauses
Input: 2360269 input errors, 0 runts, 0 giants, 0 throttles
2360269 CRC, 0 frame, - overruns, 0 aborts
- ignored, - parity errors
Output (total): 3480269135 packets, 387136705819 bytes
3479465448 unicasts, 123944 broadcasts, 679743 multicasts, 0 pauses
Output (normal): 3480269135 packets, - bytes
3479465448 unicasts, 123944 broadcasts, 679743 multicasts, 0 pauses
Output: 0 output errors, - underruns, - buffer failures
0 aborts, 0 deferred, 0 collisions, 0 late collisions
0 lost carrier, - no carrier
16、收发光功率正常
通过display transceiver diagnosis interface命令检查本端和对端模块诊断光功率是否在正常范围内,多次读取看看是否有波动。关于光模块收发光功率的正常范围,可以在《H3C光模块手册》中相应的光模块属性部分查询:
对外型号 | 中心波长(nm) | Fiber Mode | 光纤直径(µm) | 模式带宽(MHz*km) | 传输距离 | 传输速率 | 接口指标(dBm) | |
输出光功率 | 接收光功率 | |||||||
SFP-XG-SX-MM850-A | 850 | MMF | 50/125 | 2000 | 300m | 10.31Gbps | -7.3~-1 | -9.9~+0.5 |
注:光纤链路衰减参考:
多模光纤:3.5dB/km @ 850nm
单模光纤:0.35dB/km @ 1310nm
0.15dB/km @ 1550nm
17、替换光纤/光模块
通过查看两端光功率情况,如果本端收光低,对端发光低,那么更换对端光模块测试;
如果本端收光低,对端发光正常,怀疑是光纤异常,更换光纤测试,如果中间有传输设备,那么也排查一下传输设备是否有问题;如果本端发光低,那么更换本端光模块测试。
18、强制双工/速率
在接口下通过speed和duplex命令修改速率和双工配置。
interface GigabitEthernet2/0/1
port link-mode route
duplex full
speed 1000
19、操作光模块/光纤/端口
按顺序操作:插拔光纤/shutdown & undo shutdown端口/插拔光模块,依次观察在每一步操作之后是否可以恢复。
20、光模块/端口交叉替换测试
交叉正常的同类型光模块到嫌疑端口测试,交叉嫌疑模块到正常端口进行测试,初步判断是端口问题还是个例模块问题,或者是光纤链路的问题(包括光纤、跳线架、分光器、熔纤点以及波分传输等中间设备)。
如果两端设备之间经过传输或波分等中间设备,那么测试时需要跳过中间设备,观察接口是否能UP,以此判断是否为中间设备有问题;
如果更换光纤、跳线架后接口能正常UP,说明是光纤链路存在问题;
如果更换本端光模块后接口能正常UP,说明是本端光模块存在问题;
如果更换对端光模块后接口能正常UP,说明是对端光模块存在问题;
如果相同的光模块更换到其他接口后能正常UP,说明是接口存在问题。
在进行交叉替换测试时,优先考虑更换光模块、光纤,如果有中间设备,尝试跳过这些设备后再做对接测试,最后再通过更换端口和设备,来判断故障是否与特性设备、端口强相关。
21、收集相关信息
1) 拍摄光模块照片传回,主要是标签面;

2) 收集光模块信息;
display transceiver alarm interface [ interface-type interface-number ]
display transceiver diagnosis interface [ interface-type interface-number ]
display transceiver manuinfo interface [ interface-type interface-number ]
display transceiver interface [ interface-type interface-number ]
3) (V5-hidecmd或V7-Probe视图下)收集底层端口信息;
debug port linkstatus chassis ChassisID slot SlotID 0 PortID 0
debug port link-diag chassis ChassisID slot SlotID 0 PortID 0
debug port map chassis ChassisID slot SlotID
其中ChassisID为框号,SlotID为槽位号,PortID为端口号。
4) (V5-hidecmd或V7-Probe视图下)收集debug port info chassis XX slot YY信息;
5) (V5-hidecmd或V7-Probe视图下)收集local logbuffer chassis XX slot YY display信息;
6) 输入display diagnostic-information收集diag文件;
<H3C>display diagnostic-information
Save or display diagnostic information (Y=save, N=display)? [Y/N]:y
7) 输入 logfile save,dir找到logfile文件夹,cd进这个文件夹,把里面的文件都导出来;
<H3C>logfile save
Saved the log file buffer to file flash:/logfile/logfile.log successfully.
8) 光模块寄存器信息收集;
每条命令连续执行两次,端口号请填充为现场端口号。
注:
(1) V5设备进入hidecmd视图方法:
<H3C>system-view
System View: return to User View with Ctrl+Z.
[H3C]_h
Now you enter a hidden command view for developer"s testing, some commands may
affect operation by wrong use, please carefully use it with our engineer"s
direction.
[H3C-hidecmd]
V7设备进入Probe视图方法:
<H3C>system-view
System View: return to User View with Ctrl+Z.
[H3C]probe
[H3C-probe]
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作