CN105721332A - 一种基于改进的wred的拥塞控制方法和装置 - Google Patents

一种基于改进的wred的拥塞控制方法和装置 Download PDF

Info

Publication number
CN105721332A
CN105721332A CN201410723738.0A CN201410723738A CN105721332A CN 105721332 A CN105721332 A CN 105721332A CN 201410723738 A CN201410723738 A CN 201410723738A CN 105721332 A CN105721332 A CN 105721332A
Authority
CN
China
Prior art keywords
packet
len
avg
queue
drop probability
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.)
Withdrawn
Application number
CN201410723738.0A
Other languages
English (en)
Inventor
于克东
仲建锋
王志忠
刘衡祁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen ZTE Microelectronics Technology Co Ltd
Original Assignee
Shenzhen ZTE Microelectronics Technology Co Ltd
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 Shenzhen ZTE Microelectronics Technology Co Ltd filed Critical Shenzhen ZTE Microelectronics Technology Co Ltd
Priority to CN201410723738.0A priority Critical patent/CN105721332A/zh
Priority to EP15864573.9A priority patent/EP3229424A4/en
Priority to PCT/CN2015/074835 priority patent/WO2016086551A1/zh
Publication of CN105721332A publication Critical patent/CN105721332A/zh
Withdrawn legal-status Critical Current

Links

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/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • H04L47/326Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames with random discard, e.g. random early discard [RED]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling

Abstract

本发明公开了一种基于改进的WRED的拥塞控制方法,根据平均包长确定接收到的数据包的丢弃概率;根据所确定的丢弃概率判断将所述数据包发送至队列或丢弃。本发明同时还公开了一种基于改进的WRED的拥塞控制装置。

Description

