一种深空通信中的文件传输方法技术

技术编号:8657476 阅读:213 留言:0更新日期:2013-05-02 01:19
本发明专利技术涉及一种用于深空通信的文件传输方法,属于深空通信技术领域。本发明专利技术方法以预先确定的编码冗余度对文件数据分组进行喷泉编码,然后通过链路发送,采用发送端主动停止的方式,提高文件一次成功传输的概率,提高文件传输效率,避免了发送端被动停止导致的大延迟深空通信环境中的带宽浪费,提高了链路利用率;同时,结合空间数据系统咨询委员会建议的文件传输协议(CFDP)中的可靠文件传输方法,通过定义其文件协议数据单元(File?DataPDU)的内容和非确认应答协议数据单元(NAK?PDU)的内容实现基于喷泉编码的深空文件可靠传输,具有良好的协议兼容性和实用性。

【技术实现步骤摘要】

本专利技术涉及一种用于深空通信的文件传输方法,属于深空通信

技术介绍
深空通信链路的特点是传播延迟大、信道误码率高、周期中断和高度非对称,深空文件传输方法是要基于具有上述特点的深空通信链路按照用户的传输质量要求完成文件的高效传输。深空文件传输方法包括2个主要的技术方向,一个方向是改进地面Internet中使用最为广泛的TCP协议使之适应深空通信链路,另一个方向是针对深空通信链路的特性专门制定深空文件传输标准。针对TCP协议的改进包括明确的拥塞指示防止指数退避和慢启动,头部压缩降低协议开销,增大发送窗口提高链路利用率,修改定时器减少不必要的超时重传,采用NACK或SNACK减少反馈等。针对空间环境制定的文件传输标准采用不依赖反馈的发送机制和SNACK,并支持多个文件的同时传输。不依赖反馈的发送机制是指发送端在一次传输过程中将需要发送的数据全部发送,只有当所有数据发送完成后才会接收反馈,并根据反馈进行一次新的传输,直到接收方正确接收到所有数据。支持多个文件的同时传输是指发送方完成某个文件的一次传输后,立即开始一个新的文件的传输而不需要等待接收方确认前一个文件已经完全正确收到。这些方法的核心思想是要避免不必要的空闲和协议开销,以充分利用宝贵的深空链路资源。目前实际应用较多的空间文件传输协议是CCSDS所建议的CFDP协议。该协议将一组数据作为一个文件发送,发送文件的过程包括:首先发送包含需要传输的文件的相关信息(CFDP中称为metadata,如文件名、文件大小、源地址和目的地址等)的协议数据单元(PDU);然后发送包含文件内容的File Data I3DU ;内容发送完成后发送文件结束标识(EOF)PDU;接收端收到EOF PDU后向发送端发送ACK (EOF)PDU,并判断是否需要发送非确认应答(NAK)roU,其中包含未正确收到的数据的相关信息;发送端根据NAK PDU的内容进行重传,该过程持续到接收端正确接收到该文件的所有数据并发送传输完成(FIN) PDU0发送端接收到FIN H)U,发送ACK (FIN)H)U,关闭发送。接收端收到传输完成ACK (FIN)H)U,整个文件传输结束。CFDP协议针对空间应用专门进行了优化,其不依赖反馈的发送机制、确认反馈(ACK)与选择性非确认反馈(SNACK)结合的反馈重传机制一方面为深空文件传输提供了可靠服务,另一方面大大提高了链路利用率,缩短了文件传输时间。实际上,当通信链路往返时间比数据发送时间还长时,重传次数将决定一个文件的传输时间。由于深空链路的高误码率特性,即使采用功能强大的物理层前向纠错(FEC)编码,通常也会达到10_4至10_6级别的误码率,这将导致可能需要多次重传才能实现一个较大文件的可靠传输。例如,当误码率为10_5时,传输一个长度为IKB的数据包,误包率约为8%。这也意味着当以IKB的包传输一个IMB的文件时,从概率意义上讲第一次传输接收端只能正确接收942KB数据,错误的82KB数据必须通过重传来纠正。而第一次重传82KB数据时,从概率意义上讲接收端只能正确接收约75KB数据,错误的7KB数据必须通过第二次重传来纠正。这样的反馈重传过程一直持续,直到所有数据正确接收为止。以火星通信为例,最远距离时的往返传播延迟约为40分钟,一个IMB的文件采用IKB的包传输时若需要2次重传才能正确接收,则整个文件的传输需要约123.5分钟才能完成,而其间实际用于发送该文件的时间仅约1.5分钟(发送速率按IOOKbps计算)。正是因为上述原因,减少重传次数是缩短文件传输时间的关键。专利文件“基于双重传策略的深空文件传输方法(CN102624506A)”中将文件传输分为初始发送阶段和重传阶段,初始发送阶段所有数据包发送一次,重传阶段将需要重传的数据包发送两次,从而提高一次重传成功的概率,降低传输时间。该方法虽然可以减少重传的次数,但并没有降低需要一次重传的概率,即该方法仍然有较大的概率需要进行至少一次重传。专利文件“基于可靠性保证的卫星网络路由构建方法(CN102497649A)”中对分组传输的主路径建立备份路径,在主路径上发送分组后,在备份路径上发送相同的分组以提高分组成功交付的概率。该方法可以提高分组一次传输成功的概率,但由于占用备份路径发送与主路径上完全相同的副本,导致从整个系统来看链路利用率低。“深空通信文件传输协议的交织技术研究,2011年11月,宇航学报,第31卷第11期”文章中,以及“深空文件传输方法”专利文件中研究了采用喷泉编码对CFDP协议的数据包进行编码发送以提高一次传输成功率,无需反馈的文件传输方法,并在指定的译码失败概率下分析了不同传输数据量时的冗余开销和不同信道误码率下的文件传输时延。该方法可以在冗余开销不大(小于25%)的情况下明显减少传输时间,但是,文章指出的完全不反馈的方法并不能保证所有数据都能被接收端完全正确译码。目前的深空文件传输方法中存在单次传输成功率低的问题,以及链路利用率不高的问题,难以在实际应用中以简单的策略提供可靠服务。并且,如何使改进的深空文件传输方法与国际标准的空间文件传输协议兼容的研究也较少。这些问题给改进的深空文件传输方法的实际应用带来困难。
技术实现思路
本专利技术的目的在于提高深空文件传输的效率、可靠性和兼容性,提供。本专利技术方法以预先确定的编码冗余度对文件数据分组进行喷泉编码,然后通过链路发送,提高文件一次成功传输的概率,提高文件传输效率;同时,结合空间数据系统咨询委员会(CCSDS)建议的文件传输协议(CFDP)中的可靠文件传输方法,提供与CFDP协议兼容的深空文件可靠传输服务。本专利技术方法具体通过以下步骤实现:步骤一、发送端将待传输文件分为N段,每段K个数据包,每个数据包长度为L字节;分包方法分为三个步骤:步骤1.1,求取文件分段数N,N的取值范围为:..................< M <......-;r~.........其中,Sf&为待传输文件的字节数,K为预先设定的每段文件所需包含的数据包个数,Lfflin为预先设定的每个数据包最小长度,Lfflax为预先设定的每个数据包最大长度。优选的,N为满足取值范围的最小整数。步骤1.2,计算真实的数据包长度L:本文档来自技高网
...

