基础知识:AI集群网络的基本概念与术语

在深入AI算力集群的网络拓扑与布线之前,必须先建立一套共同的语言。AI集群网络与传统数据中心网络(如企业办公网、互联网服务)有显著差异:它承载的是分布式并行训练产生的“东西向”流量,且流量模式具有高度的突发性和同步性。理解本节的核心概念,是后续分析拓扑选型与布线方案的前提。

2.1 节点(Node):算力的基本单元

在AI集群语境下,节点通常指一台参与计算的服务器,有时也特指其中的GPU或NPU加速卡。为了区分不同层级,我们常使用以下术语:

  • 计算节点(Compute Node):一台完整的服务器,包含CPU、内存、多块加速卡(如8张GPU)、网卡及本地存储。它是集群中可独立分配资源的最小单位。
  • 加速卡(Accelerator):即GPU/NPU/TPU,是执行矩阵运算的核心。在讨论网络时,我们更关心加速卡对外提供的网络接口(如NVLink、InfiniBand或RoCE端口)。
  • 逻辑节点:在分布式框架(如PyTorch DDP)中,一个“进程”常被视为一个逻辑节点,它可能对应一张GPU卡。
易混淆点:“节点”一词在不同场景下含义不同。在物理布线图中,节点指服务器;在通信库(如NCCL)的日志中,节点可能指GPU的Rank ID。阅读文档时务必先确认上下文。

2.2 交换机(Switch):流量交汇的核心

交换机是网络中的“十字路口”。AI集群中使用的交换机主要分为两类:

  • 计算网络交换机:用于连接GPU服务器,要求极高的带宽和极低的时延。典型端口速率为400Gbps或800Gbps(InfiniBand NDR/XDR或以太网800GE)。
  • 存储/管理网络交换机:用于连接存储阵列和带外管理接口,对带宽要求相对较低,通常使用25G/100G以太网。

交换机最重要的参数是端口速率与交换容量。例如,一台拥有64个400G端口的交换机,其交换容量至少为64 × 400G × 2(全双工)= 51.2Tbps。若交换容量不足,则会产生内部丢包。

2.3 链路(Link)与端口(Port)

链路是连接两个网络设备的物理通道,包括光模块、光纤/铜缆和两端接口。在AI集群中,链路质量直接决定训练效率。关键属性包括:

  • 端口速率:如400Gbps,指单向理论带宽。
  • 链路类型:直连铜缆(DAC)用于短距离(≤5米),功耗低;有源光缆(AOC)用于中等距离(≤30米);可插拔光模块+光纤用于长距离(≥30米),但成本与故障率更高。
  • 链路聚合(LAG):将多条物理链路捆绑为一条逻辑链路,但AI流量常使用ECMP或动态路由,LAG并不常用。

2.4 带宽(Bandwidth)与吞吐量(Throughput)

带宽是理论最大传输速率,而吞吐量是实际有效传输速率。两者之差即为协议开销与重传损耗。在AI集群中,我们更关注对分带宽(Bisection Bandwidth)——即将网络切成两个等大半时,跨半通信可获得的最大带宽。对分带宽越高,网络拥塞概率越低。

以典型的8卡GPU服务器为例,若每张GPU配置1张400G网卡,则单服务器对外总带宽为8 × 400G = 3.2Tbps。若集群有100台服务器,则理论上所有GPU同时通信时,网络核心需提供至少 100 × 3.2Tbps / 2 = 160Tbps 的对分带宽(按胖树拓扑计算)。

2.5 时延(Latency)的构成

时延是影响同步训练效率的第二大因素。一次网络传输的总时延可分解为:

  1. 发送端时延:网卡将数据从GPU显存搬移到网卡缓存并发出,约1-3微秒。
  2. 传播时延:光信号在光纤中传输,每米约5纳秒。10米线缆约0.05微秒,可忽略。
  3. 交换时延:交换机存储转发或直通转发引入的时延,通常为0.3-1微秒/跳。
  4. 接收端时延:网卡接收并写入GPU显存,约1-3微秒。
