0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

星脉网络深度解析:GOR全链路流量规划与拥塞控制机制

SDNLAB 来源:鹅厂网事 2024-04-06 04:44 次阅读

转载自:

作者:Rock、付博睿

前言

DCN(Data Center Network)数据中心网络是现代信息技术基础设施的重要组成部分。它提供了连接与通信的基础,支撑数据中心内外部各种应用和服务。作为一个复杂的网络系统,DCN承载着大量数据流量和通信需求,为AI、大数据、云计算等关键技术提供基础底座。

在传统DCN中,CPU被用作核心来处理复杂的计算任务和少量数据。然而,随着AI人工智能的迅速发展,GPU的重要性日益凸显。作为一种高度并行的硬件加速器,GPU非常适合处理AI所需的大量数据。AI的快速发展不仅增加了对GPU计算能力的需求,还对网络的传输和稳定性提出了新的挑战,传统的DCN已经无法满足AI大模型训练的需求。在这个背景下,传统的以CPU为核心的DCN正在向全新的以GPU为核心的星脉AI高性能网络演进升级。腾讯星脉AI高性能网络专为AI大模型而设计,提供大带宽、高利用率以及零丢包的高性能网络服务,以保障AI大模型的训练效率。星脉AI高性能网络架构如图1所示,包括:高速自研交换机、端网协同的拥塞控制+负载均衡TiTa+GOR(Global Optimized Routing)、高性能集合通信库TCCL(Tencent Collective Communication Library)以及端到端运营系统GOM(Global Optimized Monitoring)。

4f5ee1e4-f00a-11ee-a297-92fbcf53809c.png

图1.星脉AI高性能网络 在传统DCN中,我们已经广泛应用网络控制器来实现网络变更灰度和路由监控,以确保网络的稳定性,此时的控制器叫做DCN控制器1.0。然而,在星脉AI高性能网络中,由于AI大模型训练需要处理大量的数据,同时各种并行模式和加速框架也引入了海量的通信需求,因此为了保证AI大模型训练的效率,超高速且无拥塞的网络成为至关重要的前提条件。在这个背景下,我们将网络控制器进一步演进升级到DCN控制器2.0—GOR控制器。GOR是星脉AI高性能网络的关键技术之一,通过GOR控制器的精细控制,实现网络流量合理规划和动态调整,从而达到超低时延与超高带宽,保障AI大模型训练效率。

DCN控制器1.0,网络稳定性的守护者

网络变更灰度:DCN中网络设备数量多、组网复杂、流量复杂,并且单台设备承载的流量大。日常运营中经常涉及设备的维修替换,这就需要处理设备从在线到隔离再到重上线的过程。设备处于隔离状态时没有入向流量,从隔离状态转换到重上线状态过程中重新对外引流。此时如果设备有问题(硬件、配置等),影响的用户范围非常广,稳定性风险很高。因此我们在实际运营中,使用DCN控制器将少部分流量引到隔离设备上。通过观察灰度流量是否正常来判断设备是否正常。如果灰度流量有问题则快速回滚,将故障影响面控制到最小,保证网络的稳定性。

路由监控:路由监控的目标是对DCN内外网路由进行采集、监控,对不符合预期的路由进行提前告警和控制,优化路由自动管理,提前发现网络故障隐患。DCN承载的业务复杂多样,内、外网路由策略各不相同,甚至部分业务还对路由存在特殊需求,因此如何确保各种场景下海量路由的正确性,是网络运营的一个重要挑战。 在路由监控中,DCN控制器与网络设备建立BGP邻居,收集设备上的路由,按照各种功能和业务需求进行监控:功能类监控面向通用场景,支持不同维度路由查询、回溯,监控特定路由(特定大段路由、汇总路由)等;业务类监控针对具体业务,路由的产生者是业务网关,不同业务路由策略各不相同,包括主备路由监控、anycast路由监控、路由震荡监控、公网路由掩码监控以及路由来源监控等。通过多维度的路由监控,确保网络的正确性、一致性。

星脉GOR控制器(DCN控制器2.0),网络流量工程的领航员