一种基于改进的WRED的拥塞控制方法和装置
技术领域
本发明涉及网络传输控制领域,具体涉及一种基于改进的WRED的拥塞控制方法和装置。
背景技术
网络拥塞容易造成延迟和吞吐量等服务质量(QoS,QualityofService)性能指标下降,是影响带宽、系统缓存等资源利用率的关键因素。因此,有效的拥塞避免机制对于提高路由器性能具有重要意义。
加权随机早期检测(WRED,WeightedRandomEarlyDetection)算法是现有拥塞避免机制中常用的一种丢弃算法。WRED算法的计算过程主要包括:平均队列深度计算、WRED丢弃概率的计算和WRED丢弃判断,其丢弃曲线如图1所示。图1中,横轴avg_q_length表示队列准备丢弃数据包前队列当前的平均队列深度,该参数反映出队列深度的变化趋势;纵轴P表示丢弃概率,其反映出数据包被丢弃的可能性;min_th表示平均队列深度最小门限;max_th表示平均队列深度最大门限;maxP表示最大丢弃概率;其中,min_th、max_th和maxP的取值可根据需要进行设置。从图1可以看出,丢弃数据包的可能性随着平均队列深度向最大门限max_th靠近而不断上升。当平均队列深度达到最大门限max_th时,数据包丢弃概率达到设置的最大丢弃概率maxP。当平均队列深度超过最大门限max_th时,所有其它试图进入队列的数据包都被丢弃;因此,在实际应用中可以调节min_th和max_th的取值来增大或降低丢包程度;而从图1可以看出maxP的取值是与min_th和max_th的取值直接相关的,也就是说,确定了min_th和max_th的取值则maP的值也就确定了;实际中min_th和max_th的取值与传输的数据包的业务类型相关,例如,电信业务、上网业务、视频传输业务等等,不同的业务对丢包的容忍程度不同,对于丢包容忍程度低的业务来说,可以将max_th设置的相对较小;对于丢包容忍程度高的业务来说,可以将max_th的值设置的相对大些。
WRED算法在拥塞控制中的处理流程如图2所示,主要包括以下处理步骤:
S201:计算平均队列深度;
数据包进入拥塞控制系统时,首先进行平均队列深度的计算。平均队列深度能够从总体变化趋势上反映真实的队列深度,同时可以平滑掉流量突发,不会因为偶尔的流速升高或降低而引起对流量总体情况判定的改变。平均队列深度的计算公式为Avg=Avg’+Wq(Q_length-Avg’)。其中,Avg’为上次计算的队列的平均深度,由于在WRED算法中每接收到一个数据包需要需要判断将该数据包加入队列或丢弃,因此,当将数据包加入队列时,队列的深度将发生变化,因此,该参数反映出从接收到第一个数据包到上一次接收到数据包时,队列深度的变化趋势;当接收到第一个数据包时,Avg’的取值为0,并计算出当前的平均队列深度,之后,当接收到第二个数据包时,根据上一次计算出的队列深度、当前队列深度以及权重值Wq确定出当前的平均队列深度,以此类推,不断循环迭代;Q_length为当前队列深度,也就是,接收到数据包时,当前队列的深度;Wq为计算权重,Avg为当前队列的平均深度。
步骤S202:判断平均队列深度是否满足丢弃条件;
具体的,若平均队列深度大于等于预先设置的平均深度最大门限max_th,则确定该数据包满足丢弃条件,直接转至步骤S206,丢弃当前数据包;若不满足,则转步骤S203继续处理。
步骤S203:判断平均队列深度是否满足入队条件;
也就是判断当前的平均队列深度是否满足将该数据包直接加入数据包队列的条件;具体的,当平均队列深度小于平均数据包深度的最小门限min_th时,可以确定该数据包满足直接加入数据包队列的条件,则转至步骤S207,将该数据包直接入队;当该平均队列深度不满足入队条件时,即,当前平均队列深度属于[min_th,max_th]区间范围内时,转至步骤S204继续执行。
步骤S204:计算丢弃概率;
具体的,根据当前数据包的长度和平均队列深度计算该数据包的丢弃概率P。
步骤205:判断丢弃概率是否大于R;
确定当前数据包的丢弃概率之后,将所确定的丢弃概率和系统生成的R[0,1]区间内的随机数R进行比较;若丢弃概率大于R,则转至步骤S206直接丢弃该数据包;若丢弃概率小于等于R,则转至步骤S207,将该数据包加入队列。
在上述方案中,进行WRED丢弃概率计算和基于丢弃概率的WRED丢弃判断方法多种多样,其中,一种基于等价包长的计算方法,其基本方案如下:将可支持的数据包的包长范围划分为若干区间;为每个区间设置不同的等价包长;根据接收数据包的包长查找该接收数据包的归属区间,并根据找到的归属区间确定该接收数据包的等价包长;根据以下计算公式计算接收数据包的丢弃概率:
Pb ′ = packet _ size max _ packet _ size × ( avg _ q _ len - min th ) max p max th - min th ,
其中,packet_size_new表示等价包长,max_packet_size表示可支持数据包的最大包长,avg_q_length表示队列的平均深度,max_th表示队列平均深度的最大门限值,min_th表示队列平均深度的最小门限值,maxP表示接收数据包的最大丢弃概率maxP;
实际应用当中,该方案对于包长的分段处理较为复杂,增加了设计的复杂度;而且该方案的离散性突出,处于同一包长范围内的数据包在同等条件下的丢弃概率是固定的,不能根据实际的数据包长度变化趋势来平滑改变各个包长的丢弃概率;且对于短包丢弃概率过小,提前丢弃性能退化。
发明内容
为了解决现有存在的技术问题,本发明实施例期望提供一种基于改进的WRED的拥塞控制方法和装置。
本发明实施例提供了一种基于改进的WRED的拥塞控制方法,所述方法包括:
根据平均包长确定接收到的数据包的丢弃概率;
根据所确定的丢弃概率判断将所述数据包发送至队列或丢弃。
上述方案中,通过以下公式确定接收到的数据包的丢弃概率Pb':
Pb ′ = Avg Packet _ Len max _ packet _ size × ( avg _ q _ len - min th ) max p max th - min th ,
其中,Avgpacket_Len表示平均包长、max_packet_size表示可支持数据包的最大包长、avg_q_len表示队列的平均深度、minth表示队列平均深度的最小门限值、maxth表示队列平均深度的最大门限值、maxp表示接收数据包的最大丢弃概率。
上述方案中,通过以下公式确定接收到的数据包的平均包长Avgpacket_Len
AvgPacket_Len=Avg'Packet_Len+Wp(Packet_Len-Avg'Packet_Len),
其中,Avg'packet_Len为历史平均包长;packet_Len为接收到的数据包的包长;Wp为计算权重。
上述方案中,所述Wp取值为2n,其中,n为负整数。
上述方案中,通过以下方式判断将所述数据包发送至数据包队列或丢弃:
当Pb'<R时,确定丢弃所述数据包;
当Pb'>=R时,确定将所述数据包发送至所述队列;
其中,Pb'所述数据包的丢弃概率,R为[0,1]范围内的随机数。
本发明实施例提供了一种基于改进的加权随机早期检测WRED的拥塞控制装置,所述装置包括:丢弃概率确定模块、判断模块和数据包处理模块;其中,
所述丢弃概率确定模块,用于根据平均包长确定接收到的数据包的丢弃概率;
所述判断模块,用于根据所确定的丢弃概率判断将所述当前数据包发送至队列还是丢弃,并在得到判断结果之后,触发处理模块;
所述处理模块,用于被判断模块触发时,根据判断结果将所述数据包发送至队列或丢弃。
上述方案中,所述丢弃概率确定模块用于通过以下公式确定接收到的数据包的丢弃概率Pb':
Pb &prime; = Avg Packet _ Len max _ packet _ size &times; ( avg _ q _ len - min th ) max p max th - min th ,
其中,Avgpacket_Len表示平均包长、max_packet_size表示可支持数据包的最大包长、avg_q_len表示队列的平均深度、minth表示队列平均深度的最小门限值、maxth表示队列平均深度的最大门限值、maxp表示接收数据包的最大丢弃概率。
上述方案中,所述丢弃概率确定模块通过以下公式确定平均包长Avgpacket_Len
AvgPacket_Len=Avg'Packet_Len+Wp(Packet_Len-Avg'Packet_Len),
其中,Avg'packet_Len为历史平均包长;packet_Len为当前包长;Wp为计算权重。
上述方案中,所述Wp取值为2n,其中,n为负整数。
上述方案中,所述判断模块通过以下方式判断将所述数据包发送至数据包队列或丢弃:
当Pb'<R时,确定丢弃所述数据包;
当Pb'>=R时,确定将所述数据包发送至所述队列;
其中,Pb'所述数据包的丢弃概率,R为[0,1]范围内的随机数。
本发明实施例所提供的一种基于改进的WRED的拥塞控制方法及装置,根据平均包长确定接收数据包的丢弃概率;根据所确定的丢弃概率判断将所述数据包发送至队列或丢弃。如此,采用本发明实施例提供的方法通过平均包长确定接收数据包的丢弃概率时,同一包长范围内的数据包在同等条件下的丢弃概率并不是固定的,而可以根据实际的数据包长度变化趋势来平滑改变各个包长的丢弃概率,从而大大改善现有技术中长包和短包丢弃概率悬殊的问题,且保证了长包丢弃概率大于短包丢弃概率;另一方面,本发明实施例提供的方法设计复杂度低,便于实现。
附图说明
图1为现有技术中WRED算法丢弃曲线图;
图2为现有技术中WRED算法在拥塞控制中的处理流程图;
图3为本发明实施例提供的基于改进的WRED的拥塞控制方法流程图;
图4为本发明实施例提供的基于改进的WRED的拥塞控制方法的丢包概率和权重值的关系曲线图;
图5为本发明实施例提供的基于改进的WRED的拥塞控制装置的基本结构图。
具体实施方式
本发明实施例中,基于改进的WRED的拥塞控制方法及装置,根据平均包长确定接收数据包的丢弃概率;根据所确定的丢弃概率判断将所述数据包发送至队列或丢弃。
下面通过附图及具体实施例对本发明做进一步的详细说明。
实施例一
本发明实施例一提供了一种基于改进的WRED的拥塞控制方法,如图3所示,该方法包括以下步骤:
步骤301:根据平均包长确定接收数据包的丢弃概率;
具体的,本发明实施例提供的方法主要可应用于路由器、交换机等网络传输设备之上;
具体的,所述根据平均包长确定接收数据包的丢弃概率为:
通过以下公式确定接收到的数据包的丢弃概率Pb':
Pb &prime; = Avg Packet _ Len max _ packet _ size &times; ( avg _ q _ len - min th ) max p max th - min th ,
其中,Avgpacket_Len表示平均包长、max_packet_size表示可支持数据包的最大包长、avg_q_len表示队列的平均深度、minth表示队列平均深度的最小门限值、maxth表示队列平均深度的最大门限值、maxp表示接收数据包的最大丢弃概率。
其中,maxp的取值区间为(0%,100%];
当前的平均包长Avgpacket_Len可以通过下式确定:
AvgPacket_Len=Avg'Packet_Len+Wp(Packet_Len-Avg'Packet_Len),
其中,Avg'packet_Len为历史平均包长,该参数反映出接收到的数据包的包长变化趋势,而在当前的平均包长计算过程中,需要综合考虑之前的平均包长以及当前接收到的数据包的包长;packet_Len为当前接收到的数据包的包长,Wp为计算权重。
当第一次计算Avgpacket_Len时,Avg'packet_Len的初始值在实际应用中可以根据需要进行设置和调整,例如,可以设置为网络传输设备可支持的包长范围的中间值、或设置为特定包长值、或者设置为网络传输设备所接收到的第一个数据包的包长值等等。
在实际应用中通过调节Wp的取值也可以改变数据包对平均包长的影响程度,从而调节长包和短包之间的丢弃概率差值;通常Wp取值为2n,其中,n可以为任意负整数。
长包和短包之间的丢弃概率随权重值的增大而增大,随权重值的减小而减小;也就是说,当需要使长包和短包之间的丢弃概率差别趋小时,可以减小权重值;当需要使长包和短包之间的丢弃概率差别趋大时,可以增大权重值。
需要说明的是,本发明实施例的重点在于将平均包长应用到数据包丢弃概率的计算方法当中,而平均包长的计算方法多种多样,此处所提及的平均包长计算方法只是其中一种,在实际应用中还可以采用其它能够计算平均包长的方案确定平均包长。
步骤302:根据确定的丢弃概率判断将所述数据包发送至队列或丢弃;
步骤301中确定了数据包的丢弃概率之后,通过以下方式判断是否将所述数据包发送至数据包队列:
当Pb'>=R时,确定将所述数据包发送至所述队列。
通过以下方式判断是否将所述数据包丢弃:
当Pb'<R时,确定丢弃所述数据包。
具体的,Pb'为数据包的丢弃概率,R为[0,1]范围内的随机数,需要说明的是,R的值在每一次判定丢弃数据包或将数据包发送至队列时,随机产生。
下面结合一个实例对本发明的具体实施过程和效果进行说明。
现有技术的WRED算法中,丢弃概率计算公式如下:
Pb &prime; = packet _ size max _ packet _ size &times; ( avg _ q _ len - min th ) max p max th - min th ,
式中,packet_size为数据包长度,max_packet_size表示可支持数据包的最大包长、avg_q_len表示队列的平均深度、minth表示队列平均深度的最小门限值、maxth表示队列平均深度的最大门限值、maxp表示接收数据包的最大丢弃概率maxp的取值区间是(0%,100%]。
由上式可知,在包长较小的情况下,丢弃概率是非常小的,WRED的作用退化到相当于TD的功能。
依据上式,对于包长为16Bytes的数据包,即使当maxp=1,avg_q_len=maxth时,根据公式计算得到的丢弃概率Pb’最大也仅为0.1%。当平均队列深度avg_q_len接近最大丢弃阈值maxth时本应该快速丢包,但依据上式计算的丢弃概率判断,发送1000个16Bytes的数据包只会丢1个包,即,数据包几乎不丢弃、全部入队,从而导致avg_q_len不断增大,直至大于maxth,所有进入的数据包被判决为丢弃。此时,体现不出WRED算法提前丢弃的功能,WRED算法退化为TD算法。
而对于包长为16KByetes的数据包,此时的丢弃概率Pb’为100%,即此包长的包全部被丢弃。从而上述算法将形成长包和短包丢弃概率相差悬殊的情况,且最终退变为TD算法。
通过本发明实施例引入平均包长机制之后,将实际包长修改为平均包长,也就将上式修改为:
Pb &prime; = Avg Packet _ Len max _ packet _ size &times; ( avg _ q _ len - min th ) max p max th - min th
其中,AvgPacket_Len=Avg'Packet_Len+Wp(Packet_Len-Avg'Packet_Len)
依据上述公式,在相同条件下,即maxp=1,avg_q_len=maxth。假如Avg'packet_Len的初始值取包长的中间值8Kbytes,Wp取值为2-8
对于包长packet_size为16Bytes的数据包,此时新计算得到的平均包长为:7.75025Kbytes,计算得到的丢弃概率为48.44%,远大于之前计算得到的0.1%的丢弃概率,能够达到WRED算法提前丢弃的效果。
对于包长packet_size为16KBytes的数据包,此时新计算得到的平均包长为:8.125Kbytes,计算得到的丢弃概率为50.78%,小于之前计算得到的100%的丢弃概率。
由此可见,采用本发明实施例改善后的WRED算法对所有包长均起到提前丢弃的作用,大大改善之前长包和短包丢弃概率悬殊的问题,且保证了长包丢弃概率大于短包丢弃概率。
另外,还可以通过调节权重Wp的值来改变新数据包对平均包长的影响度,从而调节长包和短包之间的丢弃概率差值。
例如,将Wp增大为2-1,同样的计算条件下,16Bytes长度的数据包丢弃概率为25.05%,16KBytes长度的数据包丢弃概率为75%,此时,两者的丢弃概率差值拉大为50.0%,比在Wp=2-8时长包和短包之间的丢弃概率差值3.2%明显增大。同样的,表1列举出了同等条件下其他权重情况下,长包和短包的丢弃概率,需要说明的是,表1仅以n为从-10至-1区间内的权重情况下长包和短包的丢弃概率为例进行对比说明,其它情况则不一一列举。
Wp 16Bytes包的丢弃概率 16KBytes包的丢弃概率
2-1 0.2505 0.75
2-2 0.37525 0.625
2-3 0.437625 0.5625
2-4 0.468813 0.53125
2-5 0.484406 0.515625
2-6 0.492203 0.507813
2-7 0.496102 0.503906
2-8 0.498051 0.501953
2-9 0.499025 0.500977
2-10 0.499513 0.500488
表1
将以上数据结果绘制成曲线图,如图4所示,纵轴代表丢包概率,横轴代表Wp,横轴上由1-10分别代表Wp取值为2-1、2-2、2-3、2-4,依此类推直到2-10,从该图中可以清晰看出,当增大权重时,长包和短包之间的丢弃概率差别趋大;当减小权重时,长包和短包之间的丢弃概率差别趋小。同时,始终保证同等条件下长包的丢弃概率高于短包的丢弃概率。
由此可见,通过调节权重Wp可以达到调节长包和短包之间的丢弃概率差值的目的,能够很好的适应用户需求。
实施例二
本发明实施例二提供了一种基于改进的加权随机早期检测WRED的拥塞控制装置,如图5所示,所述装置包括:丢弃概率确定模块51、判断模块52和数据包处理模块53;其中,
所述丢弃概率确定模块51,用于根据平均包长确定接收数据包的丢弃概率;
所述判断模块52,用于根据所确定的丢弃概率判断将所述数据包发送至队列或丢弃,并在得到判断结果之后,触发处理模块53;
所述处理模块53,用于被判断模块52触发时,根据判断结果将所述数据包发送至队列或丢弃。
其中,所述丢弃概率确定模块51具体用于通过以下公式确定接收到的数据包的丢弃概率Pb':
Pb &prime; = packet _ size max _ packet _ size &times; ( avg - min th ) max p max th - min th ,
其中,Avgpacket_Len表示平均包长、max_packet_size表示可支持数据包的最大包长、avg_q_len表示队列的平均深度、minth表示队列平均深度的最小门限值、maxth表示队列平均深度的最大门限值、maxp表示接收数据包的最大丢弃概率。
具体的,所述丢弃概率确定模块51通过以下公式确定平均包长Avgpacket_Len
AvgPacket_Len=Avg'Packet_Len+Wp(Packet_Len-Avg'Packet_Len),
其中,Avg'packet_Len为历史平均包长;packet_Len为当前包长;Wp为计算权重。
其中,所述Wp取值为2n,n可以为任意负整数;长包和短包之间的丢弃概率随权重值的增大而增大,随权重值的减小而减小;也就是说,当需要使长包和短包之间的丢弃概率差别趋小时,可以减小权重值;当需要使长包和短包之间的丢弃概率差别趋大时,可以增大权重值。
所述判断模块52具体用于通过以下方式判断将所述数据包发送至数据包队列或丢弃:
当Pb'<R时,确定丢弃所述数据包;
当Pb'>=R时,确定将所述数据包发送至所述队列;
其中,Pb'所述数据包的丢弃概率,R为[0,1]范围内的随机数。
在具体实施过程中,上述丢弃概率确定模块51、判断模块52和数据包处理模块53可以由网络传输设备内的中央处理器(CPU,CentralProcessingUnit)、微处理器(MPU,MicroProcessingUnit)、数字信号处理器(DSP,DigitalSignalProcessor)或可编程逻辑阵列(FPGA,Field-ProgrammableGateArray)来实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (10)

