动态负载均衡:面向 AI Fabric 的自适应路由
静态哈希 ECMP 是为南北向 Web 流量而设计的,并非为 GPU 集合通信。OcNOS 动态负载均衡(DLB)以亚毫秒级间隔将 flowlet 重新分配到较不拥塞的路径上,为分布式训练工作负载弥合以太网与 InfiniBand 之间的差距。
Leaf-Spine fabric 上的自适应路由
一个承载 GPU AllReduce 流量的 4-spine、2-leaf 切片。DLB 实时测量本地 egress 队列深度。当 Spine-3 饱和时,leaf 会将下一个 flowlet 重新绑定到 Spine-2,使全部四条上行链路保持均衡。
为什么静态 ECMP 在 AI 网络中会失效
标准 ECMP 在流开始时对五元组进行哈希以选择出端口,并在该流的整个生命周期内将其固定在该端口上。对于南北向 Web 流量而言,数百万条短生命周期的流让大数定律得以在各条路径间平滑利用率。而在 AI fabric 上,你面对的却是少量的 大象流 源自 GPU 集合通信(AllReduce、AllGather、All-to-All),其中每一项都会在数秒内持续占满一整条 400G 或 800G 上行链路。两头被哈希到同一条上行链路上的“大象流”将在整个操作期间发生冲突,而另一条上行链路却处于空闲状态。
其结果是哈希极化:实测fabric利用率仅在50–60%左右且伴随随机热点,以及会拖垮整个训练任务的尾延迟异常值。DLB通过对每个flowlet(由微小的报文间间隙分隔的子流分片)重新评估路径决策来弥合这一差距,其依据是来自ASIC的实时出口队列深度和端口利用率遥测数据。
OcNOS DLB 实现
亚毫秒级间隔计时器
ASIC 原生的 flowlet 非活动定时器(典型值 16–256 µs)将长大象流切分为小块,可安全地在多条路径上喷洒(spray),而不会引起 TCP/RoCEv2 乱序。
实时队列深度反馈
DLB 从 Tomahawk 流水线获取各出端口的队列占用率与链路利用率信号,实时为每条 ECMP 下一跳评分。
自适应下一跳选择
在 flowlet 边界处,选择质量最高的成员。成员质量每隔几微秒重新计算一次,因此饱和的 spine 会在一个 flowlet 内退出候选集。
Co-tuned with PFC & ECN
DLB 与 RoCEv2 无损协议栈(PFC、ECN/DCQCN、缓冲余量计算)集成,因此 flowlet 重新绑定会在暂停帧向上游传播之前完成。
gNMI 导出
逐成员重绑定计数、flowlet 间隔分布与成员质量评分通过 gNMI dial-out 流式上报,用于闭环织构调优。
TH4 / TH5 原生
已在 Broadcom Tomahawk 4(25.6T)和 Tomahawk 5(51.2T)骨干平台上完成验证,支持 64×400G 和 64×800G 端口配置,且不会带来软件快转路径性能损失。
DLB 在生产环境 AI fabric 中带来的价值
- 更高的利用率。 业界公布的 flowlet 再平衡基准测试表明,在同一硬件上,fabric 利用率可从静态 ECMP 的约 55% 提升至 90% 以上,且无需增购上行链路。
- 更低的尾延迟。 由于不会出现单条链路饱和而其他链路闲置的情况,P99.9 集合通信完成时间得以收紧。
- 更快的训练。 减少 GPU 等待最慢 rank 的空闲时间,意味着在 AllReduce 密集型工作负载上实现可量化的实际运行时间提升。
- 无需更换 NIC。 DLB 在交换机 ASIC 中实现。现有 RoCEv2 NIC 与 xCCL (NCCL / RCCL / oneCCL) 集体通信栈无需改动代码即可获得正确的有序交付。
- 一张许可证。 DLB 是 OcNOS-DC PLUS SKU 的一部分:同一镜像、同一支持合同,无需按功能额外付费。