AI网络中的数据流就好像拉力赛道上飞驰的赛车,在赛道上高速前进。但是由于赛道的宽度有限,如果一条赛道上同时有多辆赛车,那么赛车就需要降低速度来避免碰撞;AI网络中的数据流也类似,如果一条网络链路上有多条数据流,那么不同流的总和容易超过链路的最大带宽,从而出现拥塞导致流降速,最终影响AI大模型的训练效率。为了避免上述冲突,拉力赛中需要领航员规划赛车路线,避免多辆赛车同时通过赛道。此外在出现突发状况时,领航员快速调整路线避免赛车间冲突碰撞,如图2所示。在AI网络中,我们也需要类似负责规划与调度的领航员,这就是星脉网络GOR控制器。一方面GOR控制器预先规划网络中数据流路径,避免拥塞;另一方面在拥塞发生时(例如网络链路故障),GOR控制器动态调度快速消除拥塞,从而保证AI大模型的训练效率。

●AI大模型网络特征 组网复杂。AI大模型网络通常组网复杂、流量复杂。图3分别是4K卡和16K卡集群的组网抽象图。在如此复杂的网络拓扑下,多任务并行以及相应的网络流量规划和网络流量拥塞调度都面临着极大的挑战。

4f791a32-f00a-11ee-a297-92fbcf53809c.png

图3.4K、16K卡集群组网抽象图 局部负载不均。负载均衡是网络领域的经典问题。如何均衡网络流量、提高利用率、避免拥塞,从而保证业务质量是网络持续追求的目标。虽然我们的网络带宽越来越大(设备交换芯片容量从6.4T、12.8T、25.6T到51.2T),但伴随着业务的井喷式发展,服务器端侧的带宽也在快速增加(从10G、25G、100G到200G)。因此,大象流或者局部负载不均导致的网络拥塞在DCN仍然很常见,尤其在AI网络中问题更加突出。这是因为AI大模型业务特征是业务流数少,单流带宽大。这种流量模型对网络基于流Hash的负载均衡机制“并不友好”,容易造成局部热点,从而产生拥塞。 我们在现网运营中观察到很多AI网络集群并不能达到理想的负载均衡,图4是某个AI集群的网络流量分布热力图,颜色越深代表链路上流量越大,可以看到明显的负载不均。

4f878a18-f00a-11ee-a297-92fbcf53809c.png

图4. 网络链路流量分布 AI网络性能决定GPU集群算力,负载不均引起的网络拥塞会导致有效带宽降低、端侧通信时长增加,从而影响AI大模型的训练效率。我们可以采用多种指标衡量网络拥塞,例如:拥塞计数、延时、带宽占用率、缓存队列等。从图5可以看出,ECN计数突增的同时,伴随端侧计算通信时长显著增加,严重降低AI大模型训练效率、影响训练成本。

4f9264e2-f00a-11ee-a297-92fbcf53809c.png

图5.ECN计数与端侧通信时长 流量可预测。AI大模型网络流量具有高度可预测特性。从宏观角度看,一旦AI大模型训练任务启动,我们可以提前确定哪些节点之间需要进行通信,以及在何时、如何进行通信;从微观角度看,节点之间的通信数据流呈现出高度周期性的特点。图6分别是RDMA QP(Queue Pair)维度和五元组数据流维度的趋势图,可以看到无论从单个QP还是多个QP聚合的五元组数据流维度统计,流量都呈现明显的周期性。

4fabc4be-f00a-11ee-a297-92fbcf53809c.png

图6.QP、流趋势图 ●GOR控制器设计 GOR控制器包括两部分:训练任务启动前的预规划以及训练任务进行中的动态调度。预规划阶段,控制器通过结合全局网络拓扑与任务信息,为每条业务流规划最佳路径;动态调度阶段,将热点区域的数据流进行调度换路,绕开拥塞,从而保障AI大模型的训练效率。预规划的目标是尽量减少、避免网络拥塞;动态调度的目标是当拥塞发生时(例如网络链路故障),通过对相关流进行动态换路来消除拥塞。线上数据表明,通过GOR控制器的调度,网络拥塞时间缩短超过90%。 GOR控制器包括三个部分:采集、计算和调度/监控,总体控制流程如图7所示。采集阶段,GOR控制器通过分析秒级Telemetry数据找到出现拥塞的交换机端口以及业务流详情,按照一定的策略选出需要调度走的业务流。

