贪婪地理路由协议切线切换空洞处理的路由方法技术

技术编号:13670141 阅读:95 留言:0更新日期:2016-09-07 15:14
本发明专利技术公开了贪婪地理路由协议切线切换空洞处理的路由方法,主要解决贪婪地理路由协议在遇到路由空洞后采用边缘恢复算法,路由具有盲目性问题。其实现方案是:如果贪婪地理路由协议寻找目地节点遇到路由空洞,进入边缘恢复模式时同时使用左手和右手规则,从第2个空洞节点开始,加入切线判断的3个条件,若满足条件,恢复成贪婪转发模式,比较左、右手法则下的路由跳数,选出数据转发的最优路径。本发明专利技术与贪婪地理路由协议相比,减少了路由跳数,与基于路标分布式迭代提取和剔除的自适应空洞处理算法相比,降低了控制开销,可用于移动无线传感器网络。

【技术实现步骤摘要】

本专利技术属于通信
,主要涉及移动自组网、移动无线传感器网络的路由方法,可用于移动车载网、野生动物追踪的传感网路由决策。
技术介绍
无线传感器网络广泛应用于军事、环境监测和预报、健康护理、智能家居等领域,它是以数据为中心的网络,传感器节点的计算能力、存储能力、通信能力以及携带的能量都十分有限,如何设计高效的路由协议,将数据发送到目的地是无线传感器网络的一个重要研究方向。随着定位装置的小型化和其它定位算法的成熟,无线传感器网络节点可以方便地获得本身、邻居节点及目的节点的地理位置信息。基于地理位置信息的贪婪地理路由协议在整个数据传输中不需要泛洪探测分组,不需要建立和维护端到端的基于拓扑链路状态的路由,不需要存储路由信息表,成为无线传感器网络路由协议研究热点之一,由Brad Karp等提出的GPSR协议(Greedy Perimeter Stateless Routing for Wireless Networks)是一种应用最广的基于地理位置的路由协议。在贪婪地理路由协议中,源节点和中间节点把数据分组传送给距离目的节点更近的一个邻居节点,依此下去,直至目的节点。但是,在网络节点密度低的情况下,按照贪婪转发策略找不到距离目的节点更近的邻居节点时,便出现了路由空洞,有些文献称之为局部最优化现象。虽然可以通过提高节点密度来消除路由空洞,但是,由于不可抗拒的地理因素(大的障碍物、池塘等)以及某些节点的失效仍然会造成路由空洞,如果只采用单一的贪婪转发策略,即使在有路径可达目的节点的情况下,也无法有效地把数据传至目的节点。如果遇到路由空洞,则转入边缘恢复模式,为了避免在沿空洞边缘转发时产生路由环路,需要对网络拓扑进行平面化处理,去除多余的交叉边。使用右手法则遍历最接近的平面子图,直到到达比路由空洞节点更接近于目的地的节点为止,然后继续贪婪路由。使用右手法则的面遍历算法,在避绕空洞时具有很大的盲目性,选择的路径有时很差,给协议的实时性带来很大的影响。针对GPSR只使用右手法则问题,唐国明等提出一种基于左、右手法则的GPSR分区边界转发路由协议,以空洞节点到目标节点形成的向量,左侧区域为右手法则区,右侧区域为左手法则区,若下一跳节点位于右手(左手)法则区,则使用右手(左手)法则进行边界转发。若在进入右手(左手)法则区后没有找到可达路径,数据包会在右手(左手)法则的作用下返回空洞节点,此时在空洞节点处再使用左手(右手)法则,进入左手(右手)法则区寻找路由途径。这种方法在边缘恢复模式中使用了左手法则和右手法则相配合,分区转发,一定程度减小了避绕空洞的盲目性,路由跳数减小了,但并没有寻求到最优路径。为了寻求最优路径,尽可能减少避绕空洞的路由跳数,张衡阳等提出基于路标分布式迭代提取和剔除的自适应空洞处理算法,该协议为获取路标,先发送探测分组,以获得空洞的几何特征和空洞个数,探测过程中遇到空洞节点时自我复制生成两个探测分组,在空洞的边沿同时使用左手、右手法则进行转发,同时从路由空洞节点的下一个节点开始,利用几何分析理论来判断空洞边界及边界上的凸点,将此节点加入到路标链表中的目的节点之前,同时判断其若是空洞的凹点,则将此节点从路标链表中删除,这样获得了路标节点集,数据包在路标节点的引导下进行传输,从源节点到目标节点一直都采用贪婪转发模式。此算法虽然得到的路由跳数很少,但算法的时间复杂度会随空洞数量的增加而急剧增加。设此空洞的节点有a个,算法的时间复杂度是O(a2),在探测过程中若遇到多个空洞,需要再次发送探测分组,重复以上步骤,算法的时间复杂度是O(a2+b2+c2…),其中b、c是其它空洞的节点个数,同时路标链表也会变得很庞大。另外,此算法在探测分组转发完毕后,路标链表获得从源节点到目的节点的完整路标,数据分组采用贪婪算法依次按路标路径转发到目的节点,数据分组可在全连通图中进行传输,大大地减少了路由跳数,但在节点稀疏的情况下,路标之间的贪婪转发不一定都能实现,此时仍要边缘恢复模式配合。
技术实现思路
1.专利技术目的:本专利技术的目的在于克服上述已有技术的不足,提出一种贪婪地理路由协议切线切换空洞处理的路由方法,数据包可以实时地在关键节点从边缘恢复模式转换为贪婪转发模式,运行该算法获得较小的路由跳数,在移动无线传感器网络中控制开销大为减小,提高了数据包传送成功率。2.技术方案:一种贪婪地理路由协议切线切换空洞处理的路由方法,具体步骤为:7)移动无线传感器网络中的节点用自己的节点标识号、位置信息构造Hello分组,向自己的一跳邻居周期性广播Hello分组,接收到Hello分组的节点将分组信息存储在自己的邻居节点链表中,目标节点也会周期性地向全网广播自己的位置信息;8)从源节点开始,首先从邻居节点链表中获得邻居节点的位置信息,选出邻居节点到目标节点的距离比当前节点到目标节点的距离更近的节点,此节点作为下一跳节点;9)贪婪地理路由协议寻找目地节点时,如果所有邻居节点比当前节点到目的节点的距离更大,当前节点即为路由空洞节点,否则返回步骤(2);10)对网络拓扑图进行GG算法平面化处理,贪婪地理路由协议进入边缘恢复模式,同时使用左、右手规则,从空洞节点依次沿着与空洞节点和目的节点形成的直线相交的面转发该数据分组。转换规则为:在一个面内,当按照右手或左手法则选择的下一条边与空洞节点和目的节点形成的直线相交时,就进入下一个面;11)从第2个空洞节点开始,空洞节点经历次数等于1时,在选择下一跳节点时,如果是采用右手法则,加入切线判断的3个条件:①判断当前节点为空洞的凸点;②当前节点和目的节点的连线若与当前节点相切;③判断从当前节点到上一跳节点构成的有向线段1和从当前节点到空洞处理算法找到的下一跳节点构成的有向线段2是否都为从目的节点到当前节点构成的有向线段3向左拐得到的线段,则恢复成贪婪算法;如果是采用左手规则,加入切线判断的3个条件:①判断当前节点为空洞的凸点;②当前节点和目的节点的连线若与当前节点相切;③判断从当前节点到上一跳节点构成的有向线段1和从当前节点到空洞处理算法找到的下一跳节点构成的有向线段2是否都为从目的节点到当前节点构成的有向线段3向右拐得到的线段,也恢复成贪婪算法,否则执行步骤(4)。如果空洞节点经历次数大于1,即空洞处出现环路,使用与预定法则相反的法则进行空洞处理;空洞的凸点指沿空洞边界上相邻的三个节点:当前节点、前一节点和下一节点,这3个节点形成的夹角是锐角。当前节点和目的节点的连线与当前节点相切的判断:当时成立,则点nd和点nnow的连线与空洞在边界点nnow相切。其中,前一节点npast,当前节点nnow、下一节点nnext,nd为目标节点,是叉乘。在计算机中实现时,设前一节点npast的坐标为x1,y1;当前节点nnow的坐标为x2,y2;下一节点nnext的坐标为x3,y3;目标节点nd的坐标为x4,y4.有a1=x1-x3;b1=y1-y3;c1=x2-x3;a2=x4-x3;b2=y4-y3;c2=y2-y3;denom1=a1*b2-a2*b1;denom2=c1*b2-a2*c2;denom=denom1*denom2;满足条件denom>=0时成立。从当前节点到上一跳节点构成的有向线段1和从当本文档来自技高网
...

