基于不等冗余插入的卷积网络编码传输方法转让专利

申请号 : CN202110702736.3

文献号 : CN113438055B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 郭网媚王萌萌高晶亮边卓琳朱晨晨田敏涵李永康张泽阳

申请人 : 西安电子科技大学

摘要 :

本发明公开了一种基于不等冗余插入的卷积网络编码传输方法,主要解决现有技术时延大且不能应对无线信道突发错误的问题,其方案为:将所有待发送的数据包均匀分组并编码;将编码数据包进行卷积网络编码并发送到无线信道;通过接收端提取的编码数据包是否满秩判断并记录该组数据包能否正确译码;根据记录情况动态调整当前组加入冗余包的数量;接收端提取L组编码数据包,计算其自由度DOF;生成并发送DOF个重传数据包;对所提取的编码数据包进行译码,并记录译码时刻,完成编码数据包的传输。本发明减少了重传次数,并根据信道状况动态调整添加冗余编码包的数量,降低了时延,能应对信道突发的错误,可用于单路单跳和具有时延的实际网络。

权利要求 :

1.一种基于不等冗余插入的组内块卷积网络编码传输方法,其特征在于,包括:(1)将所有待发送的数据包均匀分为M组,将每组数据包以矩阵形式存储,再在有限域上选取编码系数矩阵并左乘分组数据包矩阵,生成M组编码数据包,其中,M的取值范围为[2,+∞];

(2)在M组编码数据包中按每L组数据包进行卷积网络编码,先在有限域上随机选取k行k列的下三角形编码系数矩阵,并左乘本组数据包矩阵,完成原始数据包的发送;然后在有限域中随机选取Y行k×L列的卷积编码系数矩阵,并左乘要发送的数据包所在组和该组之前已发送的所有组拼接而成的数据包矩阵,完成数据包的卷积操作,并将得到的卷积编码数据包按序添加到发送端的发送队列中,其中Y是加入冗余包的数量,L表示在[1,10]取值范围选取的卷积深度,k表示每组数据包的数量;

(3)发送端依次将队列中的卷积编码数据包发送到无线通信信道,接收端收到卷积编码数据包后,从接收缓存队列中提取与所接收到的编码数据包组号相同的所有编码数据包;

(4)根据接收端编码数据包矩阵是否满秩来判断当前组数据包能否正确译码:若编码数据包矩阵满秩,则记录1为正确译码的状态;否则,记录0为不能正确译码的状态;

(5)根据记录情况,动态调整下一组加入冗余包的数量,并将其插入到L组编码数据包的发送队列中进行发送,以应对信道的突发错误;

(6)接收端从接收缓存队列中提取L组编码数据包,并计算其自由度DOF,若DOF=0,则执行(8),否则,执行(7);

(7)在有限域上选取编码系数矩阵并左乘数据包矩阵生成DOF个编码重传数据包并插入到发送队列后面进行发送,完成一次重传,再将重传次数加一,判断当前的重传次数是否达到了设定的最大重传次数:若是,则发送下一组数据包;否则,返回(6);

(8)接收端用序列译码对所提取的编码数据包进行译码,并记录相应的译码时刻,完成编码数据包的传输。

2.根据权利要求1所述的方法,其特征在于,(1)中在有限域上选取编码系数矩阵,是从

3 6 8

GF(2)、GF(2)、GF(2)、GF(2)这些有限域中随机选取的任意一个值。

3.根据权利要求1所述的方法,其特征在于,(4 )根据接收端编码数据包矩阵判断当前 组数据包能否正确译码,计算出i×N行i×k列的接收矩阵的秩为r,并将其与接收矩阵的列数进行比较:

若r=i×k,则为满秩且正确译码,将其状态记为1;

否则,不能正确译码,将其状态记为0;

其中i是组数,N是原始包和冗余包的总数。

4.根据权利要求1所述方法,其特征在于,(5 )中动态调整下一 组加入冗余包的数量,是统计未正确译码的组数j,添加j×X个冗余包,其中,X表示取值范围为[1,k]的线性系数。

