首页 / 专利库 / 天文学 / 深空网 / 深空通信中基于随机线性网络编码的接触图路由算法

深空通信中基于随机线性网络编码的接触图路由算法

阅读:164发布:2020-05-19

专利汇可以提供深空通信中基于随机线性网络编码的接触图路由算法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种深空通信中基于随机线性网络编码的 接触 图路由 算法 ,它包括:源 节点 对需要发送的数据包采用随机线性网络编码进行处理;源节点根据预知的接触图选择多条链路不相交路径,并将编码包在多条路径上传输;在中间节点处对接收的数据包直接转发,并进行重编码后再转发;目的节点接收到数据包后进行解码预判,将不能成功解码的数据包反馈给上一跳节点集,上一跳节点集发送有助于目的节点解码的编码包,使目的节点能快速解码,降低传输时延。本发明将原始数据采用随机线性网络编码后再发送,并通过链路状态控制网络中的冗余数据包数,保证目的节点可译码的同时减少网络资源的浪费,降低节点的解码等待时延。,下面是深空通信中基于随机线性网络编码的接触图路由算法专利的具体信息内容。

1.一种深空通信中基于随机线性网络编码的接触图路由算法,其特征在于,所述算法包括有如下步骤:
S1:源节点对需要发送的数据包采用随机线性网络编码进行处理,并根据链路状态信息限制发送的编码包个数;
S2:源节点根据预知的接触图选择多条链路不相交路径,并将编码包在多条路径上传输;
S3:在入度大于1的中间节点处对接收的数据包直接转发,并进行重编码后再转发;
S4:目的节点接收到一定数量的数据包后进行解码预判,将不能成功解码的数据包反馈给上一跳节点集,上一跳节点集优先发送有助于目的节点解码的编码包,使目的节点能快速解码,降低传输时延。
2.如权利要求1所述的深空通信中基于随机线性网络编码的接触图路由算法,其特征在于,所述步骤S2包括有多径寻路,所述多径寻路的具体操作如下:
S21:当有数据要发送时,建立源节点至目的节点的多条链路不相交的路径;
S22:源节点根据预知的网络拓扑信息构造反映节点间关系的接触图;
S23:源节点基于节点的接触图采用时变的Dijkstra算法计算出当前时刻满足容量约束关系的最早到达路径,并将该路径记为β1;
S24:源节点删除接触图中所有路径β1上的链路,再基于删除后的接触图采用时变的Dijkstra算法计算最早路径β2,直到计算出源节点到目的节点的前β条最早路径或者删除后的接触图不再构成源节点至目的节点的路径。
3.如权利要求2所述的深空通信中基于随机线性网络编码的接触图路由算法,其特征在于,所述步骤S24还包括有:
S241:当源节点选出前β条最早到达的链路不相交路径之后,需要对原始数据包进行随机线性网络编码操作,并将编码包在选出的β条路径上传输;
S242:将要发送的文件平均分割成大小相同的多个数据段,每个数据段内包含k个数据包,并将每一个数据段内的k个数据包从第一个数据包起依次编号为1,2,3,…,k;每次发送数据前,需要对链路丢包率进行预测以确定发送的编码包个数。
4.如权利要求3所述的深空通信中基于随机线性网络编码的接触图路由算法,其特征在于,所述步骤S242中根据链路丢包率与原始数据包个数k确定节点发送的编码包数的步骤如下:
S2421:采用公式(1)预测信道的丢包率P;其中,P1为最近一次反馈的某一跳链路丢包率,P2为该跳上次反馈的链路丢包率,λ为可调节参数,取值范围为(0,1);
P=(1-λ)P1+λP2     (1);
S2422:根据公式(2)计算源节点的发送冗余ε,其中ε′为控制节点编码冗余的参数,取值范围为(0,1);随着丢包率的增大,发送冗余逐渐增大;
S2423:由公式(3)即可得到节点发送的编码包个数;
5.如权利要求4所述的深空通信中基于随机线性网络编码的接触图路由算法,其特征在于,还包括有:
S243:源节点根据链路丢包率确定需要转发的编码包个数后,采用随机线性网络编码对同一数据段内的k个原始数据包进行编码迭代
S244:从有限域GF(2i)中随机选取N组由k个编码数组组成的本地编码向量,记为把k个原始数据与编码向量通过随机线性组合成N(N>k)个新的编码
数据包Y1,Y2,…,YN,编码过程如公式(4)所示:
S245:编码之后源节点再将组标识及编码向量添加至编码数据包包头后组合发送;
S246:源节点发送完一个数据段的编码包之后进入等待状态,直到收到下一跳节点集的反馈信息;
S247:当源节点收到重传信息时,源节点将重传信息中的丢包率信息提取出来更新链路的丢包率,并重传丢失的编码包;
S248:当收到下一跳节点集接收成功的消息时,则开始对下一个数据段的数据进行编码之后再传输,直至传输完所有数据段的数据包。
6.如权利要求1所述的深空通信中基于随机线性网络编码的接触图路由算法,其特征在于,所述步骤S3包括有:
S31:为降低编码包之间的线性相关性,在入度为1的中间节点处进行重编码;
S32:判断该中间节点判断接收的编码包是否与本节点缓存中的编码包线性无关,丢弃线性相关的数据包;
S33:中间节点收到上一跳节点发送的具有相同组标记的m个不相关编码包后,采用与源节点类似的编码方法对接收的m个编码包重编码;
S34:根据链路丢包率信息确定节点的发送冗余ε,并发送如公式(5)所示的N'个编码包给下一跳节点;
S35:将接收的编码包结构中的编码系数更新为新的编码向量后再转发。
7.如权利要求1所述的深空通信中基于随机线性网络编码的接触图路由算法,其特征在于,所述步骤S4还包括有:
S41:假如t时刻目的节点接收的编码包为P1,P2,P3,其组成如下公式(6)、(7)及(8)所示:
P1=α11X1+α12X2     (6);
P2=α21X1+α22X2+α23X3     (7);
P3=α32X2+α33X3+α34X4     (8);
其中,X1,X2...表示原始数据包,αij表示第i个编码包从有限域中随机选取的原始数据包Xj的编码系数;
S42:由P1,P2,P3生成的编码系数矩阵如下公式(9)所示:
S43:若目的节点再收到如公式(10)所示编码包P4后,
P4=α41X1+α42X2+α43X3+α44X4      (10);
则目的节点能译码出X1,X2,X3,X4;
S44:若目的节点收到公式(11)所示编码包P5时,
P5=α53X3+α54X4+α55X5+α56X6     (11);
则此时不能解码出原始包X1,X2,X3,X4。
8.如权利要求1所述的深空通信中基于随机线性网络编码的接触图路由算法,其特征在于,还包括有采用Matlab软件对节点不相交K最短路径与MRANC路由算法分别从投递率、冗余度以及传输时延三方面进行比较。

