[发明专利]一种基于蚂蚁算法的分布式自组网动态路由方法无效

专利信息
申请号: 200410021622.9 申请日: 2004-01-08
公开(公告)号: CN1642131A 公开(公告)日: 2005-07-20
发明(设计)人: 郑相全;郭伟;毛玉明;余敬东;苏俭 申请(专利权)人: 电子科技大学
主分类号: H04L12/54 分类号: H04L12/54;H04L12/28
代理公司: 暂无信息 代理人: 暂无信息
地址: 610054四*** 国省代码: 四川;51
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种基于蚂蚁算法的分布式自组网动态路由方法,它是由路由发现和路由维护两部分构成。本发明的路由发现过程由前向蚂蚁分组和后向蚂蚁分组这两种路由发现蚂蚁分组共同完成,前向蚂蚁分组负责建立返回源节点的路径,后向蚂蚁分组负责建立到目的节点的路径;各中间节点在路由维护阶段的数据传输过程中,实现拥塞问题、断链问题和捷径问题的分布式处理。采用本发明的方法可以减少算法中需要大量蚂蚁造成的附加开销,解决自组网中存在的捷径问题和拥塞问题,使网络负载趋于平衡,减少分组传输的端到端时延。
搜索关键词: 一种 基于 蚂蚁 算法 分布式 组网 动态 路由 方法
【主权项】:
1、一种基于蚂蚁算法的分布式自组网动态路由方法,包括:路由发现和路由维护两过程,其特征是:所述的路由发现的步骤如下:步骤1源节点s广播一个寻找目的节点d的前向蚂蚁分组,类型域ant.type=前向蚂蚁、跳数域ant.hop=0、节点集合域ant.node={s}、目的节点标识域ant.destination=d:步骤2中间节点i在拥塞情况下将收到的来自节点i-1的前向蚂蚁分组丢弃,在可以接纳新路由建立的情况下根据前向蚂蚁分组携带的节点列表ant.node判断是否出现环路,将出现环路的蚂蚁分组丢弃,对于没有出现环路的前向蚂蚁分组将根据该中间节点的信息素表中是否已经有目的节点为s、下一跳节点为i-1的表项决定是否为该前向蚂蚁分组创建记录:如果该中间节点的信息素表中没有目的节点为s、下一跳节点为i-1的信息素表项,则在该中间节点的信息素表中增加一个信息素表项,该表项包括:目的节点s的标识、下一跳节点i-1的标识、节点i通过节点i-1到源节点s的信息素概率值;并对目的节点为s、下一跳节点为节点i的邻居节点的所有信息素表项的信息素概率值进行刷新;如果该中间节点的信息素表中有目的节点为s、下一跳节点为i-1的信息素表项,则直接刷新信息素表中目的节点为s、下一跳节点为节点i的邻居节点的所有信息素表项的信息素概率值;之后,节点在更新前向蚂蚁分组的跳数域ant.hop←ant.hop+1和节点列表域ant.node←ant.node U{i}后对该前向蚂蚁分组进行转发;中间节点i对信息素表中各个表项的信息素概率值按照信息素概率值刷新方法进行(此时目的节点d此处为s);步骤3前向蚂蚁分组到达目的节点后,目的节点根据收到的前向蚂蚁分组所包含的整个路由发现信息创建后向蚂蚁分组:类型域ant.type=后向蚂蚁、跳数域ant.hop=0,顺序提取前向蚂蚁分组的节点列表域ant.node中的所有节点,得到前向蚂蚁分组所经过的路径s→,……,→d并将其逆序后插入后向蚂蚁分组的节点列表域ant.node中;后向蚂蚁分组根据节点列表域按照源路由的方式选择下一跳节点向源节点进行转发,前向蚂蚁分组死亡;步骤4中间节点i收到来自节点i+1的后向蚂蚁分组后对信息素表中各个表项的信息素概率值按照信息素概率值刷新方法进行刷新,之后中间节点i再对后向蚂蚁分组中跳数域的值进行修改ant.hop←ant.hop+1,并以此为指针选择后向蚂蚁分组的节点列表域ant.node中的相应节点作为下一跳对该后向蚂蚁分组进行转发;步骤5源节点收到第一个后向蚂蚁分组后即建立了到目的节点的路径,该路径中各节点通过在信息素表中选择具有到目的节点最大信息素概率值的表项对应的邻居节点作为到达目的节点的下一跳节点(如果存在多个最大浓度可选择,就在其中随机地选取)的方式逐跳选路,最终到达目的节点,路由发现工作完成;步骤6源节点根据其节点信息素表中最大信息素概率值对应的路径进行数据分组传送,各中间节点依次按照其最大信息素概率值逐跳选路,最终将数据分组送到目的节点;所述的路由维护过程包括:拥塞问题、断链问题和捷径问题处理三部分,所述的路由维护中对拥塞问题的处理步骤如下:步骤1当中间节点负载超过设定的拥塞门限时,该中间节点主动向其上游节点发送拥塞控制蚂蚁分组,该拥塞控制蚂蚁分组的生存时间根据拥塞程度设置,拥塞越严重,其生存时间越长;如果该拥塞节点中存在重叠路由,可选择向重叠路由对应的多个上游节点中的任意上游节点发送拥塞控制蚂蚁分组;步骤2收到来自节点i+1的拥塞控制蚂蚁分组的上游节点i降低相应路由的信息素浓度,对信息素表中各个表项的信息素概率值按照信息素概率值刷新方法进行刷新,并在后续的分组转发中选择其他信息素概率值较大的到同一目的节点的路径进行分组转发;如果拥塞控制蚂蚁分组的生存时间减1以后仍然大于0,则修改其生存时间值以后继续向上游节点转发该控制蚂蚁分组;当生存时间等于0但节点没有其他冗余路由时,该上游节点仍然需要继续向上游节点转发该控制蚂蚁分组;当生存时间等于0且节点有其他冗余路由时,该上游节点丢弃该拥塞控制蚂蚁分组;步骤3源节点收到拥塞控制蚂蚁分组且没有其他冗余路由可选用时,则采用本发明所述的路由发现方法重新进行新的路由发现过程以获得新的路由,完成后续数据的传输;所述的路由维护阶段对断链问题的处理步骤如下:步骤1当中间节点i发现到下游节点i+1断链或收到断链消息时,首先删除出现断链的路径对应的信息素浓度表项,再查找本节点是否还记录有到目的节点的另一信息素表项对应的冗余路由;如果有其他冗余路由,则将选择信息素浓度最大的路径作为后续分组转发的路径,并对本节点的信息素表中各个表项的信息素概率值按照信息素概率值刷新方法进行刷新,此时ψi,j(d)←(1-ρ)ψi,j(d),其中ρ∈(0,1)为信息素挥发强度参数,j≠i+1(信息素表中ψi,i+1(d)项已经被删除);如果本节点没有其他冗余路由,则继续向本节点的上游节点发送断链信息;步骤2源节点收到断链消息,或在数据传输完成前发现了断链且没有其他冗余路由可选用时,则采用所述的路由发现方法重新进行新的路由发现过程以获得新的路由,完成后续数据的传输;所述的路由维护中对捷径问题的处理步骤如下:步骤1各个有数据需要发送的节点以设定的概率让新加入的邻居节点和信息素表中信息素概率值较低的邻居节点对数据分组进行转发;步骤2中间节点i收到来自上一跳节点i-1转发来的源节点s发送到目的节点d的数据分组时,该中间节点对本节点至源节点s的反向链路li,i-1进行记录并对该记录设定一个的生存时间,并将数据分组转发到本节点信息素表中到目的节点d的信息素概率值最大的表项对应的下一跳节点;步骤3如果中间节点i在收到来自相同源节点s但上一跳节点i-1不同的数据分组时发现该数据分组从源节点到本节点所经历的跳数或时延更小,表明此时发现捷径,则该中间节点i将数据分组转发到本节点信息素表中到目的节点d信息素概率值最大的表项对应的下一跳节点,同时沿步骤2建立的反向链路li,i-1发送捷径增强蚂蚁分组;步骤4收到来自节点i+1的捷径增强蚂蚁分组的节点i对信息素表中各个表项的信息素概率值按照信息素概率值刷新方法进行刷新;步骤5在捷径增强蚂蚁分组的作用下若节点i发现信息素表中Δψi,i+1(d)和Pi,i+1(d)项出现较大幅度增长,则可通过直接选择(而不是通过概率选择)Δψi,i+1(d)和Pi,i+1(d)大幅度增长的表项对应的下一跳路径转发后续分组,实现后续分组按捷径转发;
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/200410021622.9/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top