利索能及
我要发布
收藏
专利号: 2014104679257
申请人: 重庆邮电大学
专利类型:发明专利
专利状态:已下证
更新日期:2025-12-01
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于喷泉码的深空多文件传输方法,其特征在于,包括以下步骤:

101、在发送端,发送方将待发送的文件进行分割,分割形成k个原始数据包,每个数据包大小为L字节;

102、发送方实时接收信道状态信息,并根据接收到的最新信道状态信息和数据包个数,确定编码包个数K,对数据包进行喷泉编码,然后加上帧头信息,形成喷泉编码数据包,跳转至步骤103;如果收到反馈信息,则更新当前的信道丢包率;如果需要重传丢失的数据,则根据需要重传的数据包个数确定重传策略;

103、发送方形成喷泉编码数据包后通过深空信道发送至接收方,每个文件发送结束后发送文件结束标志EOF。跳转至步骤104,如果发送方还有文件需要传输,则转到步骤101;

104、接收方接收到文件结束标志EOF后,反馈确认信息ACK EOF给发送方,然后接收方对收到的喷泉编码数据包进行统计,计算丢包率,之后使用联合译码算法对收到的喷泉编码数据包进行译码,统计丢失的数据包;

105、如果步骤104中对收到的喷泉编码数据包译码成功,则反馈成功接收确认信息以及信道丢包率给发送方;如果译码失败,则反馈丢失的数据包信息以及信道丢包率给发送方并开启定时器,当定时器到时后,再次对文件进行译码并统计,如果还有丢包,则重复步骤105,直至文件成功接收;

106、如果所有文件均成功发送,则传输过程结束。

2.根据权利要求1所述的基于喷泉码的深空多文件传输方法,其特征在于:步骤101中对待发送的文件进行文件分割主要包括以下步骤:步骤1.1),首先确定待发送的文件数据分组中的最大长度Lmax和最小长度Lmin;

步骤1.2),根据公式 求得数据包个数的取值范围,Sfile表示待传输文件的字节数;

步骤1.3),选择满足步骤1.2)中取值范围的最大整数并赋值给k,则数据包的长度当Sfile

步骤1.4),从第一个数据包起将k个数据包编号为1,2,3、、、k,完成文件分割。

3.根据权利要求1所述的基于喷泉码的深空多文件传输方法,其特征在于:步骤102中确定编码包个数K的具体步骤如下:步骤2.1),根据公式P=(1-λ)P1+λP2确定链路此时的丢包率,其中,P1为最近一次的丢包率,P2为上次反馈的丢包率,λ为可调节参数,取值范围是[0,1];

步骤2.2),根据公式 计算出需要的编码冗余,其中ε′为在系统允许的喷泉码译码失败概率下,接收端译码所需要达到的编码冗余度值;

步骤2.3),根据公式K=k*(1+ε)计算出所需要的编码包数量;

当收到接收方反馈的信道丢包率后,在接下来的文件发送或重传过程中可以直接使用最新的丢包率,不必经过步骤2.1)的计算过程。

4.根据权利要求1所述的基于喷泉码的深空多文件传输方法,其特征在于:步骤102中,当有重传数据时,采用如下方法确定重传策略:步骤2.1),当重传数据包的个数N小于200时,将每个数据包传输M次,同时确保每个-3数据包丢失的概率小于10 ,利用公式 求得每个数据包需要重传的次数;

步骤2.1),当重传数据包的个数N大于2000时,采用喷泉码编码保护,设置喷泉码译码-5失败概率为10 ,并依此算出所需重传的编码包数;

步骤2.3),其余情况,按照如下方法编码发送需要重发的数据包:步骤2.3.1),首先发送需要重传的数据包;

步骤2.3.2),采用喷泉码编码,根据度分布函数选择度数,并按顺序依次循环选择数据包,当每个数据包均被选择3次后,停止编码并发送至接收方。

5.根据权利要求1所述的基于喷泉码的深空多文件传输方法,其特征在于: 步骤102中的喷泉数据包包括源ID、目的ID、d个原始数据包序号、度数、文件序号及编码包。

6.根据权利要求1所述的基于喷泉码的深空多文件传输方法,其特征在于:步骤103的数据发送过程如下:步骤3.1),首先发送包含源文件名称、本次文件信息、本次需要传输的文件个数信息的元协议数据单元MPDU给接收方,其中本次文件信息包括文件大小、数据包个数、编码包个数;

步骤3.2),依次发送K个喷泉数据包,发送成功之后,发送文件结束标志EOF;

步骤3.3),如果还有待传输文件,则不必等待反馈确认,直接转到步骤101,对下一个待传输文件进行处理;如果收到反馈信息,则更新丢包率,并且释放已经正确接收的数据包,同时转到步骤102;

在上述步骤中,当同时出现有文件需要发送和重传丢失的数据时,首先重传丢失的数据;但是在待传输文件的喷泉数据包的发送过程中收到反馈信息时,则当本次传输文件的文件结束标志EOF发送之后,再处理反馈信息。

7.根据权利要求6所述的基于喷泉码的深空多文件传输方法,其特征在于:在步骤104中,计算丢包率的步骤如下所示:步骤4.1),根据收到的元协议数据单元MPDU,得知本次文件传输的喷泉数据包个数K;

步骤4.2),统计收到的喷泉数据包个数K′,则可根据公式 得到当前链路的丢包率;

在步骤104中,所采用的联合译码算法步骤如下:

步骤4.1),首先采用置信传播译码算法对收到的编码包进行译码;

步骤4.2),如果置信传播算法译码成功,则此次数据传输成功;如果译码失败,则采用高斯消元译码算法继续进行译码。