4fc28d02-f00a-11ee-a297-92fbcf53809c.jpg

图7. GOR控制器流程 路径计算的核心诉求是结合网络实时拓扑,为上一阶段选出的每个要调度的流找到最优新路径。同时要对新路径进行容量评估,避免调度到新路径后产生新的拥塞。 调度的方法是修改流路径,具体有两种方式:下发调度路由和TCCL端侧联动。下发调度路由方式中,控制器通过向网络设备下发路由从而修改对应流路径;TCCL端侧联动方式中,控制器与TCCL联动修改流路径,最终绕开出现拥塞的交换机端口。 调度下发后,控制器对影响的训练任务流进行监控。当训练任务结束后需要撤销相应的调度路由,避免AI训练任务变化后,之前下发的调度路由对新任务产生非预期的影响。 ●GOR控制器规划、调度效果 GOR预规划的目标是避免拥塞,保证端侧通信速率,从而保障AI大模型训练效率。预规划阶段,控制器为每条数据流进行高速算路,单条路径计算时间在微秒级,万条路径计算时间小于1秒。图8所示是千卡任务预规划后的网络链路流量分布,颜色越深代表链路上流量越大,颜色相近代表链路负载均衡,与图4对比可以看到GOR预规划对网络负载均衡效果显著。预规划可以实现95%以上的业务均衡,在业务亲和情况下可以实现近100%无拥塞

4fd3789c-f00a-11ee-a297-92fbcf53809c.png

图8.预规划后网络流量分布 预规划提高网络负载均衡度,从而保证端侧通信速率。图9是AllReduce通信模型下,GPU集群针对不同Message size预规划前后的通信速率性能测试结果。可以看到GOR预规划对端侧通信速率提升明显,AllReduce性能提升近20%

4fdb49a0-f00a-11ee-a297-92fbcf53809c.png

图9.AllReduce性能对比 GOR动态调度的目标是当拥塞出现时快速消除拥塞。我们对线上某个AI网络集群的ECN告警数与告警时长持续监控一个月,如图10所示。开启GOR控制器调度后,拥塞告警数与告警时长均显著下降,告警恢复时间小于3分钟,GOR调度对网络总体的拥塞消除效果显著

4fe4dc4a-f00a-11ee-a297-92fbcf53809c.png

图10. 某AI网络集群ECN告警统计 为了更加直观展示GOR控制器调度效果,我们选取一些典型业务场景进行分析说明。图11是一个线上发生一般拥塞后,GOR控制器调度消除拥塞的效果。这种流量模型一般常见于AllReduce通信场景。从图中可以看到,GOR控制器执行调度后,交换机端口的ECN数归零,代表拥塞立即消除。

4ff4a300-f00a-11ee-a297-92fbcf53809c.png

图11. 一般拥塞链路上的GOR调度 图12是线上一个网络链路严重拥塞时GOR的调度效果。这种流量模型通常出现在多个训练任务叠加场景,以及All2All通信场景。从图中可以看到,初始ECN数值超过了10000,表明链路已经严重拥塞。在首次调度后,GOR控制器成功将拥塞链路中的最大流调度至目的链路-1,这使得拥塞链路的带宽利用率显著降低,同时ECN计数也得到一定程度缓解,降至2000左右。在GOR控制器完成告警恢复校验后,继续调度,将链路中的次大流调度至目标链路-2,从而使ECN数值进一步降至约1000左右。经过两次调度,拥塞链路的ECN数值仍然很高,GOR继续第三次调度,最终成功将ECN数值降低至500以下,从而消除了该链路的拥塞。

50009868-f00a-11ee-a297-92fbcf53809c.png

图12.严重拥塞链路上的GOR调度 图13是一台机器网卡的RDMA速率监控,可以看到GOR控制器调度后,网卡的出方向速率持续升高,最终达到预期值。

501409ac-f00a-11ee-a297-92fbcf53809c.png

