当前位置: 首页 > 专利查询>伍仁勇专利>正文

一种网络编码方法及安全网络技术

技术编号:29138183 阅读:20 留言:0更新日期:2021-07-02 22:35
本发明专利技术公开了一种网络编码方法及安全网络,包括正向传输阶段和/或反向传输阶段;其中,正向传输阶段,信源节点将信息分块发送至信源节点的接入路由器s,路由器s一次传输的信息分块数为ω,每个信息分块包含相应编号,经网络节点处理后,信宿节点从信宿节点的接入路由器d一次收到ω个分块,并根据分块编号恢复原始信息;反向传输阶段,收到信宿节点的请求包后,信宿节点的接入路由器d产生随机数据块并发送,经网络节点处理后,信源节点的接入路由器s收到相应的数据块并得到网络一次传输的最大信息分块数。本发明专利技术可以显著提高数据传输的效率和安全性,不需要预先知道网络拓扑和窃听链路信息,并且克服了随机线性网络编码的概率接收缺陷。

【技术实现步骤摘要】
一种网络编码方法及安全网络
本专利技术涉及信息通信领域,特别是一种网络编码方法及安全网络。
技术介绍
网络编码的思想是将信源消息分为多块并从多条链路同时发出,并允许网络中各节点对收到的信息块进行编码,这种思想在高效利用网络资源的同时也带来安全收益。现有的网络编码技术可分为确定性网络编码和随机网络编码。确定性网络编码需要一个全局节点保存整个网络的拓扑信息,并且为网络中每个节点分配编码矩阵,实际应用较为困难。随机网络编码无需全局节点参与,但需要在数据包前添加全局编码系数以使信宿正确接收,这意味信宿节点有可能无法正确接收,并且系统在多探针窃听攻击下更为脆弱。
技术实现思路
本专利技术所要解决的技术问题是,针对现有技术不足,提供一种网络编码方法及安全网络,显著提高数据传输的安全性,不需要预先得知网络拓扑和窃听链路信息,并且克服随机线性网络编码的概率接收缺陷。为解决上述技术问题,本专利技术所采用的技术方案是:一种网络编码方法,包括正向传输阶段和/或反向传输阶段;其中,正向传输阶段,信源节点将信息分块发送至信源节点的接入路由器s,一次传输的信息分块数为ω,每个信息分块包含相应编号,经网络中间节点处理后,信宿节点从信宿节点的接入路由器d一次收到ω个分块,并根据分块编号恢复原始信息;其中,ω≤ω′,ω′为网络一次传输允许的最大信息分块数;反向传输阶段,收到信宿节点的请求包后,信宿节点的接入路由器d产生随机数据块并发送,经网络节点处理后,接入路由器s收到相应的数据分块,计算出编码矩阵,并将网络一次传输的信息分块数值ω发送给信源节点。本专利技术的方法不需要预先得知网络拓扑和窃听链路信息,并且克服了随机线性网络编码的概率接收缺陷(即信宿节点有可能无法正确接收),显著提高了网络数据传输的效率和安全性。具体地,本专利技术方案分为以下几种情况:①当网络中的任一节点v是信宿节点的接入路由器d时,所述反向传输阶段具体实现过程包括:S1、节点v从信宿节点收到请求包,确认该请求;S2、生成一个|In(v)|×|In(v)|的矩阵Kv,矩阵Kv中各元素均在有限域GF(2m)中随机选取;其中,m是矩阵元素的二进制位数,即每个元素由m比特组成;|In(v)|为节点v的输入链路集合In(v)的链路总数;S3、将矩阵Kv的每一行按照端口号从相应端口发送;S4、当收到信源节点的接入路由器s传来的位置信息p时,根据p中的ω个位置数据,从Kv中选择对应下标的ω个列向量组成新的矩阵K'v;其中,K'v为一个|In(v)|×ω矩阵。所述正向传输阶段具体实现过程包括:S5、节点v将收到的|In(v)|个数据分块按行组成矩阵X,矩阵X的每个元素都是长度为m的二进制数;其中,|In(v)|为节点v的输入链路集合In(v)的链路总数;S6、在有限域GF(2m)下计算Y=K'vT·X,其中,K'vT表示矩阵K'v的转置;m是矩阵元素的二进制位数,即每个元素由m比特组成;S7、依次将矩阵Y的每一行作为一个数据分块发送至信宿节点。②当网络中的任一节点v是中间节点时,所述反向传输阶段具体实现过程包括:S1、节点v将从|Out(v)|个端口收到的数据按行组成矩阵X,矩阵X的每个元素都是长度为m的二进制数;其中,|Out(v)|为节点v的输出链路集合Out(v)的链路总数;S2、节点v生成一个|In(v)|×|Out(v)|的矩阵Kv,矩阵Kv中各元素均在有限域GF(2m)中随机选取,之后在有限域GF(2m)下计算Y=Kv·X;其中,|In(v)|为节点v的输入链路集合In(v)的链路总数;|Out(v)|为节点的输出链路集合Out(v)的链路总数;m是矩阵元素的二进制位数,即每个元素由m比特组成;S3、将矩阵Y的每一行按照端口号从相应端口发送。所述正向传输阶段具体实现过程包括:S4、节点v将从|In(v)|个端口收到的数据分块按行组成矩阵X,矩阵X的每个元素都是长度为m的二进制数;其中,|In(v)|为节点v的输入链路集合In(v)的链路总数;S5、在有限域GF(2m)下计算Y=KvT·X;其中,KvT表示矩阵Kv的转置;m是矩阵元素的二进制位数,即每个元素由m比特组成;S6、将矩阵Y的每一行按照端口号从相应端口发送。③当网络中的任一节点v是信源节点的接入路由器s时,所述反向传输阶段具体实现过程包括:S1、节点v将从|Out(v)|个端口收到的数据按行组成矩阵X,矩阵X的每个元素都是长度为m的二进制数;其中,|Out(v)|为节点v的输出链路集合Out(v)的链路总数;S2、令网络一次传输允许的最大信息分块数ω′=rank(X),利用ω′和X生成矩阵Kv和位置信息p,其中,rank(X)表示矩阵X的秩,等于网络一次传输的最大信息分块数;矩阵Kv的大小为ω×|Out(v)|,ω≤ω′;|Out(v)|为节点v的输出链路集合Out(v)的链路总数;S3、将p传送给信宿节点的接入路由器d,将网络一次传输的信息分块数ω发送给信源节点。所述正向传输阶段具体实现过程包括:S4、节点v将收到的数据分块按行组成矩阵X,矩阵X的每个元素都是长度为m的二进制数;矩阵X的行数为ω,即网络一次传输的信息分块数;S5、在有限域GF(2m)下计算Y=KvT·X;其中,m是矩阵元素的二进制位数,即每个元素由m比特组成;S6、将矩阵Y的每一行按照端口号从相应端口发送。本专利技术中,信源节点的接入路由器s的编码矩阵Kv和位置信息p的具体计算过程包括:1)初始化一个空位置信息数组p和一个空矩阵T*;2)判断矩阵X的列数是否等于ω′,若等于,则T*=X,并把所有列位置信息保存在数组p,进入步骤10);否则,进入步骤3);3)初始化矩阵T为空矩阵,p*为空位置信息数组;4)令i=1;5)将X的第i个列向量记为t;6)若rank(T+t)>rank(T),则需更新矩阵T和位置信息数组p,得到更新后的矩阵T*和更新后的位置信息数组p*,T*=T+t,p*=p+i,进入步骤7);若rank(T+t)==rank(T),进入步骤9);其中,二元运算T+t表示在矩阵T的最右边增加列向量t;二元运算p+i表示在位置信息数组最右边增加一个元素i;rank(T)和rank(T+t)分别表示矩阵T和T+t的秩;符号“==”表示逻辑比较;7)若rank(T*)==ω′,则进入步骤10);否则,进入步骤8);8)T=T*,p=p*;9)i的值加1,并返回步骤5),直至i大于X的列数;10)从矩阵T*选取ω列或选择矩阵T*的所有列,得到新的矩阵T**和对应的新位置信息数组;11)生成Kv,使其满足Kv·T**=Iω;其中,Iω为ω阶单位矩阵的值加。上述计算过程简单可靠,实用性强。相应地,本专利技术还提供了一种安全网络,包括信源节点的接入路由本文档来自技高网...

