适用场景:IB 网络链路异常、性能下降、掉包、端口 down、速率异常等故障排查。
一、基础信息检查
查看 HCA 网卡基本信息
ibstat
查看全网拓扑
ibnetdiscover
列出节点和交换机
ibhosts
ibswitches
ibnodes
二、端口状态与链路检查
查看所有端口状态
iblinkinfo
查看指定端口状态
ibportstate <lid|guid> <port_num>
重置端口
ibportstate <lid|guid> <port_num> reset
三、错误统计与性能计数器
查看指定端口错误计数
perfquery <lid|guid> <port_num>
批量获取全网错误端口
ibqueryerrors -r
抑制常见错误,仅输出重要项
ibqueryerrors -c -r
⚠️ 注意:-s
参数是需要跟一个参数的(要屏蔽哪些错误计数器)
清零计数器(排查后重置观察)
ibqueryerrors -k
四、链路质量与冗余排查
查看链路速率和宽度
iblinkinfo -r
路径连通性测试
ibtracert <src_guid> <dst_guid>
Ping 测试(逐跳)
ibping -S # 服务端
ibping -c 10 <dst_guid> # 客户端
五、深度诊断与线缆模块检查
mlxlink 检查链路物理层和 BER
mlxlink -d lid-29 -p 9 -c -m -e --cable --dump
检查链路状态(Active/LinkUp)、速率(IB-HDR 等)、FEC 纠错
查看 BER(比特错误率)是否异常
获取光模块温度、电压、Tx/Rx 光功率
ibdiagnet 全局诊断(含 PHY/线缆信息)
ibdiagnet -r --pc --get_phy_info --get_cable_info --extended_speeds all --pm_pause_time 300
采集端口计数器(pc)
获取物理层信息(phy info)
获取光模块/线缆信息(cable info)
支持 HDR/NDR 等速率,采样时间 300 秒
六、延迟与带宽测试
服务端启动(等待连接)
ib_read_lat -d mlx5_4 -i 1 -s 4096
客户端发起测试
ib_read_lat -d mlx5_4 -i 1 -s 4096 -n 100000 10.9.11.204
参数说明:
-d mlx5_4
:指定 HCA-i 1
:指定端口号-s 4096
:消息大小-n 100000
:测试次数10.9.11.204
:服务端 IP(示例)
结果可用于观察平均 RTT 延迟,判断是否存在链路抖动。
七、常见故障定位思路
端口 down / 无法建立链路
→ibportstate
+mlxlink
检查状态,确认对端在线/速率匹配。误码高 / 丢包严重
→mlxlink
查看 Raw Physical BER,过高时需更换模块或清洁线缆。掉线频繁
→ibqueryerrors
观察LinkDownedCounter
,若持续增加 → 排查光模块或 HCA。带宽或速率不足
→ibdiagnet
查看端口协商速率,是否降级(HDR 降 EDR/SDR)。延迟波动大
→ib_read_lat
测试 RTT,若大幅超标 → 检查交换机端口是否存在错误计数。