一种利用网络编码和链路相关性的多包洪泛方法

文档序号:8459557阅读:903来源:国知局
一种利用网络编码和链路相关性的多包洪泛方法
【技术领域】
[0001] 本发明属于无线传感器网络路由协议领域,尤其涉及一种利用网络编码和链路相 关性的多包洪泛方法。
【背景技术】
[0002] 在无线传感器网络中,洪泛协议是最基本的路由协议,它支持很多重要的高层协 议和应用,例如数据传输,时间同步和多跳路由。在传统的洪泛模型中,数据包从源节点开 始广播数据,接收到该包的节点再进行转发,直到所有节点都接收到数据包,则停止转发。 然而,数据包是否成功转发是通过接收节点的ACK来确认的,这使得传统洪泛算法存在一 些固有的缺陷:(1)数据内爆,即一个节点多次收到同一个数据包的情况,因为洪泛模型中 的每个节点,即使不在数据包最终转发路径上,只要收到数据包就会进行转发,产生大量重 复的数据包,从而堵塞网络,直接影响网络生命周期;(2)传输冗余,即大量无效的数据包 传输。在洪泛模型中,发送节点只有在收到接收节点的ACK确认包时,才停止转发,但链路 的不可靠性导致ACK确认包的接收存在时延,其间发送节点产生大量的冗余数据包。
[0003] 目前,最新水平的研宄利用链路相关性改进单包洪泛问题,有效地减少了 ACKs,节 省了能量消耗。但是,现有的研宄主要集中在单包问题,针对多包问题的洪泛方法较少。而 无线传感器网络的大量应用都面临多包洪泛的问题。例如,空中编程中,通过洪泛协议广播 的程序映像达到128kB,而无线传感器网络中默认的最大传输负载是29字节,那么洪泛的 数据包必须进行分组操作。当洪泛多个数据分组时,如果只把它当成多个单包洪泛问题,这 将引起可靠性,传输负载和传输时延方面的性能降低。
[0004] 区别于单包方法,多包洪泛方法应充分考虑多个序列包之间的联系,使数据包间 能够协同地完成洪泛任务。网络编码作为一种信息融合技术,允许中继节点对多个数据包 先进行处理再转发,这种方式最大化信息吞吐率,能够提高多包洪泛的传输效率。同时,为 进一步提尚洪泛性能,利用链路之间的相关性可有效减少几余ACKs。
[0005] 总的说来,现有单包洪泛的链路相关性机制可减少总传输次数,但面对多包问题, 应充分利用多个序列包之间的联系,采用网络编码等信息融合技术可进一步提高洪泛性 能。无线传感器网络多包洪泛问题是一个亟待解决的问题,结合网络编码和链路相关性这 两种手段可有效解决多包洪泛问题。

【发明内容】