关键公式:端到端时延 ≈ 发送端 + 传播 + 交换跳数 × 单跳时延 + 接收端。在AI集群中,交换跳数是网络设计者最可控的变量。例如,一个三层胖树拓扑最多5跳,而一个2层脊叶拓扑最多3跳。减少2跳可节省约2微秒,对于微秒级同步操作意义重大。

2.6 关键术语速查表

术语英文缩写定义/说明AI集群中的典型值
节点Node计算服务器或GPU1台服务器=8 GPU
交换机Switch转发数据帧的设备64端口400G
链路Link物理连接通道400G DAC/AOC
带宽BW理论最大速率400Gbps/端口
对分带宽Bisection BW网络分割后的跨半带宽≥ 总带宽的50%
时延Latency数据从源到目的的时间单跳≤1μs
跳数Hop经过的交换机数量典型2-5跳
ECMPEqual-Cost Multi-Path等价多路径负载均衡基于哈希
RoCERDMA over Converged Ethernet以太网上的RDMAv2版本

2.7 核心原理:为什么AI网络需要“无损”与“低时延”?

传统TCP/IP网络在拥塞时会丢包并重传,这会导致GPU等待时间呈指数级增长。AI训练采用同步并行(如All-Reduce),所有GPU必须等待最慢的GPU完成通信才能进入下一轮迭代。因此,网络必须提供:

  • 无损传输:通过流控机制(如InfiniBand的链路级流控或RoCE的PFC优先级流控)避免丢包。
  • 低时延:减少交换跳数,使用RDMA(远程直接内存访问)绕过操作系统内核。
AI集群网络核心概念关系图 GPU服务器(节点) 8×400G 网卡 链路 交换机(Spine) 64×400G 上行 核心交换机 连接所有Spine 对分带宽 = 跨半通信最大带宽(本例:100台×3.2Tbps/2 = 160Tbps) 带宽决定吞吐量上限,时延决定同步效率 端到端时延分解(典型值) 发送端 1-3μs 传播 0.05μs 交换 0.3-1μs/跳 接收端 1-3μs 跳数越多,时延越高 → 拓扑设计需权衡规模与跳数 无损网络(PFC/ECN) • 避免丢包导致重传 • 优先级流控保证关键流量 • 适用于RoCEv2 RDMA(远程直接内存访问) • 绕过内核,零拷贝 • 网卡硬件处理传输 • 时延可低至1-2μs

2.8 案例:一个典型8卡GPU服务器的网络视图

以NVIDIA DGX A100/H100服务器为例,其内部有8张GPU,每张GPU通过PCIe或NVLink连接到一个智能网卡(SmartNIC)或CX-7 InfiniBand网卡。服务器对外提供8个400G端口,分别连接到两台架顶交换机(TOR)以实现冗余。

# 查看服务器网络配置(Linux环境)
$ ibstat | grep -E "Port|Rate|State"
Port 1: State: Active, Physical: LinkUp, Rate: 400 (Gbps)
Port 2: State: Active, Physical: LinkUp, Rate: 400 (Gbps)
...
Port 8: State: Active, Physical: LinkUp, Rate: 400 (Gbps)

# 查看路由与连通性
$ ibroute -n 1 | head -20

在训练任务中,NCCL(NVIDIA Collective Communications Library)会检测这些端口并建立通信组。若某条链路断开,NCCL会自动降级使用剩余链路,但带宽会下降,导致训练变慢。

2.9 常见误区与复盘

误区1:认为带宽越高,网络就一定越快。
实际:若时延过高或发生拥塞,高带宽也无法发挥。例如,若交换机缓冲不足,突发流量会导致丢包,触发TCP/RoCE重传,实际吞吐量可能下降50%以上。

误区2:忽略“跳数”对同步训练的影响。
实际:在All-Reduce操作中,每增加一跳,同步时间增加约1-2微秒。对于千卡集群,每轮迭代若增加10微秒,整体训练时间可能增加数小时。

误区3:混淆“端口速率”与“实际吞吐”。
实际:400G端口在RoCEv2下,由于PFC和ECN开销,实际最大有效吞吐约为380-390Gbps。设计时需预留10%余量。

2.10 本节小结