[发明专利]一种邻区路由表的更新方法和系统有效
申请号: | 201010107266.8 | 申请日: | 2010-02-05 |
公开(公告)号: | CN102148740A | 公开(公告)日: | 2011-08-10 |
发明(设计)人: | 乐利锋;叶松海;彭晋;李刚;周乃宝 | 申请(专利权)人: | 中国移动通信集团公司;华为技术有限公司 |
主分类号: | H04L12/56 | 分类号: | H04L12/56;H04L12/24;H04W40/24 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 郭润湘 |
地址: | 100032 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 路由 更新 方法 系统 | ||
技术领域
本发明涉及通信领域,尤其涉及一种邻区路由表的更新方法和系统。
背景技术
Chord协议是由麻省理工学院(MIT)提出的结构化P2P协议,根据该协议,每个节点用唯一的节点ID标识,而每个节点对应的关键字也分别用互不相同的关键字ID标识,其中节点ID是对节点地址的映射,而关键字ID是对该关键字的映射。
根据Chord协议,由节点ID组成的ID空间组织为Chord ID环,当节点ID的长度为m时,节点ID值的取值范围为[0~2m-1]。关键字k存储在延ChordID环顺时针方向第一个节点ID对应的节点上,这个节点称为关键字k的后驱节点(successor node)。Chord ID环上的每个节点都有一个后驱节点和一个前驱节点,节点n的后驱节点是指在Chord ID环上沿顺时针方向距离n最近(最近是相对ID的)的节点,而节点n的前驱节点是指在Chord ID环上沿逆时针方向距离n最近(最近是相对ID的)的节点。如图1所示,为一个ID长度为3的Chord ID环,Chord ID环上的数字表示节点的ID值,取值为0~7,ChordID环上ID值为0、1和3对应的节点为已加入该Chord ID环的节点,ID值为0的节点的关键字为6,ID值为1的节点的关键字为1,ID值为3的节点的关键字为2。
在Chord ID环中,每个节点只需要保存自身的前驱节点和后驱节点的地址信息就能够保证整个Chord ID环上的节点构成的网络的连通性,此时,每个节点的路由表长度为O(1),但是,查找路径为O(N),其中,N表示Chord ID环上的节点数量;为了提高路由效率,每个节点维护长度为O(m)的指针表(fingertable)。假设针对节点A的ID为n,其指针表的第i项是在指在Chord ID环上距离节点A至少2i-1的第一个节点s,即s=successor(n+2i-1),其中,1≤i≤m。如图2所示,为一个Chord ID环及环上的节点维护的指针表的示意图,图中的节点ID值0、1、3对应的节点各维护有一张指针表。
Chord ID环上的节点通过维护的指针表可以提高路由路径的查找效率,如图3(a)、图3(b)和图3(c)所示。图3(a)表示没有指针表的情况下进行路由的示意图,每个节点沿顺时针方向将路由请求发送给后驱节点,直至找到存储了请求关键字K54的节点,例如,节点N8所要查找的关键字K54存储在节点N56中,则需要从节点N8起向后驱节点请求查找ID54对应的数据资源,直至请求传输到节点N56,在图3(a)所示的情况下,路由的平均长度较长,缺乏扩展性。图3(b)和图3(c)表示引入了指针表后路由的示意图,其中,图3(b)显示了节点N8的指针表,图3(c)显示了查询路径。节点N8查找关键字K54所在的节点N56,由于节点N56大于N8指针表的最后一项,因此,N8指针表中的最后一项ID为40的后驱节点N42成为请求的下一跳,以此类推,直至请求到达节点N56。
Chord ID环上的节点可能出现离开或有新的节点加入Chord ID环,例如,当有节点加入Chord ID环时,首先使用一致哈希函数映射节点IP得到新加入的节点ID,然后通过已经存在的节点查找新加入节点的驱节点,从而获取新加入节点的后驱节点,并初始化新加入节点的指针表。当有节点加入后,需要更新中Chord ID环原有节点的指针表,事实上只有Chord ID环上受影响的节点需要更新,即沿ID环逆时针方向与新加入节点的逻辑距离为2i-1的节点需要更新指针表;最后,从后驱节点获取新加入节点需要保存的关键字及对应的资源信息。
在上述Chord算法中利用指针表可以提高了路由的效率,但是并不能提高路由的准确性,具体来说,Chord算法的路由的准确性依赖于后驱节点,当某一主节点的后驱节点失效时,主节点可能无法找到节点真正的后继。为了避免这种情况,每个节点可以保存连续的多个后驱节点,构建一个连续邻区路由表。采用在指针表的基础上叠加连续邻区路由表的方式可以有效的加速路由收敛,提高路由性能,但是邻区路由表的状态需要实时维护,也就是说需要实时确定邻区路由表中记载的后驱节点的可用性。
目前,邻区路由表状态的维护主要有以下两种方式:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国移动通信集团公司;华为技术有限公司,未经中国移动通信集团公司;华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010107266.8/2.html,转载请声明来源钻瓜专利网。