news 2026/10/21 3:08:52

NPCC(Network-based Proactive Congestion Control)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
NPCC(Network-based Proactive Congestion Control)

文章目录

    • 为什么需要NPCC
    • NPCC是如何工作的
    • NPCC的应用



NPCC(Network-based Proactive Congestion Control)是一种以网络设备为核心的主动拥塞控制技术,支持在网络设备上智能识别拥塞状态,主动发送CNP拥塞通知报文,准确控制服务器发送RoCEv2报文的速率,既可以确保拥塞时的及时降速,又可以避免拥塞已经缓解时的过度降速。


为什么需要NPCC

目前RoCEv2(RDMA over Converged Ethernet version 2)网络应用最广泛的拥塞控制机制,是在网络设备上发现拥塞后,由网络设备向接收端服务器发送携带拥塞标记的报文,接收端服务器随后向发送端服务器发送CNP拥塞通知报文(Congestion Notification Packets,简称CNP报文),以通知发送端服务器降低发送报文的速率,从而缓解拥塞。

传统的拥塞控制机制

智能无损网络中的AI ECN技术采用的就是上述拥塞控制机制,它仅要求网络设备在报文中打上拥塞标记,其他协议功能在服务器上实现。但当接收端服务器与发送端服务器距离较远时,该机制存在以下问题:

  • 响应慢:发生拥塞的是网络设备,然而对拥塞进行反馈的是接收端,当网络规模较大时,过长的拥塞反馈路径可能让发送端不能及时降速,甚至提前升速导致拥塞加剧;
  • 响应不准确:网络拥塞状态只能通过报文中的拥塞标记获得,接收端生成的CNP报文个数不能准确缓解拥塞。且在拥塞缓解过程中,转发设备仍然会持续进行拥塞标记,很容易造成吞吐过低。

NPCC功能支持在网络设备上智能识别拥塞状态,由网络设备主动向发送端服务器发送CNP报文,使发送端服务器及时降低发送报文的速率。不仅解决了拥塞反馈路径过长的问题,而且可以准确控制发送的CNP报文个数。既可以确保拥塞时的及时降速,又可以避免拥塞已经缓解时的过度降速。但由于启用NPCC功能的网络设备需要自行维护RoCEv2流表、计算CNP报文数目、构造和发送CNP报文,这个过程需要花费的时间相对较长,因此,在两端服务器距离较远的场景中使用NPCC更有收益。


NPCC的拥塞控制机制

NPCC是如何工作的

NPCC工作原理

NPCC的工作原理如上图所示。

  1. 维护RoCEv2流表,获取路径信息。
    开启NPCC功能的网络设备会根据报文的源IP地址、目的IP地址、Dest QP字段和端口索引信息建立和维护RoCEv2流表,以获知RoCEv2流的地址信息和转发路径。

  2. 检测队列拥塞状态,计算CNP报文数目。
    网络设备对端口中开启了NPCC功能的队列的队列长度(即缓存占用量)进行检测,根据队列的拥塞状态智能计算主动发送的CNP报文数目:

  • 队列长度上涨:队列浅时,发送少量CNP报文,防止拥塞状态误判断;队列深时,发送较多的CNP报文,快速缓解队列拥塞,降低转发时延。
  • 队列长度下降:队列浅时,不发送CNP报文,防止过度降速造成吞吐下降;队列深时,发送少量的CNP报文,在尽量保证吞吐和时延性能的情况下缓解队列拥塞。
  • 队列长度突发小抖动:认为出现了微突发场景,此时不发送CNP报文,防止出现过度降速。
  1. 构造CNP报文并转发。
    网络设备根据计算出的CNP报文数目和RoCEv2流表中的地址信息构造CNP报文,并向发送端服务器主动发送CNP报文,服务器收到后降低RoCEv2报文的发送速率。

NPCC的应用

如下图所示,在数据中心互联的长距场景中,DeviceA和DeviceB作为数据中心互联的出口设备,当DeviceA的出端口发生拥塞时,DeviceA会向DC2的接收端服务器发送携带拥塞标记的报文,DC2的接收端服务器随后向DC1的发送端服务器发送CNP报文,DC1的发送端服务器接收到CNP报文后降低发送报文的速率。由于两个数据中心距离很远,消耗时间较长,因此无法达到及时降速的效果。

在DeviceA上开启NPCC功能后,当DeviceA的出端口发生拥塞时,由DeviceA直接向DC1的发送端服务器发送CNP报文,可以达到及时降速,缓解拥塞的效果。


数据中心互联的长距场景


版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/13 13:50:17

B 端表单标签对齐指南:兼顾效率与体验的设计选择

表单是 B 端系统的核心交互组件,而表单标签的对齐方式看似微小,却直接影响用户的填写效率、浏览体验和操作流畅度。在 Ant Design、Element UI 等成熟组件库中,行内标签、顶标签、左标签(含文字左对齐、右对齐)等样式各…

作者头像 李华
网站建设 2026/10/19 0:44:48

没显卡怎么玩AI Agent?预置镜像2块钱体验最新技术

没显卡怎么玩AI Agent?预置镜像2块钱体验最新技术 1. AI Agent是什么?为什么需要GPU? AI Agent(人工智能代理)就像你的数字助手,它能接收任务、分析环境、执行操作并不断学习优化。想象你有一个24小时待命…

作者头像 李华
网站建设 2026/10/17 3:51:09

没GPU怎么做AI开发?实体识别云端环境,学生特惠1元/时

没GPU怎么做AI开发?实体识别云端环境,学生特惠1元/时 引言:当AI竞赛遇上硬件瓶颈 参加AI竞赛的计算机系学生常常会遇到这样的困境:比赛需要搭建实体识别模块,但学校机房的GPU资源早已被抢占一空,自己的笔…

作者头像 李华
网站建设 2026/10/20 3:21:20

没预算怎么做AI安全测试?云端GPU按需付费成企业新选择

没预算怎么做AI安全测试?云端GPU按需付费成企业新选择 1. 中小企业面临的AI安全困境 作为中小企业安全负责人,你可能正面临这样的困境:老板要求上线AI防护系统,但年度预算已经用完。传统安全方案动辄数十万的部署成本让人望而却…

作者头像 李华
网站建设 2026/10/13 12:59:09

2025年西北工业大学计算机考研复试机试真题(解题思路 + AC 代码)

2025年西北工业大学计算机考研复试机试真题 2025年西北工业大学计算机考研复试上机真题 历年西北工业大学计算机考研复试上机真题 历年西北工业大学计算机考研复试机试真题 更多学校完整题目开源地址:https://gitcode.com/u014339447/pgcode 百度一下pgcode 即…

作者头像 李华
网站建设 2026/10/17 21:35:24

AI安全工程师工具箱:2024必备模型体验

AI安全工程师工具箱:2024必备模型体验 引言 作为一名准备进入AI安全领域的新手,你可能经常在招聘要求中看到"熟悉主流AI安全模型"这样的描述。这就像要成为一名优秀的厨师,首先得了解各种刀具的用途一样。AI安全工程师也需要掌握…

作者头像 李华