WO2020083395A1 - 一种网络拥塞控制方法、装置、芯片及存储介质 - Google Patents

一种网络拥塞控制方法、装置、芯片及存储介质 Download PDF

Info

Publication number
WO2020083395A1
WO2020083395A1 PCT/CN2019/113427 CN2019113427W WO2020083395A1 WO 2020083395 A1 WO2020083395 A1 WO 2020083395A1 CN 2019113427 W CN2019113427 W CN 2019113427W WO 2020083395 A1 WO2020083395 A1 WO 2020083395A1
Authority
WO
WIPO (PCT)
Prior art keywords
congestion
node
information
delivery rate
intermediate node
Prior art date
Application number
PCT/CN2019/113427
Other languages
English (en)
French (fr)
Inventor
招海伟
张瑛
Original Assignee
深圳市中兴微电子技术有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 深圳市中兴微电子技术有限公司 filed Critical 深圳市中兴微电子技术有限公司
Publication of WO2020083395A1 publication Critical patent/WO2020083395A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • H04L47/263Rate modification at the source after receiving feedback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/215Flow control; Congestion control using token-bucket
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control

Definitions

  • the present application relates to the communication field, and in particular, to a network congestion control method, device, chip, and storage medium.
  • the congestion information is a congestion level
  • the processor determines the congestion information of the subsequent node based on the cache information of the subsequent node, including: when the cache information of the subsequent node satisfies the first congestion condition, processing The controller determines that the congestion level of the subsequent node is the congestion level corresponding to the first congestion condition; wherein, the first congestion condition is any congestion condition in the congestion condition set.
  • the processor is specifically configured to execute a program stored in the memory to implement the following step: determine the congestion information of the subsequent node based on the cache information of the subsequent node.
  • An embodiment of the present application further provides a chip, including: a processor, configured to call and run a computer program from a memory, so that a device installed with the above-mentioned chip executes the steps of any of the foregoing methods.
  • two different delivery rates are obtained by separately judging the congestion information and the number of available links of the intermediate node, and the congestion information of the subsequent node, and directly adjusting the download of the preceding node according to these two delivery rates
  • the delivery rate adjusts the delivery rate of the front-end node according to these two delivery rates, avoids network congestion due to level-1 and level-1 backpressure feedback, and can reduce the data delivery amount of the front-end node in advance and reduce the degree of network congestion .
  • FIG. 3 is a schematic flowchart of a network congestion control method in an embodiment of this application.
  • FIG. 5 is a schematic flowchart of transmission capability detection in an embodiment of the present application.
  • the congestion condition may be: the buffer size is within a fixed threshold. And set different congestion conditions by setting different threshold ranges.
  • the congestion condition set includes congestion condition 1 to congestion condition N, and N takes a positive integer, respectively corresponding to congestion level 1 to congestion level N; congestion condition 1 is: the cache size is within the threshold range 1, and congestion condition 2 is: cache size Located within the threshold range 2, ..., the congestion condition N is: the buffer size is within the threshold range N.
  • the number of available links of at least one intermediate node is determined based on the number of effective links of at least one intermediate node, including: when the number of effective links meets the transmission conditions, the number of available links is taken as the number of effective links; When the number does not satisfy the transmission conditions, the number of available links is taken as the number of first links.
  • determining the first delivery rate based on the congestion information of the subsequent node includes: querying the first rate table based on the congestion information to obtain the corresponding first delivery rate; based on the transmission capability information of at least one intermediate node, determining The second delivery rate includes: querying the second rate table based on the transmission capability information of at least one intermediate node to obtain the corresponding second delivery rate.
  • the method further includes: obtaining the network configuration rate of the previous node.
  • step 303 specifically includes: determining the delivery rate of the preceding node from the first delivery rate, the second delivery rate, and the network configuration rate.
  • the method for detecting the congestion level may include:
  • the heat preservation types of the cache specifically include: D-type unicast cache, D-type multicast cache, T-type unicast cache, and T-type multicast cache.
  • the threshold n may be a threshold for judging that the subsequent node is completely congested, that is, the congestion level n + 1 is the highest congestion level.
  • Step 503 Determine whether L is equal to 0. If yes, go to step 505; if no, go to step 504.
  • the transmission capability information can be used as the query address of the second rate table, each address corresponds to a delivery rate, and the query address of the second rate table is composed of the number of available links L 'and the congestion level. Get the second delivery rate. For example, if the query address is an 8-bit binary address, the lower four bits are obtained according to the number of available links, and the upper four bits are obtained according to the congestion level.
  • the above processor may be an application specific integrated circuit (ASIC, Application Integrated Circuit), a digital signal processing device (DSPD, Digital Signal Processing), a programmable logic device (PLD, Programmable Logic Device), a field programmable gate array (Field -At least one of Programmable Gate Array (FPGA), DSP, CPU, controller, microcontroller, microprocessor. Understandably, for different devices, there may be other electronic devices configured to implement the above-mentioned processor functions, which are not specifically limited in the embodiments of the present application.
  • the first query module 803 includes a configurable table set to store the correspondence between different congestion levels and delivery rates.
  • the second query module 804 also contains a configurable table set to set the correspondence between different transmission capability information and the delivery rate.
  • the issuance rate represents the interval between token issuance. The smaller the issuance rate, the longer the interval between token issuance. The greater the issuance rate, the longer the interval between token issuance.
  • the chip 900 may further include an output interface 940.
  • the processor 910 can control the output interface 940 to communicate with other devices or chips. Specifically, it can output information or data to other devices or chips.
  • embodiments of the present application also provide a computer-readable storage medium, such as a memory including a computer program, which can be executed by a processor of a terminal to complete the method in one or more of the foregoing embodiments step.
  • a computer-readable storage medium such as a memory including a computer program

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请实施例公开了一种网络拥塞控制方法、装置、芯片及存储介质,所述方法包括:获取前级节点与后级节点之间的至少一个中间节点的传输能力信息,以及后级节点的拥塞信息;基于后级节点的拥塞信息,确定第一下发速率;基于至少一个中间节点的传输能力信息,确定第二下发速率;基于第一下发速率和第二下发速率,调整前级节点的下发速率。如此,能够减轻网络拥塞程度,保证数据流通畅。

Description

一种网络拥塞控制方法、装置、芯片及存储介质
本申请要求于2018年10月25日提交中国专利局、申请号为201811250639.X、发明名称“一种网络拥塞控制方法、装置、芯片及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信领域,尤其涉及一种网络拥塞控制方法、装置、芯片及存储介质。
背景技术
计算机网络系统中有多重措施来保证数据传输的流畅性,避免网络拥塞。
如图1所示,单播数据到达前级模块A,将数据报文信息送至授权请求模块,授权请求模块按依次向授权分发模块发送令牌请求和数据报文信息。授权分发模块视授权剩余,数据报文信息和报文优先级,给授权请求模块分发令牌,授权请求模块依据令牌向前级模块A发送控制信息,以控制前级模块A数据下发。多播数据报文到达后级模块B,会根据复制后的数据报文信息向授权分发模块申请令牌,令牌分发的情况与数据单播类似。
授权分发模块在固定的时钟周期T生成一个令牌,生成的令牌存储在令牌桶中,授权分发模块每给授权请求模块发送一次令牌,令牌桶就会减少一个令牌。授权请求模块和授权分发模块会优先申请和分发高优先级的数据包令牌。这样高优先级数据包先行,低优先级数据包后行甚至丢弃。
如图2,当计算机交换网络在任一级发生数据拥塞的时,使用反压的方式,将反压信号从后级模块B、中级传输模块到前级模块A一级一级向上传输,授权分发模块会在接收到反压信号时停止发放授权,授权请求模块将反压信号发送给前级模块A,以控制上游模块减小下发速率或停止下发。然而,当前模块在收到反压信号时,其上游模块可能还在继续发送数据,导致当前模块同样拥塞,产生反压。如此反压信号一级一级向上传输,数据源端反应相对滞后。数 据拥塞严重时,高低优先级数据都会不能通行,被拥塞的模块开始丢弃数据,高优先级的数据也可能会被丢弃。
因此,当下游模块后级开始发生拥塞时,授权分发模块仍在按原频率分发令牌,从而加速下游拥塞,增加拥塞程度。下游模块产生的反压信号往上游传导时,也会增加拥塞程度。且拥塞程度越高,高优先级报文丢弃的概率越大。
发明内容
为解决上述技术问题,本申请实施例期望提供一种信息处理方法的方法、装置、芯片及存储介质,能够减轻网络拥塞程度,保证数据流通畅。
本申请的技术方案是这样实现的:
本申请实施例提供了一种网络拥塞控制方法,包括:
处理器获取前级节点与后级节点之间的至少一个中间节点的传输能力信息,以及上述后级节点的拥塞信息;
处理器基于上述后级节点的拥塞信息,确定第一下发速率;基于上述至少一个中间节点的传输能力信息,确定第二下发速率;
处理器基于上述第一下发速率和上述第二下发速率,调整上述前级节点的下发速率。
上述方案中,上述处理器获取后级节点的拥塞信息,包括:处理器基于上述后级节点的缓存信息,确定上述后级节点的拥塞信息。
上述方案中,上述拥塞信息为拥塞等级;上述处理器基于上述后级节点的缓存信息,确定上述后级节点的拥塞信息,包括:当上述后级节点的缓存信息满足第一拥塞条件时,处理器确定上述后级节点的拥塞等级为上述第一拥塞条件对应的拥塞等级;其中,上述第一拥塞条件为拥塞条件集合中任一个拥塞条件。
上述方案中,上述传输能力信息包括:中间节点的拥塞信息和可用链路数;上述处理器获取前级节点与后级节点之间的至少一个中间节点的传输能力信息,包括:处理器基于上述至少一个中间节点的缓存信息,确定上述至少一个中间节点的拥塞信息;处理器基于上述至少一个中间节点的有效链路数,确定上述至少一个中间节点的可用链路数。
上述方案中,上述拥塞信息为拥塞等级;上述处理器基于上述至少一个中间节点的缓存信息,确定上述至少一个中间节点的拥塞信息,包括:当中间节点的缓存信息满足第二拥塞条件时,处理器确定上述中间节点的拥塞等级为上述第二拥塞条件对应的拥塞等级;其中,上述第二拥塞条件为拥塞条件集合中任一个拥塞条件。
上述方案中,上述方法还包括:处理器获取上述前级节点的网络配置速率;上述处理器基于上述第一下发速率和上述第二下发速率,调整上述前级节点的下发速率,包括:处理器从上述第一下发速率、上述第二下发速率和上述网络配置速率中确定上述前级节点的下发速率。
本申请实施例中还提供了一种网络拥塞控制装置,上述装置包括:处理器和存储器;其中,上述处理器设置为执行存储器中存储的程序,以实现以下步骤:
获取前级节点与后级节点之间的至少一个中间节点的传输能力信息,以及上述后级节点的拥塞信息;
基于上述后级节点的拥塞信息,确定第一下发速率;基于上述至少一个中间节点的传输能力信息,确定第二下发速率;
基于上述第一下发速率和上述第二下发速率,调整前级节点的下发速率。
上述方案中,上述处理器具体设置为执行存储器中存储的程序,以实现以下步骤:基于上述后级节点的缓存信息,确定上述后级节点的拥塞信息。
上述方案中,上述拥塞信息为拥塞等级;上述处理器具体设置为执行存储器中存储的程序,以实现以下步骤:当上述后级节点的缓存信息满足第一拥塞条件时,确定上述后级节点的拥塞等级为上述第一拥塞条件对应的拥塞等级;其中,上述第一拥塞条件为拥塞条件集合中任一个拥塞条件。
上述方案中,上述传输能力信息包括:中间节点的拥塞信息和可用链路数;上述处理器具体设置为执行存储器中存储的程序,以实现以下步骤:基于上述至少一个中间节点的缓存信息,确定上述至少一个中间节点的拥塞信息;基于上述至少一个中间节点的有效链路数,确定上述至少一个中间节点的可用链路数。
上述方案中,上述拥塞信息为拥塞等级;上述处理器具体设置为执行存储 器中存储的程序,以实现以下步骤:当中间节点的缓存信息满足第二拥塞条件时,确定上述中间节点的拥塞等级为上述第二拥塞条件对应的拥塞等级;其中,上述第二拥塞条件为拥塞条件集合中任一个拥塞条件。
上述方案中,上述处理器还设置为执行存储器中存储的程序,以实现以下步骤:获取上述前级节点的网络配置速率;从上述第一下发速率、上述第二下发速率和上述网络配置速率中确定上述前级节点的下发速率。
本申请实施例中还提供了一种芯片,包括:处理器,设置为从存储器中调用并运行计算机程序,使得安装有上述芯片的设备执行前述任一项上述的方法的步骤。
本申请实施例中还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现前述任一项上述的方法的步骤。
采用上述技术方案,通过分别判断中间节点的拥塞信息和可用链路数,以及后级节点的拥塞信息,得到两种不同的下发速率,根据这两种下发速率直接调整前级节点的下发速率根据这两种下发速率来调整前级节点的下发速率,避免由于一级一级反压反馈带来的网络拥塞,能够提前减少前级节点的数据下发量,减轻网络拥塞程度。
附图说明
图1为数据报文授权请求与分发示意图;
图2为数据报文拥塞反压信号反馈示意图;
图3为本申请实施例中网络拥塞控制方法的流程示意图;
图4为本申请实施例中拥塞等级检测的流程示意图;
图5为本申请实施例中传输能力检测的流程示意图;
图6为本申请实施例中下发速率选择的流程示意图;
图7为本申请实施例中网络拥塞装置的第一组成结构示意图;
图8为本申请实施例中网络拥塞装置的第二组成结构示意图;
图9为本申请实施例中芯片的组成结构示意图。
具体实施方式
为了能够更加详尽地了解本申请实施例的特点与技术内容,下面结合附图对本申请实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本申请实施例。
实施例一
如图3所示,网络拥塞控制方法包括:
步骤301:获取前级节点与后级节点之间的至少一个中间节点的传输能力信息,以及后级节点的拥塞信息;
步骤302:基于后级节点的拥塞信息,确定第一下发速率;基于至少一个中间节点的传输能力信息,确定第二下发速率;
步骤303:基于第一下发速率和第二下发速率,调整前级节点的下发速率。
这里,步骤301至步骤303的执行主体可以为控制装置的处理器,控制装置可以位于令牌授权模块中。
本申请实施例中,前级节点、中间节点和后级节点可以为交换网络中的路由器或者交换机。前级节点可以为数据源头节点,后级节点可以为数据传输目的节点,中间节点则为前级节点至后级节点之间数据传输路径上的节点。
实际应用中,获取后级节点的拥塞信息,包括:基于后级节点的缓存信息,确定后级节点的拥塞信息。
传输能力信息包括:中间节点的拥塞信息和可用链路数;获取前级节点与后级节点之间的至少一个中间节点的传输能力信息,包括:基于至少一个中间节点的缓存信息,确定至少一个中间节点的拥塞信息;基于至少一个中间节点的有效链路数,确定至少一个中间节点的可用链路数。
需要说明的是,缓存信息越多表明后级节点处拥塞程度越高,缓存信息越多或者有效链路数越少,表明中间节点处拥塞程度越高。
可选地,可利用拥塞等级表明拥塞程度高低,拥塞等级越高表明拥塞程度越高。相应的,拥塞信息为拥塞等级;基于后级节点的缓存信息,确定后级节点的拥塞信息,包括:当后级节点的缓存信息满足第一拥塞条件时,确定后级节点的拥塞等级为第一拥塞条件对应的拥塞等级;其中,第一拥塞条件为拥塞条件集合中任一个拥塞条件。
基于至少一个中间节点的缓存信息,确定至少一个中间节点的拥塞信息,包括:当中间节点的缓存信息满足第二拥塞条件时,确定中间节点的拥塞等级为第二拥塞条件对应的拥塞等级;其中,第二拥塞条件为拥塞条件集合中任一个拥塞条件。
这里,拥塞条件集合中包含至少一个拥塞条件,每一个拥塞条件对应一个拥塞等级,根据缓存信息所满足的拥塞条件,确定中间节点或后级节点对应的拥塞等级。
示例性的,拥塞条件可以为:缓存大小位于固定的门限范围内。并通过设置不同门限范围设置不同拥塞条件。比如,拥塞条件集合中包括拥塞条件1至拥塞条件N,N取正整数,分别对应拥塞等级1至拥塞等级N;拥塞条件1为:缓存大小位于门限范围1内,拥塞条件2为:缓存大小位于门限范围2内,…,拥塞条件N为:缓存大小位于门限范围N内。
实际应用中,基于至少一个中间节点的有效链路数,确定至少一个中间节点的可用链路数,包括:有效链路数满足传输条件时,可用链路数取有效链路数;有效链路数不满足传输条件时,可用链路数取有第一链路数。
这里,第一链路数取小于或者等于链路数最大值。传输条件可以为有效链路数大于链路门限值,链路门限值是保证中间节点能够进行数据传输的最小门限值,比如,链路门限值取大于或者等于0的整数。
示例性的,基于后级节点的拥塞信息,确定第一下发速率,包括:基于拥塞信息查询第一速率表,得到对应的第一下发速率;基于至少一个中间节点的传输能力信息,确定第二下发速率,包括:基于至少一个中间节点的传输能力信息查询第二速率表,得到对应的第二下发速率。
实际应用中,该方法还包括:获取前级节点的网络配置速率。相应的,步骤303具体包括:从第一下发速率、第二下发速率和网络配置速率中确定前级节点的下发速率。
可选地,从第一下发速率、第二下发速率和网络配置速率中选取最小值作为前级节点的下发速率;基于前级节点的下发速率,控制前级节点的数据下发。
采用上述技术方案,通过分别判断中间节点的拥塞信息和可用链路数,以及后级节点的拥塞信息,得到两种不同的下发速率,根据这两种下发速率来调整前级节点的下发速率,避免由于一级一级反压反馈带来的网络拥塞,能够提 前减少前级节点的数据下发量,减轻网络拥塞程度。
为了更清楚的解释本申请上述实施例,这里示例性的给出了一种检测拥塞等级的实现场景,如图4所示,拥塞等级的检测方法可以包括:
步骤401:多种类型报文分类型缓存。
这里,缓存的保温类型具体包括:D型单播缓存,D型多播缓存,T型单播缓存,T型多播缓存。
步骤402:将统计的缓存相加获得总的缓存大小N。
步骤403:判断N是否小于门限0;如果是,确定拥塞等级为拥塞等级0;如果否,执行步骤404。
也就是说,拥塞条件为缓存大小N小于门限0,拥塞条件对应拥塞等级0。
步骤404:判断N是否小于门限1;如果是,确定拥塞等级为拥塞等级1;如果否,执行步骤405。
也就是说,拥塞条件为缓存大小N小于门限1,且大于或者等于门限值0,拥塞条件对应拥塞等级1。
以此类推,采用步骤403和步骤404这种拥塞等级的判断方法,可以得到其他不同缓存大小所对应的拥塞等级。
步骤405:判断N是否小于门限n;如果是,确定拥塞等级为拥塞等级n;如果否,确定拥塞等级为拥塞等级n+1。
这里,门限n可以为判断后级节点完全拥塞的门限值,也就是拥塞等级n+1为最高拥塞等级。
示例性的,门限0、门限1至门限n分别设置为总缓存大小的10%、20%至100%。
步骤406:将拥塞等级作为查询第一速率表的依据,获得第一下发速率。
这里,第一速率表可配置。
为了更清楚的解释本申请上述实施例,这里示例性的给出了一种检测传输能力的实现场景,如图5所示,传输能力的检测方法可以包括:
步骤501:检测拥塞等级。
这里,检测中间节点拥塞等级的方法与检测后级节点拥塞等级的步骤类似 (即步骤401至步骤406),这里不再赘述。但需要说明的是,中间节点判断拥塞等级的门限值与后级节点判断拥塞等级的门限值相同或不同,门限值的设置可以依据实际需要而定。
步骤502:获取中间节点的有效链路数L。
步骤503:判断L是否等于0,如果是,执行步骤505;如果否,执行步骤504。
步骤504:可用链路数L’等于有效链路数L。
这里,当有效链路数不为0时,表明当前中间节点有可用链路用于数据传输,且此时可用链路数即为当前有效链路数。
步骤505:可用链路数L’取链路数最大值Max。
这里,若检测到中间节点的有效链路数为0,且检测无误,表明当前中间节点的确无可用链路,数据和授权令牌均不能进行传输,即使可用链路数L’取链路数最大值Max,也无法使中间节点继续进行数据传输。
若检测到中间节点的有效链路数为0,但检测有误,实际中中间节点的有效链路可能不为0,因此,为避免在检测有误时导致中间节点无法正常进行数据传输,此时将可用链路数取最大值,可以避免检测有误时导致中间节点无法进行数据传输。
步骤506:由可用链路数L’和拥塞等级组成传输能力信息。
组合在一起,作为授权下发速率表查询地址。
步骤507:将传输能力信息作为查询第二速率表的依据,获得第二下发速率。
这里,在第二速率表中预先建立传输能力和下发速度的对应关系,基于步骤506中得到的传输能力查询到对应的下发速率。比如,传输能力信息可以作为第二速率表的查询地址,每一个地址对应一个下发速率,由可用链路数L’和拥塞等级组成第二速率表的查询地址,对第二速率表进行查询得到第二下发速率。比如,查询地址为8位二进制的地址,根据可用链路数得到低四位,根据拥塞等级得到高四位。
实际应用中,利用一个或多个可配置的RAM来存储第一速率表和第二速率表。
为了更清楚的解释本申请上述实施例,这里示例性的给出了一种下发速率选择的实现场景,如图6所示,下发速率选择方法可以包括:
步骤601:比较下发速率A和下发速率B的大小,取小者作为下发速率C送。
这里,下发速率A即为第一下发速率,下发速率B即为第二下发速率。
步骤602:判断下发速率调整使能是否开启;如果是,执行步骤604;如果否,执行步骤603。
步骤603:选择系统配置的下发速率D。
这里,系统配置的下发速率D是按照系统的承载能力配置的,正常情况下下发速率D是能够保证数据的正常传输,因此,在下发速率调整功能未开启时,使用系统配置的下发速率D控制前级节点数据下发。
步骤604:比较下发速率C和下发速率D,取小者作为下发速率E送至令牌通。
这里,下发速率E为下发速率C和下发速率D中的较小值,下发速率E送至令牌桶后,基于令牌桶中保存的下发速率E控制前级节点数据下发。
可见,为了减少网络拥塞时高优先级报文被丢弃的情况,提高带宽的利用率,本申请实施例中采用了识别后级节点缓存状况和中间节点传输能力,自动调整产生授权的频率,减少拥塞时令牌发放数量,即减少报文下发速率,减轻拥塞程度,保证数据流通畅。
实施例二
基于同一发明构思,本申请实施例还提供了一种网络拥塞控制装置。图7为本申请实施例中网络拥塞控制装置的组成结构示意图,如图7所示,该装置包括:处理器701和存储器702,其中,
处理器701设置为执行存储器702中存储的程序,以实现以下步骤:
获取前级节点与后级节点之间的至少一个中间节点的传输能力信息,以及后级节点的拥塞信息;
基于后级节点的拥塞信息,确定第一下发速率;基于至少一个中间节点的传输能力信息,确定第二下发速率;
基于第一下发速率和第二下发速率,调整前级节点的下发速率。
在一些实施例中,处理器701具体设置为执行存储器702中存储的程序,以实现以下步骤:基于后级节点的缓存信息,确定后级节点的拥塞信息。
在一些实施例中,拥塞信息为拥塞等级;处理器701具体设置为执行存储器702中存储的程序,以实现以下步骤:当后级节点的缓存信息满足第一拥塞条件时,确定后级节点的拥塞等级为第一拥塞条件对应的拥塞等级;其中,第一拥塞条件为拥塞条件集合中任一个拥塞条件。
在一些实施例中,传输能力信息包括:中间节点的拥塞信息和可用链路数;处理器701具体设置为执行存储器702中存储的程序,以实现以下步骤:基于至少一个中间节点的缓存信息,确定至少一个中间节点的拥塞信息;基于至少一个中间节点的有效链路数,确定至少一个中间节点的可用链路数。
在一些实施例中,拥塞信息为拥塞等级;处理器701具体设置为执行存储器702中存储的程序,以实现以下步骤:当中间节点的缓存信息满足第二拥塞条件时,确定中间节点的拥塞等级为第二拥塞条件对应的拥塞等级;其中,第二拥塞条件为拥塞条件集合中任一个拥塞条件。
在一些实施例中,处理器701还设置为执行存储器702中存储的程序,以实现以下步骤:获取前级节点的网络配置速率;从第一下发速率、第二下发速率和网络配置速率中确定前级节点的下发速率。
在实际应用中,上述存储器可以是易失性存储器(volatile memory),例如随机存取存储器(RAM,Random-Access Memory);或者非易失性存储器(non-volatile memory),例如只读存储器(ROM,Read-Only Memory),快闪存储器(flash memory),硬盘(HDD,Hard Disk Drive)或固态硬盘(SSD,Solid-State Drive);或者上述种类的存储器的组合,并向处理器提供指令和数据。
上述处理器可以为特定用途集成电路(ASIC,Application Specific Integrated Circuit)、数字信号处理装置(DSPD,Digital Signal Processing Device)、可编程逻辑装置(PLD,Programmable Logic Device)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、DSP、CPU、控制器、微控制器、微处理器中的至少一种。可以理解地,对于不同的设备,设置为实现上述处理器功能的电子器件还可以为其它,本申请实施例不作具体限定。
如图8所示,本申请实施例中还给出了另一种拥塞控制装置,该装置包括:拥塞等级检测模块801、传输能力检测模块802、第一查询模块803、第二查询 模块804和下发速率选择模块804。
其中,拥塞等级检测模块801,由于后级节点在数据到达后级时,会缓存在各个存储中。拥塞等级检测模块统计后级节点中所有缓存使用的情况,根据预设的门限值,得到不同的拥塞等级,并将拥塞等级发送至授权分发模块。
传输能力检测模块802,同拥塞等级检测模块类似,传输能力检测模块统计中间传输所有缓存使用情况,确定不同的拥塞等级;并通过检测有效链路数,得到可用链路数,从而得到传输能力信息。
第一查询模块803中包含一张可配置的表格,设置为存储不同拥塞等级与下发速率的对应关系。第二查询模块804中同样包含一张可配置的表格,设置为设置不同传输能力信息与下发速率的对应关系。这里,下发速率表征令牌发布的间隔时间,下发速率越小表明令牌发布的间隔时间越长,下发速率越大表明令牌发布的间隔时间越长。
下发速率选择模块805,筛选查表获取的第一下发速率、第二下发速率和令牌桶配置的下发速率,选取合适的下发速率送至令牌桶,使授权分发模块基于令牌通中的下发速率,向前级节点分发令牌,以控制前级节点的数据下发速率。
上述各模块的功能可以由处理器701来实现。
在一些实施例中,拥塞等级检测模块801还可以位于后级节点中,传输能力检测模块802也可以位于中间节点中。
本申请实施例中还提供了一种芯片,图9为本申请实施例中芯片的组成结构示意图。图9所示的芯片900包括处理器910,处理器910可以从存储器中调用并运行计算机程序,以实现本申请实施例中的方法。
可选地,如图9所示,芯片900还可以包括存储器920。其中,处理器910可以从存储器920中调用并运行计算机程序,以实现本申请实施例中的方法。
其中,存储器920可以是独立于处理器910的一个单独的器件,也可以集成在处理器910中。
可选地,该芯片900还可以包括输入接口930。其中,处理器910可以控制该输入接口930与其他设备或芯片进行通信,具体地,可以获取其他设备或芯片发送的信息或数据。
可选地,该芯片900还可以包括输出接口940。其中,处理器910可以控制该输出接口940与其他设备或芯片进行通信,具体地,可以向其他设备或芯片输出信息或数据。
可选地,该芯片可应设置为本申请实施例中的网络设备,并且该芯片可以实现本申请实施例的各个方法中由网络设备实现的相应流程,为了简洁,在此不再赘述。
可选地,该芯片可应设置为本申请实施例中的终端设备,并且该芯片可以实现本申请实施例的各个方法中由终端设备实现的相应流程,为了简洁,在此不再赘述。
应理解,本申请实施例提到的芯片还可以称为系统级芯片,系统芯片,芯片系统或片上系统芯片等。
使用上述拥塞控制装置,通过分别判断中间节点的拥塞信息和可用链路数,以及后级节点的拥塞信息,得到两种不同的下发速率,避免由于一级一级反压反馈带来的网络拥塞,能够提前减少前级节点的数据下发量,减轻网络拥塞程度。
基于同一发明构思,本申请实施例还提供了一种计算机可读存储介质,例如包括计算机程序的存储器,上述计算机程序可由终端的处理器执行,以完成前述一个或者更多个实施例中的方法步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程示意图和/或方框图来描述的。应理解可由计算机程序指令实现流程示意图和/或方框图中的每一流程和/或方框、以及流程示意图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生设置为实现在流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装 置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供设置为实现在流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上,仅为本申请的较佳实施例而已,并非设置为限定本申请的保护范围。
工业实用性
在本申请实施例中,通过分别判断中间节点的拥塞信息和可用链路数,以及后级节点的拥塞信息,得到两种不同的下发速率,根据这两种下发速率直接调整前级节点的下发速率根据这两种下发速率来调整前级节点的下发速率,避免由于一级一级反压反馈带来的网络拥塞,能够提前减少前级节点的数据下发量,减轻网络拥塞程度。

Claims (14)

  1. 一种网络拥塞控制方法,所述方法包括:
    获取前级节点与后级节点之间的至少一个中间节点的传输能力信息,以及所述后级节点的拥塞信息;
    基于所述后级节点的拥塞信息,确定第一下发速率;基于所述至少一个中间节点的传输能力信息,确定第二下发速率;
    基于所述第一下发速率和所述第二下发速率,调整所述前级节点的下发速率。
  2. 根据权利要求1所述的方法,其中,所述获取后级节点的拥塞信息,包括:
    基于所述后级节点的缓存信息,确定所述后级节点的拥塞信息。
  3. 根据权利要求2所述的方法,其中,所述拥塞信息为拥塞等级;
    所述基于所述后级节点的缓存信息,确定所述后级节点的拥塞信息,包括:
    当所述后级节点的缓存信息满足第一拥塞条件时,确定所述后级节点的拥塞等级为所述第一拥塞条件对应的拥塞等级;其中,所述第一拥塞条件为拥塞条件集合中任一个拥塞条件。
  4. 根据权利要求1所述的方法,其中,所述传输能力信息包括:中间节点的拥塞信息和可用链路数;
    所述获取前级节点与后级节点之间的至少一个中间节点的传输能力信息,包括:
    基于所述至少一个中间节点的缓存信息,确定所述至少一个中间节点的拥塞信息;
    基于所述至少一个中间节点的有效链路数,确定所述至少一个中间节点的可用链路数。
  5. 根据权利要求4所述的方法,其中,所述拥塞信息为拥塞等级;
    所述基于所述至少一个中间节点的缓存信息,确定所述至少一个中间节点的拥塞信息,包括:
    当中间节点的缓存信息满足第二拥塞条件时,确定所述中间节点的拥塞等 级为所述第二拥塞条件对应的拥塞等级;其中,所述第二拥塞条件为拥塞条件集合中任一个拥塞条件。
  6. 根据权利要求1-5任一项所述的方法,其中,所述方法还包括:获取所述前级节点的网络配置速率;
    所述基于所述第一下发速率和所述第二下发速率,调整所述前级节点的下发速率,包括:
    从所述第一下发速率、所述第二下发速率和所述网络配置速率中确定所述前级节点的下发速率。
  7. 一种网络拥塞控制装置,所述装置包括:处理器和存储器;其中,
    所述处理器设置为执行存储器中存储的程序,以实现以下步骤:
    获取前级节点与后级节点之间的至少一个中间节点的传输能力信息,以及所述后级节点的拥塞信息;
    基于所述后级节点的拥塞信息,确定第一下发速率;基于所述至少一个中间节点的传输能力信息,确定第二下发速率;
    基于所述第一下发速率和所述第二下发速率,调整所述前级节点的下发速率。
  8. 根据权利要求7所述的装置,其中,所述处理器具体设置为执行存储器中存储的程序,以实现以下步骤:
    基于所述后级节点的缓存信息,确定所述后级节点的拥塞信息。
  9. 根据权利要求8所述的装置,其中,所述拥塞信息为拥塞等级;
    所述处理器具体设置为执行存储器中存储的程序,以实现以下步骤:
    当所述后级节点的缓存信息满足第一拥塞条件时,确定所述后级节点的拥塞等级为所述第一拥塞条件对应的拥塞等级;其中,所述第一拥塞条件为拥塞条件集合中任一个拥塞条件。
  10. 根据权利要求7所述的装置,其中,所述传输能力信息包括:中间节点的拥塞信息和可用链路数;
    所述处理器具体设置为执行存储器中存储的程序,以实现以下步骤:
    基于所述至少一个中间节点的缓存信息,确定所述至少一个中间节点的拥 塞信息;
    基于所述至少一个中间节点的有效链路数,确定所述至少一个中间节点的可用链路数。
  11. 根据权利要求10所述的装置,其中,所述拥塞信息为拥塞等级;
    所述处理器具体设置为执行存储器中存储的程序,以实现以下步骤:
    当中间节点的缓存信息满足第二拥塞条件时,确定所述中间节点的拥塞等级为所述第二拥塞条件对应的拥塞等级;其中,所述第二拥塞条件为拥塞条件集合中任一个拥塞条件。
  12. 根据权利要求7-11任一项所述的装置,其中,所述处理器还设置为执行存储器中存储的程序,以实现以下步骤:
    获取所述前级节点的网络配置速率;
    从所述第一下发速率、所述第二下发速率和所述网络配置速率中确定所述前级节点的下发速率。
  13. 一种芯片,包括:处理器,设置为从存储器中调用并运行计算机程序,使得安装有所述芯片的设备执行如权利要求1至6中任一项所述的方法的步骤。
  14. 一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
PCT/CN2019/113427 2018-10-25 2019-10-25 一种网络拥塞控制方法、装置、芯片及存储介质 WO2020083395A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201811250639.XA CN111107016B (zh) 2018-10-25 2018-10-25 一种网络拥塞控制方法、装置、芯片及存储介质
CN201811250639.X 2018-10-25

Publications (1)

Publication Number Publication Date
WO2020083395A1 true WO2020083395A1 (zh) 2020-04-30

Family

ID=70330857

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/113427 WO2020083395A1 (zh) 2018-10-25 2019-10-25 一种网络拥塞控制方法、装置、芯片及存储介质

Country Status (2)

Country Link
CN (1) CN111107016B (zh)
WO (1) WO2020083395A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117908802A (zh) * 2024-03-19 2024-04-19 北京鉴智科技有限公司 数据存储方法、装置、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5029164A (en) * 1990-04-13 1991-07-02 Digital Equipment Corporation Congestion avoidance in high-speed network carrying bursty traffic
US6744984B1 (en) * 2000-05-24 2004-06-01 Nortel Networks Limited Method and system for alternative transmission traffic routing in dense wavelength division multiplexing optical networks
CN101001204A (zh) * 2006-12-31 2007-07-18 华为技术有限公司 一种高速数据分组接入业务下行拥塞检测控制方法
CN101754266A (zh) * 2008-12-15 2010-06-23 中国移动通信集团公司 调整传输速率、重定向路由的方法、系统及装置
CN102546106A (zh) * 2011-12-28 2012-07-04 南京邮电大学 面向卫星网络的多路径并行传输方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6741555B1 (en) * 2000-06-14 2004-05-25 Nokia Internet Communictions Inc. Enhancement of explicit congestion notification (ECN) for wireless network applications
US8605584B2 (en) * 2009-07-02 2013-12-10 Qualcomm Incorporated Transmission of control information across multiple packets
US8693339B2 (en) * 2009-12-10 2014-04-08 Verizon Patent And Licensing Inc. LDP extension for forwarding path congestion notification
WO2014153780A1 (zh) * 2013-03-29 2014-10-02 华为技术有限公司 网络拥塞处理方法、网络节点以及网络系统
CN104394093B (zh) * 2014-11-28 2017-12-01 广州杰赛科技股份有限公司 拥塞控制方法与无线网状网系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5029164A (en) * 1990-04-13 1991-07-02 Digital Equipment Corporation Congestion avoidance in high-speed network carrying bursty traffic
US6744984B1 (en) * 2000-05-24 2004-06-01 Nortel Networks Limited Method and system for alternative transmission traffic routing in dense wavelength division multiplexing optical networks
CN101001204A (zh) * 2006-12-31 2007-07-18 华为技术有限公司 一种高速数据分组接入业务下行拥塞检测控制方法
CN101754266A (zh) * 2008-12-15 2010-06-23 中国移动通信集团公司 调整传输速率、重定向路由的方法、系统及装置
CN102546106A (zh) * 2011-12-28 2012-07-04 南京邮电大学 面向卫星网络的多路径并行传输方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117908802A (zh) * 2024-03-19 2024-04-19 北京鉴智科技有限公司 数据存储方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN111107016A (zh) 2020-05-05
CN111107016B (zh) 2023-04-07

Similar Documents

Publication Publication Date Title
US11095561B2 (en) Phantom queue link level load balancing system, method and device
US11652752B2 (en) Congestion control method and network device
US7596627B2 (en) Methods and apparatus for network congestion control
US7778174B2 (en) Shaper circuit and shaper circuit combination
US10050896B2 (en) Management of an over-subscribed shared buffer
US11799803B2 (en) Packet processing method and apparatus, communications device, and switching circuit
US10536385B2 (en) Output rates for virtual output queses
WO2011137727A1 (zh) 一种报文的传输方法和系统
US20130322271A1 (en) System for performing data cut-through
US10728156B2 (en) Scalable, low latency, deep buffered switch architecture
US8625605B2 (en) Non-uniform per-packet priority marker for use with adaptive protocols
US20220294736A1 (en) Congestion Control Method and Related Device
WO2021098730A1 (zh) 交换网络拥塞管理方法、装置、设备和存储介质
US20230370387A1 (en) Network congestion handling method, apparatus, and device
JP2023511918A (ja) サービスレベル調整方法および装置、デバイス、ならびに記憶媒体
WO2020083395A1 (zh) 一种网络拥塞控制方法、装置、芯片及存储介质
CN108259390B (zh) 互连总线中虚拟通道的优先级推送方法和装置
WO2022121079A1 (zh) 一种流量转发设备的链路聚合方法及流量转发设备
CN111917664A (zh) 一种队列管理方法及系统
CN107786371A (zh) 一种数据的加速方法、装置及存储介质
Chandra et al. Analysis of active queue management algorithms & their implementation for TCP/IP networks using OPNET simulation tool
CN113765796A (zh) 流量转发控制方法及装置
CN104917852A (zh) 一种针对IPv6地址的数据快速处理方法
CN113938432B (zh) 一种高速互连网络拥塞控制打标方法和装置
US11805060B2 (en) Token bucket with active queue management

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19876325

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19876325

Country of ref document: EP

Kind code of ref document: A1