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

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

3天内不再提示

ECN如何在HPC和数据中心中应对网络拥塞

星融元Asterfusion 2025-09-26 14:53 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

网络通信中,拥塞是一个常见的问题,尤其是在高负载时期或网络拓扑结构不完善的情况下。传统的拥塞控制方法主要通过丢包来指示网络拥塞,当路由器的缓冲区满时,会丢弃数据包,发送方通过检测丢失的数据包来进行拥塞控制。然而,丢包会导致重传,增加网络负担,降低网络性能。

ECN(Explicit Congestion Notification)是一种改进后的拥塞控制方法,它不依赖于丢包来指示拥塞,而是在数据包的头部标记拥塞发生的信号。ECN通过向数据包的 IP 头部添加一个特殊的标记位告知发送方网络发生了拥塞。

ECN的工作原理

ECN 的工作原理可以分为三个主要阶段:标记、回传、响应。

标记(第一阶段):当路由器的缓冲区开始出现拥塞时,它会检查传入的数据包。如果缓冲区超过了某个阈值,路由器会修改数据包的 IP 头部,在其中设置 ECN 位,表示网络出现了拥塞。

回传(第二阶段):标记了 ECN 位的数据包继续在网络中传输,它们不会被丢弃。这使得接收方能够收到所有数据包,无需等待重传。

响应(第三阶段):接收方收到带有 ECN 标记的数据包后,会向发送方发送一条特殊的通知(CNP),告知发送方网络发生了拥塞。发送方收到通知后,会根据接收方的指示适当调整发送速率,以降低网络拥塞的程度。

通过这种方式,ECN 可以更及时地指示网络拥塞,并且避免了丢包带来的额外开销,从而提高了网络的性能和效率。

ECN在网络层的实现

ECN在IP头部中需要2个比特位来承载信息,它在IPv4位于IP头部TOS字段中,示意图如下:

wKgZPGjWNcqAfmHaAAEW0xc5a2o479.png

(Differentiated Services Field (区分服务领域):DS Field的两个部分DSCP和CU组合成一个可扩展性相对较强的方法以此来保证IP的服务质量。)

ECN在 IPv4 和 IPv6 头部中的位置和功能是类似的,但由于两者头部结构不同,其具体位置也存在差异。如下表:

特性维度IPv4IPv6
​头部结构​可变长度头部(通常20字节,可带选项)固定40字节基本头部,扩展功能通过扩展头部实现
​ECN字段位置​重新定义的 ​ToS(服务类型)字节的后2位(第7-8位)​Traffic Class(流量类别)字节的后2位(第7-8位)
​ECN字段大小​2比特2比特
​ECN码点含义​00: Non-ECT (不支持ECN)
01: ECT(1) (支持ECN)
10: ECT(0) (支持ECN)
11: CE (经历拥塞)
00: Non-ECT (不支持ECN)
01: ECT(1) (支持ECN)
10: ECT(0) (支持ECN)
11: CE (经历拥塞)
​所属字段​该8位字段前6位为DS(差分服务)字段,后2位为ECN字段​(如图)该8位字段前6位为Traffic Class字段,后2位为ECN字段​

支持ECN的标识

支持ECN的发送端(如服务器)在发出IP数据包时,会将其IP头部的ECN字段设置为 ECT(0)或 ECT(1)。这相当于向网络宣告:“我这个数据包是可以被ECN标记的,如果遇到拥塞,请标记我,不要丢弃我。”

拥塞标记

当支持ECN的网络设备(如路由器、交换机)检测到其缓冲区队列开始出现拥塞(但尚未满到需要丢包的程度)时,它会检查正在通过的数据包的ECN字段。如果该字段是 ECT(0)或 ECT(1),设备就会将其修改成 CE (11)。这个动作是ECN的核心—显式拥塞通知。

信息回传

接收端收到带有 CE 标记的数据包后,会通过其传输层协议(如 TCP ACK 包中的 ECN-Echo 标志位)通知发送端。发送端接到通知后,便会像检测到丢包一样降低发送速率,从而缓解拥塞。

ECN在传输层的实现

TCP

ECN在传输层的实现,是其发挥“端到端”拥塞控制作用的关键一环。在数据传输前,发送方和接收方必须通过三次握手 (Three-Way Handshake) 建立一个稳定的连接。TCP协议负责接收来自网络层(IP)的拥塞信号,并将其反馈给发送方,最终触发发送方的速率调整。

TCP 通过其首部中的两个标志位来实现 ECN 功能。

wKgZPGjWNqmAGR3MAAEtXpmtqDI626.png