说明书全文

深空通信中基于随机线性网络编码的接触图路由算法

技术领域

[0001] 本发明涉及通信技术领域,特别是一种深空通信中基于随机线性网络编码的接触图路由算法。

背景技术

[0002] 在世界无线电管理大会制定的《无线电规则》中,把距离地球2×106km之内的空间称为近空,该距离以外称为深空。我国航天界则直接将地球至月球以外的广袤空间定义为深空。深空通信涵盖了宇宙空间中探测器之间以及行星之间的所有通信,与地面通信相比,深空通信的特点主要包括:
[0003] (1)节点间距离遥远,传播时延巨大且时变。卫星周期性地运动使得节点间传播时延时变,链路间歇性中断。除月球外,地球至其他天体的单向传播时延在2.2min至7h不等,相比于地面通信几毫秒至几秒的传播时延来说,如此巨大的时延给深空通信数据的可靠传输带来巨大的挑战。
[0004] (2)链路间歇性中断。深空中的链路中断分为可预测的中断和不可预测的中断。其中,由行星遮蔽、节点运动至通信范围之外等规律性的因素造成的中断为可预测的链路中断,而由太阳暴、节点功率受限及时间失步等突发情况造成的链路中断是不可预测的。受这些中断的影响,深空中节点可通信机会较少,通信持续时间甚至小于单向传播时延,节点间不存在端到端的实时路径。因此,在路径计算过程中有效利用可预测的链路中断信息,降低不可预测的链路中断情况对数据传输的影响,保证数据的可靠传输。
[0005] (3)深空中前向与反向链路的传输速率严重不对称。前向链路主要传输行星探测器节点所采集的科学数据和图像,而反向链路主要传输地面指挥站对各探测器节点的遥控、遥测、跟踪等控制指令。前向和反向链路传输速率的不对称比例有时高达1000:1,甚至只有单向信道。这种不对称链路使得节点之间的可靠交互非常困难,难以实时获得网络拓扑变化信息。
[0006] (4)节点资源受限。深空中节点稀疏,可通信机会少,卫星节点受重量、尺寸、供电设施以及造价等因素的影响,节点的数目、存储空间及处理能均严重受限。
[0007] (5)路径损耗严重,接收端信噪比极低,误码率高。遥远的传播距离造成的路径损耗是深空通信信号衰减的主要原因,其衰减强度与传输距离呈正相关,严重的信号衰减导致信号误码率急剧增大,有时甚至高达10-1。
[0008] 综上所述,深空通信环境极其恶劣,不利于数据的可靠传输。因此,为了完成深空探测任务,研究并提出降低长传播时延、链路间歇性中断以及高误码率影响的路由算法势在必行。

发明内容

