发明名称 一种基于QUIC协议的拥塞改进方法
摘要 本发明提供了一种基于QUIC协议的拥塞改进方法,在拥塞算法中加入了时延的信息,并通过上一次RTT与当前RTT的比较,自适应地改变α的取值来判断当前网络的状况,然后根据当前网络状况调整当前的目标窗口值,接着基于cubic算法的三次增长曲线对拥塞窗口进行改变。这种改进方式能使得QUIC协议能够更及时准确地判断当前网络状况,并能够使拥塞窗口能够快速地改变以充分利用带宽。同时,在QUIC协议中存在最大拥塞窗口限制200,即无论拥塞窗口如何增长,都不会超过200,这种限制大大地降低了QUIC协议在高带宽长时延网络环境下的吞吐率。
申请公布号 CN105827537A 申请公布日期 2016.08.03
申请号 CN201610382182.2 申请日期 2016.06.01
申请人 四川大学 发明人 王俊峰;刘婷;高展;丁雪峰
分类号 H04L12/801(2013.01)I;H04L12/803(2013.01)I;H04L12/805(2013.01)I;H04L12/825(2013.01)I 主分类号 H04L12/801(2013.01)I
代理机构 成都信博专利代理有限责任公司 51200 代理人 张辉;崔建中
主权项 一种基于QUIC协议的拥塞改进方法,其特征在于,包括以下步骤:步骤1:每收到一个ACK帧,使用公式last_SRTT=SRTT更新上一个SRTT的值,同时更新当前SRTT的值,SRTT=0.875×SRTT+0.125×RTT,其中last_SRTT为上一次收到ACK时计算的平滑往返时延,SRTT为平滑的往返时延,RTT为数据包往返时延;步骤2,判断当前拥塞窗口是否处于慢启动阶段,若处于慢启动,则按照慢启动方式进行窗口增长,若处于拥塞避免阶段,则窗口增长方式为:步骤2.1:判断当前网络状态若当前窗口处于拥塞避免阶段,根据当前的SRTT以及最小RTT来预估排队的包的个数diff,判断当前的网络状态;所述diff计算方式为:Expected=cwnd/minRTT;Actual=cwnd/SRTT;diff=(Expected‑Actual)×minRTT;其中,cwnd为当前的拥塞窗口值,minRTT为测得的最小RTT的值,SRTT为当前平滑RTT,Expected为期望吞吐量,Actual为实际吞吐量;步骤2.2:对α的取值进行自适应地改变α为判断当前网络状况的一个参数,设α初始值设置为1,origin_cwnd为cubic三次增长曲线的目标窗口值,SRTT为当前平滑RTT,last_SRTT为上一次收到ACK帧时的平滑RTT的值,则α的自适应改变方法是:1)若diff<α,并且SRTT小于last_SRTT,同时α>1,则将origin_cwnd加1;2)若diff<α,并且SRTT大于last_SRTT,同时α>1,则α减去1;3)若diff<α,并且α等于1,则将origin_cwnd加1;4)若diff>α,并且SRTT大于last_SRTT,同时α>1,则α减去1;5)若diff>α,并且SRTT小于last_SRTT,则α加1;步骤2.3:判断当前拥塞窗口是否已经到达最大拥塞窗口值若未到达,则继续进行拥塞窗口的改变;若已到达,通过diff与α的比较来判断当前网络状态是否良好,具体为:若diff>α,则不再增加最大拥塞窗口的值;若diff<α,则增加最大拥塞窗口的值,即max_cwnd=max_cwnd+100,同时,若此时cwnd>=300,将epoch_start置为0,将last_max_cwnd设置为当前的最大拥塞窗口值,将α置为1,其中,max_cwnd为限制的最大拥塞窗口值,epoch_start为上次丢包发生的时刻,last_max_cwnd为上次丢包时的拥塞窗口值。
地址 610065 四川省成都市武侯区一环路南一段24号