跳到主要内容

自适应路由

自适应路由(Adaptive Routing, AR)是一种运行时感知网络状态的动态路由策略:每个交换机在转发时实时观察各出口端口的队列深度或信用可用量,动态选择当前最不拥塞的出口。

基本原理

与 ECMP 的静态哈希不同,自适应路由让交换机在每个转发时刻主动感知网络状态:

  1. 报文到达交换机入口
  2. 查询所有候选出口端口的当前队列深度(或可用信用量)
  3. 选择队列最短(最空闲)的出口转发

感知粒度分两种:

  • 逐报文(per-packet):每个报文独立选择最优出口,负载均衡效果最好,但同一流的报文可能走不同路径,产生乱序
  • 逐 flowlet(per-flowlet):检测同一流中两段突发之间的静默间隔,超过阈值(flowlet gap)时重新选路,否则沿用旧路径;平衡了均衡性和有序性

算法细节

决策流程

报文到达

获取所有等价出口端口

读取各端口队列深度 / 可用信用

Per-Packet 模式: Per-Flowlet 模式:
选择队列最短的出口 OR 检查上次选路时间间隔
超过 flowlet_gap → 重选
否则 → 沿用旧路径

转发报文

重排序问题

逐报文 AR 是乱序的根本来源——同一流的连续报文可能走不同长度的路径,后发先至。接收端需要配备**重排序缓冲(Reorder Buffer)**才能正确处理。

InfiniBand AR 在硬件中内置了重排序保障,对上层应用透明。RoCEv2 以太网的 AR 实现则需要 NIC 或软件层处理乱序。

硬件支持

自适应路由需要交换机 ASIC 具备以下能力:

  • 实时读取各出口端口的队列深度寄存器
  • 在转发决策阶段查询并比较多个候选出口
  • 代表芯片:NVIDIA Quantum(InfiniBand)、Broadcom Tomahawk 4+、Broadcom Spectrum

性能特性

指标
有效带宽利用率85-95%
延迟稳定性好(实时避免拥塞链路)
乱序风险per-packet: 高;per-flowlet: 中
硬件复杂度高(需要专用 ASIC 支持)

在 AI 集群的集合通信场景中,AR 效果尤为显著:AllReduce/AllGather 等操作会产生周期性同步爆发(Collective Burst),这恰好是 AR 能够实时感知并疏散的流量模式。

与 ECMP 的对比

维度ECMP自适应路由
决策依据静态哈希(5 元组)实时队列深度
决策位置交换机(无状态)交换机(有状态)
负载感知无(盲目均衡)有(主动避拥塞)
报文有序性保证(同流同路)per-packet 不保证
哈希极化问题存在不存在
有效带宽利用率60-70%(AI 负载)85-95%
硬件门槛低(通用 ASIC)高(专用 ASIC)

ECMP 的优势在于零硬件门槛和完全有序;AR 的优势在于实时适应拥塞,在不均匀的 AI 流量下带宽利用率显著更高。

适用场景与局限

适用场景

  • InfiniBand 集群(硬件 AR 成熟,内置重排序)
  • 使用支持 AR 的高端以太网 ASIC 的 RoCEv2 集群
  • 流量模式不规律、需要实时响应拥塞的大规模 AI 集群
  • Dragonfly 拓扑中全局链路的拥塞管理(需与 UGAL 配合)

局限

  • 需要特定硬件(NVIDIA Quantum、Broadcom Spectrum 等),无法在通用以太网交换机上部署
  • per-packet AR 的报文乱序对 RDMA 语义有影响,需要重排序缓冲
  • Dragonfly 拓扑中自适应路由需要权衡本地链路与全局链路的拥塞状态,逻辑更复杂

业界实践

  • InfiniBand HDR/NDR:NVIDIA Quantum 交换机的硬件级 AR,与 SHARP 网内规约协同工作,是 AI 集群的主流方案
  • RoCEv2 以太网:NVIDIA Spectrum-4、Broadcom Tomahawk 4+ 等芯片支持 AR,但乱序处理需要软件配合
  • Meta 24K GPU 集群:在 RoCEv2 集群中使用 E-ECMP(非 AR),因为 AR 硬件当时不够普及;NCCLX 中通过 DQPLB 限制在途数据量来间接缓解拥塞

参考资料