5.根据权利要求1所述方法,其特征在于,(6 )计算L组编码数据包自由度DOF,即L×N行L×k列的接收矩阵的秩r′,再与接收矩阵的列数L×k进行比较:若r′=L×k,则自由度DOF=0;

否则,DOF=L×k‑r′。

6.根据权利要求1所述的方法,其特征在于,(7 )中设定的最大重传次数,根据以下两个条件之一设定:

条件一,发送端发送一组数据包到接收端,为保证可靠性,计算接收端能够以接近1的概率译码时的重传次数,并将其设定为最大重传次数;

条件二,当无线通信信道的擦除概率在[0.2,1]区间时,为了防止多次重传产生巨大的传输时延,在[0,4]取值范围随机选取的一个整数设定为最大重传次数。

说明书 :

基于不等冗余插入的卷积网络编码传输方法

技术领域

[0001] 本发明属于通信技术领域,特别涉及一种卷积网络编码传输方法,可用于单路单跳和具有时延的实际网络。

背景技术

[0002] 单路单跳无线网络是最基本的点到点网络传输模型,其由一个发送端、一个接收端组成。单路单跳无线网络中的数据包是由发送端生成并发送,经过无线通信信道的传输,
最后到达无线网络的接收端。在实际的无线通信中,无线信道受各种因素影响,数据包在信
道传输过程中可能存在丢失的情况。自动重传请求ARQ和纠删码EC是解决信道丢包问题的
两种主要方法。但在ARQ中,每个数据包的反馈要占用网络资源且存在时延,由于无线通信
信道可能产生突发性错误,使得有些节点的数据重传次数过多,导致数据队列中其他数据
延迟的增加,从而降低了信道有效利用率。在信道性能较差的情况下,反馈带来的开销也是
极大的。线性分组码中,随机线性网络编码RLNC和系统码的吞吐量随着分组大小的增大而
增大,但随之产生的是很大的译码时延。因此使用卷积的方式增加数据包的相关性,并根据
上一组的译码情况来动态调整下一组数据包添加冗余包的个数,可在时延低的情况下达到
更高的吞吐量。网络编码NC最初是由Ahlswede等人在2000年提出的,其实质是允许中继节
点在处理其接收到的信息之后再执行转发操作。然而对于单跳网络中,发送端将每个数据
包直接发送给接收端,不存在中间节点,为了提高单跳网络的吞吐量并充分利用无线资源,
将网络编码技术应用于单跳通信系统的源节点,即源节点在发送数据包时,发送的就是经
过网络编码线性混合后的混合包,从而达到提高单跳网络的吞吐量、保证数据传输的可靠
性及充分利用无线资源的目的。
[0003] 南京理工大学在其申请的专利文献“一种基于网络编码的端到端实时可靠传输方法”(申请日:2020年12月01日,申请号:2020109303908,申请公布号:CN112019304A)中公开
了一种基于网络编码的端到端实时可靠传输方法,该方法主要解决端到端网络传输中由于
节点链路不稳定、信道干扰等造成网络拥塞,数据传输时延长,可靠性差等问题。其首先设
计了一个编码矩阵,在保证编码包之间线性无关基础上进行编码;其次,在接收端解码过程
中,设计了一种快速并行的解码方案,以减小接收端的计算压力;最后,利用基于流式处理
的网络编码进行数据传输。针对低时延通信需求,该方法存在两方面的不足。其一,根据网
络状况来增加冗余包时只考虑丢包率和节点的通信半径,不能很好地应对信道突发错误。
其二,编码数据包矩阵仅与本组的原始数据包有关,当该组接收到的数据包不能正确译码
时,只能向发送端发送反馈并等待发送端重传编码包,只有重传有效的数据包达到一定数
量时才能进行译码,从而会产生很大的时延消耗。

发明内容

