延迟容忍网络中的传输协议优化设计
发布时间:2020-10-18 09:25
近年来,对宇宙空间的探索过程不断帮助人类认识宇宙的本质,推动科技的发展。现有的深空通信传输层功能由LTP协议承载,而随着人类的空间探索向深空发展,LTP协议已无法良好地解决深空通信环境面临的长延时,高丢包率,中断频繁等诸多挑战。近些年学者们通过对编码技术的不断创新,提出了很多适用于深空数据传输的编码方案,其中LT码由于其无固定码率,低反馈的特性,得到了学者们的青睐,而BATS码在LT码的基础上,结合了网络编码的特性,在面对对深空通信的网络特性时,展现出了比LT码更高的传输效率。LT码和BATS码虽然在编译码算法上趋于成熟,但在实际协议中的应用方案相对匮乏,因此如何将这些编码技术结合到深空通信的传输协议中是学术界也是本文的重点研究内容。本文通过对LTP协议以及LT码和BATS码的研究分析,提出了两种基于编码算法的LTP协议优化方案,命名为LTP-LT协议及LTP-BATS协议。其中LTP-LT协议通过将LT码的编译码算法结合到LTP协议的块数据的传输过程中,最大限度的减少了LTP协议的反馈重传次数,极大的减少了深空通信中数据的可靠传输时延。而LTP-BATS协议则以LTP-LT协议为基础,将BATS码融入到协议中,克服了LT码在多跳网络传输中所面临的累积丢包问题,相比LTP-LT协议而言,极大的提升了数据的传输效率。本文基于NASA开源的软件协议栈ION实现了上述两种协议,并以此为基础搭建了地月通信仿真场景,通过仿真实验证明了两种协议的性能优势。最后,本文还基于BATS码以及空间通信常用的滑动窗口传输方案,提出了一种基于均衡保护窗口的BATS码文件传输方案。方案中利用小度值Batch对滑动窗口的非重叠区域进行编码传输,并且采用不等滑动步长,实现了对滑动窗口的重叠部分和非重叠部分的均衡保护,使传输既具有较高可靠性,又具有较高的传输效率。文中通过仿真实验证明了方案的性能优势。
【学位单位】:电子科技大学
【学位级别】:硕士
【学位年份】:2019
【中图分类】:V443.1;V556;TN929.5
【部分图文】:
第二章 DTN 网络及其关键协议介绍protocol adaptor output,CLO)探测到与下一跳节点链接可用时,便会从传输队列中取出 bundle 数据发送。接收方的汇聚层适配器(CLprotocol adaptor input,CLI)从远端节点接收到数据后会根据协议字段来判定自己是否为目的节点,如果自身非目的节点,则会按照上述发送流程转发 bundle 数据。如果自身是目的节点,则会将这个 bundle 数据附加到交付队列(delivery queue)中,上层应用层就会根据交付队列中的数据来进行处理,在整个发送接收过程中,数据在模块间的流动过程如下图:
深空通信中,常采用滑动窗口方案来传输视频等数据,基本方法可以用下图描述:图5-1 传统滑动窗口传输方案将需要传输的数据分为长度为 L 的分段,称为一个窗口。对窗口 W1 内的数据进行编码传输,然后将窗口的起点向后移动 S 个符号,称为滑动 S 步长,然后将该起点以后的新窗口 W2 内的 L 个符号进行编码传输。上图中的 P 为前后两个窗口的重叠部分。在基本的滑动窗口思路下,最直观的基于 BATS 码的滑动窗口方案为:根据文件特性划分窗口长度,然后每一个窗口通过 BATS 码编码发送。这种思路虽然简单清晰,但由于单次窗口一般都不会很长,因此会和 BATS 码一样面临着传输效率无法逼近最优的问题。因此
在保证发送成功率的情况下,对传输效率有很大的提升。分析其具体原因,上述窗口滑动方法是一种重叠滑动,如果连续采用这种重叠滑动,则可能出现部分数据有三重甚至多重重叠(如图5-3所示),不仅严重影响了传输效率,而且数据的受保护程度也不同,重叠部分的窗口实际上是以数据的冗余传输实现对窗口滑动前后的重叠部分数据的增强保护,这部分数据的传输可靠性高于不重叠部分的数据。如果窗口连续滑动,则将出现更多的数据重叠,其中对不同重叠程度的数据的保护程度也是不同的。例如当滑动步长S小于重叠部分P的长度时,导致部分数据被过度保护,而其他部分保护的程度较低或没有保护。如果对所有数据连续采用这种方式进行滑动,将会导致较多的不必要的数据冗余,同时也会造成窗口滑动太慢
【参考文献】
本文编号:2846115
【学位单位】:电子科技大学
【学位级别】:硕士
【学位年份】:2019
【中图分类】:V443.1;V556;TN929.5
【部分图文】:
第二章 DTN 网络及其关键协议介绍protocol adaptor output,CLO)探测到与下一跳节点链接可用时,便会从传输队列中取出 bundle 数据发送。接收方的汇聚层适配器(CLprotocol adaptor input,CLI)从远端节点接收到数据后会根据协议字段来判定自己是否为目的节点,如果自身非目的节点,则会按照上述发送流程转发 bundle 数据。如果自身是目的节点,则会将这个 bundle 数据附加到交付队列(delivery queue)中,上层应用层就会根据交付队列中的数据来进行处理,在整个发送接收过程中,数据在模块间的流动过程如下图:
深空通信中,常采用滑动窗口方案来传输视频等数据,基本方法可以用下图描述:图5-1 传统滑动窗口传输方案将需要传输的数据分为长度为 L 的分段,称为一个窗口。对窗口 W1 内的数据进行编码传输,然后将窗口的起点向后移动 S 个符号,称为滑动 S 步长,然后将该起点以后的新窗口 W2 内的 L 个符号进行编码传输。上图中的 P 为前后两个窗口的重叠部分。在基本的滑动窗口思路下,最直观的基于 BATS 码的滑动窗口方案为:根据文件特性划分窗口长度,然后每一个窗口通过 BATS 码编码发送。这种思路虽然简单清晰,但由于单次窗口一般都不会很长,因此会和 BATS 码一样面临着传输效率无法逼近最优的问题。因此
在保证发送成功率的情况下,对传输效率有很大的提升。分析其具体原因,上述窗口滑动方法是一种重叠滑动,如果连续采用这种重叠滑动,则可能出现部分数据有三重甚至多重重叠(如图5-3所示),不仅严重影响了传输效率,而且数据的受保护程度也不同,重叠部分的窗口实际上是以数据的冗余传输实现对窗口滑动前后的重叠部分数据的增强保护,这部分数据的传输可靠性高于不重叠部分的数据。如果窗口连续滑动,则将出现更多的数据重叠,其中对不同重叠程度的数据的保护程度也是不同的。例如当滑动步长S小于重叠部分P的长度时,导致部分数据被过度保护,而其他部分保护的程度较低或没有保护。如果对所有数据连续采用这种方式进行滑动,将会导致较多的不必要的数据冗余,同时也会造成窗口滑动太慢
【参考文献】
相关期刊论文 前1条
1 张乃通;李晖;张钦宇;;深空探测通信技术发展趋势及思考[J];宇航学报;2007年04期
本文编号:2846115
本文链接:https://www.wllwen.com/kejilunwen/xinxigongchenglunwen/2846115.html