【技术保护点】
贪婪地理路由协议切线切换空洞处理的路由方法,具体步骤为:1)移动无线传感器网络中的节点用自己的节点标识号、位置信息构造Hello分组,向自己的一跳邻居周期性广播Hello分组,接收到Hello分组的节点将分组信息存储在自己的邻居节点链表中,目标节点也会周期性地向全网广播自己的位置信息;2)从源节点开始,首先从邻居节点链表中获得邻居节点的位置信息,选出邻居节点到目标节点的距离比当前节点到目标节点的距离更近的节点,此节点作为下一跳节点;3)贪婪地理路由协议寻找目地节点时,如果所有邻居节点比当前节点到目的节点的距离更大,当前节点即为路由空洞节点,否则返回步骤(2);4)对网络拓扑图进行GG算法平面化处理,贪婪地理路由协议进入边缘恢复模式,同时使用左、右手规则,从空洞节点依次沿着与空洞节点和目的节点形成的直线相交的面转发该数据分组。转换规则为:在一个面内,当按照右手或左手法则选择的下一条边与空洞节点和目的节点形成的直线相交时,就进入下一个面;5)从第2个空洞节点开始,空洞节点经历次数等于1时,在选择下一跳节点时,如果是采用右手法则,加入切线判断的3个条件:①判断当前节点为空洞的凸点;②当前节点和目的节点的连线若与当前节点相切;③判断从当前节点到上一跳节点构成的有向线段1和从当前节点到空洞处理算法找到的下一跳节点构成的有向线段2是否都为从目的节点到当前节点构成的有向线段3向左拐得到的线段,则恢复成贪婪算法;如果是采用左手规则,加入切线判断的3个条件:①判断当前节点为空洞的凸点;②当前节点和目的节点的连线若与当前节点相切;③判断从当前节点到上一跳节点构成的有向线段1和从当前节点到空洞处理算法找到的下一跳节点构成的有向线段2是否都为从目的节点到当前节点构成的有向线段3向右拐得到的线段,也恢复成贪婪算法,否则执行步骤(4)。如果空洞节点经历次数大于1,即空洞处出现环路,使用与预定法则相反的法则进行空洞处理;空洞的凸点指沿空洞边界上相邻的三个节点:当前节点、前一节点和下一节点,这3个节点形成的夹角是锐角。当前节点和目的节点的连线与当前节点相切的判断:当时成立,则点nd和点nnow的连线与空洞在边界点nnow相切。其中,前一节点npast,当前节点nnow、下一节点nnext,nd为目标节点,是叉乘。在计算机中实现时,设前一节点npast的坐标为x1,y1;当前节点nnow的坐标为x2,y2;下一节点nnext的坐标为x3,y3;目标节点nd的坐标为x4,y4.有a1=x1‑x3;b1=y1‑y3;c1=x2‑x3;a2=x4‑x3;b2=y4‑y3;c2=y2‑y3;denom1=a1*b2‑a2*b1;denom2=c1*b2‑a2*c2;denom=denom1*denom2;满足条件denom>=0时成立。从当前节点到上一跳节点构成的有向线段1和从当前节点到空洞处理算法找到的下一跳节点构成的有向线段2是否都为从目的节点到当前节点构成的有向线段3向左拐得到的线段的判断:当和同时成立,则点nd和点nnow的连线与空洞在边界点nnow处切线左拐。在计算机中实现时,有a1=x1‑x4;b1=y1‑y4;c1=x2‑x4;a2=x3‑x4;b2=y3‑y4;c2=y2‑y4;denom1=a1*b2‑a2*b1;denom2=c1*b2‑a2*c2;满足条件denom1>=0并且denom2>=0时成立。从当前节点到上一跳节点构成的有向线段1和从当前节点到空洞处理算法找到的下一跳节点构成的有向线段2是否都为从目的节点到当前节点构成的有向线段3向右拐得到的线段的判断:当和同时成立,则点nd和点nnow的连线与空洞在边界点nnow处切线右拐。在计算机中实现时,有a1=x1‑x4;b1=y1‑y4;c1=x2‑x4;a2=x3‑x4;b2=y3‑y4;c2=y2‑y4;denom1=a1*b2‑a2*b1;denom2=c1*b2‑a2*c2;满足条件denom1<=0并且denom2<=0时成立。6)如果使用左手规则和右手规则都能恢复成贪婪算法,比较左手和右手法则下从空洞节点到边缘恢复模式结束转为贪婪转发时的路由跳数的大小,选择跳数更少的路径作为最终的路由。如果只能使用左手规则或只能使用右手规则选择下一跳,则选择这唯一路径为最终的路由。...