1.一种基于改进的加权随机早期检测WRED的拥塞控制方法,其特征在于,所述方法包括:
根据平均包长确定接收到的数据包的丢弃概率;
根据所确定的丢弃概率判断将所述数据包发送至队列或丢弃。
2.根据权利要求1所述的方法,其特征在于,通过以下公式确定接收到的数据包的丢弃概率Pb':
Pb &prime; = Avg Packet _ Len max _ packet _ size &times; ( avg _ q _ len - min th ) max p max th - min th ,
其中,Avgpacket_Len表示平均包长、max_packet_size表示可支持数据包的最大包长、avg_q_len表示队列的平均深度、minth表示队列平均深度的最小门限值、maxth表示队列平均深度的最大门限值、maxp表示接收数据包的最大丢弃概率。
3.根据权利要求1或2所述的方法,其特征在于,通过以下公式确定接收到的数据包的平均包长Avgpacket_Len
AvgPacket_Len=Avg'Packet_Len+Wp(Packet_Len-Avg'Packet_Len),
其中,Avg'packet_Len为历史平均包长;packet_Len为接收到的数据包的包长;Wp为计算权重。
4.根据权利要求3所述的方法,其特征在于,所述Wp取值为2n,其中,n为负整数。
5.根据权利要求1所述的方法,其特征在于,通过以下方式判断将所述数据包发送至数据包队列或丢弃:
当Pb'<R时,确定丢弃所述数据包;
当Pb'>=R时,确定将所述数据包发送至所述队列;
其中,Pb'所述数据包的丢弃概率,R为[0,1]范围内的随机数。
6.一种基于改进的加权随机早期检测WRED的拥塞控制装置,其特征在于,所述装置包括:丢弃概率确定模块、判断模块和数据包处理模块;其中,
所述丢弃概率确定模块,用于根据平均包长确定接收到的数据包的丢弃概率;
所述判断模块,用于根据所确定的丢弃概率判断将所述当前数据包发送至队列还是丢弃,并在得到判断结果之后,触发处理模块;
所述处理模块,用于被判断模块触发时,根据判断结果将所述数据包发送至队列或丢弃。
7.根据权利要求6所述的装置,其特征在于,所述丢弃概率确定模块用于通过以下公式确定接收到的数据包的丢弃概率Pb':
Pb &prime; = Avg Packet _ Len max _ packet _ size &times; ( avg _ q _ len - min th ) max p max th - min th ,
其中,Avgpacket_Len表示平均包长、max_packet_size表示可支持数据包的最大包长、avg_q_len表示队列的平均深度、minth表示队列平均深度的最小门限值、maxth表示队列平均深度的最大门限值、maxp表示接收数据包的最大丢弃概率。
8.根据权利要求6或7所述的装置,其特征在于,所述丢弃概率确定模块通过以下公式确定平均包长Avgpacket_Len
AvgPacket_Len=Avg'Packet_Len+Wp(Packet_Len-Avg'Packet_Len),
其中,Avg'packet_Len为历史平均包长;packet_Len为当前包长;Wp为计算权重。
9.根据权利要求8所述的装置,其特征在于,所述Wp取值为2n,其中,n为负整数。
10.根据权利要求6所述的装置,其特征在于,所述判断模块通过以下方式判断将所述数据包发送至数据包队列或丢弃:
当Pb'<R时,确定丢弃所述数据包;
当Pb'>=R时,确定将所述数据包发送至所述队列;
其中,Pb'所述数据包的丢弃概率,R为[0,1]范围内的随机数。
CN201410723738.0A 2014-12-03 2014-12-03 一种基于改进的wred的拥塞控制方法和装置 Withdrawn CN105721332A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201410723738.0A CN105721332A (zh) 2014-12-03 2014-12-03 一种基于改进的wred的拥塞控制方法和装置
EP15864573.9A EP3229424A4 (en) 2014-12-03 2015-03-23 Improved wred-based congestion control method and device
PCT/CN2015/074835 WO2016086551A1 (zh) 2014-12-03 2015-03-23 一种基于改进的wred的拥塞控制方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410723738.0A CN105721332A (zh) 2014-12-03 2014-12-03 一种基于改进的wred的拥塞控制方法和装置

