售前咨询-朱:19381904226
售前咨询-杨:19381903226 English
前沿资讯
前沿资讯 真实、准确的物联网、互联网行业新闻

基于优化LT码的深空数据传输策略

你的位置: 网站首页 新闻动态 技术应用

基于优化LT码的深空数据传输策略(下)

2022-08-04 23:17:08 阅读: 发布人:纵横智控

1.2LT码的深空应用性能分析

由以上分析可知,LT码具有简单的编译码方法和较小的译码开销,当数据包的个数达到10°以上时,仅需要5%的冗余信息就能够保证较高的译码成功率。但是深空通信中,时延长,误码率高,大码长会增加编译码时延,并需要更大的存储空间。因此短码长LT码在深空通信中更具有应用前景。但对于短码长LT码,需要至少50%的编码冗余才能达到深

空通信要求的10~*的译码失败率。增加编码冗余又会消耗额外的发送功率,因此限制了其在深空通信中的发展。

LT码随机选择数据包的方式需要较大的度数保证译码成功率,这样将会增大编译码复杂度。同时,LT码译码所用的BP算法实际上是一种次优算法,在不存在度为1的编码包时即停止译码,浪费了部分编码信息,等价于文件传输需要较大的缓存和译码时延,不适合功率和存储空间受限的深空通信系统。因此,本文将基于深空通信环境,从编码和译码两个方面优化短码长的LT码,得到OLT码,进而提出适合深空通信环境的数据传输策略。

2 OLT码

2.1OLT码的编码过程

假设数据包的个数为k,将前h个度数设置为1,同时将度数1的选择概卒分配给其他度数。为简便起见,本文将度数1的概率分配给度数2,然后依次循环选择数据包进行编码。在第一轮编码时,设置前k个度数为1 ,相当于将h个数据包直接依次复制给编码包。在第二轮编码时,继续根据度分布函数选择度数,同样按顺序依次选择数据包。编码示意图如图2所示,假设有10个数据包,编码包数量为15,度数依次为1,1,1,1,1,ti,1,1 ,1 ,3,5,3,2,2 ,则前10个编码包分别由10个数据包复制而成,第11个编码包由1,2,3号数据包异或得到,第12个编码包由4,5 ,6,7,8号数据包异或而成,其余以此类推。

OLT码具体编码过程如下:

1)将源数据分成k个数据包,每个数据包的大小为L,并依次编号为1 ~ k;

2)前é个编码包的度数设为1 ,从第1个数据包开始,依次选择数据包,复制给相应的编码包;

3)根据给定的度分布,确定度数d;

4)依次循环选择d个数据包进行异或运算,生成一个编码包;

5)重复3)~4) ,得到一定数量的编码包。2.2OLT码的译码过程

GE算法是喷泉码通用的译码方式,适用于各种码字。假设接收端收到n个编码包,每个编码包代表有h个未知输入的线性方程,则整个译码过程可看为n个方程联合求解k个未知数的方程组,如式(4)所示:

×X =N

RTU/DTU/边缘网关/物联网平台

(4)

其中:H是经过删除信道后的生成矩阵,大小为n x k;X为待求解的输人信息向量,即源数据包向量,大小为h x 1;N是接收信息向量,即正确接收到的编码包向量。

GE算法的步骤如下:

1)将H矩阵扩展为含接收信息向量N的增广矩阵H',H’= [H/N]。

2)利用矩阵初等行变换将此增广矩阵H'中的H矩阵转

换成单位矩阵Ⅰ,此时H'= [I/N']。

3)若此单位矩阵Ⅰ满秩,则译码成功,译码输出即为N'若此单位矩阵不满秩,说明接收信息不足,译码失败,接收端继续接收信息,进入下一轮译码。

GE算法能够充分利用接收端正确接收到的编码包,译码成功率高于BP算法,其运算量O(nk)随着数据包数量的增长而快速增长,因此不适合中长码的运算。

综上所述,本文提出联合译码算法,将BP算法和GE算法联合使用,结合两者的优点,在充分利用编码信息、提高译码成功率的同时尽可能降低运算复杂度。

译码算法流程如下:

1)接收端接收到一定数量的编码包后,生成编码矩阵,采用BP算法进行译码,如果成功译出所有源数据,则转到3);否则转到2)。

2)对未译出的编码包进行整理,得到未译出数据包和相应的编码包之间的编码矩阵。采用GE算法进行译码,如果译码成功则转到3);否则继续接收编码包。

3)译码成功,本次数据传输过程结束。3基于OLT码的深空数据传输策略

本文提出一种基于OLT码的深空数据传输策略,发送端对数据文件进行OLT码编码得到OLT码数据包。OLT码数据包的格式定义如图3所示。

OLT码数据包由帧头和数据域组成。在帧头中,当OLT码标识为О时,为普通传输模式;当OLT码标识为1时,为OLT码传输模式。在数据域中,当传输模式为OLT码传输模式时,“偏移”字段将改为“度”字段,指示该包由几个原始数据包编码而成,其后跟随构成该包的数据包序列号,然后是编码包。

基于OLT码的深空数据传输策略如图4所示,主要步骤如下:

1)发送端发送元协议数据单元(Metadata Protocol DataUnit,MPDU)告知接收端将要传送的文件大小等各种传输参数。

2)发送端设定文件最大发送冗余,开始对文件进行分割并进行OLT码编码,生成编码包。将编码包作为数据信息封装为OLT码数据包并发送到接收端,之后等待接收端的反馈信息。

3)接收端收到MPDU和一定数量的OLT码数据包后,根据帧头信息使用联合译码算法对编码包进行译码。如果译码失败,则反馈失败信息,继续接收编码信息并译码;如果译码成功,则发送Finished PDU,通知发送端接收成功。

4)发送端收到译码失败信息后,根据信息进行编码继续发送OLT码数据包并转到3);接收到Finished PDU后,停止编码发送,释放资源,并发送ACK确认,释放资源,整个传输

4性能仿真与分析

本文基于Matlab搭建仿真平台,分别对OLT码和深空数据传输策略的性能进行仿真验证,并将深空数据传输策略与CFDP进行对比分析。

4.1OLT码的性能仿真分析

首先仿真在不同的丢包率下,LT码和OLT 码在编码冗余一定时的译码成功率。仿真所使用的度分布函数为鲁棒孤波分布,设置参数e=0. 1,8 = 0.005 ,数据包个数为1000,编码冗余为30%,仿真次数为1000,仿真结果如图5所示。由图5可知 ,在不同的丢包率下,OLT码的译码成功率均高于T码;随着丢包率的增大,OIT码和LT码的译码成功概率均有所不降,但是OLT码的译码成功率下降趋势较为缓慢。联合译码算法在同样的条件下能够有效提高译码成功率。


友情链接