CN105227484A - 一种面向卫星网络的数据传输控制方法 - Google Patents

一种面向卫星网络的数据传输控制方法 Download PDF

Info

Publication number
CN105227484A
CN105227484A CN201510671382.5A CN201510671382A CN105227484A CN 105227484 A CN105227484 A CN 105227484A CN 201510671382 A CN201510671382 A CN 201510671382A CN 105227484 A CN105227484 A CN 105227484A
Authority
CN
China
Prior art keywords
congestion window
window
packet loss
time
data transfer
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
Application number
CN201510671382.5A
Other languages
English (en)
Other versions
CN105227484B (zh
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.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
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 National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN201510671382.5A priority Critical patent/CN105227484B/zh
Publication of CN105227484A publication Critical patent/CN105227484A/zh
Application granted granted Critical
Publication of CN105227484B publication Critical patent/CN105227484B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/27Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明的面向卫星网络的数据传输控制方法,其步骤为:S1:在传输开始阶段,设置较小拥塞窗户口初值,以超过每个往返时延RTT时间翻一倍的速度,快速增加拥塞窗口,快速探测链路带宽能支持的拥塞窗口大小;S2:在发生丢包事件时,选定一个小于当前拥塞窗口大小的值作为目标窗口;当前拥塞窗口减小一定比例,然后按照立方函数曲线增长,当拥塞窗口与目标窗口大小差距较小时,增长速度非常缓慢,拥塞窗口在目标窗口附近长久保持。本发明具有能够提高数据传输性能的优点。

Description

一种面向卫星网络的数据传输控制方法
技术领域
本发明主要涉及到卫星网络的数据传输领域,特指一种面向卫星网络的数据传输控制方法。
背景技术
卫星网络是指由各种轨道的人造地球卫星组成的通信网络系统。卫星网络的核心设备高悬于空间,其无线电磁信号覆盖范围广,通信范围受距离的影响较小,地球表面地理环境对通信过程的影响较弱,是实现任意地点、任意时间和任何人通信的有效手段,在军事和民用领域都有重要地位。卫星网络的局限在于其无可消除的链路误码率(BER)和较长的往返时延(RTT)。地球同步卫星链路误码率(BER)为10-7级别,由此带来的链路丢包率(PER)约0.1~1%,星地延迟约260ms,两次经过同步卫星中继通信时,RTT可达2040ms。
TCP协议应用于卫星网络时,较长的往返时延导致TCP拥塞控制窗口打开缓慢,无法充分利用带宽,而随机误码造成的丢包被误认为线路拥塞,引起拥塞窗口的乘性减小,使传输性能更加恶化。这两方面还存在相互的作用,单方面增大窗口,会加剧出现丢包时需要重传的数据量。
为了提高TCP在卫星网络上的性能,众多参数优化和算法改进方案被提出。一部分以与RTT无关的拥塞窗口打开速度为目标,研究出非常激进的窗口打开公式,拥塞避免阶段仍使用线性增长,例如TCP-hybla算法。另一部分尝试解决丢包对性能的影响,慢启动阶段仍沿用传统TCP的每RTT翻一倍的策略,例如处理慢启动阶段丢包的hystart方案、在拥塞避免阶段保持窗口稳定的BIC和CUBIC算法、根据当前窗口大小控制窗口增长的HTCP方案和感知RTT变化采用不同控制策略的TCP-Vegas系列改进方案。
上述传统方式存在的问题归纳如下:
1、对RTT的处理太过极端。特别激进的方案经历一个RTT即计算出非常大的拥塞窗口值,这个值超越了数据接收端缓存能力等其他限制发送速率的因素,不能起到控制发送速率的效果,反而加剧丢包事件的发生。沿用传统TCP慢启动的改进方案,慢启动过程受到RTT影响,持续时间长,对吞吐量影响大,性能受到丢包发生时机的影响大。
2、改进方案综合性不够强,相互影响的因素处理时的相互关联不够。如单一针对RTT或者丢包进行改进,改进性能受到未改进部分的制约;把窗口减小因子和窗口保持时间分离开处理,分别研究改进机制,没有考虑他们之间的关联性,不能找出最优的组合。
发明内容
本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种能够提高数据传输性能的面向卫星网络的数据传输控制方法。
为解决上述技术问题,本发明采用以下技术方案:
一种面向卫星网络的数据传输控制方法,其步骤为:
S1:在传输开始阶段,设置较小拥塞窗户口初值,以超过每个往返时延RTT时间翻一倍的速度,快速增加拥塞窗口,快速探测链路带宽能支持的拥塞窗口大小;
S2:在发生丢包事件时,选定一个小于当前拥塞窗口大小的值作为目标窗口;当前拥塞窗口减小一定比例,然后按照立方函数曲线增长,当拥塞窗口与目标窗口大小差距较小时,增长速度非常缓慢,拥塞窗口在目标窗口附近长久保持。
作为本发明的进一步改进:在所述步骤S1中,使往返时延和优化目标满足固定比例,窗口打开速度设置为按比例缩小的往返时延下的速度。
作为本发明的进一步改进:在所述步骤S2中,于发生丢包事件后,根据之前丢包事件发生的时间间隔,计算拥塞窗口缓慢增长持续的时间,并对这个时间设置于往返时延相关的上限值。
作为本发明的进一步改进:在所述步骤S2中,于发生丢包事件后,把拥塞窗口减小的比例和保持时间相互关联,减小值越大,保持时间越短。
作为本发明的进一步改进:将拥塞窗口的控制分为:快速上升阶段和退避保持阶段;在快速上升阶段时,使拥塞窗口快速逼近链路容量,发生丢包事件后,转换到退避保持阶段在达到的拥塞窗口值上下长时间保持。
作为本发明的进一步改进:所述拥塞窗口随时间变化公式如下:
W ( t ) = 2 a * t / r t t t c = 0 ( z o o min g ) b * W t c + ( ( t - t c - b * t s ) / r t t ) 3 t c ≠ 0 , t s = min ( s * r t t , t s ) ( s t a b l e ) - - - ( 1 )
其中a、b和s为发送所述方法的优化参数,分别表示打开阶段加速比,窗口减小因子和保持时间上限;t为传输持续的时间,W(t)为t时刻应该使用的拥塞窗口值,tc为上一次发生丢包事件的时刻,Wtc为上一次发生丢包时的拥塞窗口大小,ts为丢包事件发生的时间间隔,rtt是当前传输测试到的往返时延。
与现有技术相比,本发明的优点在于:
1、本发明的面向卫星网络的数据传输控制方法,通过综合使用应对长RTT的加速打开机制和应对丢包的拥塞窗口保持机制,提高了整个传输过程中的平均拥塞窗口大小,提升了传输的吞吐量。
2、本发明的面向卫星网络的数据传输控制方法,使用固定的加速比,面对各种RTT值都能确定合理的优化目标,优化之后的窗口打开速度,与不加速相比有明显提高,降低了窗口打开阶段出现丢包的概率,而比hybla等方案的增长速度更稳定。
3、本发明的面向卫星网络的数据传输控制方法,通过关联窗口减小因子和保持时间,以及根据丢包事件发生的间隔计算保持时间且设置上限,使丢包后窗口的减小和保持更平滑,增强抵抗随机丢包的能力,缓解丢包带来的性能下降。
附图说明
图1是本发明方法的流程示意图。
图2是本发明在具体应用实例中拥塞窗口模拟结果示意图。
图3是本发明在具体应用实例中形成数据传输控制系统的结构示意图。
图4是本发明在具体应用实例中数据传输控制的流程示意图。
具体实施方式
以下将结合说明书附图和具体实施例对本发明做进一步详细说明。
如图1所示,本发明的面向卫星网络的数据传输控制方法,其步骤为:
S1:在传输开始阶段,设置较小拥塞窗户口初值,以超过每个往返时延(RTT)时间翻一倍的速度,快速增加拥塞窗口,快速探测链路带宽能支持的拥塞窗口大小;
在该过程中,进一步优化使往返时延和优化目标满足固定比例,窗口打开速度优化为按比例缩小的往返时延下的速度。
S2:在发生丢包事件时,选定一个略小于当前拥塞窗口大小的值作为目标窗口,当前拥塞窗口减小一定比例,然后按照立方函数曲线增长,当拥塞窗口与目标窗口大小差距较小时,增长速度非常缓慢,拥塞窗口在目标窗口附近长久保持。
在该过程中,于发生丢包事件后,可以进一步优化的根据之前丢包事件发生的时间间隔,计算拥塞窗口缓慢增长持续的时间,并对这个时间设置与往返时延相关的上限值。
在该过程中,于发生丢包事件后,可以进一步优化的把拥塞窗口减小的比例和保持时间相互关联,减小值越大,保持时间越短。
在具体应用实例中,可以进一步优化的将拥塞窗口的控制分为:快速上升(zooming)阶段和退避保持(stable)阶段;在zooming阶段时,使拥塞窗口快速逼近链路容量,发生丢包事件后,转换到stable阶段在达到的拥塞窗口值上下长时间保持。
拥塞窗口随时间变化公式如下:
W ( t ) = 2 a * t / r t t t c = 0 ( z o o min g ) b * W t c + ( ( t - t c - b * t s ) / r t t ) 3 t c ≠ 0 , t s = min ( s * r t t , t s ) ( s t a b l e ) - - - ( 1 )
其中a、b和s为发送所述方法的优化参数,分别表示打开阶段加速比,窗口减小因子和保持时间上限。t为传输持续的时间,W(t)为t时刻应该使用的拥塞窗口值,tc为上一次发生丢包事件的时刻,Wtc为上一次发生丢包时的拥塞窗口大小,ts为丢包事件发生的时间间隔,rtt是当前传输测试到的往返时延。
在具体应用实例中,以程序模拟本发明所述的拥塞窗口计算公式。选定RTT=1000ms,优化参数a=10,b=0.9,s=2;设置窗口值越大发生丢包的概率越高,模拟结果如图2所示。
根据本发明的上述方法,按照图3所示的结构设计传输控制内核模块,定义控制结构实例ca和5个函数,使用TCP内核tcp_sock结构的实例tp与内核交互数据,算法的优化参数定义为全局变量,作用于所有函数。abs_Init函数初始化ca中的参数。abs_acked函数在每个ack到来时被调用,从系统的ktime或jiffies中取得当前时间,从tp实例中取得srtt,更新ca实例中的t0,t和rtt值。abs_undo_cwnd函数从tp实例中接受当前拥塞窗口值snd_cwnd,更新ca实例中的tc,wtc和ts值。abs_cong_avoid函数从ca实例中取得传输所处的阶段,从tp中取得当前窗口,计算新的窗口更新tp结构的snd_cwnd字段。abs_recalc_ssthresh函数获取tp中的原始慢启动门限值(ssthresh),根据ca描述的状态计算新的慢启动门限,更新tp结构中的字段。abstcp结构指向这5个函数,供TCP协议栈调用。
将上述内核模块插入操作系统的内核,即注册本发明所述控制方法,可通过TCP系统参数把它设置为默认的拥塞控制方案。在TCP传输启动时,根据传输事件调用模块中的函数,实现控制功能,具体工作流程如图4所示。
以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。

Claims (6)

1.一种面向卫星网络的数据传输控制方法,其特征在于,步骤为:
S1:在传输开始阶段,设置较小拥塞窗户口初值,以超过每个往返时延RTT时间翻一倍的速度,快速增加拥塞窗口,快速探测链路带宽能支持的拥塞窗口大小;
S2:在发生丢包事件时,选定一个小于当前拥塞窗口大小的值作为目标窗口;当前拥塞窗口减小一定比例,然后按照立方函数曲线增长,当拥塞窗口与目标窗口大小差距较小时,增长速度非常缓慢,拥塞窗口在目标窗口附近长久保持。
2.根据权利要求1所述的面向卫星网络的数据传输控制方法,其特征在于,在所述步骤S1中,使往返时延和优化目标满足固定比例,窗口打开速度设置为按比例缩小的往返时延下的速度。
3.根据权利要求1所述的面向卫星网络的数据传输控制方法,其特征在于,在所述步骤S2中,于发生丢包事件后,根据之前丢包事件发生的时间间隔,计算拥塞窗口缓慢增长持续的时间,并对这个时间设置于往返时延相关的上限值。
4.根据权利要求1所述的面向卫星网络的数据传输控制方法,其特征在于,在所述步骤S2中,于发生丢包事件后,把拥塞窗口减小的比例和保持时间相互关联,减小值越大,保持时间越短。
5.根据权利要求1~4中任意一项所述的面向卫星网络的数据传输控制方法,其特征在于,将拥塞窗口的控制分为:快速上升阶段和退避保持阶段;在快速上升阶段时,使拥塞窗口快速逼近链路容量,发生丢包事件后,转换到退避保持阶段在达到的拥塞窗口值上下长时间保持。
6.根据权利要求5所述的面向卫星网络的数据传输控制方法,其特征在于,所述拥塞窗口随时间变化公式如下:
W ( t ) = 2 a * t / r t t t c = 0 ( z o o min g ) b * W t c + ( ( t - t c - b * t s ) / r t t ) 3 t c ≠ 0 , t s = min ( s * r t t , t s ) ( s t a b l e ) - - - ( 1 )
其中a、b和s为发送所述方法的优化参数,分别表示打开阶段加速比,窗口减小因子和保持时间上限;t为传输持续的时间,W(t)为t时刻应该使用的拥塞窗口值,tc为上一次发生丢包事件的时刻,Wtc为上一次发生丢包时的拥塞窗口大小,ts为丢包事件发生的时间间隔,rtt是当前传输测试到的往返时延。
CN201510671382.5A 2015-10-16 2015-10-16 一种面向卫星网络的数据传输控制方法 Active CN105227484B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510671382.5A CN105227484B (zh) 2015-10-16 2015-10-16 一种面向卫星网络的数据传输控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510671382.5A CN105227484B (zh) 2015-10-16 2015-10-16 一种面向卫星网络的数据传输控制方法

Publications (2)

Publication Number Publication Date
CN105227484A true CN105227484A (zh) 2016-01-06
CN105227484B CN105227484B (zh) 2018-10-26

Family

ID=54996181

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510671382.5A Active CN105227484B (zh) 2015-10-16 2015-10-16 一种面向卫星网络的数据传输控制方法

Country Status (1)

Country Link
CN (1) CN105227484B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105827537A (zh) * 2016-06-01 2016-08-03 四川大学 一种基于quic协议的拥塞改进方法
CN108322401A (zh) * 2017-01-17 2018-07-24 网宿科技股份有限公司 网络传输拥塞的控制方法及装置
CN108965322A (zh) * 2018-08-14 2018-12-07 清华大学 空间网络传输控制协议
CN110192394A (zh) * 2016-12-21 2019-08-30 英国电讯有限公司 管理内容传送期间的拥塞响应
CN111010349A (zh) * 2018-10-08 2020-04-14 阿里巴巴集团控股有限公司 针对首屏的传输加速方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1405994A (zh) * 2002-11-08 2003-03-26 清华大学 Tp-s卫星信道专用传输协议及传输方法
WO2004021633A1 (en) * 2002-08-28 2004-03-11 Koninklijke Philips Electronics N.V. Rate control protocol for long thin transmission channels
CN101557607A (zh) * 2009-05-15 2009-10-14 东南大学 无线传感器网络中汇聚节点的传输控制方法
CN104202257A (zh) * 2014-09-12 2014-12-10 大连大学 一种基于带宽估计的卫星网络拥塞控制方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004021633A1 (en) * 2002-08-28 2004-03-11 Koninklijke Philips Electronics N.V. Rate control protocol for long thin transmission channels
CN1405994A (zh) * 2002-11-08 2003-03-26 清华大学 Tp-s卫星信道专用传输协议及传输方法
CN101557607A (zh) * 2009-05-15 2009-10-14 东南大学 无线传感器网络中汇聚节点的传输控制方法
CN104202257A (zh) * 2014-09-12 2014-12-10 大连大学 一种基于带宽估计的卫星网络拥塞控制方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105827537A (zh) * 2016-06-01 2016-08-03 四川大学 一种基于quic协议的拥塞改进方法
CN105827537B (zh) * 2016-06-01 2018-12-07 四川大学 一种基于quic协议的拥塞改进方法
CN110192394A (zh) * 2016-12-21 2019-08-30 英国电讯有限公司 管理内容传送期间的拥塞响应
CN110192394B (zh) * 2016-12-21 2023-10-20 英国电讯有限公司 通过网络传送媒体内容的方法和服务器
CN108322401A (zh) * 2017-01-17 2018-07-24 网宿科技股份有限公司 网络传输拥塞的控制方法及装置
CN108322401B (zh) * 2017-01-17 2022-01-25 网宿科技股份有限公司 网络传输拥塞的控制方法及装置
CN108965322A (zh) * 2018-08-14 2018-12-07 清华大学 空间网络传输控制协议
CN111010349A (zh) * 2018-10-08 2020-04-14 阿里巴巴集团控股有限公司 针对首屏的传输加速方法及装置
CN111010349B (zh) * 2018-10-08 2023-06-02 阿里巴巴集团控股有限公司 针对首屏的传输加速方法及装置

Also Published As

Publication number Publication date
CN105227484B (zh) 2018-10-26

Similar Documents

Publication Publication Date Title
CN105227484A (zh) 一种面向卫星网络的数据传输控制方法
Zhang et al. Will TCP work in mmWave 5G cellular networks?
US9838318B2 (en) TCP congestion control for large latency networks
CN106059950B (zh) 一种基于scps-tp的自适应网络拥塞控制方法
US8514715B2 (en) Congestion window control based on queuing delay and packet loss
CN102546106B (zh) 面向卫星网络的多路径并行传输方法
US20060184664A1 (en) Method for preventing unnecessary retransmission due to delayed transmission in wireless network and communication device using the same
WO2007016311A2 (en) Congestion management over lossy network connections
US7729249B2 (en) Systems and methods for improving TCP-friendliness of delay-based congestion control
CN108965322B (zh) 空间网络传输控制协议
CN103986548A (zh) 一种确定丢包原因的方法和终端
CN103973587A (zh) 多路径网络拥塞控制方法及装置
CN104202257B (zh) 一种基于带宽估计的卫星网络拥塞控制方法
CN105933242A (zh) 一种提高数据中心tcp响应速度的方法及系统
CN105471757A (zh) 一种tcp拥塞控制方法及装置
CN107395325B (zh) 一种服务于战术级通信网的自适应估计传输方法
CN104980365A (zh) 一种基于连续丢包拥塞判断的tcp传输加速方法
Zhu et al. Performance modelling of TCP enhancements in terrestrial–satellite hybrid networks
CN104901950B (zh) 一种基于跨层思想的可适应时延突变的空间通信网络传输层协议算法
EP3108631B1 (en) Buffer bloat control
CN102340508B (zh) 一种数据的传输方法和设备
Leung et al. Enhancing TCP performance to persistent packet reordering
CN107888508B (zh) 一种基于pc-nc的数控系统及其抗干扰弱实时通讯方法
Shikama Mitigation of bursty packets by a tcp proxy improving tcp performance in a wired and wireless network
Ma et al. Improving TCP robustness under reordering network environment

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant