水声通信网络中基于会话间网络编码的路由方法

文档序号:7946138阅读:204来源:国知局
专利名称:水声通信网络中基于会话间网络编码的路由方法
技术领域
本发明属于水声通信网络技术领域,特别涉及水声通信网络中基于会话间网络编
码的路由方法。
背景技术
近年来,路由已经成为水声通信网络中网络层的研究热点。由于水声通信网络具 有大规模、自组织、动态性等特点;水下信道的传播时延大、传输带宽有限、误码率高;布放 在水下的传感器节点主要靠电池供电,能量有限并且一旦耗尽后不易更换。所以地面无线 传感器网络的路由方法无法直接应用于水下环境,所以必须对其进行改进或重新设计。
网络编码最早是由香港中文大学的Ahlswede等人提出的。它是一种基于网络层 的编码技术,其核心思想就是尽量利用路由器的智能化功能,将传统的路由器中对数据包 先接收再转发的处理模式提升到允许对接收到的数据包进行组合、编码等一系列的智能化 处理,然后再转发出去。网络编码可以分为两类,一类为会话内网络编码,它的特点是只针 对来自同一源节点的在不同时刻发送的数据包进行编码。而另一类为会话间网络编码,它 可以对来自不同的源节点的会话流进行网络编码。 现有的水声通信网络中的路由主要还是基于传统的存储转发方式的进行路由发 现和数据包的转发,其吞吐量有限,并且时延和能量消耗较大。因此,可以采用网络编码技 术来提高网络的吞吐量,并且通过传输次数的减少来达到降低网络能量消耗,降低传播时 延的目的。 对已经公开的专利和文献检索发现,发明专利"一种无线网络中基于网络编码的 多路径路由方法"(申请号200810124277. X)提出了一种多路径路由方法,可以有效地改 进了网络的吞吐量。但是由于在多路径路由中,每个数据包的传输都需要大量节点参与,消 耗了大量的能量,这是水声通信网络中所不能接受的,所以该专利提出的方法无法应用于 水声通信网络。此外,该专利采用的是会话内网络编码,和会话间网络编码相比,所能获得 的增益有限。

