讲一下IB网络的架构, infinity band

讲一下IB网络的架构, infinity band

InfiniBand(IB)和你之前了解的 RoCE 方案,本质上是两种不同的网络技术路线。
如果说 RoCE 是“在以太网上跑 RDMA”,那么 IB 就是“从底层开始,为 RDMA 而生的专用网络”。
它的架构设计目标非常纯粹:让成千上万个计算节点之间,实现像内部总线一样高效、低延迟、可预测的通信。

🏗️ 核心组件:谁在支撑 IB 网络?

IB 网络由几类基础硬件和一套独特的管理软件构成:

主机通道适配器 (HCA):这是服务器端的“网卡”,但它远比普通网卡强大。HCA 直接连接服务器的内存控制器,承担了所有 RDMA 协议处理工作,实现了内核旁路 (Kernel Bypass) 和零拷贝 (Zero-Copy)。这意味着数据可以直接从一台服务器的内存,飞到另一台服务器的内存,几乎不消耗 CPU 资源。

交换机 (Switch):IB 交换机不“思考”,它只执行子网管理器预先计算好的路由表。它根据数据包头部的本地标识符 (LID) 快速转发,本身不生成或修改数据包,这使得转发延迟极低且可预测。

子网管理器 (Subnet Manager, SM):这是 IB 网络的“大脑”。它负责发现拓扑、计算路由、配置所有设备。SM 会为每个 HCA 端口和交换机分配一个 LID,并计算出一张完整的路由表下发给交换机。为了保证高可用,通常会有备用的 SM 待命,一旦主 SM 故障,备用 SM 会接管。

🗺️ 拓扑与寻址:网络是如何“认路”的?

推荐拓扑:Fat-Tree(胖树):这是 IB 网络最经典的物理连接方式,也是 NVIDIA 推荐的 AI 集群拓扑。它的特点是逐层增加带宽,Leaf(叶子)交换机连接服务器,Spine(脊)交换机连接 Leaf,确保网络任意两点之间的带宽不会成为瓶颈(即无阻塞)。

针对 AI 的优化:Rail-Optimized(轨道优化):对于你关心的 5000 卡场景,NVIDIA 强烈建议采用 Rail-Optimized 设计。它让服务器上的每块 GPU(每条“轨道”)连接到不同的 Leaf 交换机。这样,GPU 之间的通信大部分只需要一跳就能到达对端,极大降低了延迟。

寻址方式:LID 与 GID:IB 网络内部使用 16 位的 LID 进行寻址和路由。由于 LID 只有 16 位,一个子网最多只能有约 49151 个单播地址。如果需要更大的网络,就需要用路由器把多个子网连接起来,这时就会用到类似于 IPv6 的 128 位 GID 进行跨子网通信。

🛡️ 无损与隔离:IB 如何保证“不丢包”?

IB 网络通过硬件机制来保证“无损”,这是它区别于传统以太网的关键。

基于信用的流控 (Credit-Based Flow Control):发送方在发送数据前,必须先确认接收方有足够的缓存空间(信用)。没有信用,就不发送。这从机制上杜绝了因缓存溢出导致的丢包,也避免了 TCP 网络常见的重传带来的延迟抖动。

分区隔离 (Partitioning):IB 支持用 P_Key 把物理网络划分成多个逻辑隔离的“分区”,类似于以太网中的 VLAN。不属于同一分区的节点无法通信,这提供了良好的安全隔离和资源划分能力。

🔑 管理密钥:SM 如何“指挥”全网?

SM 对网络的管理不是无条件的,它需要通过一系列 64 位的“密钥”来验证身份和权限,防止误操作或恶意攻击:

M_Key (Management Key):用于保护交换机和 HCA 的管理端口,只有持有正确 M_Key 的 SM 才能修改设备配置。

SA_Key (Subnet Administrator Key):保护子网管理操作,比如修改路由表、添加设备等敏感操作。

P_Key (Partition Key):这是分区隔离的核心,控制节点之间的通信权限。

💡 对你的启示

对于你正在规划的 RoCE 方案,理解 IB 架构能帮你建立一个清晰的“性能天花板”参照系。IB 通过专用硬件和集中式管理,把网络通信的开销压到了极致。而 RoCE 方案的优势在于复用成熟的以太网生态,但需要你在拥塞控制(PFC/ECN)和端网协同上投入更多精力来逼近 IB 的性能。

posted @ 2026-09-12 17:59  JacobJacob  阅读(59)  评论(0)    收藏  举报