5.1 scale-out 组网与无损网络基础 在进入两大平台的具体组网之前,先理解一个反直觉的事实:AI 训练流量和普通互联网流量,对网络的要求几乎是相反的。 5.1.1 AI 训练流量的特殊性 普通互联网流量(网页、视频、文件传输)的特征是"突发、多样、可容忍延迟",传统 TCP/IP 网络为此做了大量优化,包括丢包重传——网络拥塞时丢几个包,重传就好。 但 AI 训练流量完全不是这样。它有几个让传统网络难受的特征: 同步性强:集合通信要求所有参与者同步完成,任何一台慢了,全体等待(木桶效应)。 流量巨大且集中:AllReduce 瞬间产生海量数据,把链路打满。 对丢包零容忍:一次丢包会触发重传和超时,整个集合通信被拖慢,甚至导致训练卡顿。
在进入两大平台的具体组网之前,先理解一个反直觉的事实:AI 训练流量和普通互联网流量,对网络的要求几乎是相反的。
普通互联网流量(网页、视频、文件传输)的特征是"突发、多样、可容忍延迟",传统 TCP/IP 网络为此做了大量优化,包括丢包重传——网络拥塞时丢几个包,重传就好。
但 AI 训练流量完全不是这样。它有几个让传统网络难受的特征:
普通流量: ╱╲ ╱╲ ╱╲ 突发、可丢包、可重传 ╱ ╲╱ ╲_╱ ╲_ AI 训练流量:████████████████ 同步、海量、丢一包全员等
💡 木桶效应:在几百上千卡参与的 AllReduce 里,最慢的那张卡决定了整体速度。一张卡因为网络抖动慢 10%,整轮迭代就慢 10%。这就是为什么 AI 集群对网络的"稳定性"和"低延迟"要求极高——不是追求峰值,而是追求"没有短板"。
传统以太网默认是"有损"的——网络拥塞时交换机会丢包,靠上层 TCP 重传。但对 AI 训练来说,丢包的代价太高:一次重传触发拥塞控制,窗口收缩,吞吐下降,集合通信被拖慢。
所以 AI 集群必须用无损网络(Lossless Network)——在网络层面保证不丢包,让流量稳定地、高吞吐地流动。实现无损网络需要几个关键机制协同:
| 机制 | 作用 |
|---|---|
| PFC(优先级流量控制) | 拥塞时让上游"暂停发送",而不是丢包 |
| ECN(显式拥塞通知) | 在包头上标记拥塞,通知端点降速 |
| DCQCN 等拥塞控制算法 | 端到端响应 ECN,主动调节发送速率 |
这套机制的核心思想是"用暂停和降速代替丢包"。当网络即将拥塞时,交换机通过 PFC 让上游暂停、通过 ECN 通知端点降速,从而在不丢包的前提下把流量稳定下来。
传统网络(有损): 拥塞 ──► 丢包 ──► TCP 重传 ──► 吞吐骤降、延迟抖动 无损网络: 拥塞 ──► PFC 暂停上游 + ECN 通知降速 ──► 不丢包、稳定流动
⚠️ 无损不等于没有拥塞:无损网络仍然会有拥塞,只是它用"暂停+降速"代替"丢包+重传"。代价是设计良好的拥塞控制很复杂,调参不当反而会导致"拥塞传播"(PFC 在整条链路上级联暂停)。这就是为什么 AI 集群的网络调优是一门专门的工程学问。
InfiniBand(IB)天生就是为高性能计算设计的无损网络,协议简洁、延迟低,但成本较高、生态相对封闭。为了让更普及、更经济的以太网也能跑无损,业界发展出了 RoCE(RDMA over Converged Ethernet,基于融合以太网的远程直接内存访问)。
RoCE 的核心价值是把 RDMA(Remote Direct Memory Access,远程直接内存访问)能力搬到了以太网上。RDMA 允许一台机器直接读写另一台机器的内存,绕过操作系统内核和 CPU,从而实现极低的延迟和极高的吞吐——这对 AI 集合通信至关重要。RoCE 让以太网在保留经济性和通用性的同时,获得了接近 IB 的高性能。
传统以太网通信: 应用 ──► 内核协议栈 ──► 网卡 ──► ... ──► 网卡 ──► 内核协议栈 ──► 应用 (多次内存拷贝、CPU 参与,延迟高) RDMA/RoCE 通信: 应用 ──► 网卡 ──► ... ──► 网卡 ──► 应用内存 (绕过内核、CPU 不参与,延迟极低)
💡 RoCE 的意义:它让 AI 集群可以在以太网(便宜、通用、生态广)上跑出接近 InfiniBand(贵、专用)的性能。这也是为什么现代大规模 AI 集群越来越多采用 RoCE+无损以太网,而非纯 IB——成本与性能的平衡点更优。
有了无损网络的"质量",还需要一个好的"拓扑"来组织成百上千台交换机和上万张网卡。AI 集群最常用的是 fat tree(胖树)拓扑。
fat tree 的核心思想是"上层链路更胖"——在树状拓扑里,越往上汇聚,链路带宽越大,保证任意两个叶子节点之间都有等带宽的多条路径,从而实现无阻塞。它的典型实现是 Spine-Leaf(脊叶)两纤结构:
Spine-Leaf(fat tree 两纤): Spine1 Spine2 Spine3 │ ╲ ╱ │ ╲ ╱ │ │ ╲ ╱ │ ╲ ╱ │ │ ╳ │ ╳ │ │ ╱ ╲ │ ╱ ╲ │ │ ╱ ╲ │ ╱ ╲ │ Leaf1 Leaf2 Leaf3 │ │ │ 机柜组1 机柜组2 机柜组3 任意两机柜组之间,通过任一 Spine 都有等带宽路径。
⚠️ 无阻塞的代价:fat tree 要做到真正的无阻塞,需要 Spine 和 Leaf 之间的链路数量足够多,这会消耗大量光模块和线缆(详见第 9 章)。集群规模越大,网络成本占比越高,有时甚至能达到整机成本的相当比例。这就是为什么"组网成本"是 AI 集群经济学的重要议题。
讲完这些基础,就能看懂两大平台的机柜间组网了——它们都建立在"无损网络 + fat tree"这个共同底座之上,区别只在于细节的取舍:
下一节先看 NVL72 如何在这个底座上做机柜间扩展。
本节关键词:无损网络、RoCE、PFC、ECN、RDMA、fat tree、Spine-Leaf 返回:第 5 章支柱页 下一节:5.2 NVL72 的机柜间扩展