发明名称 一种深空通信中的文件传输方法
摘要 本发明涉及一种用于深空通信的文件传输方法,属于深空通信技术领域。本发明方法以预先确定的编码冗余度对文件数据分组进行喷泉编码,然后通过链路发送,采用发送端主动停止的方式,提高文件一次成功传输的概率,提高文件传输效率,避免了发送端被动停止导致的大延迟深空通信环境中的带宽浪费,提高了链路利用率;同时,结合空间数据系统咨询委员会建议的文件传输协议(CFDP)中的可靠文件传输方法,通过定义其文件协议数据单元(File DataPDU)的内容和非确认应答协议数据单元(NAK PDU)的内容实现基于喷泉编码的深空文件可靠传输,具有良好的协议兼容性和实用性。
申请公布号 CN103078707A 申请公布日期 2013.05.01
申请号 CN201310000576.3 申请日期 2013.01.03
申请人 北京理工大学 发明人 杨雷;安建平;卜祥元;卢继华;朱海周
分类号 H04L1/00(2006.01)I;H04L1/16(2006.01)I;H04L1/18(2006.01)I;H04L29/08(2006.01)I 主分类号 H04L1/00(2006.01)I
代理机构 代理人
主权项 一种深空通信中的文件传输方法,其特征在于:包括如下步骤:步骤一、发送端将待传输文件分为N段,每段K个数据包,每个数据包长度为L字节;步骤二、设定每个数据段需要重传的喷泉编码包数量K′:K′=K·ε′,其中ε′为在系统允许的喷泉译码失败概率范围内,接收端译码所要求的编码冗余度;设定发送端喷泉编码冗余度ε: <mrow> <mi>&epsiv;</mi> <mo>=</mo> <mfrac> <mrow> <msup> <mi>&epsiv;</mi> <mo>&prime;</mo> </msup> <mo>+</mo> <mo>[</mo> <mn>1</mn> <mo>-</mo> <msup> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <msub> <mi>P</mi> <mi>e</mi> </msub> <mo>)</mo> </mrow> <mrow> <mn>8</mn> <mo>&CenterDot;</mo> <mi>L</mi> </mrow> </msup> <mo>]</mo> </mrow> <mrow> <mn>1</mn> <mo>-</mo> <mo>[</mo> <mn>1</mn> <mo>-</mo> <msup> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <msub> <mi>P</mi> <mi>e</mi> </msub> <mo>)</mo> </mrow> <mrow> <mn>8</mn> <mo>&CenterDot;</mo> <mi>L</mi> </mrow> </msup> <mo>]</mo> </mrow> </mfrac> <mo>,</mo> </mrow>其中,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对应的系统资源复位并释放,文件传输结束。
地址 100081 北京市海淀区中关村南大街5号