
# 网络拓扑感知调度概述
#### 概述
随着各种AI大模型的快速兴起和广泛应用，分布式AI训练/推理作业（包括数据并行、张量并行、流水线并行、专家并行、PD分离等多种模式）逐渐成为算力基础设施的核心工作负载。通常，这些作业的子任务会在多个算力节点上运行，而整个计算过程高度依赖于各子任务间的数据交换，如梯度汇聚和模型分发。此时，节点间的网络传输性能往往成为瓶颈，显著影响整体计算效率。这一问题的核心原因在于数据中心网络拓扑的复杂性（通常由多层交换机构成的层级架构）和多样性（包括IB、RoCE、NVSwitch等）。跨层级交换机的通信路径越长，延迟越高，吞吐量越低；反之，通信性能越好。因此，将通信关联性强的计算任务（如模型并行的各分片、数据并行的副本组）调度至同一高性能域（即通信链路最短、带宽最优的网络区域），可以有效降低通信成本，加快数据交换，从而显著提升分布式AI训练/推理作业的整体计算效率。
为此，Volcano提出了网络拓扑感知调度（Network Topology Aware Scheduling）能力，即通过在调度时感知集群的网络拓扑结构，将通信关系紧密的一组实例调度至同一网络性能域，有效解决了数据中心中分布式AI训练/推理作业的网络通信性能问题。
#### 多级网络拓扑
为了统一描述集群的多层级网络拓扑结构，屏蔽网络类型差异，并为调度器等上层组件提供标准化的API接口，Volcano引入了一种新的CRD，即HyperNode。如图所示，每个HyperNode代表一个网络拓扑性能域，通常可以映射到一个交换机或Top-of-Rack（Tor）；多个HyperNode可以通过层级连接，形成多级树状结构，从而精确表达真实数据中心的复杂网络拓扑结构。
![](https://support.huaweicloud.com/usermanual-cce/zh-cn_image_0000002532348510.png "点击放大")
此外，Volcano还提供了HyperNode自动发现机制。通过该机制，Volcano能够自动感知集群内的网络拓扑结构，并根据感知结果自动创建、更新或删除HyperNode，从而确保HyperNode与实际网络状态的实时一致性，同时有效减轻网络拓扑信息的管理负担。
#### 多维作业分组
在大规模AI训练/推理场景中，一个作业可能包含多个分片，每个分片又包含多个计算任务。与分片之间的通信相比，每个分片内部的网络通信性能要求更高，例如在Prefill Role和Decode Role中，角色内部的任务通信需求比角色间任务更为频繁。因此，仅在作业级别进行网络拓扑亲和调度是不够的，这不能确保分片的任务被部署在相同的网络性能域内，可能导致分片跨网络性能域部署，从而影响通信效率。
为此，Volcano在Volcano Job中引入了partitionPolicy字段，包括totalPartitions、partitionSize等配置项，用于描述和感知作业的多维分组情况。Volcano调度器将基于这些配置进行作业级和分组级的亲和调度，以尽可能将通信紧密的任务调度到同一高网络性能域，提高通信效率。
#### 多级网络拓扑调度
感知集群的多级网络拓扑结构，将通信性能要求高的工作负载统一调度至同一HyperNode，以解决网络通信性能问题。详情请参见[多级网络拓扑调度](https://support.huaweicloud.com/usermanual-cce/cce_10_1127.html)。
#### 多维多级网络拓扑调度
在多级网络拓扑调度能力之上，引入多维分组机制，可进一步将工作负载划分为多个组，每个组可独立调度至同一HyperNode，实现细粒度的拓扑亲和性调度。该能力显著提升调度灵活性，详情请参见[多维多级网络拓扑调度](https://support.huaweicloud.com/usermanual-cce/cce_10_1128.html)。
#### 多级网络拓扑装箱调度
在感知各HyperNode网络拓扑性能域的基础上，优先将工作负载调度至资源分配率高的HyperNode上，以解决HyperNode级资源碎片化问题。详情请参见[多级网络拓扑装箱调度](https://support.huaweicloud.com/usermanual-cce/cce_10_1129.html)。
#### 多维组（Gang）调度
提供Pod级、分组级和分组Pod级的三维Gang调度，以避免资源竞争导致的死锁和资源浪费。详情请参见[多维组调度（Gang）](https://support.huaweicloud.com/usermanual-cce/cce_10_1130.html)。
#### 分组Pod故障迁移
当节点宕机或网络分区等故障发生时，系统支持整组Pod的迁移，以持续满足分组的网络拓扑亲和性要求，迅速恢复作业运行。详情请参见[分组Pod故障迁移](https://support.huaweicloud.com/usermanual-cce/cce_10_1132.html)。
#### 超节点网络拓扑感知调度
在大规模AI训练和推理场景中，CCE服务支持接入超节点算力作为容器节点，以加速AI计算任务的运行。您可以使用Volcano Job方式，对相关任务进行统一调度和管理，详情请参见[超节点拓扑亲和调度](https://support.huaweicloud.com/usermanual-cce/cce_10_1131.html)。
![](https://support.huaweicloud.com/usermanual-cce/public_sys-resources/note_3.0-zh-cn.png)
[HyperJob方式](https://support.huaweicloud.com/usermanual-cce/cce_10_0982.html)即将下线，推荐您使用Volcano Job方式。
