CN116545933B - 网络拥塞控制方法、装置、设备及存储介质 - Google Patents
网络拥塞控制方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116545933B CN116545933B CN202310821405.0A CN202310821405A CN116545933B CN 116545933 B CN116545933 B CN 116545933B CN 202310821405 A CN202310821405 A CN 202310821405A CN 116545933 B CN116545933 B CN 116545933B
- Authority
- CN
- China
- Prior art keywords
- notification message
- message
- congestion
- network
- filtering
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000001914 filtration Methods 0.000 claims abstract description 101
- 230000008439 repair process Effects 0.000 claims description 40
- 230000006870 function Effects 0.000 claims description 14
- 230000007423 decrease Effects 0.000 claims description 6
- 239000013307 optical fiber Substances 0.000 claims description 6
- 230000002787 reinforcement Effects 0.000 claims description 5
- 230000000295 complement effect Effects 0.000 claims description 4
- 238000004891 communication Methods 0.000 abstract description 9
- 230000005540 biological transmission Effects 0.000 description 19
- 230000000875 corresponding effect Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 9
- 230000001276 controlling effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 239000003795 chemical substances by application Substances 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/26—Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
- H04L47/263—Rate modification at the source after receiving feedback
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/31—Flow control; Congestion control by tagging of packets, e.g. using discard eligibility [DE] bits
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种网络拥塞控制方法、装置、设备及存储介质,本申请涉及网络通信技术领域,该方法包括步骤:获取发送端传输的数据报文信息,并接收接收端基于所述数据报文信息反馈的拥塞通知报文,其中,所述拥塞通知报文用于调整发送端发送数据报文的速率;基于预设处理模型,对所述数据报文信息进行处理,确定待发送的补发通知报文,并将所述拥塞通知报文进行过滤处理,得到过滤通知报文;将所述过滤通知报文和所述补发通知报文发送至发送端,以供所述发送端根据所述过滤通知报文和所述补发通知报文调整发送数据报文的速率。本申请使得发送端能够及时响应拥塞通知报文,并调整发送报文的速率。
Description
技术领域
本申请涉及网络通信技术领域,尤其涉及一种网络拥塞控制方法、装置、设备及存储介质。
背景技术
目前,数据中心网络的RDMA(remote direct memory access,远程直接数据存取)是实现数据中心高速网络通信的主流方案,而RDMA使能的数据中心网络的拥塞控制机制在近年来备受关注,现有的RDMA拥塞方案主要是发送端驱动方案,以应用ECN(ExplicitCongestion Notification,显式拥塞通知)为主,ECN控制拥塞的方式是通过拥塞控制报文通知发送端更新注入速率,随着网络流量传输距离不断增长,以ECN为基础的拥塞控制协议在数据中心中虽然取得不错的效果,但是对于长距离传输的情况下,数据传输时延较长,所以仍然存在着发送端对拥塞通知报文响应不及时的问题。
发明内容
本申请的主要目的在于提供一种网络拥塞控制方法、装置、设备及存储介质,旨在解决相关技术中,在长距离传输的情况下,发送端对拥塞通知报文响应不及时的技术问题。
为实现上述目的,本申请实施例提供了一种网络拥塞控制方法,所述方法包括:
获取发送端传输的数据报文信息,并接收接收端基于所述数据报文信息反馈的拥塞通知报文,其中,所述拥塞通知报文用于调整发送端发送数据报文的速率;
基于预设处理模型,对所述数据报文信息进行处理,确定待发送的补发通知报文,并将所述拥塞通知报文进行过滤处理,得到过滤通知报文,其中,所述补发通知报文是通过距离发送端最近的网络设备发出的,所述网络设备上设置有长距端口;
将所述过滤通知报文和所述补发通知报文发送至发送端,以供所述发送端根据所述过滤通知报文和所述补发通知报文调整发送数据报文的速率。
在本申请的一种可能的实施方式中,包括:
所述将所述拥塞通知报文进行过滤处理,得到过滤通知报文的步骤,包括:
获取网络参数,并根据所述网络参数,确定动态过滤值,其中,所述网络参数包括光纤长度和流量入出比;
基于所述动态过滤值,对所述拥塞通知报文进行过滤,确定对应的过滤报文速率值;
根据所述过滤报文速率值,确定待发送的过滤通知报文。
在本申请的一种可能的实施方式中,所述根据所述网络参数,确定动态过滤值的步骤,包括:
根据所述网络参数,确定过滤所传输数据报文的第一时间间隔;
调整所述第一时间间隔内传输的拥塞通知报文为预设个数;
基于所述预设个数,确定动态过滤值。
在本申请的一种可能的实施方式中,所述基于预设处理模型,对所述数据报文信息进行处理,确定待发送的补发通知报文的步骤,包括:
获取与所述拥塞通知报文相关的拥塞参数;
基于预设处理模型,将所述拥塞参数代入奖励函数,计算得到补发报文数目,其中,所述奖励函数与网络链路利用率、数据队列长度以及补发通知报文相关联;
根据所述数据报文信息中的地址信息,构建数据流表,其中,所述数据流表与多个数据转发接口相关联;
基于所述数据流表以及所述补发报文数目,确定待发送的补发通知报文。
在本申请的一种可能的实施方式中,所述基于所述数据流表以及所述补发报文数目,确定待发送的补发通知报文的步骤之后,包括:
若所述补发报文数目大于预设阈值,则调整发送的所述过滤通知报文数目。
在本申请的一种可能的实施方式中,所述根据所述数据报文信息中的地址信息,构建数据流表的步骤之后,包括:
将所述数据流表与多个数据转发接口相关联,确定所述数据报文信息的转发路径;
所述基于所述数据流表以及所述补发报文数目,确定待发送的补发通知报文的步骤,包括:
基于所述数据流表、所述转发路径以及所述补发报文数目,构建待发送的补发通知报文。
在本申请的一种可能的实施方式中, 所述第一时间间隔与所述过滤报文速率值呈负相关,当所述第一时间间隔增大时,所述过滤报文速率值会相应减小。
本申请还提供一种网络拥塞控制装置,所述网络拥塞控制装置还包括:
获取模块,用于获取发送端传输的数据报文信息,并接收接收端基于所述数据报文信息反馈的拥塞通知报文,其中,所述拥塞通知报文用于调整发送端发送数据报文的速率;
处理模块,用于基于预设处理模型,对所述数据报文信息进行处理,确定待发送的补发通知报文,并将所述拥塞通知报文进行过滤处理,得到过滤通知报文,其中,所述补发通知报文是通过距离发送端最近的网络设备发出的,所述网络设备上设置有长距端口;
发送模块,用于将所述过滤通知报文和所述补发通知报文发送至发送端,以供所述发送端根据所述过滤通知报文和所述补发通知报文调整发送数据报文的速率。
本申请还提供一种网络拥塞控制设备,所述网络拥塞控制设备为实体节点设备,所述网络拥塞控制设备包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的所述网络拥塞控制方法的程序,所述网络拥塞控制方法的程序被处理器执行时可实现如上述所述网络拥塞控制方法的步骤。
为实现上述目的,还提供一种存储介质,所述存储介质上存储有网络拥塞控制程序,所述网络拥塞控制程序被处理器执行时实现上述任一所述的网络拥塞控制方法的步骤。
本申请提供了一种网络拥塞控制方法、装置、设备及存储介质,与现有的通过显式拥塞通知来控制网络拥塞,无法及时响应拥塞通知报文的方式相比,在本申请中,获取发送端传输的数据报文信息,并接收接收端基于所述数据报文信息反馈的拥塞通知报文,其中,所述拥塞通知报文用于调整发送端发送数据报文的速率;基于预设处理模型,对所述数据报文信息进行处理,确定待发送的补发通知报文,并将所述拥塞通知报文进行过滤处理,得到过滤通知报文,其中,所述补发通知报文是通过距离发送端最近的网络设备发出的,所述网络设备上设置有长距端口;将所述过滤通知报文和所述补发通知报文发送至发送端,以供所述发送端根据所述过滤通知报文和所述补发通知报文调整发送数据报文的速率。在本申请中,通过获取传输过程中的数据报文信息以及接收端基于数据报文信息反馈的拥塞通知报文,由于发送端是根据拥塞通知报文来调整发送数据报文的速率,在长距离传输过程中,拥塞通知报文信息传输的时间较长,从而导致发送端无法根据相应的拥塞通知报文信息来及时调整发送数据报文的速率,对拥塞通知报文信息进行过滤,保证拥塞通知报文信息不会因为发送过多而导致降速过度,同时,通过预设处理模型对数据报文信息进行处理,确定需要补发的补发通知报文,通过距离发送端较近的网络设备向发送端发送补发通知报文,且网络设备上设置有长距端口,可以在进行长距离传输的情况下,使得发送端可以根据补发通知报文及时降低发送端发送的速率,避免发送端对网络拥塞无法及时响应的情况发生。
附图说明
图1为本申请网络拥塞控制方法的第一实施例的流程示意图;
图2为本申请网络拥塞控制方法涉及的处理流程示意图;
图3为本申请实施例方案涉及的硬件运行环境的设备结构示意图。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供一种网络拥塞控制方法,在本申请网络拥塞控制方法的第一实施例中,参照图1,所述方法包括:
步骤S10,获取发送端传输的数据报文信息,并接收接收端基于所述数据报文信息反馈的拥塞通知报文,其中,所述拥塞通知报文用于调整发送端发送数据报文的速率;
步骤S20,基于预设处理模型,对所述数据报文信息进行处理,确定待发送的补发通知报文,并将所述拥塞通知报文进行过滤处理,得到过滤通知报文,其中,所述补发通知报文是通过距离发送端最近的网络设备发出的,所述网络设备上设置有长距端口;
步骤S30,将所述过滤通知报文和所述补发通知报文发送至发送端,以供所述发送端根据所述过滤通知报文和所述补发通知报文调整发送数据报文的速率。
在本实施例中,针对的应用场景为:
在网络数据长距离传输过程中,数据的传输时延较长,从而导致发送端无法及时接收接收端发出的拥塞通知报文,而导致网络拥塞的情况无法及时处理。
本实施例旨在:在长距离传输的情况下,使发送端可以对拥塞通知报文及时响应,并调整数据传输过程中的报文发送速率。
具体步骤如下:
步骤S10,获取发送端传输的数据报文信息,并接收接收端基于所述数据报文信息反馈的拥塞通知报文,其中,所述拥塞通知报文用于调整发送端发送数据报文的速率;
作为一种示例,网络拥塞控制方法可以应用于网络拥塞控制装置,网络拥塞控制装置属于网络拥塞控制系统,该网络拥塞控制系统属于网络拥塞控制设备。
作为一种示例,在现有的方式中,大多数通过DCQCN(一种拥塞控制算法)在交换机上应用显式拥塞通知(ECN),从而完成对于网络拥塞的调整或控制,在以ECN为基础的拥塞控制方式中,接收端收到由ECN标记的数据报文,再通过传输层发送CNP( CongestionNotification Packet,拥塞通知报文) 通知发送端,发送端收到CNP 报文后,对对应的优先级的队列进行降速处理(常用的速率调节机制为DCQCN算法),经过一段可配置的时间或者发送一定数量数据,发送端恢复原来的速率。
在本实施例中,在ECN的基础上进行改进,通过对发送的CNP报文进行过滤,以及在距离发送端较近的交换机补发CNP报文给发送端,从而避免因为距离过长而无法及时收到CNP报文的情况出现,从而可以保证发送端对CNP报文及时响应,并调整网络拥塞。
作为一种示例,数据报文信息可以是传输过程中发送的数据报文,还可以是RoCEv2数据报文,数据报文中包括多种地址信息。
作为一种示例,拥塞通知报文具体为接收端发出的CNP报文,CNP报文用于发送端控制发送数据的速率。
作为一种示例,网络拥塞控制方法可以应用于交换机中,具体的网络拥塞处理流程示意图如图2所示,由图2可得,通过多个网络端口获取经过交换机的数据报文信息,进而根据数据报文信息构建数据流表,从而根据数据流表以及经过预设处理模型处理后得到的待补发CNP报文数量,构建需要补发的CNP报文,端口智能识别拥塞的过程可以是根据队列长度(qlen)、当前排队长度大于Kmax的拥塞时间(Ctime)、链路利用率(LRatio)、ECN包的输出速率(Etxrate)、数据流数目(FCount)、ECN设置(pmax)、CNP报文过滤值(interval)、交换机补发CNP数量(swCNP)等参数,确定所传输数据的拥塞状态,最后交换机将过滤后的CNP报文以及补发的CNP报文发送至发送端,从而使得发送端根据CNP报文来调整发送报文的速率,从而达到控制网络拥塞的效果。
步骤S20,基于预设处理模型,对所述数据报文信息进行处理,确定待发送的补发通知报文,并将所述拥塞通知报文进行过滤处理,得到过滤通知报文,其中,所述补发通知报文是通过距离发送端最近的网络设备发出的,所述网络设备上设置有长距端口;
作为一种示例,网络设备可以是交换机,也可以是其他具有长距端口的网络设备,其中,长距端口用于长距离传输数据。
作为一种示例,由于在网络数据传输的过程中,时延和吞吐率等网络环境会不断地变化,所以为使能算法的交换机设置了一个agent(代理),通过agent来收集收集本地端口的网络信息,然后做出并执行补发通知报文的决策。
作为一种示例,预设处理模型具体为深度q学习(Deep Q-learning, DQN)模型,通过深度q学习模型来设计DRL(Deep reinforcement learning,深度强化学习) Agent,预设处理模型可以对交换机统计的多个网络特征进行处理,多个网络特征的状态集为:
State=(qlen,Ctime,LRatio,Etxrate,FCount,pmax,interval,swCnp);
在收集统计数据后,预设处理模型在每个时间间隔(t)内做出并执行一个补发通知报文的决策。
作为一种示例,时间间隔(t)可以是1ms也可以是5ms,可以根据用户需要进行调整,具体不作限定。
作为一种示例,做出决策的方式如下所示:
= {interval、swCNP}
其中,interval表示CNP报文过滤值,也即在规定时间内发送的CNP报文个数,swCNP表示交换机补发的CNP报文数量。
作为一种示例,将奖励函数定义为吞吐量,队列拥塞和补发通知报文数量之间的权衡,也即,使能智能算法的交换机的高链路利用率,低队列积累,以及补发通知报文数量之间的权衡,设计如下奖励:
r=w1×LinkuseRatio+w2×D(L)+w3×C(T)
其中LinkuseRatio表示链路的利用率,D(L) 表示队列长度0.6,C(T)表示交换机补发通知报文数量,w1+w2+w3=1。
在本实施例中,w1取值为0.2,w2取值为0.6,w3取值为0.2,根据奖励函数得到的值,确定公式中交换机补发的CNP报文数量。
D(L) = 1n/10 ;C(T) = (/>)//>;
n=(E(n)≥L),∀n∈[0,9]
其中,表示实际交换机补发的CNP报文的数量,/>表示交换机补发通知报文的上限。
作为一种示例,通过预设处理模型的决策,确定待发送的补发通知报文。
作为一种示例,拥塞通知报文由接收端发出,为防止接收端发送过量的拥塞通知报文,需要对接收端所发送的报文进行合适的过滤,防止因为过量的拥塞通知报文进行过度的降速,从而影响数据的传输速率。
作为一种示例,同样地,预设处理模型还用于过滤拥塞通知报文,过滤处理的过程可以是限制在规定时间内发送的拥塞通知报文的个数,通过对接收端发送的多个拥塞通知报文进行过滤,减少拥塞通知报文的数量,得到过滤通知报文。
步骤S30,将所述过滤通知报文和所述补发通知报文发送至发送端,以供所述发送端根据所述过滤通知报文和所述补发通知报文调整发送数据报文的速率。
作为一种示例,过滤通知报文和补发通知报文共同构成待发送的拥塞通知报文。
作为一种示例,对于长距端口数据中心网络场景提供了交换机驱动的主动拥塞控制功能,支持在转发设备上识别拥塞状态并计算需要的CNP报文数量,通过对接收端CNP报文的动态过滤,得到过滤通知报文,可以避免拥塞已经缓解时的过度降速。
作为一种示例,通过预设处理模型对数据报文信息进行处理,学习主动补发报文,从而可以确保网络拥塞时的及时降速,进而准确控制发送端发送报文的速率,更好地保证数据中心在长距离传输的网络环境下的低时延和高吞吐。
本申请提供了一种网络拥塞控制方法、装置、设备及存储介质,与现有的通过显式拥塞通知来控制网络拥塞,无法及时响应拥塞通知报文的方式相比,在本申请中,获取发送端传输的数据报文信息,并接收接收端基于所述数据报文信息反馈的拥塞通知报文,其中,所述拥塞通知报文用于调整发送端发送数据报文的速率;基于预设处理模型,对所述数据报文信息进行处理,确定待发送的补发通知报文,并将所述拥塞通知报文进行过滤处理,得到过滤通知报文,其中,所述补发通知报文是通过距离发送端最近的网络设备发出的,所述网络设备上设置有长距端口;将所述过滤通知报文和所述补发通知报文发送至发送端,以供所述发送端根据所述过滤通知报文和所述补发通知报文调整发送数据报文的速率。在本申请中,通过获取传输过程中的数据报文信息以及接收端基于数据报文信息反馈的拥塞通知报文,由于发送端是根据拥塞通知报文来调整发送数据报文的速率,在长距离传输过程中,拥塞通知报文信息传输的时间较长,从而导致发送端无法根据相应的拥塞通知报文信息来及时调整发送数据报文的速率,对拥塞通知报文信息进行过滤,保证拥塞通知报文信息不会因为发送过多而导致降速过度,同时,通过预设处理模型对数据报文信息进行处理,确定需要补发的补发通知报文,通过距离发送端较近的网络设备向发送端发送补发通知报文,且网络设备上设置有长距端口,可以在进行长距离传输的情况下,使得发送端可以根据补发通知报文及时降低发送端发送的速率,避免发送端对网络拥塞无法及时响应的情况发生。
进一步地,基于本申请中第一实施例,提供本申请的另一实施例,在该实施例中,所述将所述拥塞通知报文进行过滤处理,得到过滤通知报文的步骤,包括:
步骤A1,获取网络参数,并根据所述网络参数,确定动态过滤值,其中,所述网络参数包括光纤长度和流量入出比;
作为一种示例,网络参数包括光纤长度以及INCAST值等,其中,INCAST值表示入方向的流量和出方向的流量的比例值,由于在不同的长距离传输网络环境下,光纤长度和INCAST值都不尽相同,当网络参数改变时,动态过滤值也会相应地改变。
作为一种示例,动态过滤值具体为规定时间内传输的CNP报文数量。
步骤A2,基于所述动态过滤值,对所述拥塞通知报文进行过滤,确定对应的过滤报文速率值;
作为一种示例,通过动态过滤值可以对拥塞通知报文进行筛选或过滤,例如,当拥塞通知报文未过滤前,每秒钟发送107个报文,104ns内发送100个报文,经过动态过滤值的过滤处理后,动态过滤值为104ns发送1个报文,此时,拥塞通知报文在每秒钟发送105个报文。
作为一种示例,过滤报文速率值具体为接收端发送CNP报文的速率值,动态过滤值对应的过滤报文速率值可以用取值动作分别表示为{7500,10000,12500,15000,17500}。
步骤A3,根据所述过滤报文速率值,确定待发送的过滤通知报文。
作为一种示例,根据过滤报文速率值,可以确定待发送的过滤通知报文,并将过滤通知报文以过滤报文速率值对应的取值动作发送至发送端。
其中,所述根据所述网络参数,确定动态过滤值的步骤,包括:
步骤B1,根据所述网络参数,确定过滤所传输数据报文的第一时间间隔;
作为一种示例,根据深度强化学习的方法,取不同的光纤长度和incast值,确定第一时间间隔。
作为一种示例,第一时间间隔可以是104ns,具体可以根据用户需要进行调整,具体不作限定。
步骤B2,调整所述第一时间间隔内传输的拥塞通知报文为预设个数;
作为一种示例,预设个数可以是一个,也即,在第一时间间隔内如果有多个CNP报文到达交换机,则交换机只转发一个,其他的报文就被过滤和丢弃,如果第一时间间隔内只有一个或没有报文,则不过滤丢弃报文。
步骤B3,基于所述预设个数,确定动态过滤值。
作为一种示例,通过确定第一时间间隔内传输的拥塞通知报文为预设个数之后,也即可以确定动态过滤值,例如,当预设个数为一个,第一时间间隔为104ns时,则动态过滤值为1个报文/104ns。
其中,所述第一时间间隔与所述过滤报文速率值呈负相关,当所述第一时间间隔增大时,所述过滤报文速率值会相应减小。
作为一种示例,当第一时间间隔增大时,也即动态过滤值减小,相应地,需要传输的单位时间内传输的过滤通知报文的数量也会相应减少,例如,动态过滤值为104ns发送1个报文,此时,拥塞通知报文在每秒钟发送105个报文,当第一时间间隔增大至105ns时,动态过滤值为105ns发送一个报文,此时,拥塞通知报文在每秒钟发送104个报文。
作为一种示例,同理,当第一时间间隔减小时,过滤报文速率值会相应增大。
在本实施例中,通过动态过滤值对接收端发送的CNP报文进行过滤,防止接收端发送过多的CNP报文以及节约交换机CPU的资源,以确保发送端收到CNP报文后降低RoCEv2报文的发送速率到一个合适的速度。
进一步地,基于本申请中第一实施例和第二实施例,提供本申请的另一实施例,在该实施例中,所述基于预设处理模型,对所述数据报文信息进行处理,确定待发送的补发通知报文的步骤,包括:
步骤C1,获取与所述拥塞通知报文相关的拥塞参数;
步骤C2,基于预设处理模型,将所述拥塞参数代入奖励函数,计算得到补发报文数目,其中,所述奖励函数与网络链路利用率、数据队列长度以及补发通知报文相关联;
作为一种示例,同样地,补发报文数目的计算是用深度强化学习的方式来动态调整,从而节约交换机的cpu资源,从而达到智能计算补发CNP报文数量的目的。
作为一种示例,拥塞参数包括网络链路利用率以及队列长度。
作为一种示例,奖励函数为使能智能算法的交换机的高链路利用率,低队列积累,以及补发通知报文数量之间的权衡所设定的函数,通过奖励函数可以确定最优的补发通知报文的数量。
作为一种示例,补发报文数目具体为补发通知报文的数目。
作为一种示例,当交换机上出现网络拥塞时,开始采集相应的拥塞队列长度和ECN标记数量等信息,如果队列长度超过我们规定的阈值,一般来说取Kmax作为阈值,学习一次补发CNP报文的数量,其中,Kmax具体为队列长度的上限值,当队列长度达到kmax时,则此时认为网络是非常拥塞的。
作为一种示例,补发的CNP报文速率也有相应的动作取值,补发CNP报文速率的动作可以是{0,500,1000,1500,2000}。
步骤C3,根据所述数据报文信息中的地址信息,构建数据流表,其中,所述数据流表与多个数据转发接口相关联;
作为一种示例,获取地址信息的方式可以是:通过对数据报文信息进行复制,并输送至设备的CPU进行处理,从而获取数据报文信息的地址信息。
作为一种示例,地址信息包括源IP地址、目的IP地址和目的QP等信息,通过多个地址信息,构建数据流表,数据流表也即RoCEv2流表。
作为一种示例,根据数据报文信息可以将数据流表与交换机的多个数据转发接口相关联。
步骤C4,基于所述数据流表以及所述补发报文数目,确定待发送的补发通知报文。
作为一种示例,交换机按照数据流表中的多个地址信息,以及确定的补发报文数目,构建需要补发的补发通知报文。
其中,所述基于所述数据流表以及所述补发报文数目,确定待发送的补发通知报文的步骤之后,包括:
步骤D1,若所述补发报文数目大于预设阈值,则调整发送的所述过滤通知报文数目。
作为一种示例,由于交换机的CPU限制等原因,对补发的CNP报文数量设置上限,如果超过上限,则通过奖励函数便会减少动态过滤值来增加接收端的过滤通知报文数量,这样就会让补发的CNP报文数量减少。
作为一种示例,预设阈值即是补发通知报文数量的上限,预设阈值可以是2500,具体不作限定。
其中,所述根据所述数据报文信息中的地址信息,构建数据流表的步骤之后,包括:
步骤E1,将所述数据流表与多个数据转发接口相关联,确定所述数据报文信息的转发路径;
作为一种示例,数据报文信息将数据流表与多个数据转发接口相关联,可以确定相应的流量出入情况,从而得到数据报文信息的转发路径。
所述基于所述数据流表以及所述补发报文数目,确定待发送的补发通知报文的步骤,包括:
步骤M1,基于所述数据流表、所述转发路径以及所述补发报文数目,构建待发送的补发通知报文。
作为一种示例,根据构建的数据流表中的地址信息以及补发报文数目,构建补发通知报文,进而通过转发路径逐一发送至发送端。
在本实施例中,通过补发CNP报文来快速缓解队列拥塞,减少队列拥塞恢复需要的时间,这样可以确保拥塞时的及时降速,同时对交换机设置预设阈值,当补发通知报文的数量超过预设阈值时,即调节接收端CNP报文的限速值,让接收端多发送一些CNP报文。
参照图3,图3是本申请实施例方案涉及的硬件运行环境的设备结构示意图。
如图3所示,该网络拥塞控制设备可以包括:处理器1001,存储器1005,通信总线1002。通信总线1002用于实现处理器1001和存储器1005之间的连接通信。
可选地,该网络拥塞控制设备还可以包括用户接口、网络接口、摄像头、RF(RadioFrequency,射频)电路,传感器、WiFi模块等等。用户接口可以包括显示屏(Display)、输入子模块比如键盘(Keyboard),可选用户接口还可以包括标准的有线接口、无线接口。网络接口可以包括标准的有线接口、无线接口(如WI-FI接口)。
本领域技术人员可以理解,图3中示出的网络拥塞控制设备结构并不构成对网络拥塞控制设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图3所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块以及网络拥塞控制程序。操作系统是管理和控制网络拥塞控制设备硬件和软件资源的程序,支持网络拥塞控制程序以及其它软件和/或程序的运行。网络通信模块用于实现存储器1005内部各组件之间的通信,以及与网络拥塞控制系统中其它硬件和软件之间通信。
在图3所示的网络拥塞控制设备中,处理器1001用于执行存储器1005中存储的网络拥塞控制程序,实现上述任一项所述的网络拥塞控制方法的步骤。
本申请网络拥塞控制设备具体实施方式与上述网络拥塞控制方法各实施例基本相同,在此不再赘述。
本申请还提供一种网络拥塞控制装置,所述网络拥塞控制装置还包括:
获取模块,用于获取发送端传输的数据报文信息,并接收接收端基于所述数据报文信息反馈的拥塞通知报文,其中,所述拥塞通知报文用于调整发送端发送数据报文的速率;
处理模块,用于基于预设处理模型,对所述数据报文信息进行处理,确定待发送的补发通知报文,并将所述拥塞通知报文进行过滤处理,得到过滤通知报文,其中,所述补发通知报文是通过距离发送端最近的网络设备发出的,所述网络设备上设置有长距端口;
发送模块,用于将所述过滤通知报文和所述补发通知报文发送至发送端,以供所述发送端根据所述过滤通知报文和所述补发通知报文调整发送数据报文的速率。
在本申请的一种可能的实施方式中,所述处理模块包括:
第一确定单元,用于获取网络参数,并根据所述网络参数,确定动态过滤值,其中,所述网络参数包括光纤长度和流量入出比;
过滤单元,用于基于所述动态过滤值,对所述拥塞通知报文进行过滤,确定对应的过滤报文速率值;
第二确定单元,用于根据所述过滤报文速率值,确定待发送的过滤通知报文。
在本申请的一种可能的实施方式中,所述第一确定单元包括:
第一确定子单元,用于根据所述网络参数,确定过滤所传输数据报文的第一时间间隔;
调整子单元,用于调整所述第一时间间隔内传输的拥塞通知报文为预设个数;
第二确定子单元,用于基于所述预设个数,确定动态过滤值。
在本申请的一种可能的实施方式中,所述处理模块还包括:
获取单元,用于获取与所述拥塞通知报文相关的拥塞参数;
计算单元,用于基于预设处理模型,将所述拥塞参数代入奖励函数,计算得到补发报文数目,其中,所述奖励函数与网络链路利用率、数据队列长度以及补发通知报文相关联;
第一构建单元,用于根据所述数据报文信息中的地址信息,构建数据流表,其中,所述数据流表与多个数据转发接口相关联;
第三确定单元,用于基于所述数据流表以及所述补发报文数目,确定待发送的补发通知报文。
在本申请的一种可能的实施方式中,所述处理模块还包括:
调整单元,用于若所述补发报文数目大于预设阈值,则调整发送的所述过滤通知报文数目。
在本申请的一种可能的实施方式中,所述处理模块还包括:
第四确定单元,用于将所述数据流表与多个数据转发接口相关联,确定所述数据报文信息的转发路径;
第二构建单元,用于基于所述数据流表、所述转发路径以及所述补发报文数目,构建待发送的补发通知报文。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种网络拥塞控制方法,其特征在于,所述方法包括以下步骤:
获取发送端传输的数据报文信息,并接收接收端基于所述数据报文信息反馈的拥塞通知报文,其中,所述拥塞通知报文用于调整发送端发送数据报文的速率;
基于预设处理模型,对所述数据报文信息进行处理,确定待发送的补发通知报文,并将所述拥塞通知报文进行过滤处理,得到过滤通知报文,具体方法如下:
所述预设处理模型为深度强化学习模型,对统计的多个网络特征进行处理,多个网络特征的状态集为:
State=(qlen,Ctime,LRatio,Etxrate,FCount,pmax,interval,swCnp);其中,qlen为队列长度、Ctime为当前排队长度大于队列长度的上限值Kmax的拥塞时间、LRatio为链路利用率、Etxrate为显示拥塞通知ECN包的输出速率、FCount为数据流数目、pmax为ECN设置、interval为拥塞通知报文过滤值、swCNP为补发拥塞通知报文数量;拥塞通知报文过滤值为规定时间内传输的拥塞通知报文数量;做出决策的方式如下所示:
= {interval、swCNP},其中,/>的下标t表示时间间隔;
其中,所述补发通知报文是通过距离发送端最近的网络设备发出的,所述网络设备上设置有长距端口;
将所述过滤通知报文和所述补发通知报文发送至发送端,以供所述发送端根据所述过滤通知报文和所述补发通知报文调整发送数据报文的速率。
2.如权利要求1所述的网络拥塞控制方法,其特征在于,所述将所述拥塞通知报文进行过滤处理,得到过滤通知报文的步骤,包括:
获取网络参数,并根据所述网络参数,确定动态过滤值,其中,所述网络参数包括光纤长度和流量入出比;所述动态过滤值为规定时间内传输的拥塞通知报文数量;
基于所述动态过滤值,对所述拥塞通知报文进行过滤,确定对应的过滤报文速率值;所述过滤报文速率值为接收端发送拥塞通知报文的速率值;
根据所述过滤报文速率值,确定待发送的过滤通知报文。
3.如权利要求2所述的网络拥塞控制方法,其特征在于,所述根据所述网络参数,确定动态过滤值的步骤,包括:
根据所述网络参数,确定过滤所传输数据报文的第一时间间隔;
调整所述第一时间间隔内传输的拥塞通知报文为预设个数;
基于所述预设个数,确定动态过滤值。
4.如权利要求1所述的网络拥塞控制方法,其特征在于,所述基于预设处理模型,对所述数据报文信息进行处理,确定待发送的补发通知报文的步骤,包括:
获取与所述拥塞通知报文相关的拥塞参数;
基于预设处理模型,将所述拥塞参数代入奖励函数,计算得到补发报文数目,其中,所述奖励函数与网络链路利用率、数据队列长度以及补发通知报文相关联;
根据所述数据报文信息中的地址信息,构建数据流表,其中,所述数据流表与多个数据转发接口相关联;
基于所述数据流表以及所述补发报文数目,确定待发送的补发通知报文。
5.如权利要求4所述的网络拥塞控制方法,其特征在于,所述基于所述数据流表以及所述补发报文数目,确定待发送的补发通知报文的步骤之后,包括:
若所述补发报文数目大于预设阈值,则调整发送的所述过滤通知报文数目。
6.如权利要求4所述的网络拥塞控制方法,其特征在于,所述根据所述数据报文信息中的地址信息,构建数据流表的步骤之后,包括:
将所述数据流表与多个数据转发接口相关联,确定所述数据报文信息的转发路径;
所述基于所述数据流表以及所述补发报文数目,确定待发送的补发通知报文的步骤,包括:
基于所述数据流表、所述转发路径以及所述补发报文数目,构建待发送的补发通知报文。
7.如权利要求3所述的网络拥塞控制方法,其特征在于,所述第一时间间隔与所述过滤报文速率值呈负相关,当所述第一时间间隔增大时,所述过滤报文速率值会相应减小。
8.一种网络拥塞控制装置,其特征在于,所述网络拥塞控制装置包括:
获取模块,用于获取发送端传输的数据报文信息,并接收接收端基于所述数据报文信息反馈的拥塞通知报文,其中,所述拥塞通知报文用于调整发送端发送数据报文的速率;
处理模块,用于基于预设处理模型,对所述数据报文信息进行处理,确定待发送的补发通知报文,并将所述拥塞通知报文进行过滤处理,得到过滤通知报文,具体方法如下:
所述预设处理模型为深度强化学习模型,对统计的多个网络特征进行处理,多个网络特征的状态集为:
State=(qlen,Ctime,LRatio,Etxrate,FCount,pmax,interval,swCnp);其中,qlen为队列长度、Ctime为当前排队长度大于队列长度的上限值Kmax的拥塞时间、LRatio为链路利用率、Etxrate为显示拥塞通知ECN包的输出速率、FCount为数据流数目、pmax为ECN设置、interval为拥塞通知报文过滤值、swCNP为补发拥塞通知报文数量;拥塞通知报文过滤值为规定时间内传输的拥塞通知报文数量;做出决策的方式如下所示:
= {interval、swCNP},其中,/>的下标t表示时间间隔;
其中,所述补发通知报文是通过距离发送端最近的网络设备发出的,所述网络设备上设置有长距端口;
发送模块,用于将所述过滤通知报文和所述补发通知报文发送至发送端,以供所述发送端根据所述过滤通知报文和所述补发通知报文调整发送数据报文的速率。
9.一种网络拥塞控制设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的网络拥塞控制程序,所述网络拥塞控制程序配置为实现如权利要求1至7中任一项所述的网络拥塞控制方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有网络拥塞控制程序,所述网络拥塞控制程序被处理器执行时实现如权利要求1至7中任一项所述的网络拥塞控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310821405.0A CN116545933B (zh) | 2023-07-06 | 2023-07-06 | 网络拥塞控制方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310821405.0A CN116545933B (zh) | 2023-07-06 | 2023-07-06 | 网络拥塞控制方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116545933A CN116545933A (zh) | 2023-08-04 |
CN116545933B true CN116545933B (zh) | 2023-10-20 |
Family
ID=87458209
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310821405.0A Active CN116545933B (zh) | 2023-07-06 | 2023-07-06 | 网络拥塞控制方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116545933B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116886622B (zh) * | 2023-09-08 | 2023-11-24 | 合肥综合性国家科学中心人工智能研究院(安徽省人工智能实验室) | 网络拥塞控制方法、装置、设备及存储介质 |
CN116915721B (zh) * | 2023-09-12 | 2023-12-19 | 珠海星云智联科技有限公司 | 一种拥塞控制方法、装置、计算设备及可读存储介质 |
CN116915706B (zh) * | 2023-09-13 | 2023-12-26 | 合肥综合性国家科学中心人工智能研究院(安徽省人工智能实验室) | 数据中心网络拥塞控制方法、装置、设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108418767A (zh) * | 2018-02-09 | 2018-08-17 | 华为技术有限公司 | 数据传输方法、设备及计算机存储介质 |
CN112532530A (zh) * | 2019-09-18 | 2021-03-19 | 华为技术有限公司 | 一种拥塞通知信息调整的方法及设备 |
CN113411264A (zh) * | 2021-06-30 | 2021-09-17 | 中国工商银行股份有限公司 | 一种网络队列的监控方法、装置、计算机设备和存储介质 |
CN113438181A (zh) * | 2021-08-26 | 2021-09-24 | 北京邮电大学 | 网络拥塞控制方法和装置 |
WO2021238799A1 (zh) * | 2020-05-29 | 2021-12-02 | 华为技术有限公司 | 一种数据报文传输方法及装置 |
CN116055416A (zh) * | 2023-03-28 | 2023-05-02 | 新华三工业互联网有限公司 | 应用于长距通信网络场景下传输速率的调整方法及装置 |
CN116366554A (zh) * | 2023-03-28 | 2023-06-30 | 新华三技术有限公司 | 一种流量限速方法、装置及设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013158115A1 (en) * | 2012-04-20 | 2013-10-24 | Hewlett-Packard Development Company, L.P. | Controlling data rates of data flows based on information indicating congestion |
WO2019046603A1 (en) * | 2017-08-31 | 2019-03-07 | Pensando Systems Inc. | METHODS AND SYSTEMS FOR MANAGING NETWORK DIMENSIONS |
CN112242956B (zh) * | 2019-07-18 | 2024-04-26 | 华为技术有限公司 | 流速控制方法和装置 |
US11258719B1 (en) * | 2020-08-24 | 2022-02-22 | Keysight Technologies, Inc. | Methods, systems and computer readable media for network congestion control tuning |
WO2023019202A1 (en) * | 2021-08-11 | 2023-02-16 | Enfabrica Corporation | System and method for congestion control using a flow level transmit mechanism |
-
2023
- 2023-07-06 CN CN202310821405.0A patent/CN116545933B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108418767A (zh) * | 2018-02-09 | 2018-08-17 | 华为技术有限公司 | 数据传输方法、设备及计算机存储介质 |
CN112532530A (zh) * | 2019-09-18 | 2021-03-19 | 华为技术有限公司 | 一种拥塞通知信息调整的方法及设备 |
WO2021238799A1 (zh) * | 2020-05-29 | 2021-12-02 | 华为技术有限公司 | 一种数据报文传输方法及装置 |
CN113411264A (zh) * | 2021-06-30 | 2021-09-17 | 中国工商银行股份有限公司 | 一种网络队列的监控方法、装置、计算机设备和存储介质 |
CN113438181A (zh) * | 2021-08-26 | 2021-09-24 | 北京邮电大学 | 网络拥塞控制方法和装置 |
CN116055416A (zh) * | 2023-03-28 | 2023-05-02 | 新华三工业互联网有限公司 | 应用于长距通信网络场景下传输速率的调整方法及装置 |
CN116366554A (zh) * | 2023-03-28 | 2023-06-30 | 新华三技术有限公司 | 一种流量限速方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN116545933A (zh) | 2023-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116545933B (zh) | 网络拥塞控制方法、装置、设备及存储介质 | |
KR101449352B1 (ko) | 데이터 전송 오버헤드 감소 방법 및 장치 | |
TWI395445B (zh) | 管理無線器件資源之方法以及裝置 | |
EP2579672B1 (en) | Enhancement for scheduling request triggering based on traffic condition | |
JP2011151601A (ja) | パケット中継装置及びパケットを中継する方法 | |
CN109714267B (zh) | 管理反向队列的传输控制方法及系统 | |
EP2582197A2 (en) | Methods of UE providing speed information to network | |
US10873529B2 (en) | Method and apparatus for low latency data center network | |
Abualhaj et al. | FLRED: an efficient fuzzy logic based network congestion control method | |
JP7154300B2 (ja) | 通信方法、装置、およびシステム | |
EP2579671A2 (en) | Methods for UE indicating traffic-related information to network | |
CN112104562A (zh) | 拥塞控制方法及装置、通信网络、计算机存储介质 | |
US11695629B2 (en) | Method and apparatus for configuring a network parameter | |
WO2009037152A1 (en) | Improved utilization of data links | |
US20220053373A1 (en) | Communication apparatus, communication method, and program | |
CN105007235A (zh) | 一种无线多媒体传感器网络中的拥塞控制方法 | |
CN113573368A (zh) | 一种信息处理方法、装置、设备及计算机可读存储介质 | |
CN108737119B (zh) | 一种数据传输方法、装置及系统 | |
CN106685849B (zh) | 基于sdn的wred报文丢弃方法及系统 | |
EP3934184A1 (en) | Data package marking method and device, data transmission system | |
CN116886622B (zh) | 网络拥塞控制方法、装置、设备及存储介质 | |
CN110912831B (zh) | Tcp传输方法、装置及存储介质 | |
WO2003077487A1 (en) | Shared-communications channel utilization for applications having different class of service requirements | |
CN112532535B (zh) | 一种用于优化网络拥塞的方法和装置 | |
WO2024065134A1 (zh) | 终端设备状态辅助运营方法、装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |