首页 > 专利 > 杭州电子科技大学 > 一种基于丢包率的卫星通信分段式拥塞控制方法专利详情

一种基于丢包率的卫星通信分段式拥塞控制方法   0    0

有效专利 查看PDF
专利申请流程有哪些步骤?
专利申请流程图
申请
申请号:指国家知识产权局受理一件专利申请时给予该专利申请的一个标示号码。唯一性原则。
申请日:提出专利申请之日。
2015-04-13
申请公布
申请公布指发明专利申请经初步审查合格后,自申请日(或优先权日)起18个月期满时的公布或根据申请人的请求提前进行的公布。
申请公布号:专利申请过程中,在尚未取得专利授权之前,国家专利局《专利公报》公开专利时的编号。
申请公布日:申请公开的日期,即在专利公报上予以公开的日期。
2015-09-02
授权
授权指对发明专利申请经实质审查没有发现驳回理由,授予发明专利权;或对实用新型或外观设计专利申请经初步审查没有发现驳回理由,授予实用新型专利权或外观设计专利权。
2018-02-23
预估到期
发明专利权的期限为二十年,实用新型专利权期限为十年,外观设计专利权期限为十五年,均自申请日起计算。专利届满后法律终止保护。
2035-04-13
基本信息
有效性 有效专利 专利类型 发明专利
申请号 CN201510170924.0 申请日 2015-04-13
公开/公告号 CN104821843B 公开/公告日 2018-02-23
授权日 2018-02-23 预估到期日 2035-04-13
申请年 2015年 公开/公告年 2018年
缴费截止日
分类号 H04B7/185H04W28/02 主分类号 H04B7/185
是否联合申请 独立申请 文献类型号 B
独权数量 1 从权数量 2
权利要求数量 3 非专利引证数量 0
引用专利数量 3 被引证专利数量 0
非专利引证
引用专利 CN101677292A、US2009158371A1、CN102420676A 被引证专利
专利权维持 3 专利申请国编码 CN
专利事件 事务标签 公开、实质审查、授权
申请人信息
申请人 第一申请人
专利权人 杭州电子科技大学 当前专利权人 杭州电子科技大学
发明人 严军荣、卢玉龙、章坚武 第一发明人 严军荣
地址 浙江省杭州市下沙高教园区2号大街 邮编 310018
申请人数量 1 发明人数量 3
申请人所在省 浙江省 申请人所在市 浙江省杭州市
代理人信息
代理机构
专利代理机构是经省专利管理局审核,国家知识产权局批准设立,可以接受委托人的委托,在委托权限范围内以委托人的名义办理专利申请或其他专利事务的服务机构。
杭州千克知识产权代理有限公司 代理人
专利代理师是代理他人进行专利申请和办理其他专利事务,取得一定资格的人。
周希良
摘要
本发明公开了一种基于丢包率的卫星通信分段式拥塞控制方法,其按如下步骤:步骤101、发送端生成初始数据块并发送至接收端;步骤102、接收端生成确认数据块并发送回发送端;步骤103、发送端确认返回数据块并生成新发送数据块;步骤201、丢包率αε时,发送端进行严重拥塞处理。本发明尽可能保持最大发送窗口,提高了传输效率,降低了算法的复杂度。
  • 摘要附图
    一种基于丢包率的卫星通信分段式拥塞控制方法
  • 说明书附图:图1
    一种基于丢包率的卫星通信分段式拥塞控制方法
  • 说明书附图:图2
    一种基于丢包率的卫星通信分段式拥塞控制方法
  • 说明书附图:图3
    一种基于丢包率的卫星通信分段式拥塞控制方法
  • 说明书附图:图4
    一种基于丢包率的卫星通信分段式拥塞控制方法
  • 说明书附图:图5
    一种基于丢包率的卫星通信分段式拥塞控制方法
  • 说明书附图:图6
    一种基于丢包率的卫星通信分段式拥塞控制方法
  • 说明书附图:图7
    一种基于丢包率的卫星通信分段式拥塞控制方法
  • 说明书附图:图8
    一种基于丢包率的卫星通信分段式拥塞控制方法