【技术保护点】
1.一种网络编码方法,其特征在于,包括正向传输阶段和/或反向传输阶段;其中,正向传输阶段,信源节点将信息分块发送至信源节点的接入路由器s,接入路由器s每次传输的信息分块数为ω,每个信息分块包含相应编号,经网络节点处理后,信宿节点从信宿节点的接入路由器d一次收到ω个分块,并根据分块编号恢复原始信息;其中,ω≤ω′,ω′为网络一次传输允许的最大信息分块数;/n反向传输阶段,收到信宿节点的请求包后,信宿节点的接入路由器d产生随机数据块并发送,经网络节点处理后,信源节点的接入路由器s收到相应的数据分块,并得到网络一次传输的信息分块数ω,发送给信源节点。/n

【技术特征摘要】
1.一种网络编码方法,其特征在于,包括正向传输阶段和/或反向传输阶段;其中,正向传输阶段,信源节点将信息分块发送至信源节点的接入路由器s,接入路由器s每次传输的信息分块数为ω,每个信息分块包含相应编号,经网络节点处理后,信宿节点从信宿节点的接入路由器d一次收到ω个分块,并根据分块编号恢复原始信息;其中,ω≤ω′,ω′为网络一次传输允许的最大信息分块数;
反向传输阶段,收到信宿节点的请求包后,信宿节点的接入路由器d产生随机数据块并发送,经网络节点处理后,信源节点的接入路由器s收到相应的数据分块,并得到网络一次传输的信息分块数ω,发送给信源节点。


