发明名称 基于地理位置的大规模无线分布式网络自适应协作路由方法
摘要 本发明公开了一种基于地理位置的大规模无线分布式网络自适应协作路由方法,主要解决大规模无线分布式网络路由方法中端到端时延大、路由跳数多、路由成功概率低和小世界长程连接难以实际应用的问题,其实现过程为:节点根据地理位置信息和小世界理论建立邻居节点表、朋友节点表、朋友路径表;业务到达时,节点根据地理位置信息,从邻居节点和朋友节点中找出离目的节点最近的节点作为下一跳节点,若找出的下一跳节点是邻居节点,则将数据包直接发送,若找出的下一跳节点是朋友节点,则将数据包协作传输给该朋友节点,重复这一过程,直到到达目的节点。本发明改善了大规模无线分布式网络的性能,可用于大规模无线分布式网络的路由过程。
申请公布号 CN102413539A 申请公布日期 2012.04.11
申请号 CN201110318710.5 申请日期 2011.10.19
申请人 西安电子科技大学 发明人 盛敏;任生凯;张琰;刘润滋;李建东;史琰;李红艳;侯蓉晖
分类号 H04W40/08(2009.01)I;H04W40/10(2009.01)I 主分类号 H04W40/08(2009.01)I
代理机构 陕西电子工业专利中心 61205 代理人 王品华;朱红星
主权项 1.一种基于地理位置的大规模无线分布式网络自适应协作路由方法,包括:(1)初始化步骤,即网络中的每个节点分别建立自己的邻居节点表、朋友节点表和朋友路径表;(2)当前节点u有数据包需要发送,当前节点u直接根据地理位置信息,从自己的邻居节点表和朋友节点表中找出距离目的节点最近的节点作为下一跳节点,若找出的下一跳节点是当前节点u的邻居节点,将转发深度减1,执行步骤(3),若找出的节点为当前节点的朋友节点t,将转发深度减1,执行步骤(4),其中转发深度为该数据包还允许被转发的次数;(3)当前节点u将数据包直接发送给该邻居节点,该邻居节点收到数据包后判断自己是不是本次路由的目的节点,若是,整个路由过程结束,否则,该邻居节点成为当前节点u,返回步骤(2);(4)当前节点u进行第一次协作传输:(4a)当前节点u从自己的朋友路径表里找到以节点t为朋友节点的朋友路径,从该路径中找出当前节点u的协作距离D内的所有节点,并将这些节点中离当前节点u最远的节点作为第一次协作的目的节点d1,执行步骤(4b),其中D的值是当前节点u经过协作后能传输的最远距离的估计值;(4b)当前节点u通过协作传输将数据包传到协作目的节点d1,该过程分为两个阶段:第一阶段,当前节点u向协作目的节点d1发送数据包,当前节点u的邻居节点根据自身剩余能量与初始时总能量的比值决定是否向协作目的节点d1发送请求参与协作包,若该比值小于1/5,不发送,若该比值大于等于1/5且小于1/3,则发送带有能量标签的请求参与协作包,表明该邻居节点能量不充裕,若该比值大于等于1/3,则发送不带能量标签的请求参与协作包,表明该邻居节点能量充裕;第二阶段,协作目的节点d1优先允许能量充裕的当前节点u的邻居节点参与协作,回发请求协作应答包,请求协作应答包中指明的允许参与协作的节点将协作传输u的数据包,之后执行(4c);(4c)协作目的节点d1判断第一次协作是否成功,并将判断结果回传给当前节点u,由当前节点u对判断结果进行处理,之后执行(5);(5)当前节点u收到协作目的节点d1传来的判断结果后,执行如下操作:若第一次协作失败,则当前节点u将自己的协作失败次数加1,协作总次数加1,算出自己的协作失败概率p=协作失败次数/协作总次数,然后对自己的协作距离D按<img file="FDA0000100150780000021.GIF" wi="564" he="199" />进行调整,之后返回步骤(4),其中R为当前节点u一跳能传输的距离,D<sub>Max</sub>为当前节点u的协作距离上界,ε为一个可调参数,用于调整D稳定后的p值大小;若第一次协作成功,则当前节点u将自己的协作总次数加1,算出自己的协作失败概率p=协作失败次数/协作总次数,对自己的协作距离D按<maths num="0001"><![CDATA[<math><mrow><mi>D</mi><mo>=</mo><mi>R</mi><mo>+</mo><mfrac><mi>&epsiv;</mi><mrow><mi>p</mi><mo>+</mo><mfrac><mi>&epsiv;</mi><mrow><msub><mi>D</mi><mi>Max</mi></msub><mo>-</mo><mi>R</mi></mrow></mfrac></mrow></mfrac></mrow></math>]]></maths>进行调整,然后执行步骤(6);(6)第一次协作的目的节点d1判断自己是否是朋友节点t,若是,则从当前节点u到朋友节点t的整个协作传输阶段结束,朋友节点t成为当前节点u,之后执行步骤(7),否则,继续采用与步骤(4)和(5)中相同的协作方法完成从节点d1到节点d2,从节点d2到节点d3,…,从节点dn到朋友节点t的后面几次协作传输过程,直至将数据包传到朋友节点t,朋友节点t成为当前节点u,之后执行步骤(7),其中节点d2,d3,…,dn分别为第2,第3,…,第n次协作的目的节点;(7)当前节点u判断自己是否是本次路由的目的节点,若是,整个路由过程结束,否则,返回步骤(2);若传输期间转发深度减小到零,执行步骤(8),若传输期间朋友路径失效,执行步骤(9);(8)按照该类型数据包的业务要求,若允许丢掉该包,则放弃继续转发该包,报告丢包,若不允许丢掉该包,则重新为该数据包设置转发深度的数值继续转发;(9)先在朋友路径失效处发起局部重新选择朋友节点的过程,若局部重新选择失败,返回步骤(1)。
地址 710071 陕西省西安市太白南路2号