[0004] 本发明的目的是针对上述已有技术的不足,提供一种基于不等冗余插入的卷积网络编码传输方法,以根据信道实时状态来自适应地调整加入冗余包数量,更好应对信道突
发错误,并通过卷积网络编码的方式,等效地增加编码长度和纠错能力,从而减少重传次
数,减小时延。
[0005] 本发明技术思路是:针对随机线性网络编码RLNC应用在点对点无线网络传输的高时延和对原始数据包进行扩充的方式不能应对无线信道突发错误的问题。通过对分组数据
包进行卷积网络编码,如果当前组不能译码,在收到后面组的数据包时,能联合将当前组的
数据包译码,而不必等到最后的重传数据包进行译码,从而解决随机线性网络编码的高时
延问题;根据前面分组的译码情况来动态调整下一组冗余包的增加数量,而不是将冗余包
的数量设为一个定值,进而解决信道突发错误的问题。
[0006] 根据上述思路,本发明的实现方案包括如下:
[0007] (1)将所有待发送的数据包均匀分为M组,将每组数据包以矩阵形式存储,再在有限域上选取编码系数矩阵并左乘分组数据包矩阵,生成M组编码数据包,其中,M的取值范围
为[2,+∞];
[0008] (2)在M组编码数据包中按每L组数据包进行卷积网络编码,并将得到的卷积编码数据包按序添加到发送端的发送队列中,其中,L表示在[1,10]取值范围选取的卷积深度,k
表示每组数据包的数量;
[0009] (3)发送端依次将队列中的卷积编码数据包发送到无线通信信道,接收端收到卷积编码数据包后,从接收缓存队列中提取与所接收到的编码数据包组号相同的所有编码数
据包;
[0010] (4)根据接收端编码数据包矩阵是否满秩来判断该组数据包能否正确译码:若编码数据包矩阵满秩,则记录1为正确译码的状态;否则,记录0为不能正确译码的状态;
[0011] (5)根据记录情况,动态调整当前组加入冗余包的数量,并将其插入到L组编码数据包的发送队列中进行发送,以应对信道的突发错误;
[0012] (6)接收端从接收缓存队列中提取L组编码数据包,并计算其自由度DOF,若DOF=0,则执行(8),否则,执行(7);
[0013] (7)在有限域上选取编码系数矩阵并左乘数据包矩阵生成DOF个编码重传数据包并插入到发送队列后面进行发送,完成一次重传,再将重传次数加一,判断当前的重传次数
是否达到了设定的最大重传次数:若是,则发送下一组数据包;否则,返回(6);
[0014] (8)接收端用序列译码法对所提取的编码数据包进行译码,并记录相应的译码时刻,完成编码数据包的传输。
[0015] 本发明与现有技术相比具有以下优点:
[0016] 第一,由于本发明生成并发送编码数据包,其编码方式是卷积,即对数据包进行组内和组间的线性混合,增强了数据包之间的相关性,提高了系统传输的吞吐量;并通过上一
组数据包的接收情况动态调整下一组数据包增加冗余的个数,使得未能译码数据组的译码
概率大大提高,降低了单跳无线网络中数据包的传输时延;
[0017] 第二,由于在接收端利用卷积编码的边收边译方式,可以得到分组长度为k×L编码的纠错能力,即吞吐量大,同时译码时延接近分组长度为k编码的时延大小。
[0018] 第三,由于本发明根据上一组数据包的接收情况自适应调整下一组数据包,以增加冗余的个数,可在信道状态不好的情况下,增加更多的冗余来抵抗信道的突发错误,克服
了现有技术中同一批次内有编码包丢失,影响接收节点中同一批次内编码包的秩,进而影
响接收端译码,使得单跳无线网络的传输成功率下降的不足,提高了接收端收到满秩编码
数据包的概率,进而提高了单跳无线网络的传输成功率。

附图说明

[0019] 图1为本发明的使用场景图;
[0020] 图2为本发明的实现流程图。

具体实施方式