Publications (1)

Publication Number Publication Date
CN105721332A true CN105721332A (zh) 2016-06-29

Family

ID=56090901

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410723738.0A Withdrawn CN105721332A (zh) 2014-12-03 2014-12-03 一种基于改进的wred的拥塞控制方法和装置

Country Status (3)

Country Link
EP (1) EP3229424A4 (zh)
CN (1) CN105721332A (zh)
WO (1) WO2016086551A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107426111A (zh) * 2017-05-27 2017-12-01 东南大学 硬件可实现的基于wred算法的拥塞控制方法和装置
WO2020119202A1 (zh) * 2018-12-12 2020-06-18 深圳市中兴微电子技术有限公司 拥塞控制方法及装置、网络设备及存储介质

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10015048B2 (en) 2014-12-27 2018-07-03 Intel Corporation Programmable protocol parser for NIC classification and queue assignments
US9825862B2 (en) 2015-08-26 2017-11-21 Barefoot Networks, Inc. Packet header field extraction
US9912774B2 (en) 2015-12-22 2018-03-06 Intel Corporation Accelerated network packet processing
US10735331B1 (en) 2016-12-09 2020-08-04 Barefoot Networks, Inc. Buffer space availability for different packet classes
US10708189B1 (en) 2016-12-09 2020-07-07 Barefoot Networks, Inc. Priority-based flow control
US11245572B1 (en) 2017-01-31 2022-02-08 Barefoot Networks, Inc. Messaging between remote controller and forwarding element
US10412018B1 (en) 2017-03-21 2019-09-10 Barefoot Networks, Inc. Hierarchical queue scheduler
US10686735B1 (en) 2017-04-23 2020-06-16 Barefoot Networks, Inc. Packet reconstruction at deparser
CN106992939B (zh) * 2017-05-16 2023-10-10 新疆安迪星通信息科技有限公司 一种卫星IP网络QoS流控门限动态学习系统及方法
US10505861B1 (en) 2017-07-23 2019-12-10 Barefoot Networks, Inc. Bus for providing traffic management statistics to processing pipeline
US10594630B1 (en) 2017-09-28 2020-03-17 Barefoot Networks, Inc. Expansion of packet data within processing pipeline

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1059774A2 (en) * 1999-06-02 2000-12-13 Nortel Networks Limited Method and apparatus for queue modeling
CN1921450A (zh) * 2006-08-25 2007-02-28 华为技术有限公司 数据流量控制装置与流量控制方法
CN101562566A (zh) * 2009-06-04 2009-10-21 吉林大学 基于实时路由器缓存占有率的主动队列管理方法
CN102629910A (zh) * 2012-02-14 2012-08-08 中兴通讯股份有限公司 一种基于加权随机早期检测的拥塞避免方法和系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040246895A1 (en) * 2003-06-09 2004-12-09 Telefonaktiebolaget Lm Ericsson (Publ) Bandwidth-limited supervisory packet transmission to control congestion and call establishment in packet-based networks
US8005106B2 (en) * 2009-05-21 2011-08-23 Cisco Technology, Inc. Apparatus and methods for hybrid fair bandwidth allocation and drop precedence
KR101640017B1 (ko) * 2011-12-23 2016-07-15 한국전자통신연구원 패킷 전송 장비 및 그것의 트래픽 관리 방법
CN102833159B (zh) * 2012-08-16 2015-10-21 中兴通讯股份有限公司 报文拥塞处理方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1059774A2 (en) * 1999-06-02 2000-12-13 Nortel Networks Limited Method and apparatus for queue modeling
CN1921450A (zh) * 2006-08-25 2007-02-28 华为技术有限公司 数据流量控制装置与流量控制方法
CN101562566A (zh) * 2009-06-04 2009-10-21 吉林大学 基于实时路由器缓存占有率的主动队列管理方法
CN102629910A (zh) * 2012-02-14 2012-08-08 中兴通讯股份有限公司 一种基于加权随机早期检测的拥塞避免方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
陈刚、洪佩琳、李津生: "因特网路由器拥塞控制算法", 《现代电信科技》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107426111A (zh) * 2017-05-27 2017-12-01 东南大学 硬件可实现的基于wred算法的拥塞控制方法和装置
WO2020119202A1 (zh) * 2018-12-12 2020-06-18 深圳市中兴微电子技术有限公司 拥塞控制方法及装置、网络设备及存储介质