[0006] 为了充分融合网络编码与链路相关性的优点,提高多包洪泛的效率,本发明提出 了一种利用网络编码和链路相关性的无线传感器网络多包洪泛方法。
[0007] 根据本发明实施例的一种利用网络编码和链路相关性的无线传感器网络多包洪 泛方法,包括以下步骤:
[0008] -种利用网络编码和链路相关性的多包洪泛方法,该方法具体包括以下步骤:
[0009] Sl对于多包洪泛任务,首先将洪泛流划分成多个页,以页为单位进行洪泛;所述 的页为包含多个数据包的一个分组。
[0010] 将洪泛流划分成多个页的步骤为:对于包含W个数据包的洪泛流,以PageSize个 数据包为单位划分,则页大小为PageSize,页的个数为W/PageSize。
[0011] S2节点周期性地广播消息序列包用来记录和更新邻居节点之间的链路质量和链 路相关性,该步骤在洪泛过程中一直执行;
[0012] 所述的链路质量表示为接收节点从发送节点收到的数据包个数比发送节点的总 发包个数;
[0013] 所述的链路相关性的定义是,在节点V收到节点U发送的广播包时,节点k同样收 到该包的概率,表示为P u(k|u)。链路相关性的计算表达式如下:
[0014]
【主权项】
1. 一种利用网络编码和链路相关性的多包洪泛方法,其特征在于,该方法具体包括以 下步骤: S1对于多包洪泛任务,首先将洪泛流划分成多个页,以页为单位进行洪泛;所述的页 为包含多个数据包的一个分组; S2节点周期性地广播消息序列包用来记录和更新邻居节点之间的链路质量和链路相 关性,该步骤在洪泛过程中一直执行; 所述的链路质量表示为接收节点从发送节点收到的数据包个数比发送节点的总发包 个数; 所述的链路相关性的定义是,在节点v收到节点u发送的广播包时,节点k同样收到该 包的概率,表示为Pu(k|u);链路相关性的计算表达式如下:
i?aV (/)(W, =d)是节点%对第i个消息包的接收情况的位表示;如果I收到来自节点u的数据包,则I, (〇 = 1,否则(0 = 〇 ;M表示节点u的总发包个数; S3源节点或转发节点根据聚合编码增益值确定转发的编码数据包,并根据链路质量更 新邻居节点的单包覆盖率,单包覆盖率为节点接收到单个数据包的概率; 聚合编码增益值定义为发送节点的每个邻居节点收到数据包并成功获得有用数据包 的个数的期望总和,其公式如下:
Gainu(Q)表示编码包Q的聚合编码增益值;1 (u, k)表示节点u到k的链路质量, 表示节点k在成功收到编码包D的情况下能够获得一个有用数据包的概率; 所述的编码数据包是将页内的数据包进行异或编码操作,对于包含PageSize个数据 包的页,编码数据包的个数为2Pagesize-l ; S4接收到数据包的节点可更新发送节点的单包覆盖率,及其本身的单包覆盖率,同时 根据链路相关性更新其邻居节点的单包覆盖率; 接收节点u更新发送节点v的单包覆盖率步骤为:将节点v的单包覆盖率赋值为1,即Cov'Ji)=1(i=1, 2, , Pagesize) 接收节点U更新其自身单包覆盖率的步骤为:节点U将接收到的编码数据包与节点u已接收数据包进行异或操作,如果获得有用数据包Pi,
接收节点U根据链路相关性更新邻居节点k的单包覆盖率,其公式如下:
Pv(k|u)是节点u和k之间的链路相关性,
表示在节点U看来,其邻居 节点k收到并成功获得有用包?1的概率; S5将接收到页内所有数据包的节点称为已覆盖节点,已覆盖节点负责广播数据包给未 被覆盖节点,通过设置定时器决定各已覆盖节点转发的优先级; S6节点记录未被覆盖的邻居节点集合U,当集合U为空,则该节点终止数据包传输;若 网络中所有节点的未被覆盖的邻居节点集合U都为空,则结束洪泛任务;否则继续执行步 骤S2至S5 ;初始时,节点u的所有邻居节点都未被覆盖,当邻居节点k成为已覆盖节点,则 将节点k从u的集合U(u)中移除,直到u的所有邻居节点都已被覆盖,则U(u) = 〇。
2. 根据权利要求1所述的一种利用网络编码和链路相关性的多包洪泛方法,其特征在 于:将洪泛流划分成多个页的步骤为:对于包含W个数据包的洪泛流,以PageSize个数据 包为单位划分,则页大小为PageSize,页的个数为W/PageSize。
3. 根据权利要求1所述的一种利用网络编码和链路相关性的多包洪泛方法,其特征在 于:所述确定转发的编码数据包的步骤为:逐个计算2Pagesize_l个编码数据包的聚合编码增 益值,选择聚合编码增益值最大的编码数据包进行转发。
4. 根据权利要求1所述的一种利用网络编码和链路相关性的多包洪泛方法,其特征在 于:根据链路质量更新邻居节点单包覆盖率的步骤为:
其中:Covf(〇表示节点u估计节点k收到包概率,/(n,幻表示此次传 输对节点k单包覆盖率的贡献,即节点k通过此次传输收到包?1的概率;其中表 示节点k能够收到编码包D并成功获得概率。
5. 根据权利要求1所述的一种利用网络编码和链路相关性的多包洪泛方法,其特征在 于:判断节点k为已覆盖节点的步骤为:计算节点k的页覆盖率即该页内所有数据 包的平均覆盖率,公式表示为:
当Cov,丨达到预先设定的阈值a时,可判定节点k为已覆盖节点。
6. 根据权利要求1所述的一种利用网络编码和链路相关性的多包洪泛方法,其特征在 于:所述定时器设置的主要指标是最大聚合编码增益值(MG),节点u的最大聚合编码增益 值MG(u)如下: MG(u) =MAXfi (Gainu(Q)) MG(u)的值越大,u的转发就越有效,则定时器时间设置越短。
【专利摘要】本发明公开了一种利用网络编码和链路相关性的多包洪泛方法。首先将洪泛流划分成多个页,以页为单位进行洪泛;节点周期性地广播消息序列包记录和更新邻居节点之间的链路质量和链路相关性;源节点或转发节点根据聚合编码增益值确定转发的编码数据包,并根据链路质量更新邻居节点接收单个数据包的情况;接收到数据包的节点不仅更新其本身接收数据包的情况,同时根据链路之间的相关性更新其邻居节点接收单个数据包的情况,负责广播数据包给未被覆盖节点,通过设置定时器确定各节点转发的优先级;网络所有节点都已被覆盖,则终止数据包传输,结束洪泛任务。本发明融合网络编码和链路相关性的优点有效地解决了多包洪泛问题,其在性能上具有一定的优势。
【IPC分类】H04L1-00, H04W40-02
【公开号】CN104780582
【申请号】CN201510051308
【发明人】申兴发, 张银群, 陈岳燊, 王兰迪, 张建辉
【申请人】杭州电子科技大学
【公开日】2015年7月15日
【申请日】2015年1月30日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1