法律状态
序号 法律状态公告日 法律状态 法律状态信息
1 2018-02-23 授权
2 2015-09-02 实质审查的生效 IPC(主分类): H04B 7/185 专利申请号: 201510170924.0 申请日: 2015.04.13
3 2015-08-05 公开
权利要求
权利要求书是申请文件最核心的部分,是申请人向国家申请保护他的发明创造及划定保护范围的文件。
1.一种基于丢包率的卫星通信分段式拥塞控制方法,其按如下步骤:
步骤101、发送端生成初始数据块并发送至接收端;将发送端缓存中的最大窗口值M作为初始发送窗口值,记为M1;发送端生成数据块并将其发送至接收端;发送数据块的结构为初始发送数据段的长度M1、由编号1到M1的数据包所组成的初始发送数据段;
步骤102、接收端生成确认数据块并发送回发送端;接收端收到数据块后,进行差错判断,形成一个由“0”和“1”组成的长度为Mi个比特的接收指示序列,正确接收的数据包置为“0”,未正确接收的数据包置为“1”;接收端生成确认数据块并将其发送至发送端;确认数据块的结构为丢包起始序号Si、数据接收指示序列及丢包数Ni;
步骤103、发送端确认返回数据块并生成新发送数据块;发送端接收到确认数据块后,按照以下步骤生成新的数据块:
1)计算丢包率Xi
根据确认数据块中的丢包数Ni和发送窗口Mi,计算式如(1):
2)计算新发送数据段的长度Mi+1
根据Xi计算Mi+1,计算式如下:
0<α<ε<1,1<β<2  (3)
其中,α、β、ε为预设的固定值,β为链路状况参考值,Mi+1值取整数;
3)通过数据接收序列与原数据段的比对提取所有未成功接收的数据包,并重新组合成为重传数据段,编号1到Ni;
4)生成新数据块:其结构为新发送数据段长度Mi+1、编号1到Mi+1的新发送数据段、编号为1到Ni的重传数据段;其中,重传数据段采用丢包起始序号Si进行标识以便接收端进行辨认
步骤201、丢包率α步骤202、丢包率Xi>ε时,发送端进行严重拥塞处理。

2.如权利要求1所述的基于丢包率的卫星通信分段式拥塞控制方法,其特征在于:步骤
201、若丢包率α
3.如权利要求1所述的基于丢包率的卫星通信分段式拥塞控制方法,其特征在于:步骤
202、若丢包率Xi>ε,则进入严重拥塞避免阶段;此时,下一次发送新数据段的长度Mi+1根据式(2)计算得到;其余按照步骤103进行。
说明书

技术领域

[0001] 本发明属于卫星通信技术领域,具体涉及一种基于丢包率的卫星通信分段式拥塞控制方法。

背景技术

[0002] 常用的卫星通信模型由通信终端、地面站及地面端链路、卫星及卫星链路组成,如图1所示。其中,地面站与卫星之间的卫星链路在整个通信链路中占主体地位,地面端链路相对较短而忽略不计。卫星链路由于受到天气等外界条件的影响极易出现突发性错误。
[0003] 基于卫星链路的上述特征,传统TCP协议应用于卫星通信时数据传输的效率很低,其主要原因在于:(1)传统TCP协议将链路错误当作网络拥塞进行窗口减小的处理,这样不仅降低了传输效率,而且浪费了信道的可用带宽;(2)传统TCP协议不能持续使用较大窗口进行传输,数据传输一旦失败,其窗口值会立即减小,这样就导致带宽严重浪费,大大降低了数据的传输速率。
[0004] 目前,用于卫星通信的TCP改进协议主要有TCP Vegas、TCP-peach、TCP-Westwood等。TCP Vegas的主要思想是用传输速率来控制拥塞窗口。TCP-Peach的算法思想是针对长时延对传输效率的影响,通过快速发送较多的虚报文段,来更快地获得确认ACK(Acknowledgment,确认数据包),从而加快TCP启动和重传后的恢复速率。此处,虚报文段指的是由发送端产生的优先级较低的数据包。TCP-Westwood算法的关键思想是一直在发送端对TCP链接的可用带宽进行估计(Bandwidth Estimate),估计的方法是观察返回ACK的速度,一旦发生丢包就迅速把窗口恢复到带宽相应水平。上述三种方法虽然对于传统的TCP协议有较大改动,但都要求对RTT进行较为精确的测量,这在卫星通信链路中实现非常困难。另外,上述方案并没有针对卫星链路高突发错误率的特点进行优化,链路的利用率较低。
[0005] 为此,本发明提出了由基于数据块发送的直接启动算法和基于丢包率判定的分段式拥塞避免算法组成的卫星通信拥塞控制算法,以提高卫星通信的拥塞控制处理能力。