【技术保护点】
一种深空通信中的文件传输方法,其特征在于:包括如下步骤:步骤一、发送端将待传输文件分为N段,每段K个数据包,每个数据包长度为L字节;步骤二、设定每个数据段需要重传的喷泉编码包数量K′:K′=K·ε′,其中ε′为在系统允许的喷泉译码失败概率范围内,接收端译码所要求的编码冗余度;设定发送端喷泉编码冗余度ε:ϵ=ϵ′+[1-(1-Pe)8·L]1-[1-(1-Pe)8·L],其中,Pe为估计的当前信道误码率;步骤三、采用与CFDP协议兼容的文件可靠传输方式传输文件,具体方法为;发送端的传输过程为:步骤3.1,发送包含源文件名称、目的文件名称和文件大小信息的文件信息协议数据单元;步骤3.2,发送端将步骤一得到的第一个数据段进行喷泉编码,编码结果添加到CFDP协议定义的File?Data?PDU的文件数据域,并将当前喷泉编码包的度信息和数据段长度K添加到文件数据域中,然后发送;所述File?Data?PDU表示文件数据协议数据单元;其中包括位置偏移和文件数据,所述文件数据中包括喷泉编码度、数据段长度和喷泉编码数据;步骤3.3,按照步骤3.2所述方法持续生成并发送K(1+ε)个与第一个数据段相关的File?Data?PDU;步骤3.4,若步骤1.1中计算的N=1,则数据发送结束;否则,发送端对下一个数据段按照步骤3.2至步骤3.3的方法进行编码并发送,直到N个数据段的FileData?PDU均发送完毕;步骤3.5,发送文件结束协议数据单元,并启动对应的系统资源;步骤3.6,等待接收端响应;步骤3.7,若接收到文件结束确认,则将与该文件结束协议数据单元对应的系统资源复位并释放,转至步骤3.6;若接收到NAK?PDU,则根据NAK?PDU的内容确定接收端是否正确接收文件信息协议数据单元和接收端译码失败的数据段编号,执行步骤3.8;若接收到FIN?PDU,则进入步骤3.10;所述NAK?PDU为非确认应答协议数据单元,其中包含接收端是否接收到文件信息协议数据单元的信息和接收端译码失败的数据段的相关信息;所述接收端译码失败的数据段的相关信息包含文件范围信息和数据段请求;所述FIN?PDU为传输完成协议数据单元;步骤3.8,对译码失败的数据段重新发送K′个含喷泉编码数据的File?DataPDU;步骤3.9,重复步骤3.7至步骤3.8,直到接收到FIN?PDU;步骤3.10,发送端发送传输完成确认应答,并释放已成功传输的文件缓存;接收端的具体传输过程通过如下步骤实现:步骤3.11,通过接收到的文件信息协议数据单元获取相关文件信息,当收到File?Data?PDU时,进入步骤3.12;步骤3.12,从File?Data?PDU中获取数据段长度K,根据位置偏移确定数据段编号,存储喷泉编码数据和度信息;步骤3.13,当接收到同一个数据段的File?Data?PDU的数量等于K时,根据喷泉编码数据的度信息开始对该段数据译码,并更新译码结果标识;步骤3.14,接收到文件结束协议数据单元后,发送文件结束确认反馈;步骤3.15,检查译码结果标识,若所有N个数据段已正确译码,则进入步骤3.17;否则,将译码失败的数据段信息添加到NAK?PDU中,反馈回发送端;步骤3.16,接收步骤3.8重传的File?Data?PDU,根据位置偏移确定数据段编号,获取喷泉编码数据和度信息,将重传的喷泉编码包与对应数据段已接收的喷泉编码包一起译码;重传译码结束后进入步骤3.15;步骤3.17,发送FIN?PDU,并启动对应的系统资源;步骤3.18,接收传输完成确认应答,将与该FIN?PDU对应的系统资源复位并释放,文件传输结束。...

【技术特征摘要】
1.一种深空通信中的文件传输方法,其特征在于:包括如下步骤:步骤一、发送端将待传输文件分为N段,每段K个数据包,每个数据包长度为L字节;步骤二、设定每个数据段需要重传的喷泉编码包数量K':K' =K- ε',其中ζ丨为在系统允许的喷泉译码失败概率范围内,接收端译码所要求的编码冗余度;设定发送端喷泉编码冗余度ε:2.根据权利要求1所述的一种深空通信中的文件传输方法,其特征在于:所述步骤一的分包方法具体为:3.根据权利要求1所述的一种深空通信中的文件传输方法,其特征在于:Ν为满足取值范围的最小整数。4.根据权利要求1所述的一种深空通信中的文件传输方法,其特征在于:每个数据段的位置偏移为该段数据的第一个字节在待传输文件中的偏移字节数,同一数据段中的每个数据包位置偏移取值相同。5.根据权利要求1所述的一种...

【专利技术属性】
技术研发人员:杨雷安建平卜祥元卢继华朱海周
申请(专利权)人:北京理工大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1