图13.GOR调度对网卡出向速率的影响 AI大模型的算力基础是GPU,不同厂商异构GPU的通信模式、流量模型差异很大。GOR控制器在不同GPU集群中都可以显著消除网络拥塞,加速端侧通信速率,从而保证AI大模型训练效率。图14、图15分别所示在A、B两种GPU集群中针对不同Message size调度前后的All2All测试结果,可以看到GOR调度后效果显著,All2All性能提升30%~50%

501f6d24-f00a-11ee-a297-92fbcf53809c.jpg

图14. A厂商GPU集群调度开启前后All2All性能对比

5030e4dc-f00a-11ee-a297-92fbcf53809c.jpg

图15. B厂商GPU集群调度开启前后All2All性能对比 实际场景中,GOR控制器预规划与动态调度结合使用。图16所示在GPU集群All2All性能测试场景中,预规划提升All2All性能45%以上,显著解决负载不均问题。当网络链路故障时,性能下降约20%。检测到拥塞后,GOR控制器动态调度将性能恢复到理想水平

505e683a-f00a-11ee-a297-92fbcf53809c.png

图16. 各场景下All2All性能 ●GOR控制器业务级运营效果 除了规划和调度功能外,GOR控制器还实时监控网络中流的五元组信息,并结合业务侧的AI大模型训练任务,以提供星脉网络的业务级运营能力。业务级运营将底层网络流的五元组信息与上层的AI大模型训练任务结合起来,以便在训练任务出现问题时快速定位相应的网络流,同时结合规划和调度信息判断是否与网络有关。同样地,当检测到网络拥塞时,能够快速找到相关的训练任务信息,并判断其对业务的影响。 图17是GOR控制器对网络流五元组信息的实时监控效果,网络中任一时刻、任一条链路上的所有流的五元组信息均可以完整记录,并且可以根据某个五元组还原对应流在网络中的完整路径。

50721650-f00a-11ee-a297-92fbcf53809c.png

图17.网络流五元组信息实时监控 图18是训练任务与端侧节点的对应关系,GOR控制器通过聚合网络流的五元组信息并结合端侧和训练框架信息,还原出训练任务以及与训练任务相关的所有端侧节点信息。

507e2e9a-f00a-11ee-a297-92fbcf53809c.png

图18.训练任务与端侧节点对应关系

总结

作为现代信息技术的基础设施,DCN承载了AI、大数据、云计算等应用的海量数据流量和通信需求。尤其随着ChatGPT、Sora的出现,AI大模型引爆了新一轮算力网络需求浪潮,传统的以CPU为核心的DCN演进升级到了全新的以GPU为核心的星脉AI高性能网络。在传统DCN中,我们应用DCN控制器1.0实施网络变更灰度和路由监控来保证网络的稳定性;在星脉AI高性能网络中,DCN控制器1.0进一步演进升级到星脉GOR控制器。星脉GOR控制器通过精细控制实现网络流量合理规划和动态调整,并提供业务级运营能力,全面提升AI大模型的训练效率。

审核编辑:黄飞

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    112

    文章

    15240

    浏览量

    171245
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10453

    浏览量

    206585
  • 数据中心
    +关注

    关注

    15

    文章

    4189

    浏览量

    70121
  • AI
    AI
    +关注

    关注

    87

    文章

    26474

    浏览量

    264107
  • dcnn
    +关注

    关注

    0

    文章

    7

    浏览量

    2948

原文标题:星脉网络解密之——GOR全链路流量规划与拥塞控制