发明内容
本发明的目的就在于解决现有技术的缺陷,提出了水声通信网络中基于会话间网 络编码的路由方法。本发明的技术方案是 水声通信网络中基于会话间网络编码的路由方法,其包括以下步骤
(1)接收到包的处理 当前节点i收到邻居节点的数据包时,首先检查该数据包的"包标识"域,如果该 标识中的下一跳节点地址不是本节点,则将该包存储到缓存中;如果本节点是下一跳节点, 则进一步检查该包的域中是否含有"编码标识"域,如果有则为编码包;此时检查两个原始 包对应的包标识域,并检查缓存中是否存在监听到的原始包,如果有则将该原始包的"数 据"域与编码包的"数据"域按位做异或操作,从而解码出另一个原始包;如果缓存中不存在原始包,则无法解码,丢弃编码包;如果收到的包不含"编码标识"域,则为普通包,则无需上 述解码过程; (2)判断是否满足会话间网络编码条件 从解码出的原始包或收到的普通包P的"包标识"域中获得该包的目的节点和上 一跳节点L(P)的信息;首先遍历当前节点i的邻居节点列表,设当前遍历到的下一跳候选 邻居节点为j,然后遍历节点i的路由表,判断是否有符合会话间网络编码条件的路由记录 存在; (3)计算当前节点发送数据包到候选邻居节点的期望传输次数 如果当前的路由记录满足会话间网络编码的条件,则发送编码包到节点j所需的
期望传输次数为ETX(c》(j') = *, ETX《*》其中,ETX辨^尸".ETXf》+a —If ,ETX,①=I, II, III 如果当前的路由记录不满足会话间网络编码的条件,则发送普通包到节点j所需
的期望传输次数为 ETX加(j) = 1/Pi,j 路由表遍历完成后,选出所有符合编码条件的路由记录和直接发送普通包到节点 j所需的期望传输次数中的最小值作为ETX(j),即ETX(j) =ETX(c)(i)或ETX加(i);
(4)选出最优的下一跳节点 由计算出的期望传输次数,进一步计算出选择j为下一跳传输节点时,传输该数 据包到目的节点还需耗费的能量Ei^ :C》=尸'^^ETX(j')-JS^, 其中P为发送功率,R为数据传输速率,Lp^t为数据包的长度,,=1,/;+1,它
为当j为下一跳传输节点时,从i到目的节点D的跳数的估计,它的值为j与D之间的距 离和i与j之间的距离之比加1 ;当遍历邻居节点列表完成后,节点i选择所有邻居节点中 E/力最小值所对应的节点jM乍为最优的下一跳节点,即/ = arg mkj f, (5)编码或发送数据包 为当前的流在节点i的路由表中添加一条新的记录,其中L(f)为L(P),N(f)为j*; 此外,在步骤(2)中曾经判断出当下一跳节点为f时是否存在编码机会,如果该判断的结 果为存在编码机会,则将新添加的记录中的编码标识设为"true",并且将参与编码的另一 条记录中的编码标识也设为"true",将符合编码条件的两个原始包的"数据"域按位做异或 操作,将两个原始包各自的包标识和目的节点位置分别写入数据包的"包标识1"域、"目的 节点位置1"域以及"包标识2"域、"目的节点位置2"域,并将"编码标识"域设为"true", 最终发送该编码包;如果不存在编码机会,则将新添加的记录中的编码标识设为"false", 并采用普通包的结构,直接将该包发送。 在所述的水声通信网络中基于会话间网络编码的路由方法中,所述的数据包分为
5编码包和普通包两类,其中编码包包含"编码标识"、"包标识l"、"包标识2"、"目的节点位 置l"、"目的节点位置2"以及"数据"六个域;普通包包含"包标识"、"目的节点位置"和"数 据"三个域。 在所述的水声通信网络中基于会话间网络编码的路由方法中,所述的邻居节点列 表存储当前其邻居节点的坐标位置信息。 在所述的水声通信网络中基于会话间网络编码的路由方法中,所述的路由表路由 表中的每条记录对应于每条通过该节点转发的数据包流,该记录包括数据包流的流标识号 f、上一跳转发节点L(f)、下一条转发节点N(f)、编码标识。 在所述的水声通信网络中基于会话间网络编码的路由方法中,所述的判断满足编 码条件的过程为,判断路由表中的当前记录的L(f)、N(f)和L(P)、j四个节点是否满足以下 三种编码结构 如果L(P)为N(f)的邻居节点,j为L(f)的邻居节点,则为III型编码结构;
如果L(P)为N(f)的邻居节点,j和L(f)为同一个节点;或者j为L(f)的邻居节
点,L(P)和N(f)的同一个节点,则为II型编码结构; L(P)和N(f)的同一个节点,j和L(f)也为同一个节点,则为I型编码结构;
如果当前路由表的路由记录为空或没有记录满足上述三种编码结构,则不存在编 码机会。 本发明的优点和效果在于 1.充分发挥了会话间网络编码在节省发送次数,提高吞吐量,以及节省能量消耗 等方面的优势,采用最小化剩余能量消耗作为衡量和选择最优下一跳节点的指标,从而获 得最优的网络性能。 2.编码包在结构上和传统的普通包相比代价增加十分很有限,并且在会话间网络
编码的编解码过程,只需要将数据部分按位做异或操作,处理和计算十分简单。 3.无需像传统的路由方法那样采用洪泛控制包的方式建立路由,而是在数据包发
送时动态确定最优的下一跳节点,节省了网络的开销和负载。 本发明的其他优点和效果将在下面继续描述。


图1——数据包结构 图2——会话间网络编码的编解码方式 图3——本发明提出的路由方法的流程图 图4——满足会话间网络编码条件的三种编码结构 图5——典型拓扑下的性能比较 图6——随机拓扑下的性能比较
具体实施例方式
下面结合附图和实施例,对本发明所述的技术方案作进一步的阐述。 在本方法中,源节点到目的节点的业务流以数据包的形式传输。图1给出了本发
明提出的路由方法的数据包结构,各个域的名称如图1所示,按照是否编码将数据包分成
6两类。图l(a)为编码包的结构,它主要包含如下几个域首先是"编码标识"域,表明该包 是编码包。其后紧接着参与编码的两个包(又称为原始包)分别对应的"包标识l"域和 "包标识2"域(标识中分别包含了原始包1或原始包2的ID号、源节点地址、目的节点地 址、上一跳节点地址和下一跳节点地址),然后为两个原始包的各自的目的节点位置,分别 为"目的节点位置1"和"目的节点位置2"域,最后为经过编码的"数据"域。图l(b)为普 通包的结构,与编码包相比少了 "编码标识"域,并且仅有一个"包标识"域和"目的节点位 置"域。 在本方法中,每个节点i维护一张邻居节点列表,存储当前其邻居节点的坐标位 置信息。节点i还维护一张路由表,路由表由路由记录组成,每条路由记录保存并代表着每 条通过该节点转发的数据包流的信息,具体来说,路由记录包含数据包流的流标识号f、上 一跳转发节点L(f)、下一条转发节点N(f)、编码标识。此外,节点i还包含一个缓存,用以 保存一段时间内监听到的来自邻居节点的包,这些包的目的节点或下一跳节点不是节点i。
在本方法中,中间节点采用会话间网络编码技术,其基本编解码方式如图2所示。 Alice要发送数据包到Bob, Bob也要发送数据包给Alice,它们必须通过共同的中继节点 Router,在传统的路由方式下,需要4次传输才可以完成(S卩,Alice-> Router, Router-> Bob,Bob-> Router, Router-> Bob),如图2 (a)所示。采用会话间网络编码后,当Router收 到Alice和Bob发来的数据包之后,将两个包的数据域部分按位做异或操作,成为编码包, 并且利用无线信道具有的广播特性,将该编码包发送。Alice收到该编码包后和其缓存中的 已发送的包的数据域部分按位做异或,从而解码出Bob发来的包,Bob的操作与Alice相同, 从而只需要3次传输就可以完成包的交换(Alice- > Router, Bob- > Router, Router- >
八1^6&&8013),其过程如图2(b)所示。 由于本发明的方法只在中间节点采用网络编码,源节点直接发送产生的包,目的 节点收到普通包时直接接收,而收到编码包时解码得到所需的原始包。所以下面主要描述 中间节点的收到包之后和路由相关的处理过程,如图3所示。
(1)接收到包的操作 设当前节点i收到邻居节点的数据包时,首先检查该数据包的"包标识"域,如果 该标识中的下一跳节点地址不是本节点,则将该包存储到缓存中。如果本节点是下一跳节 点,则进一步检查该包的域中是否含有"编码标识"域,如果有则为编码包(设该编码包为 此时检查两个原始包对应的包标识域(即"包标识1"和"包标识2"),并检 查缓存中是否存在监听到的原始包Pi或P2,如果有则将该原始包的"数据"域与编码包的 "数据"域按位做异或操作,从而解码出另一个原始包g =《 ,=尸2 。假设当前解码 出的包是P2,那么首先去除该编码包P的"编码标识"域,用解码出的数据更新"数据"域, 并且去除"包标识l"和"目的节点位置l"域。如果缓存中不存在原始包,则无法解码,丢 弃编码包E。如果收到的包不含"编码标识"域,则为普通包,则无需上述解码过程。
(2)判断是否满足会话间网络编码条件 从解码出的原始包或收到的普通包(用P表示)的"包标识"域中获得该包的目 的节点和上一跳节点(用UP)表示)信息。首先遍历节点i的邻居节点列表。设当前遍 历到的下一跳候选邻居节点为j。然后遍历节点i的路由表,判断是否有符合会话间网络编 码条件的路由记录存在。5/8页 节点2分别发出包A和包B到节点O,其缓存中分别临时存储着已经发出的这两个包, 当节点1收到节点0的编码包A穆B后,它可以用A缀《A缀B):解码,从而获得包B,同理节点2 也可以获得包A。图4(c)中,节点1和节点2虽然不是包A和包B的发送节点,但是它们可 以分别从3- > 0和4- > 0中监听到包A和包B,并缓存下来,那么当节点1收到来自节点 0的编码包A^ B后,它仍然可以用A (A B):解码,从而获得包B,同理节点2也可以获得包 A。图4(b)为介于(a) (c)之间的一种情况,即节点1可以监听到包A,而节点2曾经发出包 B,此时节点1和节点2也可以解码收到的编码包A十B。为了便于区分,将图4(a)、图4(b)、 图4(c)分别命名为I型、II型和III型编码结构。 判断的过程为判断路由表中的当前记录的L(f) 、 N(f)和L(P) 、 j四个节点是否 满足三种编码结构 如果L(P)为N(f)的邻居节点,j为L(f)的邻居节点,则为III型编码结构;
如果L(P)为N(f)的邻居节点,j和L(f)为同一个节点;或者j为L(f)的邻居节
点,L(P)和N(f)的同一个节点,则为II型编码结构; L(P)和N(f)的同一个节点,j和L(f)也为同一个节点,则为I型编码结构;
如果当前路由表的路由记录为空或没有记录满足上述三种编码结构,则不存在编 码机会。 (3)计算当前节点发送数据包到候选邻居节点的期望传输次数
由于水声信道中传输错误较高,会造成包的丢失,从而引起重传,因此需要计算发 送次数。这里选择期望传输次数(ETX)作为度量,从节点i到节点j的链路上的ETX为 1/Pi, j,其中Pi, j为节点i到节点j的链路上包成功传输的概率(错误率为ei, j,且ei, j = l-Pi,j),它与接收端j的信噪比(SNR)、包的长度以及采用的调制方式有关。在本实施例中, 采用BPSK调制方式,噪声为加性高斯白噪声,每个数据包中含有b个符号,那么链路上的包
传输成功率为
同理,可以用同样的方式得到其它调制方式对应的链路包传输成功率。 在符合会话间网络编码的条件下,首先以结构最复杂的III型为例,结合图4(c), 详细描述其ETX的计算过程 在图4 (c)中,节点3传输包A到节点0,节点4传输包B到节点0,由ETX的定义, 分别需要l/p3,。次和l/p4,。次传输。在节点1和节点2分别成功监听到包A和包B的条件 下,节点0可以对两个包进行编码,并需要编码包A參B成功传输到节点1和节点2。由于链 路存在丢包,所以节点0需要发送编码包的次数为ETXf1〗=E(《'艮,£《—2>0,2 +《隱21线22>0,1线1 —」pwp0,2)l: (2)<formula>formula see original document page 8</formula>
而当节点1或者节点2没有监听到包A或包B时,此时节点0即使成功传输编码
包A㊣B,其下一跳节点也无法正确解码。在该情况下,节点0分别传输包A和包B所需的传
输次数为
BTX^"丄+丄 (3》 下面求解节点1和节点2都成功监听到解码所需的包A、包B的概率Pe(III)。由于 节点3和节点1之间的链路成功传输的概率为Pw,而包A从3成功传输到0所需的平均次
数为1/P^。,那么节点l成功监听到包A的概率为p",i)i。同理,节点2成功监听到包B的
概率为l-(气!)i ,则Pc,的表达式如下:
化 '
f 丄、 那么节点1和2中至少有一个没有监听到解码所需的包的概率为1-Pc(m)。
由上述的分析,最终可以得出在III型编码结构中,采用网络编码后所需要的重 传次数ETX(皿
同理可得另外两种相对简单的情况下的ETX(I)和ETX^,在I型结构中,由于节点 2和节点1分别缓存了包A和包B,所以在节点0 —定可以保证实施编码,即/f = 1 ,那么:
ETX*
:B1X =1+1--!—— 輔
, 踢+J%j — i%j Aj
舰11 1 而在II型结构中,n纖 ,/ 、1 ETX,=——+---
线l A),2
ETX(u》
' BTX, + (1 -))' ETX, (7)
所以,在当前路由记录存在编码机会条件下,那么根据编码结构不同,由下式计算 出编码存在时的ETX(c(j):
FDC抑(i)丄ETX,》 (蕙) 2其中,ETXW = ' ETX圹)+ (1 — P,》)'ETX,①=I , 11 , 111 如果当前的路由记录不满足会话间网络编码的条件,则发送普通包到节点j所需
的期望传输次数为
9
ETX(n) (j) = 1/Pi,j (9)
路由表遍历完成后,选出所有符合编码条件的路由记录和直接发送普通包到节点 j所需的期望传输次数中的最小值作为ETX(j),即ETX(j) =ETXfc)(i)或ETX(N) (i)。 [OOSe] (4)选出最优的下一跳节点 由步骤(3)中计算出的期望传输次数,进一步出选择j为下一跳传输节点时,传输
到目的节点还需耗费的能量Ei^ :
及 ,
其中'意f =//D^+l 式(10)中的P为发送功率,R为数据传输速率,Lpa。krt为数据包的长度,Ni/。p为当 j为下一跳传输节点时,从i到目的节点D的跳数的粗略估计,它的值为j与D之间的距离 和i与j之间的距离之比加1 (i — j为确定的一跳)。当遍历邻居节点列表完成后,节点i 选择所有邻居节点中E,')最小值所对应的节点j*为下一跳转发节点,即
/ = arg rnii^ £"》 (11) 通过上式,可以确保选择一条能量消耗最小的邻居节点作为下一跳节点,此外选 择该参数作为路由选择的衡量指标也充分考虑到了利用网络编码提高吞吐量(体现在 ETX)和减小传播时延(体现在^f^)的因素。
(5)编码或发送数据包 为当前的流在节点i的路由表中添加一条新的记录,其中L(f)为L(P),N(f)为j*; 此外,在步骤(2)中曾经判断出当下一跳节点为f时是否存在编码机会,如果该判断的结 果为存在编码机会,则将新添加的记录中的编码标识设为"true",并且将参与编码的另一 条记录中的编码标识也设为"true",将符合编码条件的两个原始包的"数据"域按位做异或 操作,将两个原始包各自的包标识和目的节点位置分别写入数据包的"包标识1"域、"目的 节点位置1"域以及"包标识2"域、"目的节点位置2"域,并将"编码标识"域设为"true", 最终发送该编码包;如果不存在编码机会,则将新添加的记录中的编码标识设为"false", 并采用普通包的结构,直接将该包发送。需要注意的是,在编码和直接发送普通包之前需要 将当前参与编码的原始包或普通包做个复制,并存储在缓存中。
下面通过仿真实验评估本发明提出的路由方法的性能。 首先比较典型拓扑下的性能。在仿真中,网络中有5个节点其位置符合图4(c)的 III型编码结构,有两个流分别从节点3和节点4发往节点2和节点1,中继为节点O,数据 包的大小b为512Byte,数据传输速率R为10Kbps,发送功率P为5W/包。在实验中本发明 提出路由方法用"Coding"标记,而没有考虑采会话间网络编码技术,仅仅采用传统的存储 转发策略的路由方法用"Noncoding"标记,图5(a)和图5(b)分别表示了不同负载下网络的 吞吐量情况和平均能量消耗情况。由图5(a)可知,随着负载的增大,网络的吞吐量增大,直 到达到稳定状态,稳定状态下"Coding"方法的吞吐量约为"Noncoding"的1. 4 1. 5倍。 图5(b)中的平均能量消耗定义为成功接收到一个包所需耗费的能量,该指标可以有效地衡量网络的能量消耗情况。随着负载的增大,网络中碰撞、丢包的概率增大,所以成功传输 一个包所需要耗费的能量增力B,但是"Coding"方法由于中间节点可以将两个包进行编码, 并利用声信道的广播特性,在一次发送中可以传输两个包,从而降低了包发送的数目,节省 了能量,在高负载下由于其吞吐量的优势,其能量耗费的增加也不如"Noncoding"方法那么 明显。 接着验证随机网络拓扑下的性能。设定15个节点随机分布于lkmXlkm的区域 中,每个节点的最大传输范围为350m。每次实验中随机产生10个数据流,其余参数的设定 和典型拓扑仿真实验中相同。 图6(a)为随机拓扑下的吞吐量-负载曲线,从曲线中可以清楚地发现,随着负载
的增大,两种方式的吞吐量增加,在达到某个最高值后又开始下降。这是因为负载的增大带
来网络中成功传输的包的数目增加。而当负载很高时,和典型拓扑情况不同,由于随机拓
扑的流数目较多,参与传输的节点较多,从而引发网络中的碰撞和拥塞的增加,但是可以发
现,采用基于会话间网络编码的地理路由协议,路由的选择中考虑了网络编码对于吞吐量
和能量消耗的影响,所以该"Coding"方式的吞吐量要优于"Noncoding"方式。 图6 (b)为该拓扑下平均能量消耗_负载曲线,虽然由于拓扑复杂性增加和业务流
的增多,使"Coding"方法的能量消耗优势没有典型拓扑那么巨大,但是成功传送每个包仍
然可以节省约16%的能量,因此可以得出,本发明的所采用的方法可以有效地降低水声通
信网的能量消耗,延长网络的寿命。
权利要求
水声通信网络中基于会话间网络编码的路由方法,其特征在于包括以下步骤(1)接收到包的处理当前节点i收到邻居节点的数据包时,首先检查该数据包的“包标识”域,如果该标识中的下一跳节点地址不是本节点,则将该包存储到缓存中;如果本节点是下一跳节点,则进一步检查该包的域中是否含有“编码标识”域,如果有则为编码包;此时检查两个原始包对应的包标识域,并检查缓存中是否存在监听到的原始包,如果有则将该原始包的“数据”域与编码包的“数据”域按位做异或操作,从而解码出另一个原始包;如果缓存中不存在原始包,则无法解码,丢弃编码包;如果收到的包不含“编码标识”域,则为普通包,则无需上述解码过程;(2)判断是否满足会话间网络编码条件从解码出的原始包或收到的普通包P的“包标识”域中获得该包的目的节点和上一跳节点L(P)的信息;首先遍历当前节点i的邻居节点列表,设当前遍历到的下一跳候选邻居节点为j,然后遍历节点i的路由表,判断是否有符合会话间网络编码条件的路由记录存在;(3)计算当前节点发送数据包到候选邻居节点的期望传输次数如果当前的路由记录满足会话间网络编码的条件,则发送编码包到节点j所需的期望传输次数为 <mrow><msup> <mi>ETX</mi> <mrow><mo>(</mo><mi>C</mi><mo>)</mo> </mrow></msup><mrow> <mo>(</mo> <mi>j</mi> <mo>)</mo></mrow><mo>=</mo><mfrac> <mn>1</mn> <mn>2</mn></mfrac><mo>&CenterDot;</mo><msup> <mi>ETX</mi> <mrow><mo>(</mo><mi>&Phi;</mi><mo>)</mo> </mrow></msup> </mrow>其中, <mrow><msup> <mi>EXT</mi> <mrow><mo>(</mo><mi>&Phi;</mi><mo>)</mo> </mrow></msup><mo>=</mo><msubsup> <mi>P</mi> <mi>C</mi> <mrow><mo>(</mo><mi>&Phi;</mi><mo>)</mo> </mrow></msubsup><mo>&CenterDot;</mo><msubsup> <mi>ETX</mi> <mi>C</mi> <mrow><mo>(</mo><mi>&Phi;</mi><mo>)</mo> </mrow></msubsup><mo>+</mo><mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <msubsup><mi>P</mi><mi>C</mi><mrow> <mo>(</mo> <mi>&Phi;</mi> <mo>)</mo></mrow> </msubsup> <mo>)</mo></mrow><mo>&CenterDot;</mo><msubsup> <mi>ETX</mi> <mi>N</mi> <mrow><mo>(</mo><mi>&Phi;</mi><mo>)</mo> </mrow></msubsup><mi>&Phi;</mi><mo>=</mo><mi>I</mi><mo>,</mo><mi>II</mi><mo>,</mo><mi>III</mi> </mrow>如果当前的路由记录不满足会话间网络编码的条件,则发送普通包到节点j所需的期望传输次数为ETX(N)(j)=1/pi,j路由表遍历完成后,选出所有符合编码条件的路由记录和直接发送普通包到节点j所需的期望传输次数中的最小值作为ETX(j),即ETX(j)=ETX(C)(i)或ETX(N)(i);(4)选出最优的下一跳节点由计算出的期望传输次数,进一步计算出选择j为下一跳传输节点时,传输该数据包到目的节点还需耗费的能量Ei(j) <mrow><msubsup> <mi>E</mi> <mi>i</mi> <mrow><mo>(</mo><mi>j</mi><mo>)</mo> </mrow></msubsup><mo>=</mo><mi>P</mi><mo>&CenterDot;</mo><mfrac> <msub><mi>L</mi><mi>packet</mi> </msub> <mi>R</mi></mfrac><mo>&CenterDot;</mo><mi>ETX</mi><mrow> <mo>(</mo> <mi>j</mi> <mo>)</mo></mrow><mo>&CenterDot;</mo><msubsup> <mi>N</mi> <mi>ij</mi> <mi>Hop</mi></msubsup> </mrow>其中P为发送功率,R为数据传输速率,Lpacket为数据包的长度,它为当j为下一跳传输节点时,从i到目的节点D的跳数的估计,它的值为j与D之间的距离和i与j之间的距离之比加1;当遍历邻居节点列表完成后,节点i选择所有邻居节点中Ei(j)最小值所对应的节点j*作为最优的下一跳节点,即 <mrow><msup> <mi>j</mi> <mo>*</mo></msup><mo>=</mo><mi>arg</mi><msub> <mi>min</mi> <mi>j</mi></msub><msubsup> <mi>E</mi> <mi>i</mi> <mrow><mo>(</mo><mi>j</mi><mo>)</mo> </mrow></msubsup> </mrow>(5)编码或发送数据包为当前的流在节点i的路由表中添加一条新的记录,其中L(f)为L(P),N(f)为j*;此外,在步骤(2)中曾经判断出当下一跳节点为j*时是否存在编码机会,如果该判断的结果为存在编码机会,则将新添加的记录中的编码标识设为“true”,并且将参与编码的另一条记录中的编码标识也设为“true”,将符合编码条件的两个原始包的“数据”域按位做异或操作,将两个原始包各自的包标识和目的节点位置分别写入数据包的“包标识1”域、“目的节点位置1”域以及“包标识2”域、“目的节点位置2”域,并将“编码标识”域设为“true”,最终发送该编码包;如果不存在编码机会,则将新添加的记录中的编码标识设为“false”,并采用普通包的结构,直接将该包发送。
2. 根据权利要求1所述的水声通信网络中基于会话间网络编码的路由方法,其特征在 于,所述的数据包分为编码包和普通包两类,其中编码包包含"编码标识"、"包标识1"、"包 标识2"、"目的节点位置l"、"目的节点位置2"以及"数据"六个域;普通包包含"包标识"、 "目的节点位置"和"数据"三个域。
3. 根据权利要求1所述的水声通信网络中基于会话间网络编码的路由方法,其特征在 于,所述的邻居节点列表存储当前其邻居节点的坐标位置信息。
4. 根据权利要求1所述的水声通信网络中基于会话间网络编码的路由方法,其特征在 于,所述的路由表路由表中的每条记录对应于每条通过该节点转发的数据包流,该记录包 括数据包流的流标识号f、上一跳转发节点L(f)和下一条转发节点N(f),以及编码标识。
5. 根据权利要求1所述的水声通信网络中基于会话间网络编码的路由方法,其特征在 于,所述的判断满足编码条件的过程为,判断路由表中的当前记录的L(f) 、 N(f)和L(P) 、 j 四个节点是否满足以下三种编码结构如果L(P)为N(f)的邻居节点,j为L(f)的邻居节点,则为III型编码结构; 如果L(P)为N(f)的邻居节点,j和L(f)为同一个节点;或者j为L(f)的邻居节点, L(P)和N(f)的同一个节点,则为II型编码结构;L(P)和N(f)的同一个节点,j和L(f)也为同一个节点,则为I型编码结构; 如果当前路由表的路由记录为空或没有记录满足上述三种编码结构,则不存在编码机会。
全文摘要
本发明公开了水声通信网络中基于会话间网络编码的路由方法,本方法直接利用数据包的传输建立并选择路由,节点在收到数据包时首先判断是否需要解码,然后遍历邻居节点列表,对于每个候选邻居节点遍历路由表,判断当前的包和路由表中已有的数据包流之间是否存在会话间网络编码的机会,并计算当前节点到候选节点的发送次数,由发送次数确定当前候选节点为下一跳时,传输到目的节点还需耗费的能量,将该能量的最小值对应的候选节点作为最优的下一跳节点。实验表明,本发明通过将会话间网络编码和路由相结合,可以降低数据包的发送次数,从而降低能量消耗和时延,并且使得网络的吞吐量大大提高。
文档编号H04L12/56GK101695056SQ20091003587
公开日2010年4月14日 申请日期2009年10月9日 优先权日2009年10月9日
发明者奚吉, 王青云, 赵力, 魏昕 申请人:魏昕;
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1