[0009] 有鉴于现有技术的上述缺陷,本发明的目的就是提供一种深空通信中基于随机线性网络编码的接触图路由算法,基于节点的接触图选出多条链路不相交的最早到达路径,将原始数据采用随机线性网络编码后再发送,并通过链路状态控制网络中的冗余数据包数,保证目的节点可译码的同时减少网络资源的浪费,通过部分中间节点重编码机制降低中间节点的数据处理量,以及目的端解码预判机制降低节点的解码等待时延。
[0010] 本发明的目的是通过这样的技术方案实现的,一种深空通信中基于随机线性网络编码的接触图路由算法,它包括有:
[0011] S1:源节点对需要发送的数据包采用随机线性网络编码进行处理,并根据链路状态信息限制发送的编码包个数;
[0012] S2:源节点根据预知的接触图选择多条链路不相交路径,并将编码包在多条路径上传输;
[0013] S3:在入度大于1的中间节点处对接收的数据包直接转发,并进行重编码后再转发;
[0014] S4:目的节点接收到一定数量的数据包后进行解码预判,将不能成功解码的数据包反馈给上一跳节点集,上一跳节点集优先发送有助于目的节点解码的编码包,使目的节点能快速解码,降低传输时延。
[0015] 进一步,所述步骤S2包括有多径寻路,所述多径寻路的具体操作如下:
[0016] S21:当有数据要发送时,建立源节点至目的节点的多条链路不相交的路径;
[0017] S22:源节点根据预知的网络拓扑信息构造反映节点间关系的接触图;
[0018] S23:源节点基于节点的接触图采用时变的Dijkstra算法计算出当前时刻满足容量约束关系的最早到达路径,并将该路径记为β1;
[0019] S24:源节点删除接触图中所有路径β1上的链路,再基于删除后的接触图采用时变的Dijkstra算法计算最早路径β2,直到计算出源节点到目的节点的前β条最早路径或者删除后的接触图不再构成源节点至目的节点的路径。
[0020] 进一步,所述步骤S24还包括有:
[0021] S241:当源节点选出前β条最早到达的链路不相交路径之后,需要对原始数据包进行随机线性网络编码操作,并将编码包在选出的β条路径上传输;
[0022] S242:将要发送的文件平均分割成大小相同的多个数据段,每个数据段内包含k个数据包,并将每一个数据段内的k个数据包从第一个数据包起依次编号为1,2,3,…,k;每次发送数据前,需要对链路丢包率进行预测以确定发送的编码包个数。
[0023] 进一步,所述步骤S242中根据链路丢包率与原始数据包个数k确定节点发送的编码包数的步骤如下:
[0024] S2421:采用公式(1)预测信道的丢包率P;其中,P1为最近一次反馈的某一跳链路丢包率,P2为该跳上次反馈的链路丢包率,λ为可调节参数,取值范围为(0,1);
[0025] P=(1-λ)P1+λP2   (1);
[0026] S2422:根据公式(2)计算源节点的发送冗余ε,其中ε′为控制节点编码冗余的参数,取值范围为(0,1);随着丢包率的增大,发送冗余逐渐增大;
[0027]
[0028] S2423:由公式(3)即可得到节点发送的编码包个数;
[0029]
[0030] 进一步,还包括有:
[0031] S243:源节点根据链路丢包率确定需要转发的编码包个数后,采用随机线性网络编码对同一数据段内的k个原始数据包进行编码迭代
[0032] S244:从有限域GF(2i)中随机选取N组由k个编码数组组成的本地编码向量,记为gi1,gi2,gi3...gik,把k个原始数据与编码向量通过随机线性组合成N(N>k)个新的编码数据包Y1,Y2,…,YN,编码过程如公式(4)所示:
[0033]
[0034] S245:编码之后源节点再将组标识及编码向量添加至编码数据包包头后组合发送;
[0035] S246:源节点发送完一个数据段的编码包之后进入等待状态,直到收到下一跳节点集的反馈信息;
[0036] S247:当源节点收到重传信息时,源节点将重传信息中的丢包率信息提取出来更新链路的丢包率,并重传丢失的编码包;
[0037] S248:当收到下一跳节点集接收成功的消息时,则开始对下一个数据段的数据进行编码之后再传输,直至传输完所有数据段的数据包。
[0038] 进一步,所述步骤S3包括有:
[0039] S31:为降低编码包之间的线性相关性,在入度为1的中间节点处进行重编码;
[0040] S32:判断该中间节点判断接收的编码包是否与本节点缓存中的编码包线性无关,丢弃线性相关的数据包;
[0041] S33:中间节点收到上一跳节点发送的具有相同组标记的m个不相关编码包后,采用与源节点类似的编码方法对接收的m个编码包重编码;
[0042] S34:根据链路丢包率信息确定节点的发送冗余ε,并发送如公式(5)所示的N'个编码包给下一跳节点;
[0043]
[0044] S35:将接收的编码包结构中的编码系数更新为新的编码向量后再转发。
[0045] 进一步,所述步骤S4还包括有:
[0046] S41:假如t时刻目的节点接收的编码包为P1,P2,P3,其组成如下公式(6)、(7)及(8)所示:
[0047] P1=α11X1+α12X2   (6);
[0048] P2=α21X1+α22X2+α23X3   (7);
[0049] P3=α32X2+α33X3+α34X4   (8);
[0050] 其中,X1,X2...表示原始数据包,αij表示第i个编码包从有限域中随机选取的原始数据包Xj的编码系数;
[0051] S42:由P1,P2,P3生成的编码系数矩阵如下公式(9)所示:
[0052]
[0053] S43:若目的节点再收到如公式(10)所示编码包P4后,
[0054] P4=α41X1+α42X2+α43X3+α44X4   (10);
[0055] 则目的节点能译码出X1,X2,X3,X4;
[0056] S44:若目的节点收到公式(11)所示编码包P5时,
[0057] P5=α53X3+α54X4+α55X5+α56X6   (11);
[0058] 则此时不能解码出原始包X1,X2,X3,X4。
[0059] 进一步,还包括有采用Matlab软件对节点不相交K最短路径与MRANC路由算法(A Multi-path Routing Algorithm based on Network Coding,MRANC;即基于随机线性网络编码的多径路由算法,简称MRANC路由算法)分别从投递率、冗余度以及传输时延三方面进行比较。
[0060] 由于采用了上述技术方案,本发明具有如下的优点:
[0061] (1)通过网络编码正向纠错能力提高数据首次传输可靠性,减少重传次数,增强网络健壮性。源节点编码过程中,根据链路状态信息限制网络中的冗余编码包个数,保证在目的节点可成功译码的情况下,减少网络资源的浪费;
[0062] (2)为提高网络性能,防止网络拥塞,提出使用链路不相交多径路由算法传输数据,并只在部分中间节点进行重编码的方法,减少中间节点的数据处理量;
[0063] (3)为降低目的节点解码等待时延,提出目的节点解码预判机制,上一跳节点集优先发送有利于目的端解码的编码包,并在解码成功后及时清除网络中无用的数据包。
[0064] 本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。附图说明
[0065] 本发明的附图说明如下:
[0066] 图1为深空通信中基于随机线性网络编码的接触图路由算法的流程示意图。
[0067] 图2为节点不相交多径路由示意图。
[0068] 图3为链路不相交多径路由示意图。
[0069] 图4为相交多径路由示意图。
[0070] 图5为链路不相交多径路由的公共节点网络拓扑图。
[0071] 图6为网络仿真场景示意图。
[0072] 图7为投递率和链路丢包率的关系示意图。
[0073] 图8为冗余度和链路丢包率的关系示意图。
[0074] 图9为时延与链路丢包率的关系示意图。
[0075] 图10为随机线性网络编码的编码过程示意图。

具体实施方式