发明内容

[0006] 本发明提出了一种基于丢包率的卫星通信分段式拥塞控制方法,其包括基于数据块发送的直接启动算法和基于丢包率判定的分段式拥塞避免算法。
[0007] 本发明将发送单位定义为数据块,数据块由多个数据段组成,而每个数据段又由1个或多个数据包组成,如图2所示。为简化卫星通信链路资源分配的复杂性,将发送窗口的大小定义为数据块中新发送数据包的个数或者新发送数据段的长度,忽略发送端和接收端的数据处理时延。
[0008] 本发明技术方案的主要思路是基于对丢包率判定的判断从而实现分段式拥塞控制。整个拥塞控制方法包含基于数据块发送的直接启动算法和基于丢包率判定的分段式拥塞处理算法。其中,基于数据块发送的直接启动算法代替传统的慢开始算法,直接以历史最大窗口进行数据发送,并通过反馈调节的方式实现算法的正常运行。基于丢包率判定的分段式拥塞处理算法是根据丢包率的大小对链路状态进行分段判断,从而采取更准确的窗口调整策略。
[0009] 本发明采取以下技术方案:
[0010] 1、启动阶段
[0011] 101、生成并发送初始数据块。
[0012] 生成初始发送数据块时,将发送端(终端A)缓存中的最大窗口值M作为初始发送窗口值,记为M1。发送端(终端A)生成数据块并将其发送至接收端(终端B)。初始发送数据块的结构如图2所示,包括初始发送数据段的长度M1、由编号1到M1的数据包所组成的初始发送数据段。
[0013] 102、生成并发送确认数据块。
[0014] 接收端(终端B)收到数据块后,进行差错检测,形成一个由“0”和“1”组成的长度为Mi个比特的接收指示序列(正确接收的数据包置为“0”,未正确接收的数据包置为“1”)。此处假设重传数据段中的数据重传后不再出现错误,因此不论是初始确认还是后续确认,该01序列均只进行1到Mi的排列。
[0015] 接收端(终端B)生成确认数据块并将其发送至发送端(终端A)。确认数据块的结构如图3所示,包括丢包起始序号Si、数据接收指示序列(长度为Mi个比特)及丢包数Ni。
[0016] 103、接收确认数据块后生成新数据块。
[0017] 发送端(终端A)接收到确认数据块后,按照下列步骤生成新的数据块:
[0018] 1)计算丢包率Xi。根据确认数据块中的丢包数Ni和发送数据段长度Mi进行计算,计算式如下:
[0019]
[0020] 2)计算新发送数据段的长度Mi+1。根据Mi计算Mi+1,计算方法如下:
[0021]
[0022] 0<α<ε<1,1<β<2  (3)
[0023] 其中,α、β、ε为预设的固定值,其取值范围如式(3)所示,α为卫星通信正常通信时的丢包率,ε为卫星通信较差链路状况时的丢包率,β为链路状况参考值。Mi+1值取整数。当Xi≤α时,链路状况很好,发送数据段的长度增大β倍;当αε时,链路状况极度恶化,发送数据段长度减小1-Xi倍。α、β、ε的具体取值是根据对长期的历史数据判断所得。
[0024] 3)通过数据接收序列与原数据段的比对提取所有未成功接收的数据包,并重新组合成为重传数据段,编号1到Ni。
[0025] 4)生成新数据块。其结构为新发送数据段长度Mi+1、编号1到Mi+1的新发数据段、编号为1到Ni的重传数据段。其中,重传数据段用丢包起始序号Si进行标识以便接收端(终端B)进行辨认,见图4。
[0026] 2、拥塞处理阶段
[0027] 201、普通拥塞处理。
[0028] 若丢包率α
[0029] 202、严重拥塞处理。
[0030] 若丢包率Xi>ε,则进入严重拥塞避免阶段。此时下一次发送新数据段的长度Mi+1根据公式(2)计算得到。其余按照步骤103进行。
[0031] 整个算法的流程按图5所示。
[0032] 本发明方法具有以下三个优势:
[0033] (1)本发明采用数据块为发送单位,直接采用历史最大窗口值启动,并且将每次需要重传的数据加入到下次发送数据块中,再通过算法的反馈特性,使窗口快速逼近临界值,尽可能保持最大发送窗口。
[0034] (2)本发明通过对丢包率的计算进行分段式的拥塞情况判断,按不同比例对发送窗口进行调整,传输效率得到提高。
[0035] (3)确认数据块的结构体现了丢包的位置和顺序,发送端易于对下次需要重传的数据包进行识别和重组,降低了算法的复杂度。

