CN110650095A - 一种对拥塞控制算法的改进方法 - Google Patents
一种对拥塞控制算法的改进方法 Download PDFInfo
- Publication number
- CN110650095A CN110650095A CN201810673144.1A CN201810673144A CN110650095A CN 110650095 A CN110650095 A CN 110650095A CN 201810673144 A CN201810673144 A CN 201810673144A CN 110650095 A CN110650095 A CN 110650095A
- Authority
- CN
- China
- Prior art keywords
- congestion control
- congestion
- algorithm
- network
- wavelength
- 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.)
- Pending
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/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- 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
- H04L47/127—Avoiding congestion; Recovering from congestion by using congestion prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/163—In-band adaptation of TCP data exchange; In-band control procedures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及网络传输领域,具体涉及一种对拥塞控制算法的改进方法,为解决现有网络和协议方面存在的缺陷,本发明借鉴了排队理论和自然界中的波动现象,将传统的拥塞控制算法进行分段,并且保证其原始算法特性;所述分段的算法将各自是连续的,方便建立数学模型进行分析,在每段函数的交界处可以有极点存在,不论波长如何变化,均要保证整个算法的连续和收敛特性;本方法中,分段的函数也称子函数,它们的累加将构成原始拥塞控制算法。本发明的改进方法可以应用于拥塞控制的各个层面,比如传输层的TCP、应用层的UDT、QUIC等,其中对用户层的拥塞控制做改进能更好的实现方法,结合DPDK和SDN,并对带宽的估计更加准确,这种拥塞控制改进所产生的效益将会更加明显。
Description
技术领域
本发明涉及网络传输领域,具体涉及一种对拥塞控制算法的改进方法。
背景技术
报道公开了随着互联网的发展,网络流量迅猛增长,互联网越来越拥堵不堪。为了实现速率和带宽的平衡,业界提出了许多算法,用来改进用户体验,例如BBR、Reno、QUIC、CUBIC、UDT等。这些算法是对TCP和UDP的综合权衡结果。TCP/IP协议栈运行几十年来,已经嵌入到了若干操作系统内核中,即使对TCP协议有改进的算法,也很难得到推广,所以业界便对应用层的传输协议研究比较多。但是不管最近几年流行的QUIC协议,还是TCP协议本身,它们均对改善全网的拥塞状况,表现不佳。业内在提升带宽利用率和用户体验的同时,还必须兼顾公平性。
业内知悉,拥塞控制是一个系统工程,必须结合全网的带宽资源、流量和链路状况、服务器端的系统开销、BDP、协议算法等方面做全面分析,达到一个综合的平衡结果。目前在应用层实现这种平衡的算法很多,比如博弈均衡理论等,但这些算法的共同特点是适应性不强、业务场景不够多样化、收敛速度不够快等。
从全网宏观和统计学的角度看,网络流量呈现总体上的波浪状况,像潮汐般起起伏伏,在流量从波峰到波谷的这段时间,网络带宽是有足够的余量的,但受限于当前的拥塞控制机制,即遇到拥塞时要减少发送速率,必须一段时间后才能发送窗口扩大,实践中,在流量从波峰跌落到波谷的这段时间,还是可以保证部分业务流量不受影响,甚至增加发送速率利用这部分带宽,进而从总体上使网络流量平滑成一条直线,一条接近网络带宽上限的直线。为了实现公平性、带宽利用率、时延、速率的综合优化,本发明拟提供一种对拥塞控制算法的改进方法。本发明的算法借鉴了排队理论和自然界中的波动现象。本发明的改进方法可以应用于拥塞控制的各个层面,比如传输层的TCP、应用层的UDT、QUIC等,其中对用户层的拥塞控制做改进能更好的实现方法,结合DPDK和SDN,并对带宽的估计更加准确,这种拥塞控制改进所产生的效益将会更加明显。
发明内容
本发明的目的在于克服现有传输协议中拥塞控制方面存在的不足,提供一种对拥塞控制算法的改进方法,以达到尽可能提高网络带宽利用率和网络性能的目的。
针对现有网络存在的问题,如:带宽利用率不高,出现拥塞、丢包和高BDP时网络状况较差,等,为了实现公平性、带宽利用率、时延、速率的综合优化,本发明提出了一种对拥塞控制算法的改进方法。本发明的算法借鉴排队理论和自然界中的波动现象,基于如下基础与分析:从全网宏观和统计学的角度看,网络流量呈现总体上的波浪状况,像潮汐般起起伏伏,在流量从波峰到波谷的这段时间,网络带宽是有足够的余量的,但受限于当前的拥塞控制机制,即遇到拥塞时就减少发送速率,所以必须一段时间后才能发送窗口扩大,而事实上,在流量从波峰跌落到波谷的这段时间,还是可保证部分业务流量不受影响,甚至增加发送速率利用这部分带宽,进而从总体上使网络流量平滑成一条直线,一条接近网络带宽上限的直线。具体来说,可以将所有的拥塞控制机制,主要是AIMD,等效为波函数去分析,慢启动、加性增和乘性减相当于波函数的一个周期,也可以将慢启动的开始到乘性减的结束理解为一个波长;当前的拥塞控制算法没有去调节这个波长,从全网的角度来看,所有业务流量的这个波长基本是一致的,步调一致的增加或者减少发送速率,很容易产生共振,易导致很快拥塞或者带宽利用率迅速减少;为了减少这种共振现象,本发明调节这个波长,让它处于可变状态,根据业务场景设置这个波长,比如一些实时流量可以将波长设置短一点,让它尽快传输,但容易受拥塞影响;一些非实时的流量,可以将波长设置长一点,让它传输减慢些,但受拥塞的影响会减少,本发明所改进的拥塞算法,如同多人同时并排通过较窄桥面的原理,当调整步调为不一致时则很难出现拥塞,本发明修改的拥塞算法中,由于调节波长为不一致,则很难出现拥塞。也就是步调不一致,这四个人很难出现并排的情况,也就是有前有后,大家都各走各的;从宏观角度看,桥上一直处于站满人的状态,带宽一直被占满,而且很难出现拥塞;这样从全网总体的角度来看,波长长的流量将会平滑掉由于拥塞导致的波峰到波谷的带宽和性能损失,最后从总体上使网络流量叠加为一种线性最优状态。
本发明对拥塞控制的改进方法,可以直接内置于传统的传输协议中,即,程序里仅需要做很小的改动,例如用f(t)表示传统拥塞控制算法,f(at)变为改进后的拥塞控制算法,a是可变量,用来调节拥塞算法的波长的,a与波长成反比关系;本发明中根据业务流量的类型,设置a的大小,比如对一些实时流量,可以将a增大,这样波长减小,能够更快收敛和适应网络状况。
具体的,为了解决现有网络和协议方面存在的缺陷,本发明提出了一种对传统拥塞控制协议进行改进的方法,所述方法包括:
将传统的拥塞控制算法进行分段,并且保证其原始算法特性;所述分段的算法将各自是连续的,方便建立数学模型进行分析,在每段函数的交界处可以有极点存在,不论波长如何变化,均要保证整个算法的连续和收敛特性;本方法中,分段的函数也称子函数,它们的累加将构成原始拥塞控制算法。
本发明中,子函数在程序中对应了部分的控制信息变化,比如窗口大小等参数,对这些控制信息进行分组,但该分组信息的变化将受到波长A的影响,控制信息的交互过程可以不受影响,以保持可扩展性和兼容性。
本发明中,将原始拥塞控制算法类比于波函数,波长调节因子A将可以同时调节每个子函数的形状,也即左右扩张和缩小的程度,通过波长控制整体流量的步调,保证其步调尽量错开,避免共振导致的拥塞情况;基于波函数的振幅设置为影响拥塞情况因素,而且波函数可以螺旋式上升或者下降,自动调节网络流量的带宽占用情况,因此,本发明中可不设置波函数的振幅。
本发明中,波长调节因子A既可以调节单一业务流量,使其对网络拥塞的鲁棒性增强,抵御来自网络拥塞造成的性能影响,也可以对多业务流量进行调节,结合博弈算法,便可以达到整体网络性能最优。
本发明中,为了使当前业务不受影响,改进的拥塞控制算法需适应当前业务应用场景,特别涉及到协议交互层面的数据包(拥塞控制协议要遵循标准化的流程),尽量不做波长调整,避免引起协议不兼容而导致业务崩溃,对于数据中心和个性化的应用场景,可以根据自身需要改进波长调节因子。
本发明中,波长调节因子是改进拥塞控制算法的核心部分,将拥塞控制算法的步调打乱,便可以从概率上大大减少拥塞发生的可能性,即使发生了拥塞,也不至于将全网带宽利用率降到很低,对波长因子的条件,可以根据业务类型、网络状况等条件做到博弈最佳状态。
更具体的,本发明的对拥塞控制算法的改进方法,其特征在于,其包括步骤:
1)将拥塞控制算法进行分段,所得分段函数构成拥塞控制函数;
2)将网络业务或者数据类型进行分类,其中每一类对应不同的波长调节因子;
3)按照波长调节因子对拥塞控制函数进行平移;
4)求出所有业务波长调节因子的最小公倍数,进而动态变化波长调节因子,避免拥塞。
本发明步骤1)中,为兼顾算法和协议的兼容性对拥塞控制算法的分段,如果不考虑兼容性,拥塞算法不必分段;
所述的步骤1)中,采用波函数去类比分析网络拥塞算法造成的流量的起伏。
本发明步骤2)对网络业务和数据包类型进行分类中,对不同的应用场景的业务进行分类,并且赋予不同的波长调节因子,实现业务的交叉传输,减小网络拥塞的可能性;
所述的波长控制因子对拥塞控制算法的收敛程度进行整体控制。
本发明步骤3)中,对不同业务进行不同程度的拥塞算法平移,使业务流量在传输过程中错开波峰或者波谷;
所述的步骤3)中,还包括:
对拥塞控制函数的平移包括线性平移,或任何形式的非线性平移;
其中,平移导致协议栈的部分控制信息需要改动,如ACK、NAK或cwnd,对所述协议层面的改动需参考波长调节因子作用过程。
本发明方法中,所述的平移过程参考博弈均衡等算法,达到性能和公平性的最优状态,确定最佳波长调节因子。
本发明步骤4)中,所有业务波长的最小公倍数确定网络拥塞的概率情况,对网络状况进行统计和预测,动态调整波长因子,对网络整体状况调节到最优。
本发明的技术效果在于:本方法通过改进传统拥塞控制算法,或者在新的拥塞控制算法上做改进,增加波长调节因子,使业务流量的状态和步调随机化,从而减少发生拥塞的概率和拥塞后造成的网络性能影响,提高了带宽利用率和网络整体性能。
下面结合附图和具体实施例对本发明做进一步的说明。为了更加清楚的理解本发明的处理流程和优点,对本发明中所使用的附图作简单的介绍,附图是示意性的而不应理解为对本发明进行任何限制。
附图说明
图1示出了本发明对拥塞控制的改进方法。
图2示出了本发明中TCP拥塞控制算法的函数分段示意图。
图3示出了本发明中TCP拥塞改进效果示意图。
图4示出了本发明中波长调节因子的确定示意图。
图5示出了本发明相比于传统拥塞控制算法示意图。
具体实施方式
实施例1
如图1所示,用f(t)表示初始拥塞控制算法,t为传播轮次,f(t)=f1(t1)+f2(t2)+...+fn(tn),fn(tn)为拥塞控制算法中的子函数;例如在TCP的AIMD中,n=3,f1(t1),f2(t2),f3(t3)分别为慢启动、加性增和乘性减的曲线段函数,将拥塞控制算法曲线分为n段,第n段的函数用fn(tn)表示,并且响应的控制信息也要做出调整,调整的值是关于波长调节因素的函数;
确定波长调节因子Am,m为需要调节的因素数量,m的值可以根据业务类型、应用场景以及传输协议本身确定,波长调节因子主要调整f(t)的窗口cwnd等参数,f(t)的幅度,也即ssthresh等参数可不变,Am调节的是拥塞控制算法f(t)本身,而不仅仅是单个fn(tn),所有的fn(tn)将会以相同的梯度值根据Am进行平移。
如图2所示,其他拥塞控制算法类似,改进TCP拥塞控制算法的函数分段流程包括:
求出每段函数曲线fn(tn)的极值位置,即a,b,c,d;
以这些极值位置为基准,将拥塞曲线进行平移,建立新的拥塞曲线;
对m个业务流量或其他分类的流量进行类似的平移,得到各自的拥塞曲线,这个过程可以在程序中采用自适应算法,而不必手动计算或者预估;
对整体网络流量进行测试,观察拥塞和业务性能情况,进而为Am的最优化提供参考。
如图3所示,TCP部分拥塞改进效果调整如下:
两个业务流量类似于波动方程起起伏伏,当波长相等时,容易叠加到拥塞状态,当波长相互错开时,拥塞可能性便减少,Am减小时,波长变大,拥塞窗口cwnd的增长速率将会变慢;
波长变长,意味着业务对拥塞的反应将会迟钝,但鲁棒性较好,能更好适应网络拥塞事件;
程序中拥塞窗口的调节机制将会做修改,并且是关于波长调节因子的函数。
如图4所示,波长调节因子Am的确定过程如下:
波长调节因子根据业务的发送速率、带宽需求和类型确定,并不能保证每个业务都享有同样的公平性,但是从总体上是最佳的公平性;
类似于波函数叠加方程,m个业务,m个波长同时传播,将会在m个波长的最小公倍数M处产生共振进而造成拥塞,但由于M>1,比在1处就产生共振的传统拥塞控制算法,性能明显提升;
为了避免网络整体流量在M处产生共振,可以从整体上对流量进行预测,在业务流量即将产生拥挤时,及时对Am进行调整,这样可避免网络过度拥塞;对Am的确定,将会是带宽利用率、业务流量下载或上传速度等因素的博弈均衡。
如图5所示,同一时刻三个数据包在网络中的可能位置如图所示,可以看出:
假如信道容量是三个数据包,由于波长不一致,从概率学角度上,同一时刻,三个数据包同时并行传输所产生拥塞的概率将会降低,如果是m个波长,产生拥塞的概率将会更低;
传统拥塞控制算法,特别是TCP/IP协议栈,使用的是固定的机制,容易出现拥塞现象;结果显示,本发明方法相比传统拥塞控制算法,能更好的利用网络带宽和提高数据传送效率。
Claims (9)
1.一种对拥塞控制算法的改进方法,其特征在于,其包括步骤:
1)将拥塞控制算法进行分段,所得分段函数构成拥塞控制函数;
2)将网络业务或者数据类型进行分类,其中每一类对应不同的波长调节因子;
3)按照波长调节因子对拥塞控制函数进行平移;
4)求出所有业务波长调节因子的最小公倍数,进而动态变化波长调节因子,避免拥塞。
2.根据权利要求1所述的方法,其特征在于,所述的步骤1)中,为兼顾算法和协议的兼容性对拥塞控制算法的分段,如果不考虑兼容性,拥塞算法不必分段。
3.根据权利要求1所述的方法,其特征在于,所述的步骤1)中,采用波函数去类比分析网络拥塞算法造成的流量的起伏。
4.根据权利要求1所述的方法,其特征在于,所述的步骤2)对网络业务和数据包类型进行分类中,对不同的应用场景的业务进行分类,并且赋予不同的波长调节因子,实现业务的交叉传输,减小网络拥塞的可能性。
5.根据权利要求4所述的方法,其特征在于,所述的波长控制因子对拥塞控制算法的收敛程度进行整体控制。
6.根据权利要求1所述的方法,其特征在于,所述的步骤3)中,对不同业务进行不同程度的拥塞算法平移,使业务流量在传输过程中错开波峰或者波谷。
7.根据权利要求1所述方法,其特征在于,所述的步骤3)中,还包括:
对拥塞控制函数的平移包括线性平移,或任何形式的非线性平移;
其中,平移导致协议栈的部分控制信息需要改动,如ACK、NAK或cwnd,对所述协议层面的改动需参考波长调节因子作用过程。
8.根据权利要求1或7所述的方法,其特征在于,所述的平移过程参考博弈均衡等算法,达到性能和公平性的最优状态,确定最佳波长调节因子。
9.根据权利要求1所述方法,其特征在于,所述的步骤4)中,所有业务波长的最小公倍数确定网络拥塞的概率情况,对网络状况进行统计和预测,动态调整波长因子,对网络整体状况调节到最优。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810673144.1A CN110650095A (zh) | 2018-06-26 | 2018-06-26 | 一种对拥塞控制算法的改进方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810673144.1A CN110650095A (zh) | 2018-06-26 | 2018-06-26 | 一种对拥塞控制算法的改进方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110650095A true CN110650095A (zh) | 2020-01-03 |
Family
ID=68989085
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810673144.1A Pending CN110650095A (zh) | 2018-06-26 | 2018-06-26 | 一种对拥塞控制算法的改进方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110650095A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112422443A (zh) * | 2020-10-27 | 2021-02-26 | 鹏城实验室 | 一种拥塞算法的自适应控制方法、存储介质、设备及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101094047A (zh) * | 2007-07-06 | 2007-12-26 | 中国人民解放军国防科学技术大学 | 基于网络状态测量的分阶段慢启动传输控制方法 |
CN103067301A (zh) * | 2013-01-17 | 2013-04-24 | 广东石油化工学院 | 基于用户数据报协议的快速可靠的拥塞控制改进算法 |
CN105024940A (zh) * | 2015-07-16 | 2015-11-04 | 重庆大学 | 基于链路自适应的异构网络tcp拥塞控制方法 |
CN105827537A (zh) * | 2016-06-01 | 2016-08-03 | 四川大学 | 一种基于quic协议的拥塞改进方法 |
-
2018
- 2018-06-26 CN CN201810673144.1A patent/CN110650095A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101094047A (zh) * | 2007-07-06 | 2007-12-26 | 中国人民解放军国防科学技术大学 | 基于网络状态测量的分阶段慢启动传输控制方法 |
CN103067301A (zh) * | 2013-01-17 | 2013-04-24 | 广东石油化工学院 | 基于用户数据报协议的快速可靠的拥塞控制改进算法 |
CN105024940A (zh) * | 2015-07-16 | 2015-11-04 | 重庆大学 | 基于链路自适应的异构网络tcp拥塞控制方法 |
CN105827537A (zh) * | 2016-06-01 | 2016-08-03 | 四川大学 | 一种基于quic协议的拥塞改进方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112422443A (zh) * | 2020-10-27 | 2021-02-26 | 鹏城实验室 | 一种拥塞算法的自适应控制方法、存储介质、设备及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9998338B2 (en) | System and method for dynamic effective rate estimation for real-time video traffic | |
Lai et al. | A buffer-aware HTTP live streaming approach for SDN-enabled 5G wireless networks | |
US7190669B2 (en) | System, method and computer readable medium for flow control of data traffic | |
US8068436B2 (en) | Methods and systems for estimating network available bandwidth using packet pairs and spatial filtering | |
CN112954385B (zh) | 一种基于控制论和数据驱动的自适应分流决策方法 | |
US20130263200A1 (en) | Method for two time-scales video stream transmission control | |
WO2017084277A1 (zh) | 在线媒体服务的码流自适应方法及系统 | |
CN109698925B (zh) | 基于数据驱动的实时视频拥塞控制方法及装置 | |
Lan et al. | A deep reinforcement learning based congestion control mechanism for NDN | |
WO2015024158A1 (zh) | 一种准入控制方法和装置 | |
Abuteir et al. | SDN based architecture to improve video streaming in home networks | |
Kim et al. | XMAS: An efficient mobile adaptive streaming scheme based on traffic shaping | |
CN114422443A (zh) | 基于带宽估计和拥塞预测的卫星网络tcp拥塞控制方法 | |
CN113992987B (zh) | 一种适用于云游戏场景的智能码率调节系统及方法 | |
CN110650095A (zh) | 一种对拥塞控制算法的改进方法 | |
Vergados et al. | A fuzzy controller for rate adaptation in MPEG-DASH clients | |
Ben Ameur et al. | Combining traffic-shaping methods with congestion control variants for HTTP adaptive streaming | |
CN113891172A (zh) | 一种适于无线Mesh网络的基于RTT的自适应码率控制方法 | |
Dubin et al. | Progressive download video rate traffic shaping using tcp window and deep packet inspection | |
CN113328879B (zh) | 一种基于网络演算的云数据中心网络QoS保证方法 | |
Amiri et al. | SDN-enabled game-aware network management for residential gateways | |
CN115811799A (zh) | 一种基于ddpg的5g-tsn联合资源调度装置及方法 | |
Barzamini et al. | Congestion control of differentiated services networks by sliding mode control | |
Tosic et al. | Soft sensors in wireless networking as enablers for SDN based management of content delivery | |
CN102497312B (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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20200103 |
|
WD01 | Invention patent application deemed withdrawn after publication |