【技术特征摘要】
1.贪婪地理路由协议切线切换空洞处理的路由方法,具体步骤为:1)移动无线传感器网络中的节点用自己的节点标识号、位置信息构造Hello分组,向自己的一跳邻居周期性广播Hello分组,接收到Hello分组的节点将分组信息存储在自己的邻居节点链表中,目标节点也会周期性地向全网广播自己的位置信息;2)从源节点开始,首先从邻居节点链表中获得邻居节点的位置信息,选出邻居节点到目标节点的距离比当前节点到目标节点的距离更近的节点,此节点作为下一跳节点;3)贪婪地理路由协议寻找目地节点时,如果所有邻居节点比当前节点到目的节点的距离更大,当前节点即为路由空洞节点,否则返回步骤(2);4)对网络拓扑图进行GG算法平面化处理,贪婪地理路由协议进入边缘恢复模式,同时使用左、右手规则,从空洞节点依次沿着与空洞节点和目的节点形成的直线相交的面转发该数据分组。转换规则为:在一个面内,当按照右手或左手法则选择的下一条边与空洞节点和目的节点形成的直线相交时,就进入下一个面;5)从第2个空洞节点开始,空洞节点经历次数等于1时,在选择下一跳节点时,如果是采用右手法则,加入切线判断的3个条件:①判断当前节点为空洞的凸点;②当前节点和目的节点的连线若与当前节点相切;③判断从当前节点到上一跳节点构成的有向线段1和从当前节点到空洞处理算法找到的下一跳节点构成的有向线段2是否都为从目的节点到当前节点构成的有向线段3向左拐得到的线段,则恢复成贪婪算法;如果是采用左手规则,加入切线判断的3个条件:①判断当前节点为空洞的凸点;②当前节点和目的节点的连线若与当前节点相切;③判断从当前节点到上一跳节点构成的有向线段1和从当前节点到空洞处理算法找到的下一跳节点构成的有向线段2是否都为从目的节点到当前节点构成的有向线段3向右拐得到的线段,也恢复成贪婪算法,否则执行步骤(4)。如果空洞节点经历次数大于1,即空洞处出现环路,使用与预定法则相反的法则进行空洞处理;空洞的凸点指沿空洞边界上相邻的三个节点:当前节点、前一节点和下一节点,这3个节点形成的夹角是锐角。当前节点和目的节点的连线与当前节点相切的判断:当时成立,则点nd和点nnow的连线与...

【专利技术属性】
技术研发人员:温卫巫光福王俊岭王振东
申请(专利权)人:江西理工大学
类型:发明
国别省市:江西;36

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

1