3. 硬件与拓扑:交换机、网卡、线缆选型及典型拓扑
3.1 核心原理:硬件兼容性是混合组网的“地基”
RoCE(RDMA over Converged Ethernet)与 InfiniBand 虽然都承载 RDMA 语义,但二者在物理层、链路层和网络层存在本质差异。InfiniBand 使用专有的 IB 物理层和链路层协议,而 RoCEv2 则运行在标准以太网之上,使用 UDP/IP 封装。这意味着,没有任何一台交换机或网卡能够“原生”同时以 IB 模式和 RoCE 模式工作——硬件必须明确支持对应的端口类型和协议栈。
在混合组网中,最常见的硬件架构是“核心-汇聚-接入”三层或“Spine-Leaf”两层拓扑,其中 IB 域和 RoCE 域通过网关设备(如带有 IB 和以太网双端口的存储网关或路由器)进行协议转换。选型时必须关注以下三个核心参数:
- 网卡(HCA/NIC):IB 网卡(HCA)支持 IB 链路,RoCE 网卡(NIC)支持以太网链路。若需在同一服务器上同时访问两个网络,可选择双端口卡(一个 IB 端口 + 一个以太网端口),但二者无法复用同一物理端口。
- 交换机:IB 交换机仅支持 IB 协议;RoCE 交换机必须为无损以太网交换机(支持 PFC、ECN、DCBX)。不存在“IB+RoCE 双模”交换机。
- 线缆:IB 通常使用 QSFP 接口的有源光缆(AOC)或无源铜缆(DAC),RoCE 则使用 SFP+/QSFP28 以太网光模块或 DAC。线缆类型必须与端口匹配,且 RoCE 场景下需关注线缆的 FEC(前向纠错)能力。
3.2 方法流程:五步完成硬件选型与拓扑规划
混合组网的硬件规划应遵循“先分域、再定网关、后选线缆”的流程,避免因盲目追求“统一”而选错设备。推荐按以下步骤执行:
- 流量分类:明确哪些应用必须走 IB(如 MPI 并行计算、IB 存储协议),哪些可以走 RoCE(如分布式存储、TCP 业务)。通常建议将延迟敏感且已绑定 IB 的应用保留在 IB 域,新业务优先部署 RoCE。
- 确定网关位置:网关是混合组网的核心。常见方案是采用存储网关(如 Lustre 路由节点)或通用服务器(安装双端口 HCA + NIC),通过软件(如 rdma_cm)实现跨网桥接。不建议使用三层路由器,因其延迟过高。
- 交换机选型:IB 域选择与 HCA 速率匹配的 IB 交换机(如 NVIDIA Quantum 系列);RoCE 域必须选择支持 PFC(802.1Qbb)、ECN(802.1Qau)、DCBX 的无损以太网交换机(如 Cisco Nexus 3132Q、Arista 7060X)。
- 网卡选型:IB 服务器安装对应速率的 HCA(如 ConnectX-6 HDR);RoCE 服务器安装支持 RoCEv2 的以太网 NIC(如 ConnectX-6 Lx)。注意检查驱动版本是否支持混合模式。
- 线缆与光模块:IB 域使用 IB 专用线缆(如 HDR DAC/AOC);RoCE 域使用以太网 DAC/AOC 或光模块。务必核对线缆的 QoS 能力(如是否支持 PFC 优先级映射)。
ibstat(IB 域)和 rdma link show(RoCE 域)命令收集现有设备的端口速率、链路状态和驱动版本,形成硬件清单后再进行拓扑设计。
3.3 案例/场景:某高性能计算中心的混合组网故障
背景:某超算中心部署了 32 台 IB 计算节点(HDR 200Gb/s)和 16 台 RoCE 存储节点(100GbE),通过一台存储网关互连。故障表现为:RoCE 存储节点间进行大数据传输时,吞吐量仅为预期的 30%,且伴随大量丢包。
排查过程:
| 排查步骤 | 操作 | 发现 |
|---|---|---|
| 1. 检查 RoCE 交换机配置 | 查看 PFC/ECN 配置 | RoCE Leaf-2 交换机未启用 PFC,导致拥塞丢包 |
| 2. 检查线缆类型 | 查看 Leaf-2 到服务器-2 的线缆 | 误用了普通以太网 DAC(不支持无损特性) |
| 3. 检查网关端口 | 查看网关 IB 和 ETH 端口状态 | 网关 ETH 端口 MTU 为 1500,而 RoCE 需要 4096 |
| 4. 检查网卡驱动 | 运行 ethtool -a eth0 | RoCE 网卡未开启 PFC 优先级映射 |
根因:RoCE 交换机缺少无损配置 + 线缆不支持 PFC + 网关 MTU 不匹配,三重因素叠加导致 RoCE 流量在 Leaf-2 处拥塞丢包。
解决方案:
# 在 RoCE Leaf-2 上启用 PFC(以 Cisco 为例)
interface ethernet1/1
priority-flow-control mode on
priority-flow-control priority 3 no-drop
# 在网关 ETH 端口设置 MTU 4096
ip link set dev eth0 mtu 4096
# 在 RoCE 网卡上启用 PFC 映射
ethtool --set-priv-flags eth0 pfc on
调整后,RoCE 存储节点间吞吐量恢复至 95 Gb/s,丢包率降为 0。
3.4 误区/复盘:硬件选型中的常见陷阱
复盘要点:混合组网的硬件规划应遵循“端口类型必须匹配、无损特性必须确认、MTU 必须统一”三条铁律。在部署前,建议使用 ibping(IB 域)和 ping -M do -s 4096(RoCE 域)验证端到端连通性和 MTU 支持情况。硬件选型不是简单的“买贵的”,而是要确保每个环节的协议特性对齐,才能避免后续排障的“坑”。