这2位有4种可能组合,每种组合被称为码点

CWRECE码点发送自目标
100Non-ECN set up任意任意
201ECN Echo接收方发送方
310Congestion window reduced发送方接收方
411ECN Setup发送方接收方
  • ECE (ECN-Echo):用于接收方向发送方回显拥塞通知。当接收方收到一个被网络设备标记为拥塞体验(CE)的数据包时(接上一节内容),它会在后续返回的 ACK 包中设置 ECE=1,以此通知发送方网络发生了拥塞。
  • CWR (Congestion Window Reduced):用于发送方向接收方确认已降低发送速率。当发送方收到一个 ECE=1 的 ACK 包并做出降速响应后,它会在下一个数据包中设置 CWR=1,以此告知接收方:“我已收到拥塞通知并已采取行动”。

UDP

UDP也是网络中传输层的一个核心协议,那么它和TCP的区别又是什么呢?

特性UDP (用户数据报协议)TCP (传输控制协议)
​连接性​​无连接​
发送数据前无需建立连接,直接发送。
​面向连接​
通信前需通过“三次握手”建立可靠连接。
​可靠性​​不可靠​
不保证数据包顺序、不重传丢失或出错包。
​可靠​
通过确认、重传等机制确保数据正确有序送达。
​控制机制​无流量控制、无拥塞控制。有复杂的流量控制和拥塞控制机制(如滑动窗口)。
​数据单元​​面向报文​
应用层交给UDP多长的报文,UDP就发送多长。
​面向字节流​
将数据视为无结构的字节流进行传输。
​速度开销​​传输速度快​
头部开销小(固定8字节),延迟低。
相对较慢
头部开销大(最小20字节),延迟较高。
​适用场景​实时应用:音视频通话、直播、在线游戏、DNS查询等。可靠性要求高的应用:文件传输、网页浏览、邮件等。
wKgZPGjWNvuABcJcAACDIy1UNn4950.png

UDP 本身是无连接、无状态的协议,不像 TCP 那样有复杂的确认和重传机制。因此,ECN 在 UDP 中的实现方式与 TCP 不同,通常需要应用程序的更多参与或依赖配套的反馈协议。

发送方(应用程序)需要通过特定的 API(如 IP_ECNsocket 选项)来检测路径是否支持 ECN,并在发出的 UDP 数据包的 IP 头部设置 ECT 码点(ECT(0) 或 ECT(1)),表明该数据包支持 ECN。

当支持 ECN 的网络设备将 UDP 数据包标记为 CE 后,接收方需要检测到这一标记。由于 UDP 没有类似 TCP 的 ACK 机制,接收方需要生成一个专门的 CNP (Congestion Notification Packet, 拥塞通知报文),CNP报文内部会携带引发拥塞的原始数据流的关键信息(源和目标IP地址、传输层端口号、拥塞程度信息、QP(Queue Pair)信息),并将其发送回源发送方。发送方在收到 CNP 后,需要主动降低数据发送速率。

wKgZPGjWN9GAevvzAAB4GeEolDM007.png

ECN在RDMA中的实现方式

在高性能计算和数据中心环境中,RoCEv2 也广泛使用 ECN。其实现方式与 UDP 类似,因为 RoCEv2 运行在 UDP 之上。

支持 ECN 的交换机在检测到拥塞时,会标记 RoCEv2 数据包的 IP 头 ECN 字段为 CE。接收端网卡生成专门的 CNP(拥塞通知报文),其中包含导致拥塞的流量源信息,CNP 被发送回引发拥塞的发送端主机,发送端主机收到 CNP 后,会根据DCQCN(数据中心量化拥塞通知) 等算法调整相应数据流的发送速率

智算中心的硬件核心在于为 RoCEv2提供稳定、高性能的无损网络环境。这不仅需要网卡支持,更需要交换机的深度配合。CX-N系列数据中心交换机通过其超低时延、无损网络技术、对大容量缓存的优化、高级遥测功能以及对自动化运维的支持,为DCQCN协议在AI计算、高性能计算等场景中的高效、稳定运行提供了坚实的硬件基础。

