CN111107016A - 一种网络拥塞控制方法、装置、芯片及存储介质 - Google Patents
一种网络拥塞控制方法、装置、芯片及存储介质 Download PDFInfo
- Publication number
- CN111107016A CN111107016A CN201811250639.XA CN201811250639A CN111107016A CN 111107016 A CN111107016 A CN 111107016A CN 201811250639 A CN201811250639 A CN 201811250639A CN 111107016 A CN111107016 A CN 111107016A
- Authority
- CN
- China
- Prior art keywords
- congestion
- node
- information
- determining
- sending rate
- 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.)
- Granted
Links
Images
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/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/215—Flow control; Congestion control using token-bucket
-
- 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/25—Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例公开了一种网络拥塞控制方法、装置、芯片及存储介质,所述方法包括:获取前级节点与后级节点之间的至少一个中间节点的传输能力信息,以及后级节点的拥塞信息;基于后级节点的拥塞信息,确定第一下发速率;基于至少一个中间节点的传输能力信息,确定第二下发速率;基于第一下发速率和第二下发速率,调整前级节点的下发速率。如此,能够减轻网络拥塞程度,保证数据流通畅。
Description
技术领域
本发明涉及通信领域,尤其涉及一种网络拥塞控制方法、装置、芯片及存储介质。
背景技术
计算机网络系统中有多重措施来保证数据传输的流畅性,避免网络拥塞。
如图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,HardDisk Drive)或固态硬盘(SSD,Solid-State Drive);或者上述种类的存储器的组合,并向处理器提供指令和数据。
上述处理器可以为特定用途集成电路(ASIC,Application Specific IntegratedCircuit)、数字信号处理装置(DSPD,Digital Signal Processing Device)、可编程逻辑装置(PLD,Programmable Logic Device)、现场可编程门阵列(Field-Programmable GateArray,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中任一项所述的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811250639.XA CN111107016B (zh) | 2018-10-25 | 2018-10-25 | 一种网络拥塞控制方法、装置、芯片及存储介质 |
PCT/CN2019/113427 WO2020083395A1 (zh) | 2018-10-25 | 2019-10-25 | 一种网络拥塞控制方法、装置、芯片及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811250639.XA CN111107016B (zh) | 2018-10-25 | 2018-10-25 | 一种网络拥塞控制方法、装置、芯片及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111107016A true CN111107016A (zh) | 2020-05-05 |
CN111107016B CN111107016B (zh) | 2023-04-07 |
Family
ID=70330857
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811250639.XA Active CN111107016B (zh) | 2018-10-25 | 2018-10-25 | 一种网络拥塞控制方法、装置、芯片及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111107016B (zh) |
WO (1) | WO2020083395A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117908802B (zh) * | 2024-03-19 | 2024-06-14 | 北京鉴智科技有限公司 | 数据存储方法、装置、电子设备及存储介质 |
Citations (7)
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 |
CN101754266A (zh) * | 2008-12-15 | 2010-06-23 | 中国移动通信集团公司 | 调整传输速率、重定向路由的方法、系统及装置 |
US20110141891A1 (en) * | 2009-12-10 | 2011-06-16 | Verizon Patent And Licensing, Inc. | Ldp extension for forwarding path congestion notification |
CN102474452A (zh) * | 2009-07-02 | 2012-05-23 | 高通股份有限公司 | 跨多个分组的控制信息的传输 |
CN102546106A (zh) * | 2011-12-28 | 2012-07-04 | 南京邮电大学 | 面向卫星网络的多路径并行传输方法 |
CN104303465A (zh) * | 2013-03-29 | 2015-01-21 | 华为技术有限公司 | 网络拥塞处理方法、网络节点以及网络系统 |
CN104394093A (zh) * | 2014-11-28 | 2015-03-04 | 广州杰赛科技股份有限公司 | 拥塞控制方法与无线网状网系统 |
Family Cites Families (3)
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 |
CN101001204B (zh) * | 2006-12-31 | 2011-02-02 | 华为技术有限公司 | 一种高速数据分组接入业务下行拥塞检测控制方法 |
-
2018
- 2018-10-25 CN CN201811250639.XA patent/CN111107016B/zh active Active
-
2019
- 2019-10-25 WO PCT/CN2019/113427 patent/WO2020083395A1/zh active Application Filing
Patent Citations (7)
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 |
CN101754266A (zh) * | 2008-12-15 | 2010-06-23 | 中国移动通信集团公司 | 调整传输速率、重定向路由的方法、系统及装置 |
CN102474452A (zh) * | 2009-07-02 | 2012-05-23 | 高通股份有限公司 | 跨多个分组的控制信息的传输 |
US20110141891A1 (en) * | 2009-12-10 | 2011-06-16 | Verizon Patent And Licensing, Inc. | Ldp extension for forwarding path congestion notification |
CN102546106A (zh) * | 2011-12-28 | 2012-07-04 | 南京邮电大学 | 面向卫星网络的多路径并行传输方法 |
CN104303465A (zh) * | 2013-03-29 | 2015-01-21 | 华为技术有限公司 | 网络拥塞处理方法、网络节点以及网络系统 |
CN104394093A (zh) * | 2014-11-28 | 2015-03-04 | 广州杰赛科技股份有限公司 | 拥塞控制方法与无线网状网系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111107016B (zh) | 2023-04-07 |
WO2020083395A1 (zh) | 2020-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4260631B2 (ja) | ネットワーク輻輳制御の方法および装置 | |
US10129151B2 (en) | Traffic management implementation method and apparatus, and network device | |
CN109391557B (zh) | 网络交换机设备中的拥塞避免 | |
US9258232B2 (en) | Ingress traffic flow control in a data communications system | |
US10050896B2 (en) | Management of an over-subscribed shared buffer | |
CN109660468B (zh) | 一种端口拥塞管理方法、装置和设备 | |
US11799803B2 (en) | Packet processing method and apparatus, communications device, and switching circuit | |
EP4175232A1 (en) | Congestion control method and device | |
US20220417161A1 (en) | Head-of-queue blocking for multiple lossless queues | |
CN111107016B (zh) | 一种网络拥塞控制方法、装置、芯片及存储介质 | |
US6724776B1 (en) | Method and system for providing optimal discard fraction | |
CN107786371B (zh) | 一种数据的加速方法、装置及存储介质 | |
CN111917664A (zh) | 一种队列管理方法及系统 | |
WO2023116611A1 (zh) | 一种队列控制的方法及装置 | |
CN113765796B (zh) | 流量转发控制方法及装置 | |
US7734808B1 (en) | End-to-end congestion control in a Fibre Channel network | |
US20050223056A1 (en) | Method and system for controlling dataflow to a central system from distributed systems | |
CN110336759B (zh) | 基于rdma的协议报文转发方法及装置 | |
CN110300069B (zh) | 数据传输方法、优化装置及系统 | |
US6920111B1 (en) | Multiple update frequencies for counters in a multi-level shaping system | |
WO2023226532A1 (zh) | 拥塞控制方法、节点及系统 | |
CN113938432B (zh) | 一种高速互连网络拥塞控制打标方法和装置 | |
US7304943B2 (en) | Apparatus and method for bandwidth control | |
US20230336487A1 (en) | Flow control method | |
US11777869B2 (en) | Message arbitration in a ring interconnect system based on activity indications for each node in the ring interconnect |
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 |