[0076] 下面结合附图和实施例对本发明作进一步说明。
[0077] 实施例1:如图1至图10所示;一种深空通信中基于随机线性网络编码的接触图路由算法,它包括有:
[0078] S1:源节点对需要发送的数据包采用随机线性网络编码进行处理,并根据链路状态信息限制发送的编码包个数;
[0079] S2:源节点根据预知的接触图选择多条链路不相交路径,并将编码包在多条路径上传输;
[0080] S3:在入度大于1的中间节点处对接收的数据包直接转发,并进行重编码后再转发;
[0081] S4:目的节点接收到一定数量的数据包后进行解码预判,将不能成功解码的数据包反馈给上一跳节点集,上一跳节点集优先发送有助于目的节点解码的编码包,使目的节点能快速解码,降低传输时延。
[0082] 所述步骤S2包括有多径寻路,所述多径寻路的具体操作如下:
[0083] S21:当有数据要发送时,建立源节点至目的节点的多条链路不相交的路径;
[0084] S22:源节点根据预知的网络拓扑信息构造反映节点间关系的接触图;
[0085] S23:源节点基于节点的接触图采用时变的Dijkstra算法计算出当前时刻满足容量约束关系的最早到达路径,并将该路径记为β1;
[0086] S24:源节点删除接触图中所有路径β1上的链路,再基于删除后的接触图采用时变的Dijkstra算法计算最早路径β2,直到计算出源节点到目的节点的前β条最早路径或者删除后的接触图不再构成源节点至目的节点的路径。
[0087] 所述步骤S24还包括有:
[0088] S241:当源节点选出前β条最早到达的链路不相交路径之后,需要对原始数据包进行随机线性网络编码操作,并将编码包在选出的β条路径上传输;
[0089] S242:将要发送的文件平均分割成大小相同的多个数据段,每个数据段内包含k个数据包,并将每一个数据段内的k个数据包从第一个数据包起依次编号为1,2,3,…,k;每次发送数据前,需要对链路丢包率进行预测以确定发送的编码包个数。
[0090] 所述步骤S242中根据链路丢包率与原始数据包个数k确定节点发送的编码包数的步骤如下:
[0091] S2421:采用公式(1)预测信道的丢包率P;其中,P1为最近一次反馈的某一跳链路丢包率,P2为该跳上次反馈的链路丢包率,λ为可调节参数,取值范围为(0,1);
[0092] P=(1-λ)P1+λP2   (1);
[0093] S2422:根据公式(2)计算源节点的发送冗余ε,其中ε′为控制节点编码冗余的参数,取值范围为(0,1);随着丢包率的增大,发送冗余逐渐增大;
[0094]
[0095] S2423:由公式(3)即可得到节点发送的编码包个数;
[0096]
[0097] 还包括有:
[0098] S243:源节点根据链路丢包率确定需要转发的编码包个数后,采用随机线性网络编码对同一数据段内的k个原始数据包进行编码迭代;
[0099] S244:从有限域GF(2i)中随机选取N组由k个编码数组组成的本地编码向量,记为gi1,gi2,gi3...gik,把k个原始数据与编码向量通过随机线性组合成N(N>k)个新的编码数据包Y1,Y2,…,YN,编码过程如公式(4)所示:
[0100]
[0101] S245:编码之后源节点再将组标识及编码向量添加至编码数据包包头后组合发送;
[0102] S246:源节点发送完一个数据段的编码包之后进入等待状态,直到收到下一跳节点集的反馈信息;
[0103] S247:当源节点收到重传信息时,源节点将重传信息中的丢包率信息提取出来更新链路的丢包率,并重传丢失的编码包;
[0104] S248:当收到下一跳节点集接收成功的消息时,则开始对下一个数据段的数据进行编码之后再传输,直至传输完所有数据段的数据包。
[0105] 所述步骤S3包括有:
[0106] S31:为降低编码包之间的线性相关性,在入度为1的中间节点处进行重编码;
[0107] S32:判断该中间节点判断接收的编码包是否与本节点缓存中的编码包线性无关,丢弃线性相关的数据包;
[0108] S33:中间节点收到上一跳节点发送的具有相同组标记的m个不相关编码包后,采用与源节点类似的编码方法对接收的m个编码包重编码;
[0109] S34:根据链路丢包率信息确定节点的发送冗余ε,并发送如公式(5)所示的N'个编码包给下一跳节点;
[0110]
[0111] S35:将接收的编码包结构中的编码系数更新为新的编码向量后再转发。
[0112] 所述步骤S4还包括有:
[0113] S41:假如t时刻目的节点接收的编码包为P1,P2,P3,其组成如下公式(6)、(7)及(8)所示:
[0114] P1=α11X1+α12X2   (6);
[0115] P2=α21X1+α22X2+α23X3   (7);
[0116] P3=α32X2+α33X3+α34X4   (8);
[0117] 其中,X1,X2...表示原始数据包,αij表示第i个编码包从有限域中随机选取的原始数据包Xj的编码系数;
[0118] S42:由P1,P2,P3生成的编码系数矩阵如下公式(9)所示:
[0119]
[0120] S43:若目的节点再收到如公式(10)所示编码包P4后,
[0121] P4=α41X1+α42X2+α43X3+α44X4   (10);
[0122] 则目的节点能译码出X1,X2,X3,X4;
[0123] S44:若目的节点收到公式(11)所示编码包P5时,
[0124] P5=α53X3+α54X4+α55X5+α56X6   (11);
[0125] 则此时不能解码出原始包X1,X2,X3,X4。
[0126] 还包括有采用Matlab软件对节点不相交K最短路径与MRANC路由算法(A Multi-path Routing Algorithm based on Network Coding,MRANC;即基于随机线性网络编码的多径路由算法,简称MRANC路由算法)分别从投递率、冗余度以及传输时延三方面进行比较。
[0127] 本发明通过网络编码正向纠错能力提高数据首次传输可靠性,减少重传次数,增强网络健壮性。源节点编码过程中,根据链路状态信息限制网络中的冗余编码包个数,保证在目的节点可成功译码的情况下,减少网络资源的浪费。本发明为提高网络性能,防止网络拥塞,提出使用链路不相交多径路由算法传输数据,并只在部分中间节点进行重编码的方法,减少中间节点的数据处理量。本发明为降低目的节点解码等待时延,提出目的节点解码预判机制,上一跳节点集优先发送有利于目的端解码的编码包,并在解码成功后及时清除网络中无用的数据包。
[0128] 实施例2:如图1至图9所示;一种深空通信中基于随机线性网络编码的接触图路由算法,它包括有:多径寻路、源节点编码、部分中间节点重编码以及目的节点解码预判。
[0129] 首先,源节点对需要发送的数据包采用随机线性网络编码进行处理,并根据链路状态信息限制发送的编码包个数,保证目的节点能译码成功的同时减少网络资源的浪费。
[0130] 其次,源节点根据预知的接触图选择多条链路不相交路径,并将编码包在多条路径上传输,有效利用节点间接触机会。
[0131] 再次,在入度大于1的中间节点处对接收的数据包采用直接转发的方式,减少中间节点的数据处理量,避免中间节点处理的数据量过大造成的网络拥塞,而为了减少编码包之间的线性相关性,在入度为1的中间节点进行重编码后再转发。
[0132] 最后,目的节点接收到一定数量的数据包后进行解码预判,将不能成功解码的数据包反馈给上一跳节点集,上一跳节点集优先发送最有助于目的节点解码的编码包,使目的节点能快速解码,降低传输时延。
[0133] MRANC算法使用随机线性网络编码提高网络的容错性能,利用路径冗余和网络编码冗余保证分组快速可靠地传输,并通过限制网络中的冗余编码包个数减少网络资源的浪费。
[0134] 下面分别从多径寻路、源节点编码、部分中间节点重编码以及目的节点解码预判机制对MRANC算法进行详细阐述:
[0135] (一)多径寻路
[0136] 传统的无线网络多径路由算法按照路径之间的关系可分为相交多径路由算法与不相交多径路由算法。其中相交多径路由算法中各路径间的链路或节点具有公共部分,不相交路由可分为链路不相交与节点不相交路由,节点不相交表示路径之间不存在公共的节点或链路,链路不相交路由可以有公共的节点,但不存在公共的链路,节点不相交路由比链路不相交路由要求更严格。由于路径之间的独立性,节点不相交路由的容错能力最强,链路不相交路由次之,而相交多径路由中一条链路或者一个节点失效均有可能导致多条路径中断。各多径路由方式示意图如图2至图4所示。
[0137] 在节点稀疏、可通信机会少的深空网络中,使用链路不相交多径路由主要有以下三个方面的优势:一方面,链路不相交多径路由可以避免选择节点不相交的链路而刻意选择性能较差的路径。另一方面,链路不相交多径路由能有效利用来自上一跳多个节点的编码包,提高对数据包的利用率。最后,在节点数目较少的深空网络,可能不存在多条节点不相交路径,受链路间歇性中断的影响,链路不相交多径的可通信机会远远多于节点不相交多径。但链路不相交多径路由算法也有其劣势,由于链路不相交多径路由中公共节点处承受的信息量较大,可能造成节点拥塞导致该公共节点失效,进而导致经过该节点的多条路径均失效。因此,如果能通过采取一定的措施减少公共节点处理的信息量,与节点不相交多径相比,链路不相交多径路由算法的性能会更优且更适合深空通信环境。
[0138] 当有数据要发送时,为建立源节点至目的节点的多条链路不相交的路径,首先,源节点根据预知的网络拓扑信息构造反映节点间关系的接触图,该接触图不仅反映当前时刻的拓扑信息,还利用节点运动的规律性得到网络未来的拓扑状态。其次,源节点基于节点的接触图采用时变的Dijkstra算法计算出当前时刻满足容量约束关系的最早到达路径,并将该路径记为β1。再次,源节点删除接触图中所有路径β1上的链路,再基于删除后的接触图采用时变的Dijkstra算法计算最早路径β2,直到计算出源节点到目的节点的前β条最早路径或者删除后的接触图不再构成源节点至目的节点的路径。与第三章所提算法不同,为减少后续节点的计算量,本发明采用源节点到目的节点的前β条链路不相交最早到达路径转发不同的编码包,转发编码包的路径数是恒定的。通过在源节点编码与部分中间节点重编码过程中,根据链路状态信息动态决定发送的冗余编码包数,有效对抗深空通信中高误码率及链路间歇中断的影响。
[0139] (二)源节点编码
[0140] 当源节点选出前β条最早到达的链路不相交路径之后,需要对原始数据包进行随机线性网络编码操作,并将编码包在选出的β条路径上传输。为保证数据可靠传输的同时减少网络资源的浪费,在数据的发送过程中,利用随机线性网络编码增加编码冗余提高数据包首次传输的成功率,并根据链路丢包率计算节点发送的编码包个数,在保证数据可靠传输的同时限制网络中的编码冗余。
[0141] 首先将要发送的文件平均分割成大小相同的多个数据段,每个数据段内包含k个数据包,并将每一个数据段内的k个数据包从第一个数据包起依次编号为1,2,…3,k。,每次发送数据前,需要对链路丢包率进行预测以确定发送的编码包个数。根据链路丢包率与原始数据包个数k确定节点发送的编码包数的步骤如下:
[0142] (1)采用式(12)预测信道的丢包率。其中,P1为最近一次反馈的某一跳链路丢包率,P2为该跳上次反馈的链路丢包率,λ为可调节参数,取值范围为(0,1);
[0143] P=(1-λ)P1+λP2   (12);
[0144] (2)根据公式(13)计算源节点的发送冗余ε,其中ε′为控制节点编码冗余的参数,取值范围为(0,1);随着丢包率的增大,发送冗余逐渐增大。
[0145]
[0146] (3)由公式(14)即可得到节点发送的编码包个数。
[0147]
[0148] 源节点根据链路丢包率确定需要转发的编码包个数后,采用随机线性网络编码对i同一数据段内的k个原始数据包进行编码迭代。从有限域GF(2)中随机选取N组由k个编码数组组成的本地编码向量,记为gi1,gi2,gi3...gik,把k个原始数据与编码向量通过随机线性组合成N(N>k)个新的编码数据包Y1,Y2,…,YN,编码过程如下式(15)所示:
[0149]
[0150] 编码之后源节点再将组标识及编码向量添加至编码数据包包头后组合发送。源节点发送完一个数据段的编码包之后进入等待状态,直到收到下一跳节点集的反馈信息。当收到重传信息时,源节点将重传信息中的丢包率信息提取出来更新链路的丢包率,并重传丢失的编码包。当收到下一跳节点集接收成功的消息时,则开始对下一个数据段的数据进行编码之后再传输,直至传输完所有数据段的数据包。
[0151] (三)部分中间节点重编码
[0152] 现有的减少中间节点信息量的方法主要通过限制中间节点接收的数据包个数,一旦接收到一定数量的具有相同组标记的数据包时,中间节点便不再接收该组数据包。为了进一步减少中间节点的数据处理量,本发明采用部分中间节点重编码机制,与网络编码中所有的中间节点均对编码包进行重编码不同,MRANC算法只对入度为1的中间节点重编码。
[0153] 深空网络是有向循环的网络,由于中间节点重编码势必给公共节点引入较大的计算量,从而给星上处理能力及存储空间均受限的卫星节点带来较大的压力。因此,为了减少中间节点的数据处理量,本发明采用部分中间节点重编码机制,只在入度与出度均为1的中间节点处进行重编码,而在多条路径相交的公共节点处采用直接转发的方式,消除编码数据包之间的线性相关性。
[0154] 链路不相交多径路由中多条路径的公共节点网络拓扑图如图5所示:节点C为两条链路不相交路径的公共节点,且节点C的上游节点数等于下游节点数。此时,若在节点C处对上游节点接收的编码包进行重编码,会引入比较大的编码时延及数据处理量。由于中间节点C的失效会造成经过该节点的两条路径均失效,因此,中间节点C对数据的可靠传输具有重要意义。在节点C采用直接转发的方式,减少该节点的数据处理量,降低节点C的缓存与计算压力,有利于全网性能的提升。
[0155] 为降低编码包之间的线性相关性,在入度为1的中间节点处进行重编码。首先,该中间节点判断接收的编码包是否与本节点缓存中的编码包线性无关,丢弃线性相关的数据包。然后,中间节点收到上一跳节点发送的具有相同组标记的m个不相关编码包后,采用与源节点类似的编码方法对接收的m个编码包重编码。根据链路丢包率信息确定节点的发送冗余ε,并发送如下式(16)所示的N'个编码包给下一跳节点。
[0156]
[0157] 中间节点重编码仍然是从有限域中随机选择一组数生成局部编码系数,编码后的数据包与原始数据包呈线性关系,只不过编码系数有所变化。将接收的编码包结构中的编码系数更新为新的编码向量后再转发。
[0158] 本发明只对入度为1中间节点所接收的编码包进行重编码,一方面减少数据包的线性相关性,同时减少中间节点处理的数据量,防止中间节点出现网络拥塞导致经过该节点的多条路径失效。另一方面,网络编码对节点的运算处理能力和存储空间要求较高,该方法能够允许处理能力不高及存储空间有限的中间节点也参与到数据转发过程中。最后,入度为1的中间节点必须接收到上一跳节点的m个编码包之后才进行重编码,需要较长的等待时延,对于入度大于1的中间节点采用直接转发的方式可以降低等待时延,减少对中间节点存储空间的占用时间。
[0159] (四)目的节点解码预判
[0160] 针对数据译码过程中目的节点解码等待时间较长的问题,本发明提出目的节点解码预判机制。当目的节点接收一定数量的数据包时,利用已解码的数据包将缓存中未解码的数据包进行解码预判,将不能解码出的数据包反馈给目的节点的上一跳节点集,上一跳节点集优先发送最有利于目的节点解码的编码包,使得目的节点能及时解码出原始数据包,减少数据包解码时延。下面分析解码预判机制的优越性。
[0161] 假如t时刻目的节点接收的编码包为P1,P2,P3,其组成如下式(17)、(18)及(19)所示:
[0162] P1=α11X1+α12X2   (17);
[0163] P2=α21X1+α22X2+α23X3   (18);
[0164] P3=α32X2+α33X3+α34X4   (19);
[0165] 其中,X1,X2...表示原始数据包,αij表示第i个编码包从有限域中随机选取的原始数据包Xj的编码系数。由P1,P2,P3生成的编码系数矩阵如下式(20)所示:
[0166]
[0167] 此时,若目的节点再收到如下式(21)所示编码包P4后,
[0168] P4=α41X1+α42X2+α43X3+α44X4   (21);
[0169] 则目的节点能译码出X1,X2,X3,X4。若目的节点收到式(22)所示编码包P5时,[0170] P5=α53X3+α54X4+α55X5+α56X6   (22);
[0171] 此时不仅不能解码出原始包X1,X2,X3,X4,而且由于数据包X5,X6的引入,需要等待更长的时间才能译码成功。因此,采用目的节点解码预判机制,将有益于解码的编码包优先发送给目的节点,降低端到端的解码时延,减少编码包占用网络资源的时间能间歇提高编码包的成功投递率。
[0172] 当目的节点能够完全解码出原始数据包时,广播发送全局变量删除确认信息(Delete Acknowledge,D-ACK)通知各中间节点和源节点释放已成功解码的编码数据包,及时清除网络中的冗余包,释放节点的缓存空间,减少不必要的资源消耗。
[0173] 综上所述,MRANC算法的步骤如下:
[0174] 步骤1:源节点有数据包要发送时,基于节点的接触图计算源节点到目的节点满足容量约束关系的前β条最早到达路径,算法的代价函数为该时刻所属接触的传播时延与等待时延之和。
[0175] 步骤2:源节点根据随机线性编码规则,将原始数据平均分成每段含k个数据包的若干数据段,并依次编号为1~k,每个数据包的大小为L;
[0176] 步骤3:节点从有限域GF(28)中随机挑选系数分配本地编码向量,对同一数据段内的k个数据包进行线性组合,并将编码系数构成的编码向量放在相应的编码包头部组合发送,编码数据包的个数由源端的编码冗余ε决定,编码冗余的大小根据链路状态动态调整。源节点将N个编码包在该β条链路上分别传输,发送完之后进入等待状态;直到收到下一跳节点集的反馈信息。当收到重传信息时,源节点将存储在信息中的丢包率信息提取出来更新链路的丢包率,并重传丢失的编码包。当收到下一跳节点集接收成功的消息时,则开始对下一个数据段的数据包进行编码之后再传输,直至传输完所有数据段的数据包。
[0177] 步骤4:入度为1的中间节点收到上一跳节点同一组标识的m个编码包后,为降低编码数据包之间的线性相关性,采用与源节点相同的方法对接收的编码包进行重编码操作,并发送N'个编码包给下一跳节点后进入等待状态,而对于入度大于1的中间节点则采用直接转发的方式,不再进行重编码操作,直至到达目的节点。同时中间节点统计正确收到的编码包个数k',计算出链路的丢包率并反馈给上一跳节点,从而在下一次数据转发过程中有利于节点计算发送的冗余编码包个数。
[0178] 步骤5:目的节点检查接收到的编码包是否线性相关,存储线性独立的编码包并提取相关编码向量,计算由编码向量组成的编码系数矩阵的秩R并进行解码预判。如果R≥k,跳到步骤7,否则,跳到步骤6;
[0179] 步骤6:若节点缓存中编码系数矩阵未满秩,则目的节点将缓存中的编码包进行解码预判。将编码系数矩阵发送给上一跳节点集,上一跳节点收到后,将能够使目的节点及早解码的编码包优先发送给目的节点;
[0180] 步骤7:目的节点开始解码运算,采用高斯译码算法译出k个原始数据包。如果能解码出原始数据包,目的节点以广播发送删除确认信息的方式快速清除冗余编码包,防止已经成功投递的消息仍滞留于网络中继续编码,导致网络资源的浪费。若由于丢包率较大导致目的节点在计时器结束后仍无法收到足够多的编码数据包时,目的节点可向上一跳节点集发送反馈,请求重传相关的编码包;
[0181] 步骤8:若目的节点成功译出源节点发送的所有数据段的数据包,执行步骤9,否则跳回步骤7,开始下一段数据包的译码;
[0182] 步骤9:算法结束。
[0183] (五)性能仿真
[0184] 首先定义后续需要用到的一个指标:冗余度。发送冗余数据包可以提高数据传输的可靠性,但过多的冗余包浪费节点资源,甚至导致网络拥塞。冗余度表示网络中发送的包括重传的冗余数据包个数占总发送的数据包的比重,冗余度反映网络中的能量损耗。
[0185] 为有效验证MRANC路由算法的优越性,本发明采用Matlab软件对节点不相交K最短路径与MRANC路由算法分别从投递率、冗余度以及传输时延三方面进行比较。仿真场景及节点间接触关系的模拟参数如图6、表1及表2所示,模拟地面站与火星探测器之间经过拉格朗日中继卫星的文件传输,仿真参数设置如表3所示,其中λ设置为0.25,为了保证目的节点成功解码且减少网络中的冗余编码包个数,ε'取30%。
[0186] 表1节点之间的接触关系模拟参数
[0187]接触 起始时刻(min) 结束时刻(min) 速率
1–4 0 30 1Mbps
1–5 30 60 1Mbps
2–4 10 30 1Mbps
3–5 10 30 1Mbps
2–5 30 60 1Mbps
3–4 30 60 1Mbps
2–6 20 50 1Mbps
3–6 20 50 1Mbps
[0188] 表2系统仿真参数1
[0189]参数 数值
文件大小 1Mbyte
数据包长度 1000bit
信道误码模型 随机误码模型
跳到跳丢包率 0,0.05,0.1,0.15,0.2,0.25,0.3
P',a',b,λ 0.3,3,100,0.25
仿真次数 1000次仿真,取平均值
最大重传次数 2
地火单向传播时延(s) 280
[0190] 表3系统仿真参数2
[0191]参数 数值
文件大小 1Mbyte
数据包长度 1000bit
信道误码模型 随机误码模型
跳到跳丢包率 0,0.05,0.1,0.15,0.2,0.25,0.3
仿真次数 1000次仿真,取平均值
最大重传次数 2
β,K 2
[0192] 节点不相交K最短路径算法可描述为:源节点有数据要发送时,根据网络当前时刻及未来一段时间内节点间的接触状况得到网络拓扑图,采用时变的Dijkstra算法计算出源节点至目的节点的一条最早到达路径K1后,在接触图中删除该路径K1中的中间节点及连接该节点对应的链路,再采用时变的Dijkstra算法基于删除后的接触图计算出次最早到达路径K2,在网络拓扑中继续删除次短路径的中间节点后计算转发路径,直到已经计算出K条节点不相交的最早到达路径,或网络拓扑中已无法构成源节点至目的节点的路径。
[0193] 反映节点不相交K最短路径算法和MRANC算法的投递率如图7所示,随着丢包率的增大,两种算法的性能曲线均有所下降,但节点不相交K最短路径算法投递率下降的速度更明显,MRANC算法下降得缓慢得多。MRANC算法的投递率较节点不相交K最短路径算法提高了9.2%。
[0194] 出现这种情况主要是因为:一方面,节点不相交K最短路径算法仅是多条路径简单的叠加。而MRANC采用了随机线性网络编码对原始数据包进行编码迭代,只要接收端接收足够多的编码包就能还原出原始数据包,具有较强的容错能力。另一方面,受节点间链路间歇通信及深空中节点数稀少等因素的影响,节点不相交路径中源节点与目的节点间可通信机会远远少于链路不相交多径传输。
[0195] 图8为传输过程中数据包的冗余度和丢包率的关系,冗余度反映的是网络中包括重传在内的冗余数据包个数占总数据包数的比例。由图可知,节点不相交K最短路径算法由于使用两条路径传输相同的数据包,在丢包率为0时,该算法冗余数据包数占总数据包的一半,而MRANC算法中冗余包数仅占总编码包个数的23%,两者之间相差27%。随着丢包率的增大,大量数据包的丢包重传导致两种算法冗余度一直处于上升趋势,但K最短路径算法的冗余度一直高于MRANC算法,且增长速度较MRANC算法慢。当丢包率为0.3时,K最短路径算法的冗余度约为0.67,而MRANC算法的冗余度约为0.47,两者之间相差20%,两者之间的差距越来越小。
[0196] MRANC算法在两条链路不相交路径上传输不同的编码包,源节点与部分中间节点编码发送的编码包数随着链路误码率的增大逐步增大,从而冗余度增速快于K最短路径算法。K最短路径算法没有考虑链路状态的影响,在整个发送过程中通过路径冗余提高数据传输的可靠性,导致链路丢包率低时冗余度非常高,造成对网络资源的巨大浪费。MRANC算法根据丢包率的增大逐步增大编码冗余。因此,MRANC算法的冗余度比节点不相交K最短路径降低41.6%。当冗余度相同时,MRANC算法能成功传输更多的数据包到达目的节点,从而有效利用深空有限的资源传输更多的科学数据。
[0197] 图9为文件传输总时延与链路丢包率的关系。从图中可以看出,当丢包率小于0.15时,MRANC算法的传输时延高于K最短路径算法,随着丢包率的增大,K最短路径算法的总传输时延迅速增大,而MRANC算法的时延增速较缓慢。当丢包率为0.25时,MRANC算法比K最短路径算法的时延降低26.6%,当丢包率为0.3时,MRANC算法的时延降低33.4%。
[0198] 这主要是因为:在丢包率较小时,K最短路径算法通过在两条路径上传输相同的数据包,引入较大的冗余,数据包投递率较高。当链路丢包率增大时,两条独立的路径中产生多个数据包的丢包重传,数据传输的可靠性能逐渐下降,重传造成文件传输时延迅速增长。而MRANC算法在丢包率较小时传输时延较大,主要是因为:一方面,MRANC算法在文件传输过程中需要对数据包进行源节点编码、中间节点重编码以及目的节点解码运算,且中间节点重编码过程中需要等到接收到上一跳节点的m个数据包才开始进行重编码;另一方面,随机线性网络编码过程中将文件划分为若干个数据段分别传输,源节点需要等到接收到下一跳节点集的反馈信息才会开始下一数据段的传输,从而引入较长的等待时延,导致在丢包率较小时文件传输时延大于节点不相交K最短路径算法。随着丢包率逐渐增加,MRANC算法根据链路状况适当地增加数据发送冗余以及随机线性网络编码强大的容错性能确保目的节点能成功译码,从而文件传输时延增长较缓。
[0199] 本实施例为优选实施例,为增强深空中数据传输可靠性的同时有效利用网络资源,本发明提出一种基于随机线性网络编码的接触图路由算法。该算法基于节点的接触图选出多条链路不相交的最早到达路径,将原始数据采用随机线性网络编码后再发送,并通过链路状态控制网络中的冗余数据包数,保证目的节点可译码的同时减少网络资源的浪费,通过部分中间节点重编码机制降低中间节点的数据处理量,以及目的端解码预判机制降低节点的解码等待时延。仿真结果表明,MRANC算法的投递率提高9.2%,冗余度比K最短路径降低41.6%。深空中链路丢包率较大,MRANC算法的性能优于K最短路径,并且随着链路环境恶化,MRANC算法的优势更明显。总之,该算法能较好地适应网络拓扑动态变化、链路间歇性中断及高误码率的深空通信环境。
[0200] 实施例3,网络编码主要分为流内编码和流间编码。流内编码主要对同一源节点产生的数据进行编码,通过将同一数据流的数据包分成同等大小的段,再将每一段分成m个大小相同的数据包并对其进行编码迭代,接收端只需接收多于m个线性无关的编码包就能以较大概率完全译码出该段的原始数据包,提高网络的容错性能,通过算法的计算复杂度换取数据传输的可靠性。流间编码是指在中间节点处将不同数据流产生的多个数据包进行编码,并将该编码包多播发送,使得多个接收节点均能解码出自身所需的数据包,减少数据的发送次数,提高网络的吞吐量。
[0201] 根据编码过程中采用的编译码函数是否是线性函数可分为线性网络编码和非线性网络编码两种。由编码系数是否确定可将线性网络编码分为确定线性网络编码和随机线性网络编码。其中,确定线性编码方案根据网络拓扑为节点选取确定的编码向量,需要事先知道整个网络的拓扑图以及所有节点的编码过程,才能保证解码出原始数据包。而随机线性网络编码在编码发送前不需要知道整个网络的拓扑结构,较好地解决网络中节点无法实时获取拓扑动态变化情况。
[0202] 如图1至图10所示;一种深空通信中基于随机线性网络编码的接触图路由算法,它包括有:源节点编码、部分中间节点重编码以及目的节点解码。
[0203] (一)源节点编码
[0204] 源节点编码主要包含三个方面的内容:对原始数据包进行分组,编码系数的选取以及最后打包发送。源节点将原始数据包分成等长的m个数据包X1,X2...Xm。从有限域GF(2i)中随机选取N组由m个编码数组组成的本地编码向量,记为gi1,gi2,gi3...gik,把m个原始数据与编码向量随机线性组合成N(N>m)个新的编码数据包Y1,Y2,…,YN,编码过程如下式(23)所示:
[0205]
[0206] 源节点将组标识及编码向量添加至编码数据包包头后组合发送,随机线性网络编码过程如图10所示。在未收到目的节点的确认信息之前,源节点持续发送当前数据段的编码包,直到收到确认信息之后,源节点才开始发送下一数据段的编码包。
[0207] (二)中间节点编码
[0208] 为进一步降低编码包之间的线性相关性,中间节点采用和源节点相似的编码方法对编码数据包进行重编码。为节约网络资源,中间节点判断接收的编码包是否与本节点缓存中的编码包线性无关,丢弃线性相关的数据包,并将线性无关的编码包存入缓存中。假设节点r缓存中的k个相同组标识的数据包Y1,Y2,…,Yk是线性无关的,与之对应的向量分别为gi1,gi2,gi3...gik,中间节点重编码仍然是从有限域中随机选择k个数生成局部编码系数编码过程如式(24)所示,从而得到k个新的数据包
[0209]
[0210] 编码后的数据包与原始数据包呈线性关系,只不过编码系数有所变化,如式(25)所示,其中, 表示新生成的编码包与重编码前的系数gij之间的关系,其关系如式(26)所示。最后,将编码包结构中的编码系数更新为新的编码向量后再转发。
[0211]
[0212]
[0213] (三)目的节点编码
[0214] 目的节点按照相同的组标识接收并存储线性无关的编码包,当接收同一组标识的编码包个数大于原始数据包个数m时开始解码,解码过程如下:
[0215] (1)目的节点收到k个相同组标识线性无关的编码包时,从数据包包头中提取出编码向量,并判断k与原始数据包数m的大小。
[0216] 若k<m,不能解码,数据传输失败;
[0217] 若k≥m,从k个相同组标识的编码包中分别提取其携带的编码向量和数据包,数据包分别记为Y1,Y2,…Yk,其中第i个数据包对应的编码系数向量为:gi1,gi2…gim,进入步骤(2)。
[0218] (2)从k个编码包中选出m个线性不相关的编码向量,若能选出,则组成向量系数矩阵T,如下式(27)所示,进入步骤(3),若不能选出,则解码失败。
[0219]
[0220] (3)由于选取的m个线性向量不相关,故系数矩阵T满秩,求出系数矩阵的逆矩阵并采用高斯译码算法进行译码,采用式(2.6)还原出原始数据包,解码过程结束。
[0221]
[0222] 根据译码过程可知,接收端能否成功译码取决于编码矩阵的秩,节点随机地从有i限域GF(2)中选择系数分配本地编码向量,从而不可避免地引入线性相关的编码向量,因此,有限域的设计变得十分重要。若有限域范围太小则导致编码向量线性相关度较高,接收端不能成功译码,而且传输相关编码包浪费了网络资源。若有限域范围过大会导致编码向量所占的比特数增加,降低编码包中有效比特的比重,增大存储开销。
[0223] 表4不同大小有限域中系数线性无关情况
[0224]q 线性无关可能性
21 0.288788
22 0.688538
23 0.859406
24 0.922595
25 0.967773
26 0.984131
27 0.992126
28 0.996078
29 0.998043
[0225] 表4为有限域q=2i的大小与编码系数线性无关的概率对应关系。由表可知,当q=28时,接收端编码系数线性无关的概率高达99.6%,所需的存储开销仅为一字节,相比其他如链路中断、高误码率等情况导致的丢包来说,由有限域大小造成的丢包可忽略,并能以较
8
高的概率恢复出原始数据包,基本满足译码需求,本发明中有限域的取值为2。
[0226] 随机线性网络编码运用于深空通信环境具有的优势包括:一方面,随机线性网络编码具有强大的容错能力,当目的节点接收的编码包系数矩阵的秩等于原始数据包个数时,即使网络中部分节点或链路失效造成一定数量的丢包或误码时,原数据包均能以较大概率被正确译码。另一方面,通过网络编码提高数据可靠性,有效减少重传次数,从而减少由重传带来的巨大传输时延。同时深空中的主要能量损耗为数据传送过程中的发送能量损耗,减少重传次数能降低整个网络的能量损耗。因此,合适的网络编码方案能保证数据的可靠传输,降低网络资源的消耗。
[0227] 应当理解的是,本说明书未详细阐述的部分均属于现有技术。最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