Also Published As

Publication number Publication date
WO2016086551A1 (zh) 2016-06-09
EP3229424A1 (en) 2017-10-11
EP3229424A4 (en) 2017-12-13

Similar Documents

Publication Publication Date Title
CN105721332A (zh) 一种基于改进的wred的拥塞控制方法和装置
EP3565197B1 (en) Path selection method and device
Liu et al. TCP-Illinois: A loss and delay-based congestion control algorithm for high-speed networks
CN107171969B (zh) 一种数据传输方法、装置及系统
US20130286834A1 (en) Traffic management apparatus for controlling traffic congestion and method thereof
US20210119922A1 (en) Network Configuration Method and Device
WO2019011338A1 (zh) 一种最短路径确定方法及控制器
US8699337B2 (en) Communication terminal which perform low-delay communication
CN102629910A (zh) 一种基于加权随机早期检测的拥塞避免方法和系统
Wallace et al. Concurrent multipath transfer using SCTP: Modelling and congestion window management
CN102833159B (zh) 报文拥塞处理方法及装置
CN105471757B (zh) 一种tcp拥塞控制方法及装置
WO2017161967A1 (zh) 包每秒流量监管方法、装置和计算机存储介质
CN104581821A (zh) 基于节点缓存长度公平分配速率的拥塞控制方法
WO2020210780A1 (en) Chunk based network qualitative services
CN104683259A (zh) Tcp拥塞控制方法及装置
US20090147676A1 (en) Communication system, communication terminal, relay node, communication method used therein, and program thereof
WO2013000116A1 (zh) 一种漏桶限速方法及装置
KR101818243B1 (ko) 통신 시스템의 적응적인 버퍼 관리 방법 및 장치
WO2015196385A1 (zh) 确定传输缓存量的方法和设备
CN105450441A (zh) 一种基于tcp协议的弱网加速方法和装置
Deng et al. An adaptive packet aggregation algorithm for wireless networks
WO2016000191A1 (zh) 传输拥塞的确定方法及装置
Chen et al. Fluid-flow Analysis of TCP Westwood with RED
US20150181456A1 (en) Frame transmission method and apparatus for controlling one-way delay

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication

Application publication date: 20160629

WW01 Invention patent application withdrawn after publication