基于网络编码的传感网数据分发中的转发选择方法

文档序号:7795362阅读:150来源:国知局
基于网络编码的传感网数据分发中的转发选择方法
【专利摘要】本发明公开了一种基于网络编码的传感网数据分发中的转发选择方法。转发节点通过计算所有待发送的编码数据包的平均有效接收量,根据此平均有效接收量等待一段时间后开始发送请求的编码数据包,平均有效接收量越大,等待时间越短。本发明方法与现有技术相比,考虑了客观存在的链路相关性的影响,能够更准确的进行转发选择。
【专利说明】基于网络编码的传感网数据分发中的转发选择方法
【技术领域】
[0001]本发明属于无线网络与传感网络领域,涉及传感网中基于网络编码的数据分发中的转发选择方法。
【背景技术】
[0002]随着物联网技术的不断发展,无线传感网络技术迅速发展并被广泛应用到军事侦察、公共安全、智能交通、环境检测、医疗保健等诸多领域。典型的无线传感网络由大量微型传感器节点组成,它们被部署在无人的或需要人类频繁参与的环境中,并通过无线自组成网,通过拓扑控制和网络协议自动形成多跳网络系统。无线传感网络使人们在任何时间、地点和环境条件下实时获取大量详实而可靠的信息,仿佛人类将远程神经末梢伸向了世界的万物。正因为无线传感网规模之大覆盖范围之广,使得传感器节点上所运行程序的代码更新遇到很多挑战,代码更新的过程是一个大数据分发的过程,选择正确的发送端能减少数据冲突、传输开销和完成时间。现有的很多工作都是研究可靠的高效的数据分发协议,其中有一种就是对要发送的数据进行编码,这样每次发送的数据包对绝大多数节点都是有用的,节点收到一定数量的编码数据包后就可以解码得到原来的数据包,这种方式比之前不使用编码时,性能有所提高还不够完善,因忽略了链路相关性存在的客观事实,使得选出的发送端不够准确,网络的传输开销并没有得到消减,近年来研究表明链路相关性在比较大的程度上影响到数据的分发。

【发明内容】