[0021] 下面结合附图,对本发明的实施例做进一步详细描述。
[0022] 参照图1,本实例是基于一个单路单跳的网络拓扑模型进行数据传输和反馈重传的过程,该模型由一个发送端和一个接收端组成,发送端将进行卷积网络编码的编码数据
包发送出去,通过信道将数据包传输到接收端,接收端根据接收情况再对发送端进行反馈,
若接收端反馈确认字符ACK,则发送端发送下一组数据包;否则,发送端发送重传编码数据
包。
[0023] 参照图2,本实例的实现包括如下步骤:
[0024] 步骤1,将所有待发送的数据包均匀分组并编码。
[0025] 在发送端将所有待发送的数据包均匀分为M组,将每组数据包以矩阵形式存储;在
[0026] 有限域上选取编码系数矩阵即是从GF(2)、GF(23)、GF(26)、GF(28)这些有限域中随机选取的任意一个值;
[0027] 将选取的编码系数矩阵左乘分组数据包矩阵,生成M组编码数据包,其中,M的取值范围为[2,+∞]。
[0028] 步骤2,将编码数据包进行卷积网络编码。
[0029] 在M组编码数据包中选取前L组数据包进行卷积网络编码;
[0030] 在有限域中随机选取k行k列的编码系数矩阵,并左乘本组数据包矩阵,完成原始数据包的编码;
[0031] 在有限域中随机选取Y行k×L列的卷积编码系数矩阵,并左乘要发送的数据包所在组和该组之前已发送的所有组拼接而成的数据包矩阵,完成数据包的卷积操作;
[0032] 将得到的卷积编码数据包按序添加到发送端的发送队列中,其中,L表示在[1,10]取值范围选取的卷积深度,k表示每组数据包的数量,Y是加入冗余包的数量。
[0033] 步骤3,发送端发送卷积编码数据包,接收端提取编码数据包。
[0034] 发送端依次将队列中的卷积编码数据包发送到无线通信信道,接收端收到卷积编码数据包后,从接收缓存队列中提取与所接收到的编码数据包组号相同的所有编码数据
包。
[0035] 步骤4,根据接收端编码数据包矩阵是否满秩来判断该组数据包能否正确译码。
[0036] 计算i×N行i×k列的接收矩阵的秩为r,并将其与接收矩阵的列数进行比较:
[0037] 若r=i×k,则为满秩且正确译码,将其状态记为1;
[0038] 否则,不能正确译码,将其状态记为0;
[0039] 其中i是组数,N是原始包和冗余包的总数。
[0040] 步骤5,根据记录情况,动态调整当前组加入冗余包的数量。
[0041] 统计未正确译码的组数j,并生成j×X个冗余编码包,并将其插入到L组编码数据包的发送队列中进行发送,以应对信道的突发错误,其中,X表示取值范围为[1,k]的线性系
数。
[0042] 步骤6,接收端从接收缓存队列中提取L组编码数据包,并计算其自由度DOF。
[0043] 将接收端提取出L组编码数据包,计算出L×N行L×k列的接收矩阵的秩r′,
[0044] 将秩r′与接收矩阵的列数L×k进行比较,得到自由度DOF:
[0045] 若r′=L×k,则自由度DOF=0,执行步骤8;
[0046] 否则,DOF=L×k‑r′,执行步骤7。
[0047] 步骤7,生成并发送重传数据包。
[0048] 在有限域上选取编码系数矩阵并左乘数据包矩阵生成DOF个编码重传数据包并插入到发送队列后面进行发送,完成一次重传,
[0049] 再将重传次数加一,判断当前的重传次数是否达到了设定的最大重传次数:
[0050] 若是,则发送下一组数据包;否则,返回步骤6,
[0051] 其中,设定的最大重传次数,根据以下两个条件之一设定:
[0052] 条件一,发送端发送一组数据包到接收端,为保证可靠性,计算接收端能够以接近1的概率译码时的重传次数,并将其设定为最大重传次数;
[0053] 条件二,当无线通信信道的擦除概率在[0.2,1]区间时,为了防止多次重传产生巨大的传输时延,在[0,4]取值范围随机选取的一个整数设定为最大重传次数。
[0054] 步骤8,接收端用高斯消元法对所提取的编码数据包进行译码,并记录相应的译码时刻,完成编码数据包的传输。
[0055] 以上描述仅是本发明的一个具体实例,并未构成对本发明的任何限制,显然对于本领域的专业人员来说,在了解了本发明内容和原理后,都可能在不背离本发明原理、结构
的情况下,进行形式和细节上的各种修改和改变,但是这些基于本发明思想的修正和改变
仍在本发明的权利要求保护范围之内。