RDMA 互连状态与带宽检查
跨机多卡部署依赖 RDMA(InfiniBand 或 RoCE)互连:上线前用状态查询工具核对端口状态与协商速率,再用带宽测试工具做一次基线测量,避免通信链路悄悄成为瓶颈。链路降级通常不会报错,只能通过状态字段与实测带宽发现。
基本信息
| 状态工具 | ibstat、ibv_devinfo 查看端口状态、速率、链路层与固件 |
|---|---|
| 带宽工具 | perftest 套件中的写带宽测试,一端服务一端作客户端 |
| 关注字段 | 端口状态、协商速率、链路层类型、错误计数 |
| RoCE 额外项 | 网络侧的无损转发相关配置 |
| 例行巡检 | 把端口状态纳入巡检项,比故障后再查更早发现问题 |
典型使用场景
- 多机部署验收:装机后先测一遍带宽基线并留档
- 吞吐不达预期:先排除通信链路,再怀疑模型与并行配置
- 例行巡检:定期核对端口状态与速率,发现降级先于故障
- 网络变更后复测:换交换机、换网卡或调整布线后重新测
- 故障排查:端口状态异常时快速定位到具体网口
端口状态与设备信息
端口状态与设备信息
ibstat # 端口状态、速率、链路层
ibv_devinfo -v | head -40 # 设备与固件信息
# 核对:端口状态是否为活动、协商速率是否符合预期带宽基线(两台机器分别执行)
带宽基线(两台机器分别执行)
# 服务端:指定要测的网卡设备
ib_write_bw -d mlx5_0
# 客户端:指定同一设备并填服务端地址
ib_write_bw -d mlx5_0 <服务端IP>
# 校验:把实测带宽与链路标称对比,明显偏低先查速率协商检查项与正常表现
| 检查项 | 怎么看 | 异常表现 |
|---|---|---|
| 端口状态 | 状态查询的第一个字段 | 非活动或反复切换 |
| 协商速率 | 速率字段与标称对比 | 低于链路标称,说明协商降级 |
| 链路层 | 确认走的是哪种链路类型 | 与预期不一致 |
| 实测带宽 | 带宽测试客户端输出 | 明显低于理论值 |
RoCE 场景还要关注网络侧的无损转发相关配置:链路状态正常并不代表端到端不丢包,需要结合交换机侧配置一起验证。
实测带宽要与链路标称对照:明显偏低时先查速率协商与交换机端口配置,再看两端 MTU 与固件差异。