2.根据权利要求1所述的网络编码方法,其特征在于,当网络中的任一节点v是信宿节点的接入路由器d时,所述反向传输阶段具体实现过程包括:
S1、节点v从信宿节点收到请求包,确认该请求;
S2、生成一个|In(v)|×|In(v)|的矩阵Kv,矩阵Kv中各元素均在有限域GF(2m)中随机选取;其中,m是矩阵元素的二进制位数,即每个元素由m比特组成;|In(v)|为节点v的输入链路集合In(v)的链路总数;
S3、将矩阵Kv的每一行按照端口号从相应端口发送;
S4、当收到信源节点的接入路由器s传来的位置信息p时,根据p中的ω个位置数据,从Kv中选择对应下标的ω个列向量组成新的矩阵K'v;其中,K'v为一个|In(v)|×ω矩阵。


3.根据权利要求2所述的网络编码方法,其特征在于,所述正向传输阶段具体实现过程包括:
S5、节点v将收到的|In(v)|个数据分块按行组成矩阵X,矩阵X的每个元素都是长度为m的二进制数;其中,|In(v)|为节点v的输入链路集合In(v)的链路总数;
S6、在有限域GF(2m)下计算Y=K'vT·X,其中,K'vT表示矩阵K'v的转置;
m是矩阵元素的二进制位数,即每个元素由m比特组成;
S7、依次将矩阵Y的每一行作为一个数据分块发送至信宿节点。


4.根据权利要求1所述的网络编码方法,其特征在于,当网络中的任一节点v是中间节点时,所述反向传输阶段具体实现过程包括:
S1、节点v将从|Out(v)|个端口收到的数据按行组成矩阵X,矩阵X的每个元素都是长度为m的二进制数;其中,|Out(v)|为节点v的输出链路集合Out(v)的链路总数;
S2、节点v生成一个|In(v)|×|Out(v)|的矩阵Kv,矩阵Kv中各元素均在有限域GF(2m)中随机选取,之后在有限域GF(2m)下计算Y=Kv·X;其中,|In(v)|为节点v的输入链路集合In(v)的链路总数;|Out(v)|为节点的输出链路集合Out(v)的链路总数;m是矩阵元素的二进制位数,即每个元素由m比特组成;
S3、将矩阵Y的每一行按照端口号从相应端口发送。


5.根据权利要求4所述的网络编码方法,其特征在于,所述正向传输阶段具体实现过程包括:
S4、节点v将从|In(v)|个端口收到的数据分块按行组成矩阵X,矩阵X的每个元素都是长度为m的二进制数;
其中,|In(v)|为节点v的输入链路集合In(v)的链路总数;
S5、在有限域GF...

【专利技术属性】
技术研发人员:伍仁勇伍清源马洁明
申请(专利权)人:伍仁勇
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1