专利名称:一种基于网络编码的可信路由方法
技术领域:
本发明属于计算机网络技术领域,具体涉及一种基于网络编码的可信路由方法。
背景技术:
现代通信网络具有复杂、异构等特点,保障网络进行安全可信的数据传输成为网 络进一步发展的迫切需求。网络中具有不良行为的节点对网络传输的稳定性和安全性具有 严重威胁。目前,将信任概念引入路由的可信路由机制是一种适用于现代通信网络的重要 安全策略。该机制采用分布式安全评价方法对每个节点进行信任评估,并根据节点的信任 状态进行路由选择,因而能够有效防止不良节点对网络的影响。在加入了信任机制的通信网络中,每个节点都有一个信任值来表示其传输数据的 可靠程度。基于节点信任值计算每条传输链路的信任值,链路信任值反应了该链路的整体 传输可靠程度。路由协议是根据链路信任值来选择最可靠的传输路径。这使得高信任值的 链路被多个数据传输所占用,造成了网络负载的不均勻分布,从而导致拥塞。高信任链路中 的可靠节点由于拥塞而被误判为不良节点,信任值下降,使得网络数据流转向低信任链路, 导致更多的数据丢失,引起网络波动。
发明内容
本发明的目的在于提供一种基于网络编码的可信路由方法,解决了传统信任机制 带来的网络拥塞问题,具有负载均衡,节约能耗,降低时延的优点。为达到以上目的,本发明提供的基于网络编码的可信路由方法,其步骤包括(1)计算源节点与目的节点之间所有链路的信任值;(2)选取信任值最高的链路作为当前传输路径,判断当前传输路径是否存在拥塞, 若存在,则进入步骤(3),否则源节点采用当前传输路径直接进行数据传输;(3)选取信任值与当前传输路径信任值相差最小并且不存在拥塞的链路作为主传 输路径,随机选取信任值大于或等于主传输路径信任值的其他链路作为辅助编码路径;(4)源节点采用主传输路径进行普通数据包传输,同时主传输路径与辅助传输路 径的分支节点将收到的普通数据包暂存到缓冲区,生成编码数据包,并由辅助传输路径传 送到主传输路径与辅助传输路径的交汇节点;
"1 1 1 编码数据包的编码系数由矩阵G =
| Tx和Th分别为主传输路径和辅助传输路径的信任值,k < 2n,n为
编码操作单位长度,a是有限域GF(2n)中的本原元;
(5)交汇节点依据收到的普通数据包和编码数据包进行解码,得到主传输路径中 丢失的普通数据包并发送至目的节点。与目前的可信路由协议相比,本发明的可信路由方法可以避免高信任链路被多个 传输流占用而导致的拥塞问题。该方法通过部分网络编码机制充分利用了主传输路径与辅 助传输路径进行协作传输。同时,本发明提出的基于特定矩阵产生编码系数的编码方式,有 效保证了交汇节点解码的成功率。本发明提出的路由方法充分利用了信任值较低的链路, 既避免了拥塞,又有效解决了低信任链路丢包的问题,节约了能量,降低了时延,对于实际 的无线网络可信路由框架具有重要的实用价值。
图1为本发明方法流程图;图2为典型网络传输场景示意图。
具体实施例方式下面结合附图和实例对发明作进一步详细的说明。如图1所示,对本发明方法具体包括下述步骤步骤(1):获取路径信任状态。根据网络中现有的信任评估策略得出源节点到目的节点的所有链路上的各个节 点的信任状态,并计算各链路的信任值。步骤(2)路由选择。首先按照传统可信路由方式选取信任值最高的链路作为传输路径,并判断是否存 在拥塞。如果该链路没有发生拥塞则路由选择成功,源节点通过该链路发送数据到目的节 点。如果存在拥塞,则进行入步骤(3)。步骤(3)路由调整。选取次优链路(即信任值与当前链路相差最小的链路)作为当前传输路径,并判 断是否存在拥塞,如果存在,则重复本步骤直到不存在拥塞为止。新选出的当前传输路径作 为主传输路径,随机选取信任值大于或等于主传输路径的链路作为辅助编码路径。步骤⑷数据传输。根据步骤(3)调整后的路由进行数据传输,主路径传输普通数据包,辅助路径传 输编码数据包。编码过程如步骤(5)所述。步骤(5)部分编码。本发明中,并且不是所有节点都进行网络编码(网络编码的概念由Ahlswede等人 首先提出,即允许网络中节点对数据进行编解码操作),而是在辅助编码路径的关键节点进 行编解码,称之为部分编码。主路径与辅助路径有部分节点是重合的,重合链路分支处的节 点称为分支节点,分支后的链路再次交汇处节点称为交汇节点。分支节点将发送的普通数据包暂时存储到缓冲区,分组进行编码,分组长度为 k(即每组有k个普通数据包,可根据实际网络情况设置k值)。分支节点根据分组长度k, 主路径的信任值和辅助路径的信任值Th来选择编码包数M 通过式1可使编码包数量M大于或等于丢失的普通数据包数量,从而保证在交汇 节点能够解码。本发明中编码和解码都是在有限域中进行,编码操作单位长度n时(即每n比特 数据作为一个编码单位),n可根据实际网络选择,一般不大于8,有限域为GF(2n)。编码系 数由如下矩阵G来决定
其中,a是有限域GF(2n)中的本原元。将每组数据包的数据以长度n为单位转换成有限域中的元素,组成的向量记为X =x2, L,xk],则编码包构成向量Y = G X (3)分支节点将生成的编码包由辅助路径发送到交汇节点,进入步骤(6)。步骤(6)交汇节点解码当交汇节点接收到编码包后,根据已收到的普通数据包解出在主传输路径中丢失 的普通数据包。假设主传输路径在某组数据中缺失的数据包数为1 (1 < M < k),将已接收 的k-1个数据包中的数据化为GF(2n)中的元素,代入式3中,可得到A Xx = Z (4)其中A为方阵,将所缺包对应的G中列向量取出(若缺第i个包,则取第i列向 量)构成矩阵H,取H的前1行,构成1 X 1的方阵A ;Xx为所缺1个包的列向量,Z为化简得 出的一个向量。当方阵A非奇异时,式4有解,交汇节点可由已接收的k_l个数据包与1个编码包 联合解码出所缺的1个数据包。方阵A为形如V的方阵
方阵V的行列式 由式6可知为使得A方阵非奇异,需满足…卓ai(j卓i),即在G矩阵中, ((!!乒⑷,考虑到a的阶为2n_l,故可限制k< 2n即可。步骤(7)交汇节点解出所有丢失数据包后转发至目的节点,并清除缓冲区已解 码分组的数据包和相关编码包。
实例下面通过一个典型的拓扑图来说明本发明提出的可信路由方法,并在编解码实例 中给出进行部分网络编码的具体步骤。1. 一个典型拓扑的实例如图2所示,该图是一个无线网络的拓扑图,虚线表示节点在彼此通信范围内。图 中所有节点的信任状态已根据节点行为确定,并得出了链路信任值。假定源节点A需要传 输数据到目的节点F,存在三条A至F的链路R1 :A-K-B-C-D-E-F,信任值为 0. 8 (即丢包率为 20% )R2 :A-K-L-M-G-E-F,信任值为 0. 9 (即丢包率为 10% )。R3 :A-J-I-H-G-E-F,信任值为 0. 7 (即丢包率为 30% )依据传统可信路由方法,源节点A获取各路径的信任值后会选取信任值最高的路 径R2作为传输路径。由于链路R2中的节点信任值都很高,因而会被多个传输选择,导致频 繁发生冲突,数据不能正常传输。现在假定链路R2已被其它传输占用。依据本发明,源节点A进行路由发现时,会 检测到R2发生拥塞,需要进行路由调整。源节点根据各个路径的信任状态,判断R1和R3 的信任值均小于当前路径R2,并取其中最大信任值路径R1作为主要传输路径,进行普通数 据包的传输。同时选取信任值大于主路径R1的链路R2(本例中只有R2,当有多个时随机选 取)作为辅助路径。R1与R2的分支节点为K,交汇节点为E。源节点通过R1链路发送普通 数据包,节点K将数据缓存,并获取链路Rl、R2的信任状态,若确定分组大小k为10,则根 据式(1)可得每组需生成编码包数量为3。编码包沿R2至交汇节点E,E节点根据缓存的 普通包和编码包解出丢失的数据包并转发至目的节点F。2.编解码实例本发明中网络节点的编解码都是在有限域中进行,下面以域GF(23)为例说明编解 码的具体方法。记a其为域GF(23)特征方程x3+x+l = 0的一根,则可知a为GF(23)域中的本 原元。则域中所有元素可映射为a表示的多项式形式,如表1所示表1.有限域元素的多项式表示形式 在开启侦听模式的节点处,缓存分组大小设置为5,假定根据主路径和辅助路径的 信任值得出的编码包数M为3,则编码矩阵为 "1 1 1 1 1 “
假定分支节点缓存的一组数据包中的数据为1,7,4,3,6。则数据包构成的向量对 应到有限域GF(23)中为X = [ a ,0, a 2+a , a +1, a 2+l]T
记编码包向量Y= [yi,y2,y3]T,Y = G*X可知(以下编码运算中是按照有限域的 运算规则进行,相当于按位进行异或)= a +0+ a 2+ a + a +1+ a 2+l = ay2 = a +0+ a 2+l+ a 2+l+ a +1 = 1y3 = a +0+ a + a 2+l = a 2+l假设主传输路径上丢失该分组的前三个数据包,交汇节点接收到辅助路径发送的 三个编码数据包,则在交汇节点处可以得到矩阵A的逆矩阵 向量Z ==[a2, a5,0],百3 Xx = AT Z可解得^ = [ a,0,a4],对照表1可知所缺失的数据为1,7,4(其中i4 =a3- a = (a+1) a = a 2+a ,故对应4),即解出了丢失的前三个数据包。
权利要求
一种基于网络编码的可信路由方法,按照如下步骤进行(1)计算源节点与目的节点之间所有链路的信任值;(2)选取信任值最高的链路作为当前传输路径,判断当前传输路径是否存在拥塞,若存在,则进入步骤(3),否则源节点采用当前传输路径直接进行数据传输;(3)选取信任值与当前传输路径信任值相差最小并且不存在拥塞的链路作为主传输路径,随机选取信任值大于或等于主传输路径信任值的其它链路作为辅助编码路径;(4)源节点采用主传输路径进行普通数据包传输,主传输路径与辅助传输路径的分支节点将收到的普通数据包暂存到缓冲区,生成编码数据包,并由辅助传输路径传送到主传输路径与辅助传输路径的交汇节点;编码数据包的编码系数由矩阵产生,其中,编码包数Tl和Th分别为主传输路径和辅助传输路径的信任值,k<2n,n为编码操作单位长度,α是有限域GF(2n)中的本原元;(5)交汇节点依据收到的普通数据包和编码数据包进行解码,得到主传输路径中丢失的普通数据包并发送至目的节点。FDA0000022740570000011.tif,FDA0000022740570000012.tif
全文摘要
本发明公开了一种基于网络编码的可信路由方法,该方法允许网络中的关键节点进行网络编码,将数据包进行编码后在高信任链路上传输,通过在路由交汇节点解码得到在低信任链路中丢失的数据包。网络编码的系数由本发明提供的特定矩阵产生,有效解决了目前网络编码方法中解码困难的问题,保证了解码的成功率。本发明提出的路由方法通过高信任链路与低信任链路协作传输的方式,既避免了网络拥塞,又有效解决了低信任链路丢包的问题,降低了传输时延,在实际的通信网络路由中具有重要的实用价值。
文档编号H04L12/56GK101867525SQ20101021042
公开日2010年10月20日 申请日期2010年6月28日 优先权日2010年6月28日
发明者刘祖浩, 喻莉, 程伟, 胡文妤, 钱聪 申请人:华中科技大学