文章出处:【微信号:SDNLAB,微信公众号:SDNLAB】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    为何要进行拥塞控制?如何知道网络拥塞情况?

    大家可能都听说过拥塞控制流量控制,想必也有一些人可能还分不清拥塞控制流量控制,进而把他们当作
    的头像 发表于 11-03 11:02 6631次阅读
    为何要进行<b class='flag-5'>拥塞</b><b class='flag-5'>控制</b>?如何知道<b class='flag-5'>网络</b>的<b class='flag-5'>拥塞</b>情况?

    以太网存储网络拥塞管理连载案例(五)

    解决无损以太网网络拥塞问题的方法与光纤通道结构相同。两者都使用逐跳流量控制机制,只是实现方式不同而已。
    的头像 发表于 03-04 11:17 414次阅读
    以太网存储<b class='flag-5'>网络</b>的<b class='flag-5'>拥塞</b>管理连载案例(五)

    TCP优化之TCP/IP网络流量加速

    升速或者降低初步降速大小的优化器而言,它们可以防止最先发生的拥塞,并且通过在新流量流开始提升传输速度时预先减慢其传输速度,从而可以更好地处理威胁。  技巧2:要注意网络优先级。流量成形
    发表于 03-14 14:52

    压测一招搞定,阿里云性能测试铂金版发布

    版本的发布,就是把全局的复杂流量形态编排、串联这块的工作变成一个基于直白式交互的功能,可以让用户在压测场景构造和复现上无需编码,网页上就能编排复杂的压测业务,希望以更智能而简单的
    发表于 01-30 14:13

    基于分组对的分层组播拥塞控制机制

    分析了现有分层组播拥塞控制协议的基本原理,提出了一种基于分组对推测网络可用带宽的分层组播拥塞控制机制
    发表于 11-11 17:22 19次下载

    基于BFC模型的ATM网络拥塞控制器的设计

                为充分提高ATM网络性能,设计一个高效的拥塞控制系统是关键。自适应比特(ABR)业务
    发表于 09-15 08:24 7次下载

    一种综合的MPLS流量工程拥塞控制策略

    提出了一种综合的适合MPLS网络的主动式流量拥塞控制策略。通过仿真表明,与传统的TCP协议相比,该策略缩短了拥塞反馈时延,有效地避免了
    发表于 07-16 15:35 15次下载

    拥塞控制机制是什么意思

    拥塞控制机制是什么意思 拥塞是当多个用户竞争访问相同的资源(带宽、缓冲区和队列)时发生在共享网络上的问题。就像高速公路发
    发表于 03-18 15:01 2339次阅读

    什么是ATM流量控制拥塞控制

    什么是ATM流量控制拥塞控制 流量控制网络技术中的一个重要课题,此处以ATM网络为例对
    发表于 04-06 16:04 2655次阅读

    基于信息熵的WSN节点拥塞避免机制

    在本文中,提出了基于节点相对信息熵的拥塞避免机制,该拥塞避免机制是基于事件的有效信息量,真正体现无线传感器网络以事件为中心的特点。
    发表于 06-29 10:34 924次阅读
    基于信息熵的WSN节点<b class='flag-5'>拥塞</b>避免<b class='flag-5'>机制</b>

    因特网络拥塞控制机制的数学架构研究

    拥塞控制机制进行理论分析研究一直是因特网研究领域的热点,文中对因特网拥塞控制的基本数学架构进行了分析,勾画了一个用于因特网的分析和设计的统
    发表于 09-25 11:49 40次下载
    因特<b class='flag-5'>网络</b><b class='flag-5'>拥塞</b><b class='flag-5'>控制</b><b class='flag-5'>机制</b>的数学架构研究

    万兆网络拥塞控制和排队调度实现与优化

    研究了万兆交换网络中交换原理,对万兆交换机中性能的关键因数和瓶颈存在于缓存区中的拥塞控制和排队调度机制,基于早期的网络应用传统的
    发表于 12-21 11:34 0次下载
    万兆<b class='flag-5'>网络</b>中<b class='flag-5'>拥塞</b><b class='flag-5'>控制</b>和排队调度实现与优化

    基于数据投递概率的拥塞控制机制

    针对DTN网络数据编码分发过程中数据拥塞造成投递性能下降的问题,提出了一种基于主题数据投递概率的节点拥塞控制机制(CCM-DP)。综合考虑节
    发表于 02-27 14:55 0次下载

    防止网络拥塞现象的TCP拥塞控制算法

    为了防止网络拥塞现象,TCP提出了一系列的拥塞控制机制。最初由V.Jacobson在1988年的论文中提出的TCP的
    的头像 发表于 10-29 14:54 2189次阅读

    论TCP协议中的拥塞控制机制网络稳定性

    TCP协议中的拥塞控制机制网络稳定性的深度探讨 随着互联网的快速发展,网络流量呈现爆炸式增长,
    的头像 发表于 04-19 16:42 105次阅读