wKgZO2jHi6uAW31NAAPH9niMZ4o418.png

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

    关注

    16

    文章

    5546

    浏览量

    74709
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    透视数据中心中的25G、50G和100G技术

    企业和云级网络数据中心中各种“G”比比皆是,是时候搞清楚他们的性能了。
    发表于 12-18 09:52 2239次阅读

    适用于数据中心和AI时代的800G网络

    数据中心依赖数千甚至上万个GPU集群进行高性能计算,对带宽、延迟和数据交换效率提出极高要求。 AI云:以生成式AI为核心的云平台,为多租户环境提供推理服务。这类数据中心要求网络
    发表于 03-25 17:35

    PCIe协议分析仪在数据中心中有何作用?

    调度不合理、硬件限制),指导优化拓扑结构或升级硬件(如从Gen4升级至Gen5)。 流量调度与QoS优化 场景:多租户数据中心中,不同业务(如HPC、AI、存储)共享PCIe资源,需避免低优先级流量
    发表于 07-29 15:02

    透视数据中心中的25G/50G和100G技术看完你就懂了

    透视数据中心中的25G/50G和100G技术看完你就懂了
    发表于 05-20 06:41

    数据中心太耗电怎么办

    !》,原文作者:启明 。一、3 年电费消耗,可再建造一个数据中心!1.1 科技驱动,推动数据中心市场持续高速发展国际惯例,先介(bai)绍(du)一(bai)下(ke)“数据中心”:数据中心
    发表于 06-30 06:27

    数据中心是什么

    数据中心是什么:数据中心是全球协作的特定设备网络,用来在因特网络基础设施上传递、加速、展示、计算、存储数据信息。
    发表于 07-12 07:10

    数据中心网络进行监控和管理如何操作

    数据中心网络进行监控和管理如何操作 任何数据中心中最重要的任务之一都是对网络设备,服务器和数据中心本身的监控。企业通常
    发表于 01-21 12:01 582次阅读

    数据中心中网络拥塞的危害及其疏散方法的介绍

    数据中心应用的不断增加和用户数量的迅速增长,使得数据中心正面临着一个严重的性能问题,而其中尤为严重的现象就是网络拥塞。当网络中存在过多的
    发表于 10-17 12:33 6次下载

    基于数据中心网络拓扑感知型拥塞控制算法

    针对数据中心网络(DCN)的链路拥塞问题,提出了一种拓扑感知型拥塞控制算法(TACC)。首先,根据广义超立方体拓扑多维正交和单维全连接的结构特点,结合
    发表于 12-12 13:55 0次下载

    基于流调度代价的数据中心网络拥塞控制路由算法

    针对传统数据中心网络极易发生拥塞的问题,提出了在软件定义网络(SDN)的架构下设计基于流调度代价的拥塞控制路由算法加以解决。首先,进行
    发表于 12-14 14:35 0次下载

    浅谈数据中心网络基础技术

    Clos Spine/Leaf两层结构 图3 常见的数据中心网络互联结构 2008年,美国加州大学圣迭戈分校的研究学者提出了将Clos架构用于数据中心中
    发表于 11-07 11:42 1247次阅读

    HPC和数据中心融合网络面临的技术挑战

    随着大型DC采用具有更高带宽需求的高性能加速器,数据中心网络通过支持远程直接内存访问(RDMA)、RDMA融合以太网(RDMA over converged Ethernet,RoCE)、互联网广域RDMA协议(iWarp)等新技术不断向HPCN融合。
    发表于 09-15 09:56 1627次阅读
    <b class='flag-5'>HPC</b><b class='flag-5'>和数据中心</b>融合<b class='flag-5'>网络</b>面临的技术挑战

    半导体存储器在数据中心中的应用

    半导体存储器在数据中心中的应用是极其重要且广泛的,它们不仅是数据中心存储系统的核心组件,还直接关系到数据处理的效率、可靠性和安全性。以下将详细阐述半导体存储器在数据中心中的具体应用,包
    的头像 发表于 08-20 10:17 1978次阅读

    信而泰PFC/ECN流量测试方案:打造智能无损网络的关键利器

    导语:AI算力爆发的背后,如何保障网络“零丢包”? 在当今数据中心网络中,随着AI、高性能计算(HPC)和分布式存储等应用的飞速发展,网络
    的头像 发表于 03-13 09:53 1166次阅读
    信而泰PFC/<b class='flag-5'>ECN</b>流量测试方案:打造智能无损<b class='flag-5'>网络</b>的关键利器

    解析DCQCN:RDMA在数据中心网络的关键拥塞控制协议

    DCQCN ( Data Center Quantized Congestion Notification),数据中心量化拥塞通知。它是一种专门为数据中心网络设计的端到端
    的头像 发表于 09-15 11:45 1585次阅读
    解析DCQCN:RDMA在<b class='flag-5'>数据中心</b><b class='flag-5'>网络</b>的关键<b class='flag-5'>拥塞</b>控制协议