[0003]本发明的发明目的是提供一种基于网络编码的传感网数据分发中的转发选择方法,能够进行更准确的转发选择,减少传输开销。
[0004]为实现上述目的,`本发明所采取的技术方案是:
[0005]本发明基于网络编码的传感网数据分发中的转发选择方法,包括如下步骤:
[0006]步骤一,传感网中的接收端节点在接收完当前一轮编码数据包后,计数缺失的编码数据包,然后向传感网中广播REQ消息,所述REQ消息包括节点ID、数据页的序号和缺失数量,所述节点ID为发送该REQ消息的接收端节点的ID,所述数据页的序号为当前接收的数据页的序号,所述缺失数量为当前一轮编码数据包的缺失数量;
[0007]若所述接收端节点接收到的当前数据页中的所有原始数据包都已通过解码得到,则所述接收端节点将要广播的REQ消息中的所述缺失数量计为N,N为单个数据页所包含的编码数据包的数量,N^l;
[0008]步骤二,传感网中的转发节点收听并获取当前REQ消息中的节点ID、数据页的序号和缺失数量,然后将当前REQ消息中的节点ID和缺失数量存储到结构体数组中,发送端节点记录所获取的缺失数量作为当前缺失计数值;
[0009]步骤三,传感网中的转发节点继续收听并获取当前REQ消息中的节点ID、数据页的序号和缺失数量;[0010]步骤四,传感网中的转发节点比较最新获取的REQ消息中的数据页的序号和该发送端节点上一轮发送的数据页的序号;
[0011]若最新获取的REQ消息中的数据页的序号较大,则丢弃最新获取的REQ消息,此时如果还有REQ消息需要收听,则返回执行步骤三,否则执行步骤五;
[0012]若最新获取的REQ消息中的数据页的序号较小,则清空当前结构体数组中的所有元素,再把最新获取的REQ消息中的节点ID和缺失数量存储到结构体数组中,且该转发节点将当前缺失计数值更新为最新获取的REQ消息中的缺失数量,此时如果还有REQ消息需要收听,则返回执行步骤三,否则执行步骤五;
[0013]若最新获取的REQ消息中的数据页的序号和该转发节点上一轮发到的数据页的序号相等,则判断最新获取的REQ消息中的节点ID是否已经存储在当前结构体数组中:如果是,则丢弃最新获取的REQ消息;如果不是,则直接将该接收端节点的ID和最新获取的REQ消息中的缺失数量存储到当前结构体数组中,并比较最新获取的REQ消息中的缺失数量和该转发节点所存储的当前缺失计数值,如果该转发节点所存储的当前缺失计数值更小,则将该当前缺失计数值更新为最新获取的REQ消息中的缺失数量,此时如果还有REQ消息需要收听,则返回执行步骤三,否则执行步骤五;
[0014]步骤五:在REQ消息接收过程结束过后,转发节点依次计算当前数据页中的待发送的M个下一轮编码数据包的有效接收量,M的取值为转发节点所存储的当前缺失计数值;对于M个待发送的下一轮编码数据包中的第i个编码数据包,I < i ( M,转发节点依次扫描存储在结构体数组中的元素,如果结构体数组中的某个接收端节点的ID所对应的编码数据包的缺失数量大于等于i,则根据式(I)计算第i个编码数据包的有效接收量,否则根据式(2)和式(3)计算第i个编码数据包的有效接收量,最后根据式(4)计算M个编码数据包的平均有效接收量,然后启动一个计时器,所述计时器的计时间隔如式(5)所示,当计时器触发时,转发节点发送M个编码数据包;
【权利要求】
1.一种基于网络编码的传感网数据分发中的转发选择方法,其特征在于,包括如下步骤: 步骤一,传感网中的接收端节点在接收完当前一轮编码数据包后,计数缺失的编码数据包,然后向传感网中广播REQ消息,所述REQ消息包括节点ID、数据页的序号和缺失数量,所述节点ID为发送该REQ消息的接收端节点的ID,所述数据页的序号为当前接收的数据页的序号,所述缺失数量为当前一轮编码数据包的缺失数量; 若所述接收端节点接收到的当前数据页中的所有原始数据包都已通过解码得到,则所述接收端节点将要广播的REQ消息中的所述缺失数量计为N,N为单个数据页所包含的编码数据包的数量,N^l; 步骤二,传感网中的转发节点收听并获取当前REQ消息中的节点ID、数据页的序号和缺失数量,然后将当前REQ消息中的节点ID和缺失数量存储到结构体数组中,转发节点记录所获取的缺失数量作为当前缺失计数值; 步骤三,传感网中的转发节点继续收听并获取当前REQ消息中的节点ID、数据页的序号和缺失数量; 步骤四,传感网中的转发节点比较最新获取的REQ消息中的数据页的序号和该转发节点上一轮发送的数据页的序号; 若最新获取的REQ消息中的数据页的序号较大,则丢弃最新获取的REQ消息,此时如果还有REQ消息需要收听,则返回执行步骤三,否则执行步骤五; 若最新获取的REQ消息中的数据页的序号较小,则清空当前结构体数组中的所有元素,再把最新获取的REQ消息中的节点ID和缺失数量存储到结构体数组中,且该转发节点将当前缺失计数值更新为最新获取的REQ消息中的缺失数量,此时如果还有REQ消息需要收听,则返回执行步骤三,否则执行步`骤五; 若最新获取的REQ消息中的数据页的序号和该转发节点上一轮发送的数据页的序号相等,则判断最新获取的REQ消息中的节点ID是否已经存储在当前结构体数组中:如果是,则丢弃最新获取的REQ消息;如果不是,则直接将该节点ID和最新获取的REQ消息中的缺失数量存储到当前结构体数组中,并比较最新获取的REQ消息中的缺失数量和该转发节点所存储的当前缺失计数值,如果该转发节点所存储的当前缺失计数值更小,则将该当前缺失计数值更新为最新获取的REQ消息中的缺失数量,此时如果还有REQ消息需要收听,则返回执行步骤三,否则执行步骤五; 步骤五:在REQ消息接收过程结束过后,转发节点依次计算当前数据页中的待发送的M个下一轮编码数据包的有效接收量,M的取值为发送端节点所存储的当前缺失计数值;对于M个待发送的下一轮编码数据包的第i个编码数据包,I < i SM,转发节点依次扫描存储在结构体数组中的元素,如果结构体数组中的某个接收端节点的ID所对应的编码数据包的缺失数量大于等于i,则根据式(I)计算第i个编码数据包的有效接收量,否则根据式(2 )和式(3 )计算第i个编码数据包的有效接收量,最后根据式(4)计算M个编码数据包的平均有效接收量,然后启动一个计时器,所述计时器的计时间隔如式(5)所示,当计时器触发时,发送端节点发送M个编码数据包; β-- = lkmk>r9mk⑴
2.根据权利要求1所述的方法,其特征在于:在所述步骤五中,转发节点计算出待发送的M个编码数据包的平均有效接收量之后,在启动计时器之前,清空当前结构体数组。
【文档编号】H04L1/00GK103780344SQ201410020942
【公开日】2014年5月7日 申请日期:2014年1月17日 优先权日:2014年1月17日
【发明者】卜佳俊, 董玮, 陈纯, 赵志为, 王永刚 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1