CN101969432A - 基于随机回退的tcp拥塞窗口的控制方法 - Google Patents
基于随机回退的tcp拥塞窗口的控制方法 Download PDFInfo
- Publication number
- CN101969432A CN101969432A CN2010102974607A CN201010297460A CN101969432A CN 101969432 A CN101969432 A CN 101969432A CN 2010102974607 A CN2010102974607 A CN 2010102974607A CN 201010297460 A CN201010297460 A CN 201010297460A CN 101969432 A CN101969432 A CN 101969432A
- Authority
- CN
- China
- Prior art keywords
- tcp
- congestion window
- random number
- cwnd
- congestion
- 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
Abstract
本发明公开了一种基于随机回退的TCP拥塞窗口的控制方法,其特征是在瓶颈节点拥塞时,每个TCP各自计算一个[0,1]范围内的随机数,然后每个TCP按照各自计算的随机数减少自己的拥塞窗口;在拥塞避免阶段,每个TCP各自计算一个[0,1]范围内的随机数,然后每个TCP按照各自计算的随机数增加自己的拥塞窗口。本发明通过随机调整TCP拥塞窗口,不需要TCP发送端的进行复杂的计算和带宽预测,减缓了TCP全局同步,提高了网络带宽的传输效率,适合在现有的Internet上使用。
Description
技术领域
本发明涉及数据通信领域,尤其涉及TCP(Transmission Control Protocol,传输控制协议)拥塞窗口随机回退的控制方法。
背景技术
TCP通过“慢启动”、“拥塞避免”、“快速重传”、“快速恢复”4个算法设置不同的参数来实现不同TCP拥塞控制,就是和式增加积式减少(AIMD,additive increase multiplicative decrease),TCP根据拥塞窗口来调整发送速度。瓶颈节点中最常用的队列管理策略是“弃尾”(Drop Tail),即随着缓冲区的溢出而丢包,是一种被动队列管理机制。“弃尾”的缺陷包括数据流的全局同步,缓冲区队列长度振荡以及持续队满造成的延迟较大等。当一个基于TCP协议的发送端检测到连续三个重复应答(ACK)或包的重传计时器超时,都进行重传,然后发送端减小发送窗口,进入慢启动或拥塞避免等拥塞控制阶段。这会立刻降低发送端的发送速率,以便减轻路由器拥塞。此后,发送端会逐渐将发送窗口恢复至拥塞发生前的大小。当多个相同控制方法的TCP都产生丢包时,它们都要减少自身发送速率,由于相同算法的TCP都按相同的系数减少发送速率,会造成路由器从拥塞状态进入低利用率状态,当探测到路由器空闲时,各发送端又增大发送速率,路由器又进入拥塞状态,如此往复,产生了“全局同步”问题。“全局同步”导致链路带宽的利用率下降,造成网络资源浪费。
发明内容
本发明的目的所要解决的问题就是为在网络发生拥塞时,TCP能按随机数调整拥塞窗口,缓和全局同步,提高网络资源的利用率,提出一种基于随机回退的TCP拥塞窗口的控制方法。
为了实现上述目的,本发明采用的技术方案是:
本发明只改变TCP拥塞控制过程中“快速重传”阶段的拥塞窗口减小机制和“拥塞避免”时的拥塞窗口增加机制,其余部分不涉及。
当瓶颈节点拥塞时,每个TCP各自计算一个[0,1]范围内的随机数,然后每个TCP按照各自计算的随机数减少自己的拥塞窗口,这样有的TCP拥塞窗口减少的多,而有的TCP拥塞窗口减少的少,每个TCP的发送速度减少不一致,避免瓶颈节点的发送速度减少过多而导致效率下降;在拥塞避免阶段,每个TCP各自计算一个[0,1]范围内的随机数,然后每个TCP按照各自计算的随机数增加自己的拥塞窗口,有的TCP拥塞窗口增加的多,而有的TCP拥塞窗口增加的少,这样每个TCP的发送速度增加不一致,这样防止发送速度过快地增长,有效延迟下次拥塞发生的时间和平缓拥塞窗口的波动。
对于每一个运行的TCP来说,具体包括如下步骤:
(1)按照当前拥塞窗口发送数据;
(2)收到应答信号,判断是否新数据包应答,如果是则到第(3)步,如果否则到第(6)步;
(3)判断数据是否发送完,如果是到第(9)步,如果否到第(4)步;
(4)判断TCP当前拥塞窗口是否大于等于慢启动阈值,也就是判断是否在拥塞避免阶段,如果是则到第(5)步,如果否则到第(8);
(5)则将其拥塞窗口的增加量设置为R(e,f)*1/Cwnd,R(e,f)表示为e到f之间的随机数,其中0≤e≤f≤1,Cwnd为当前的拥塞窗口,然后到第(1)步;
(6)则判断是否第3个非新数据包应答,也就是判断是否第3个重复应答,如果是则到第(7)步,如果否则到第(8)步;
(7)则其将其拥塞窗口的减少量设置为R(c,d)*Cwnd,Cwnd表示当前拥塞窗口,R(c,d)表示为c到d之间的随机数,其中0≤c≤d≤1,然后到第(1)步;
(8)TCP其它过程处理,不在本发明范围内,然后到第(1)步;
(9)该次发送结束。
TCP如果都按同样的量减少或增加拥塞窗口,必然会导致“全局同步”,在TCP都按照同样的量减少拥塞窗口时,经常会使瓶颈节点的发送速度下降到0,导致瓶颈节点空闲,利用率下降。因此,如果每个TCP随机减少拥塞窗口,会使瓶颈节点的发送速度下降到0的次数减少,从而提高网络的传输效率。
本发明通过随机调整TCP拥塞窗口,不需要TCP发送端的进行复杂的计算和带宽预测,减缓了TCP全局同步,提高了网络带宽的利用率,适合在现有的Internet上使用。
附图说明
图1是本发明方法的流程图;
图2是本发明方法进行测试的网络拓扑。
具体实施方式
下面结合附图对本发明作进一步详细说明。
在本发明的实例中,c,d,e,f取值为:c=0.2,d=0.55,e=0.38,f=1.0。
本发明中TCP按随机数调整拥塞窗口,Cwnd表示TCP拥塞窗口,每个TCP其处理方法如图1所示,
(1)TCP按照当前拥塞窗口发送数据;
(2)收到应答信号,判断是否新数据包应答,如果是则到第(3)步,如果否则到第(6)步;
(3)判断数据是否发送完,如果是到第(11)步,如果否到第(4)步;
(4)判断TCP当前拥塞窗口是否大于等于慢启动阈值,也就是判断是否在拥塞避免阶段,如果是则到第(5)步,如果否则到第(8);
(5)Cwnd=Cwnd+R(0.38,1.0)*1/Cwnd,R(0.38,1.0)表示为0.38到1.0之间的平均分布随机数,然后到第(1)步;
(6)则判断是否第3个非新数据包应答,也就是判断是否第3个重复应答,如果是则到第(7)步,如果否则到第(9)步;
(7)Cwnd=Cwnd-R(0.2,0.55)*Cwnd,Cwnd表示当前拥塞窗口,R(0.2,0.55)表示为0.2到0.55之间的平均分布随机数,然后到第(1)步;
(8)当前是慢启动阶段,Cwnd=Cwnd+1,然后到第(1)步;
(9)判断重复应答是否超过3个,如果是则到第(10)步,如果否则到第(1)步;
(10)Cwnd=Cwnd+1,然后到第(1)步;
(11)本次发送结束。
图2是本发明方法的测试网络环境,R0为瓶颈节点,瓶颈链路位于节点R0和节点R1之间,链路容量12Mbps,延时15ms,采用弃尾队列管理,缓存大小为30packets;节点Si均为持久性FTP业务源,他们与节点R0之间的链路容量均为20Mbps,延时15ms,向目标节点Di发送数据;节点Di与节点R1之间的链路容量均为20Mbps,延时15ms;数据包均为1040Byte(包括40Byte包头)。接收端Di的窗口设置足够大,使得TCP发送仅受拥塞窗口Cwnd控制。
表1是本发明方法图1实施例与目前Internet使用最广泛的TCP Rewnero在图2网络环境下进行比对,设置图2中的TCP发送节点S个数分别为2、4、6、8、10时,接收节点D个数同时也为2、4、6、8、10时,分别采用TCP Rewnero和本发明方法,统计100秒内瓶颈节点R0发送的有效数据包个数。由表1可见本发明方法的网络传输效率明显高于TCP Rewnero。
表1本发明方法与TCP Newreno比对结果
本实施例并非构成对本发明的限制,本领域技术人员在通过阅读本实施例后做出的等同变换,也属于本发明的保护范围。
Claims (2)
1.一种基于随机回退的TCP拥塞窗口的控制方法,其特征在于在瓶颈节点拥塞时,每个TCP各自计算一个[0,1]范围内的随机数,然后每个TCP按照各自计算的随机数减少自己的拥塞窗口;在拥塞避免阶段,每个TCP各自计算一个[0,1]范围内的随机数,然后每个TCP按照各自计算的随机数增加自己的拥塞窗口。
2.根据权利要求1所述的基于随机回退的TCP拥塞窗口的控制方法,其特征在于每一个运行的TCP的运行方式如下:
(1)按照当前拥塞窗口发送数据;
(2)收到应答信号,判断是否新数据包应答,如果是则到第(3)步,否则到第(6)步;
(3)判断数据是否发送完,如果是到第(9)步,否则到第(4)步;
(4)判断TCP当前拥塞窗口是否大于等于慢启动阈值,也就是判断是否在拥塞避免阶段,如果是则到第(5)步,否则到第(8);
(5)将TCP拥塞窗口的增加量设置为R(e,f)*1/Cwnd,R(e,f)表示为e到f之间的随机数,其中0≤e<f≤1,Cwnd为当前的拥塞窗口,然后到第(1)步;
(6)判断是否为第3个非新数据包应答,也就是判断是否第3个重复应答,如果是则到第(7)步,否则到第(8)步;
(7)将TCP拥塞窗口的减少量设置为R(c,d)*Cwnd,Cwnd表示当前拥塞窗口,R(c,d)表示为c到d之间的随机数,其中0≤c<d≤1,然后到第(1)步;
(8)该次发送结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102974607A CN101969432B (zh) | 2010-09-27 | 2010-09-27 | 基于随机回退的tcp拥塞窗口的控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102974607A CN101969432B (zh) | 2010-09-27 | 2010-09-27 | 基于随机回退的tcp拥塞窗口的控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101969432A true CN101969432A (zh) | 2011-02-09 |
CN101969432B CN101969432B (zh) | 2013-04-24 |
Family
ID=43548536
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010102974607A Expired - Fee Related CN101969432B (zh) | 2010-09-27 | 2010-09-27 | 基于随机回退的tcp拥塞窗口的控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101969432B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102082735A (zh) * | 2011-03-07 | 2011-06-01 | 江苏科技大学 | N次弃头的被动队列管理的方法 |
CN102088414A (zh) * | 2011-03-07 | 2011-06-08 | 江苏科技大学 | 随机和弃头结合的被动队列管理的方法 |
CN102104912A (zh) * | 2011-03-24 | 2011-06-22 | 黄东 | 一种基于异构业务的无线mesh网络的拥塞控制方法 |
CN102946361A (zh) * | 2012-10-16 | 2013-02-27 | 清华大学 | 基于交换机缓存分配的流量控制方法及系统 |
CN103067301A (zh) * | 2013-01-17 | 2013-04-24 | 广东石油化工学院 | 基于用户数据报协议的快速可靠的拥塞控制改进算法 |
CN103973416A (zh) * | 2014-05-15 | 2014-08-06 | 无锡信捷电气股份有限公司 | 一种基于改进型LwIP的多嵌入式视觉系统以太网防拥塞方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1405994A (zh) * | 2002-11-08 | 2003-03-26 | 清华大学 | Tp-s卫星信道专用传输协议及传输方法 |
-
2010
- 2010-09-27 CN CN2010102974607A patent/CN101969432B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1405994A (zh) * | 2002-11-08 | 2003-03-26 | 清华大学 | Tp-s卫星信道专用传输协议及传输方法 |
Non-Patent Citations (1)
Title |
---|
吴艳洁等: "TCP New Veno:一种改进的TCP拥塞控制机制", 《计算机应用与软件》, no. 2, 28 February 2010 (2010-02-28), pages 22 - 24 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102082735A (zh) * | 2011-03-07 | 2011-06-01 | 江苏科技大学 | N次弃头的被动队列管理的方法 |
CN102088414A (zh) * | 2011-03-07 | 2011-06-08 | 江苏科技大学 | 随机和弃头结合的被动队列管理的方法 |
CN102088414B (zh) * | 2011-03-07 | 2012-07-18 | 江苏科技大学 | 随机和弃头结合的被动队列管理的方法 |
CN102082735B (zh) * | 2011-03-07 | 2012-09-05 | 江苏科技大学 | N次弃头的被动队列管理的方法 |
CN102104912A (zh) * | 2011-03-24 | 2011-06-22 | 黄东 | 一种基于异构业务的无线mesh网络的拥塞控制方法 |
CN102104912B (zh) * | 2011-03-24 | 2013-12-11 | 黄东 | 一种基于异构业务的无线mesh网络的拥塞窗口设置方法 |
CN102946361A (zh) * | 2012-10-16 | 2013-02-27 | 清华大学 | 基于交换机缓存分配的流量控制方法及系统 |
CN102946361B (zh) * | 2012-10-16 | 2015-09-30 | 清华大学 | 基于交换机缓存分配的流量控制方法及系统 |
CN103067301A (zh) * | 2013-01-17 | 2013-04-24 | 广东石油化工学院 | 基于用户数据报协议的快速可靠的拥塞控制改进算法 |
CN103973416A (zh) * | 2014-05-15 | 2014-08-06 | 无锡信捷电气股份有限公司 | 一种基于改进型LwIP的多嵌入式视觉系统以太网防拥塞方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101969432B (zh) | 2013-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102468941B (zh) | 网络丢包处理方法及装置 | |
US20090141631A1 (en) | Voice adaptive gateway pacing methods and systems for wireless multi-hop networks | |
CN102413503B (zh) | 一种用于准TCP,即Semi-TCP的自适应确认分组延迟发送的方法 | |
CN101969432B (zh) | 基于随机回退的tcp拥塞窗口的控制方法 | |
CN102594434B (zh) | 面向卫星网络的传输控制机制改进方法 | |
CN102790913A (zh) | 一种基于3g网络音视频传输方法 | |
Alipio et al. | RT-CaCC: A reliable transport with cache-aware congestion control protocol in wireless sensor networks | |
Gu et al. | Udt: An application level transport protocol for grid computing | |
CN104980365A (zh) | 一种基于连续丢包拥塞判断的tcp传输加速方法 | |
Le et al. | Reliable user datagram protocol for airborne network | |
Landström et al. | Reducing the TCP acknowledgment frequency | |
CN104580171B (zh) | Tcp协议的传输方法、装置和系统 | |
CN102088414B (zh) | 随机和弃头结合的被动队列管理的方法 | |
Himeedah et al. | Tcp congestion analysis of wired and wireless links using ns3 | |
Al-Saadi et al. | Characterising LEDBAT performance through bottlenecks using PIE, FQ-CoDel and FQ-PIE active queue management | |
Liu et al. | Stroboscopic model and bifurcations in TCP/RED | |
Goyzueta et al. | A deterministic loss model based analysis of CUBIC | |
Zhou et al. | Adaptive status report with congestion control in NB-IoT | |
Dayma et al. | Improved TCP Hybla: A TCP enhancement for link with high RTT and error rate | |
Cheng et al. | An threshold-based congestion control mechanism for Vegas TCP over heterogeneous wireless networks | |
CN102082735B (zh) | N次弃头的被动队列管理的方法 | |
Ullah et al. | Improving network efficiency by selecting and modifying congestion control constraints | |
CN102123094B (zh) | 两次随机丢包的被动队列管理的方法 | |
Li et al. | Improving TCP performance for asymmetric networks | |
Oda et al. | Compound TCP+ for fairness improvement among Compound TCP connections in a wireless LAN |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C56 | Change in the name or address of the patentee | ||
CP02 | Change in the address of a patent holder |
Address after: 212000 No. 9 East Mountain Road, Xincheng Industrial Park, Zhenjiang, Jiangsu, Dantu Patentee after: Jiangsu University of Science and Technology Address before: 212003 Zhenjiang City, Jiangsu province dream Creek Road, No. 2 Patentee before: Jiangsu University of Science and Technology |
|
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130424 Termination date: 20170927 |
|
CF01 | Termination of patent right due to non-payment of annual fee |