实施方案

[0044] 下面对本发明优选实施例作详细说明。
[0045] 本实施例采用常用的卫星通信网络进行说明,该卫星网络如图1所示,是由通信终端、地面站和卫星端三部分组成。其中,终端A为发送端,终端B为目的端,地面站由关口站和地面网络组成,卫星端组成一个转发云网络。在本实施例中,只考虑TCP连接后数据传输的拥塞控制问题,不涉及TCP连接、地面网络转发和卫星转发等问题。
[0046] 1、启动阶段(基于数据块发送的直接启动算法)
[0047] 101、生成并发送初始数据块。
[0048] 将发送端(终端A)缓存中的最大窗口值M作为初始发送窗口,记为M1,此例中设置M1=M=100。假设根据对长期的历史数据判断得到,正常通信时错误率α=10%,信道环境恶劣时错误率ε=50%,链路状况参考值β=1.5。发送端(终端A)生成数据块并将其发送至接收端(终端B)。初始发送数据块的实例如图6所示,包括初始发送数据段长度100、由编号1到100的数据包所组成的初始发送数据段。
[0049] 102、生成并发送确认数据块。
[0050] 接收端(终端B)收到数据块后,进行差错检测,形成一个长度为100个比特的由“0”和“1”组成的接收指示序列(正确接收的数据包置为“0”,未正确接收的数据包置为“1”)。因为假设重传数据段中的数据重传后不会再出现错误,所以不论是初始确认还是后续确认,该01序列均只进行1到100的排列。
[0051] 接收端(终端B)生成确认数据块并将其发送至发送端(终端A)。确认数据块的实例如图7所示,包括丢包起始序号S1=30、数据接收序列及丢包数N1=9。
[0052] 103、确认返回数据块及生成新的发送数据块。
[0053] 发送端(终端A)接收到确认数据块后,按照下列步骤生成新的数据块:
[0054] 1)计算丢包率X1及下一次发送数据段的长度M2。若X1≤10%,则新的发送数据段长度M2=1.5M1=150;若10%50%,则新发送数据段长度M2=(1-X1)M1。此处X1=9%≤10%,所以新的发送数据段长度为150。
[0055] 2)通过数据接收序列与原数据段的比对提取出所有未成功接收的数据包,并重新组合成为重传数据段,编号1到N1,此例为1到9。
[0056] 3)生成新数据块。新发送数据块的实例如图8(此处绘出M2=150的情况,另外两种情况结构相同),包括新发送数据段的长度150、编号1到150的新发送数据段以及编号为1到9的重传数据段。其中,重传数据段用丢包起始序号30进行标识以便接收端(终端B)进行辨认。
[0057] 2、拥塞处理阶段(基于丢包率判定的分段式拥塞处理算法)
[0058] 201、普通拥塞处理。
[0059] 当10%
[0060] 202、严重拥塞处理。
[0061] 当Xi>50%时,进入严重拥塞避免阶段。此时Mi+1=(1-Xi)Mi,1-Xi<0.5,故新发送数据段的长度缩减超过一半,其他处理按照步骤103进行数据块的生成。
[0062] 本发明的流程图如图5所示。
[0063] 当然,本技术领域中的普通技术人员应当认识到,以上实施例仅是用来说明本发明的,而并非作为对本发明的限定,只要在本发明的范围内,对以上实施例的变化、变型都将落入本发明的保护范围。

附图说明

[0036] 图1是实例中采用的卫星通信常用模型。
[0037] 图2是初始发送数据块的结构图。
[0038] 图3是确认数据块的结构图。
[0039] 图4是新发送数据块的结构图。
[0040] 图5是本发明的流程图。
[0041] 图6是初始发送数据块的实例图。
[0042] 图7是确认数据块的实例图。
[0043] 图8是发送数据块的实例图。
版权所有:盲专网 ©2023 zlpt.xyz  蜀ICP备2023003576号