分布式哈希表互通网络系统、域间节点及实现方法

文档序号:7889702阅读:241来源:国知局
专利名称:分布式哈希表互通网络系统、域间节点及实现方法
技术领域
本发明涉及通信系统,尤其涉及ー种分布式哈希表互通网络系统、域间节点及实现方法。
背景技术
DHT (分布式哈希表)技术是ー种广泛应用于P2P (Peer-to-Peer,对等)网络中的分布式资源查找网络结构,随着P2P技术的示范效应,该技术被引入到其它技术体制中用于构建高性能、可扩展的分布式数据库系统,比如亚马逊的Dynamo系统、身份位置分离技术HIP(主机标识协议)、LISP(名址分离网络协议)中的名址映射系统。P2P网络是在IP层网络之上构建的又一层网络,通常又被称为P2P overlay,通常被翻译为P2P叠加网或P2P覆盖网络,以突出显示其在IP层网络之上的特点。采用DHT算法构建的P2P叠加网则可称为DHT叠加网。类似IP网络,DHT叠加网也有自己的路由扩散机制和路由机制,不同在于这些机制运行在IP层之上,依赖于IP层的路由,且采用的算法与IP路由协议采用算法不同。DHT算法种类较多,根据可以支持的系统规模、节点抖动频率假设,有适用于高抖动网络(P2P)的CHORD、PASTRY、KADEMLIA等,其查找跳数为O(Log2N),也有适用于稳定节点环境的单跳DHT技木。这些技术对节点的编址格式有一定差別,路由表的组织几乎完全不同,不同的DHT协议无法直接互通。当DHT为单ー的互联网业务系统服务时,该缺点不明显,当用于构建运营商网络时,不同DHT查找数据库之间必须要解决互通性问题。为此,如图1和图2所示,现有技术中提出了基于DHT的互通架构,通过建立ー个专门用于互通的DHT叠加网来存储各DHT的入口信息。如图所示,现在技术在预见路由吋,互通节点在互通DHT叠加网查询到目的域DHT的入ロ(互通节点)后,将DHT查询请求发送到目的域入口。但这一方案不具备可行性,这是因为DHT算法千差万別,目前也没有标准化,未来也很难标准化,而构建额外DHT需要所有域的互通节点都遵循ー个DHT协议,比较困难。

发明内容
本发明要解决的技术问题是提供ー种分布式哈希表(DHT)互通网络系统、域间节点及实现方法,以解决现有DHT叠加网互通方案难以实现的问题。为了解决以上技术问题,本发明提供了ー种分布式哈希表(DHT)互通网络的域间节点,该域间节点用于实现所在域与其他域之间的互通,包括:存储单元,用于保存域间映射信息,其中包括目的域信息与下一跳域信息的映射关系;查询请求接收单元,用于接收DHT查询请求,其中携帯目的域信息及资源标识;目的域判断単元,用于根据接收的DHT查询请求中的目的域信息判断当前域是否是目的域;
域间映射信息查询单元,当前域不是目的域时,用于根据接收的DHT查询请求中的目的域信息查询域间映射信息;域间转发単元,用于根据域间映射信息查询结果向下一跳域间节点转发所述域间DHT查询请求及资源标识;域内处理单元,当前域是目的域时,用于根据接收的DHT查询请求发起域内查询流程。进ー步地,所述存储単元还用于保存域内映射信息,其中包括资源标识与所述资源标识的负责节点或所述资源标识与下一跳节点的映射关系;所述域内处理单元包括域内映射信息查询模块和域内查询请求处理模块,其中:所述域内映射信息查询模块,用于根据接收的DHT查询请求中的资源标识查询域内映射信息;所述域内查询请求处理模块,用于向查询到的映射关系中的负责节点或下ー跳节点转发所述DHT查询请求。进ー步可选地,所述存储単元还用于保存域内映射信息,其中包括资源标识与负责节点或所述资源标识与下ー跳节点的映射关系;所述域间节点还包括资源库,用于保存资源;所述域内处理单元包括:负责节点判断模块,用于根据接收的DHT查询请求中的资源标识判断当前节点是否是所述资源标识的负责节点;域内处理转发模块,用于在当前节点不是负责节点时,根据接收的DHT查询请求中的资源标识查询域内映射信息,向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求;资源库查询反馈模块,用于在当前节点是负责节点时,查询所述资源库并反馈查询結果。进ー步地,所述域间节点还包括域间映射信息维护单元,用于根据接收的域间映射信息更新请求或配置指令更新域间映射信息;所述接收単元,还用于接收所述域间映射信息更新请求或配置指令;所述发送単元,还用于在接收到域间映射信息更新请求或配置指令后,向相邻的域间节点发送域间映射信息更新请求;所述域间映射信息更新请求或配置指令中携帯需要更新或创建的映射关系。为解决以上技术问题,本发明还提供了ー种分布式哈希表(DHT)互通网络系统,该系统包括若干个域,每个域包括若干个域内节点和至少ー个如上所述的域间节点。进ー步地,所述域内节点包括:存储单元,用于保存域内映射信息,其中包括资源标识与负责节点或所述资源标识与下一跳节点的映射关系;资源库,用于保存资源;接收单元,用于接收所述DHT查询请求;目的域判断単元,用于根据接收的DHT查询请求中的目的域信息判断当前域是否是目的域;
发送单元,用于在当前域不是目的域时,向当前域的域间节点转发所述DHT查询请求;负责节点判断単元,用于在当前域是目的域时,根据接收的DHT查询请求中的资源标识判断当前节点是否是所述资源标识的负责节点;所述域内查询转发单元,用于在当前域是目的域,但当前节点不是负责节点时,根据接收的DHT查询请求中的资源标识查询域内映射信息,井向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求;所述资源库查询反馈单元,用于在当前域是目的域且当前节点是负责节点吋,查询所述资源库并反馈查询結果。为解决以上技术问题,本发明还提供了ー种分布式哈希表(DHT)互通网络系统,该系统包括若干个域,每个域包括若干个域内节点和至少ー个域间节点,所述域间节点包括域间互通逻辑单元和域内处理逻辑单元,其中:所述域间互通逻辑单元,用于在当前域不是目的域时,根据接收的DHT查询请求中的目的域信息查询域间映射信息,井根据域间映射信息查询结果向下一跳域间节点转发所述域间DHT查询请求及资源标识;域内处理逻辑单元,当前域是目的域时,用于根据接收的DHT查询请求中的资源标识查询域内映射信息,井向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求;所述域间映射信息包括目的域信息与下一跳域信息的映射关系;所述域内映射信息,其中包括资源标识与所述资源标识的负责节点或所述资源标识与下一跳节点的映射关系。进ー步地,所述域内节点包括:域间查询处理逻辑单元,用于在当前域不是目的域时,向当前域的域间节点的域间互通逻辑单元转发所述DHT查询请求;域内查询处理逻辑単元,用于在当前域是目的域,但当前节点不是负责节点时,根据接收的DHT查询请求中的资源标识查询域内映射信息,井向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求;在当前域是目的域且当前节点是负责节点吋,查询资源库并反馈查询结果;所述域内映射信息包括资源标识与负责节点或所述资源标识与下一跳节点的映身寸关系。为解决以上技术问题,本发明还提供了ー种分布式哈希表(DHT)互通网络系统实现方法,该系统包括若干个域,每个域包括至少ー个用于实现域间互通的域间节点,所述域间节点负责保存域间映射信息,其中包括目的域信息与下一跳域间节点的映射关系,该实现方法包括如下DHT查询请求处理流程:所述域间节点接收DHT查询请求,其中携帯目的域信息及资源标识;所述域间节点根据接收的DHT查询请求中的目的域信息判断当前域是否是目的域;所述域间节点根据判断结果对所述DHT查询请求进行处理,包括,当前域不是目的域时,根据接收的DHT查询请求中的目的域信息查询域间映射信息,根据域间映射信息查询结果向下一跳域间节点转发所述域间DHT查询请求及资源标识;当前域是目的域吋,根据接收的DHT查询请求发起域内查询流程。进ー步地,所述域间节点还负责保存域内映射信息,其中包括资源标识与所述资源标识的负责节点或所述资源标识与下一跳节点的映射关系; 所述域内查询流程包括:根据接收的DHT查询请求中的资源标识查询域内映射信息;向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求。进ー步地,所述域间节点还负责保存域内映射信息和资源库,所述域内映射信息包括资源标识与所述资源标识的负责节点或所述资源标识与下一跳节点的映射关系;所述域内查询流程包括:所述域间节点根据接收的DHT查询请求中的资源标识判断当前节点是否是所述资源标识的负责节点;所述域间节点根据判断结果对所述DHT查询请求进行处理,包括,在当前节点不是负责节点时,根据接收的DHT查询请求中的资源标识查询域内映射信息,向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求;用于在当前节点是负责节点时,查询所述资源库并反馈查询結果。进ー步地,所述实现方法还包括如下域间映射信息维护流程:所述域间节点接收所述域间映射信息更新请求或配置指令;所述域间节点根据配置指令或根据接收的更新请求更新域间映射信息;所述域间节点向相邻的域间节点发送域间映射信息更新请求;其中,所述域间映射信息更新请求或配置指令中携帯需要更新或创建的映射关系。本发明分布式哈希表互通网络系统、节点和方法可基于现有的路由协议和路由器,扩展性好,成熟可靠;而且DHT查询和响应报文路由路径与普通IP报文路由路径相同,路由时延比现有技术DHT域间路由时延小。


图1为现有DHT叠加网互通的架构示意图;图2为现有DHT叠加网互通的方法流程示意图;图3为本发明分布式哈希表(DHT)互通网络系统实施例1的架构示意图;图4为图3中域间节点的模块结构示意图;图5为图3中域间节点的另一ホ旲块结构不意图;图6为图3中域内节点的模块结构示意图;图7为本发明分布式哈希表(DHT)互通网络系统实施例2的架构示意图;图8为本发明DHT查询请求处理流程的示意图;图9为本发明DHT查询请求处理流程应用实例的示意图;图10为DPR更新路由表的流程示意图。
具体实施方式
下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互組合。本发明分布式哈希表(DHT)互通网络系统实施例1,如图3所示,该系统包括若干个域(也称为DHT域),每个运营商独立维护ー个或多个域。每个域包括若干个节点,根据节点实现的主要功能,可将每个域内的节点划分为域间节点和域内节点,一般地,每个域包括若干个域内节点和至少ー个域间节点。域间节点主要用于实现所在域与其他域之间的互通,而域内节点主要用于实现与域内其他节点之间的互通以及实现对资源的存储查询等功能,本发明所说的资源泛指主机信息(IP地址)、互联网用户信息(密码、开通业务)、内容(电影、音乐等)、信息(作者、简介、存储位置)等。优选地,将资源的标识(ID)按照ID前缀(DHT前綴)进行分段,由不同的域负责,ー个域负责一至多个DHT前缀下的资源存储,每个DHT域存储的资源的ID范围不同。可用DHT前缀的部分表示运营商/域代码,其余部分表示运营商内分配的资源ID,比如160bit的Resource-1D中,前32bit表示运营商/域代码,其中前20bit表示运营商,后12比特标识子域。以下对域间节点和域内节点分别进行详细说明。如图4和图5所示,本发明域间节点包括:存储单元,用于保存域间映射信息,其中包括目的域信息与下一跳域信息的映射关系;查询请求接收单元,用于接收DHT查询请求,其中携帯目的域信息及资源标识;目的域判断単元,用于根据接收的DHT查询请求中的目的域信息判断当前域是否是目的域;域间映射信息查询单元,当前域不是目的域时,用于根据接收的DHT查询请求中的目的域信息查询域间映射信息;域间转发単元,用于根据域间映射信息查询结果向下一跳域间节点转发所述域间DHT查询请求及资源标识;域内处理单元,当前域是目的域时,用于根据接收的DHT查询请求发起域内查询流程。优选地,所述存储単元还用于保存域内映射信息,其中包括资源标识与所述资源标识的负责节点或所述资源标识与下一跳节点的映射关系;域间节点的域内处理单元可采用以下两种模块结构实现:—、域间节点仅具有域间转发及域内转发功能如图4所示,所述域内处理单元包括域内映射信息查询模块和域内查询请求处理模块,其中:所述域内映射信息查询模块,用于根据接收的DHT查询请求中的资源标识查询域内映射信息;所述域内查询请求处理模块,用于向查询到的映射关系中的负责节点或下ー跳节点转发所述DHT查询请求。ニ、域间节点同时具有域间转发、域内转发及域内节点功能
如图5所示,所述域间节点还包括资源库,用于保存资源;所述域内处理单元包括:负责节点判断模块,用于根据接收的DHT查询请求中的资源标识判断当前节点是否是所述资源标识的负责节点;域内处理转发模块,用于在当前节点不是负责节点时,根据接收的DHT查询请求中的资源标识查询域内映射信息,向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求;资源库查询反馈模块,用于在当前节点是负责节点时,查询所述资源库并反馈查询結果。本发明所说的域间映射信息以及域内映射信息,可以采用现有路由表形式或路由表与转发表结合的形式体现。为了实现域间映射信息维护,优选地,前述图4、5所示域间节点还可包括域间映射信息维护单元,用于根据接收的域间映射信息更新请求或配置指令更新域间映射信息;所述接收単元,还用于接收所述域间映射信息更新请求或配置指令。所述发送単元,还用于在接收到域间映射信息更新请求或配置指令后,向相邻的域间节点发送域间映射信息更新请求;所述域间映射信息更新请求或配置指令中携帯需要更新或创建的映射关系;如图6所示,本发明域内节点包括:存储单元,用于保存域内映射信息,其中包括资源标识与负责节点或所述资源标识与下一跳节点的映射关系;资源库,用于保存资源;接收单元,用于接收所述DHT查询请求;目的域判断単元,用于根据接收的DHT查询请求中的目的域信息判断当前域是否是目的域;发送单元,用于在当前域不是目的域时,向当前域的域间节点转发所述DHT查询请求;负责节点判断単元,用于在当前域是目的域时,根据接收的DHT查询请求中的资源标识判断当前节点是否是所述资源标识的负责节点;所述域内查询转发单元,用于在当前域是目的域,但当前节点不是负责节点时,根据接收的DHT查询请求中的资源标识查询域内映射信息,井向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求;所述资源库查询反馈单元,用于在当前域是目的域且当前节点是负责节点时,查询所述资源库并反馈查询結果。当ー个域包括两个或两个以上的域间节点,优选地,所述域内节点的发送单元根据域间节点的处理能力或权重向所在域的其中一个域间节点转发所述DHT查询请求。比如,若两个域间节点的能力比为1:1则平分;若两个域间节点的分发能力为4: 6,则40%发到ー个域间节点,60%发到另ー个域间节点。ー个域包括两个或两个以上的域间节点,同一个域的不同域间节点接收域内节点转发DHT查询请求的权重相同或不同。
以下从另一角度,对本发明系统中的节点的模块结构进行解析说明。如前所述,分布式哈希表(DHT)互通网络系统由至少两个运营商的DHT域构成,如图7所示,每个域包括若干个域内节点和至少ー个域间节点,所述域间节点包括域间互通逻辑单元(本发明中也称为DHT互联路由器(DHT Peering Router,简称DPR))和域内处理逻辑单元(本发明中也称为DHT互联代理(DHT Peering Agent,简称DPA))。DHT域之间通过DHT互联代理DPA (DHT Peering Agent)、DHT互联路由器(DHTPeering Router, DPR)进行互通。每个DHT域至少有ー个DHT互联代理、DHT互联路由器。ー个物理节点可同时兼任DHT互联代理、DHT互联路由器、DHT节点中的任意两种。多个运营商之间的多个DHT互联路由器构成ー个路由协议对等网络,在路由关系上各域的DPR是全同步的,但实际的网络拓扑可以根据需要设置部分用于汇聚流量的DPR,和当前IP网络中的BGP路由器组网一致。每个DHT互联路由器上配置本域所负责的运营商/域代码,并通过标准路由协议交換彼此负责的DHT前缀(DHT Prefix),就如同交換IP地址前缀一祥。根据DHT互联路由器运行的路由协议,DHT互联路由器构建路由表,并能路由DHT查询报文。具体地,所述域间互通逻辑单元(DPR),用于在当前域不是目的域时,根据接收的DHT查询请求中的目的域信息查询域间映射信息,井根据域间映射信息查询结果向下一跳域间节点转发所述域间DHT查询请求及资源标识;DHT互联代理是本域的一个客户机,其可以下载DHT路由表,将它域转发过来的DHT查询请求路由到合适的DHT节点进行处理。具体地,域内处理逻辑单元(DPA),在当前域是目的域时,用于根据接收的DHT查询请求中的资源标识查询域内映射信息,井向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求。所述域间映射信息包括目的域信息与下一跳域信息的映射关系;所述域内映射信息包括资源标识与所述资源标识的负责节点或所述资源标识与下一跳节点的映射关系。所述域内节点(也称为DHT节点)包括:域间查询处理逻辑单元,用于在当前域不是目的域时,向当前域的域间节点的域间互通逻辑单元转发所述DHT查询请求;域内查询处理逻辑単元,用于在当前域是目的域,但当前节点不是负责节点时,根据接收的DHT查询请求中的资源标识查询域内映射信息,井向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求;在当前域是目的域且当前节点是负责节点吋,查询资源库并反馈查询结果;所述域内映射信息包括资源标识与负责节点或所述资源标识与下一跳节点的映身寸关系。所述目的域信息采用资源标识前缀的方式体现,不同的域对应不同的标识前綴,一个域对应ー个或多个资源标识前綴。一般地,路由表包含可以到目的地的所有下一跳信息,及一些其他的信息。转发表只包含最优的下一跳信息,不包含其他信息。转发表根据路由表信息来构建。可理解地,转发表查表速度快,可提高报文转发处理速度。以下结合图7所示架构对实现方法进行具体说明:
本发明分布式哈希表(DHT)互通网络系统的查询方法基于前述系统实现,该系统包括若干个域,每个域包括至少ー个用于实现域间互通的域间节点,所述域间节点负责保存域间映射信息,其中包括目的域信息与下一跳域间节点的映射关系,如图8所示,该方法包括:步骤801:域间节点接收DHT查询请求,其中携帯目的域信息及资源标识;步骤802:域间节点根据接收的DHT查询请求中的目的域信息判断当前域是否是目的域;步骤803:域间节点根据判断结果对所述DHT查询请求进行处理,包括,当前域不是目的域吋,根据接收的DHT查询请求中的目的域信息查询域间映射信息,根据域间映射信息查询结果向下一跳域间节点转发所述域间DHT查询请求及资源标识;当前域是目的域时,根据接收的DHT查询请求发起域内查询流程。根据域间节点的功能不同,域内查询流程包括以下两种实现方式。方式一、域间节点不具有域内节点的资源维护查询功能;所述域间节点还负责保存域内映射信息,其中包括资源标识与所述资源标识的负责节点或所述资源标识与下一跳节点的映射关系;所述域内查询流程包括:根据接收的DHT查询请求中的资源标识查询域内映射信息;向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求。方式ニ、域间节点同时具有域内节点的资源维护查询功能;所述域间节点还负责保存域内映射信息和资源库,所述域内映射信息包括资源标识与所述资源标识的负责节点或所述资源标识与下一跳节点的映射关系;所述域内查询流程包括:所述域间节点根据接收的DHT查询请求中的资源标识判断当前节点是否是所述资源标识的负责节点;所述域间节点根据判断结果对所述DHT查询请求进行处理,包括,在当前节点不是负责节点时,根据接收的DHT查询请求中的资源标识查询域内映射信息,向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求;用于在当前节点是负责节点时,查询所述资源库并反馈查询結果。另外,本发明实现方法还包括如下域间映射信息维护流程:所述域间节点接收所述域间映射信息更新请求或配置指令;所述域间节点根据配置指令或根据接收的更新请求更新域间映射信息;所述域间节点向相邻的域间节点发送域间映射信息更新请求;其中,所述域间映射信息更新请求或配置指令中携帯需要更新或创建的映射关系;本发明分布式哈希表互通网络系统和方法可基于现有的路由协议和路由器,扩展性好,成熟可靠;而且DHT查询和响应报文路由路径与普通IP报文路由路径相同,路由时延比现有技术DHT域间路由时延小。以下结合图7,给出具体的应用实例,该应用实例中,查询请求所查询资源的ID不在源域DHT前缀范围内,源域DHT客户端的DHT目的域资源查询方法如下:
步骤901:客户端发出DHT查询请求,该查询到达源域DHT节点即域I节点I ;步骤902:节点I查询本地DHT前缀表,得知该查询的资源ID不在本域;步骤903:节点I将域间查询请求发给源域的DHT互联路由器即本域(域I)的DPR ;步骤904-905:域I的DPR取出DHT查询消息中的资源ID,并取出运营商/域前缀,根据此前缀查询转发表,将DHT查询消息转发给下一跳域3的DPR ;如前所述,域间映射信息包括目的域信息与下一跳域信息的映射关系。步骤906-907:域3的DPR根据转发表将查询转发给域2的DPR ;源域到目的域之间路由路径上的DHT互联路由器(DPR)收到DHT查询报文时,其取出DHT头部的目标资源ID的前缀,查找域间映射信息,井根据转发表转发至下一跳。本步骤可选。若源域DHT互联路由器的下一跳即为目的域DHT互联路由器,本步骤不执行。若源域到目的域之间路由路径上有一至多个其他域的DHT互联路由器,这些其他域的DHT互联路由器均执行该步骤,进行路由。该实施例中,域I至域2间只需要经过域2。步骤908:域2的DPR取出消息中的资源ID中的运营商/域前缀,查询本地路由表,得知该查询消息的资源ID位于本域,因此将消息转发给本域的DPA处理;步骤909:域2的DPA取出消息中的资源ID查询域内映射信息(如本地DHT路由表),获得负责节点的地址;路由表包含一至多个DHT节点信息。路由表查询:查询负责该资源ID的DHT节点,或查询DHT拓扑上离负责该资源ID的DHT节点最近的DHT节点。由于DHT算法不同,路由表具体构造和查询方式差异较大。具体的域内查询方法可采用现有技术实现,本发明对此不做限定。域内映射信息(如本地DHT路由表)包括资源标识与所述资源标识的负责节点或所述资源标识与下一跳节点的映射关系。步骤910:上述DPA根据DHT路由表查询结果将消息发送给负责节点;在步骤909-910中,根据DHT算法的不同,转发行为可能有所不同,比如系统采用CHORD、PASTRY等算法,DPA的DHT路由表很可能没有包含最终负责节点的信息,因此仅发送给下ー跳节点,经过若干中间节点后可以最终到达负责节点。步骤911:负责节点查询本地资源库,读出数据打包至查询响应中,发送查询响应给 DPA ;可理解地,负责节点接收到查询后,也要先进行本域是不是目的域以及本节点是否是负责节点的判断。步骤912-916 =DHT查询响应经过DPR、DHT节点I,最终返回给客户端;进ー步地,本实施例中如果考虑可靠性和负荷分担问题,则每个域需布置多个DPR设备,则在步骤903中,域I的DHT节点I可以根据某种预定义规则将消息分发到多个本域DPR中的ー个。而对于互通的DPR而言,ー个域存在多个DPR,将使得路由表中负责该域前缀的路由表项存在多个,如果管理者不做任何特殊配置,源DPR将根据负荷分担原则将DHT查询均等地发给多个目的地DPR中的ー个。管理员也可以将本域DHT前缀进ー步细分,在本域的不同的DPR中赋予不同的路径权重,这样路由扩散DHT对等互联网络中后,将有部分前缀将某个DPR选为首选路由,其它DPR为次选路由,从而实现流量工程的目标。图10示出了本发明DPR更新路由表的过程,包括以下步骤:步骤1001:DPR接收DHT前缀的配置信息,该配置信息可能通过网管获得,也可能是经过其它路由协议进行导入;步骤1002 =DPR更新路由表,并发送路由更新请求到相邻DPR ;步骤1003:其它DPR路由器更新自己的路由表并返回更新响应,DPR收到响应,结束路由更新过程。在本实施例中,假定采用BGP路由协议实现,BGP通过其Update消息中NLRI (Network Layer Reachable Information)携带DHT前缀信息,由于现有的 BGP协议不支持此类型的前綴,需要定义ー个新的NLRI类型,但对基本协议交互过程没有新的影响。本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用ー个或多个集成电路来实现。相应地,上述实施例中的各模块/単元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
权利要求
1.一种分布式哈希表(DHT)互通网络的域间节点,其特征在于,该域间节点用于实现所在域与其他域之间的互通,包括: 存储单元,用于保存域间映射信息,其中包括目的域信息与下一跳域信息的映射关系; 查询请求接收单元,用于接收DHT查询请求,其中携带目的域信息及资源标识; 目的域判断单元,用于根据接收的DHT查询请求中的目的域信息判断当前域是否是目的域; 域间映射信息查询单元,当前域不是目的域时,用于根据接收的DHT查询请求中的目的域信息查询域间映射信息; 域间转发单元,用于根据域间映射信息查询结果向下一跳域间节点转发所述域间DHT查询请求及资源标识; 域内处理单元,当前域是目的域时,用于根据接收的DHT查询请求发起域内查询流程。
2.如权利要求1所述的域间节点,其特征在于:所述存储单元还用于保存域内映射信息,其中包括资源标识与所述资源标识的负责节点或所述资源标识与下一跳节点的映射关系; 所述域内处理单元包括域内映射信息查询模块和域内查询请求处理模块,其中:所述域内映射信息查询模块,用于根据接收的DHT查询请求中的资源标识查询域内映射信息; 所述域内查询请求处理模块,用于向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求。
3.如权利要求1所述的域间节点,其特征在于: 所述存储单元还用于保存域内映射信息,其中包括资源标识与负责节点或所述资源标识与下一跳节点的映射关系; 所述域间节点还包括资源库,用于保存资源; 所述域内处理单元包括: 负责节点判断模块,用于根据接收的DHT查询请求中的资源标识判断当前节点是否是所述资源标识的负责节点; 域内处理转发模块,用于在当前节点不是负责节点时,根据接收的DHT查询请求中的资源标识查询域内映射信息,向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求; 资源库查询反馈模块,用于在当前节点是负责节点时,查询所述资源库并反馈查询结果O
4.如权利要求1所述的域间节点,其特征在于: 所述域间节点还包括域间映射信息维护单元,用于根据接收的域间映射信息更新请求或配置指令更新域间映射信息; 所述接收单元,还用于接收所述域间映射信息更新请求或配置指令; 所述发送单元,还用于在接收到域间映射信息更新请求或配置指令后,向相邻的域间节点发送域间映射信息更新请求; 所述域间映射信息更新请求或配置指令中携带需要更新或创建的映射关系。
5.一种分布式哈希表(DHT)互通网络系统,其特征在于,该系统包括若干个域,每个域包括若干个域内节点和至少一个如权利要求1至4中任一项所述的域间节点。
6.如权利要求5所述的系统,其特征在于,所述域内节点包括: 存储单元,用于保存域内映射信息,其中包括资源标识与负责节点或所述资源标识与下一跳节点的映射关系; 资源库,用于保存资源; 接收单元,用于接收所述DHT查询请求; 目的域判断单元,用于根据接收的DHT查询请求中的目的域信息判断当前域是否是目的域; 发送单元,用于在当前域不是目的域时,向当前域的域间节点转发所述DHT查询请求;负责节点判断单元,用于在当前域是目的域时,根据接收的DHT查询请求中的资源标识判断当前节点是否是所述资源标识的负责节点; 所述域内查询转发单元,用于在当前域是目的域,但当前节点不是负责节点时,根据接收的DHT查询请求中的资源标识查询域内映射信息,并向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求; 所述资源库查询反馈单元,用于在当前域是目的域且当前节点是负责节点时,查询所述资源库并反馈查询结果。
7.如权利要求5所述的系统,其特征在于:一个域包括两个或两个以上的域间节点,所述域内节点的发送单元根据域间节点的处理能力或预设权重向所在域的其中一个域间节点转发所述DHT查询请求。
8.如权利要求5所述的系统,其特征在于:所述目的域信息采用资源标识前缀的方式体现,不同的域对应不同的标识前缀,一个域对应一个或多个资源标识前缀。
9.一种分布式哈希表(DHT)互通网络系统,其特征在于,该系统包括若干个域,每个域包括若干个域内节点和至少一个域间节点,所述域间节点包括域间互通逻辑单元和域内处理逻辑单元,其中: 所述域间互通逻辑单元,用于在当前域不是目的域时,根据接收的DHT查询请求中的目的域信息查询域间映射信息,并根据域间映射信息查询结果向下一跳域间节点转发所述域间DHT查询请求及资源标识;: 域内处理逻辑单元,当前域是目的域时,用于根据接收的DHT查询请求中的资源标识查询域内映射信息,并向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求; 所述域间映射信息包括目的域信息与下一跳域信息的映射关系; 所述域内映射信息,其中包括资源标识与所述资源标识的负责节点或所述资源标识与下一跳节点的映射关系。
10.如权利要求9所述的系统,其特征在于,所述域内节点包括: 域间查询处理逻辑单元,用于在当前域不是目的域时,向当前域的域间节点的域间互通逻辑单元转发所述DHT查询请求; 域内查询处理逻辑单元,用于在当前域是目的域,但当前节点不是负责节点时,根据接收的DHT查询请求中的资源标识查询域内映射信息,并向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求;在当前域是目的域且当前节点是负责节点时,查询资源库并反馈查询结果; 所述域内映射信息包括资源标识与负责节点或所述资源标识与下一跳节点的映射关系O
11.如权利要求9所述的系统,其特征在于:所述目的域信息采用资源标识前缀的方式体现,不同的域对应不同的标识前缀,一个域对应一个或多个资源标识前缀。
12.—种分布式哈希表(DHT)互通网络系统实现方法,其特征在于,该系统包括若干个域,每个域包括至少一个用于实现域间互通的域间节点,所述域间节点负责保存域间映射信息,其中包括目的域信息与下一跳域间节点的映射关系,该实现方法包括如下DHT查询请求处理流程: 所述域间节点接收DHT查询请求,其中携带目的域信息及资源标识;所述域间节点根据接收的DHT查询请求中的目的域信息判断当前域是否是目的域;所述域间节点根据判断结果对所述DHT查询请求进行处理,包括,当前域不是目的域时,根据接收的DHT查询请求中的目的域信息查询域间映射信息,根据域间映射信息查询结果向下一跳域间节点转发所述域间DHT查询请求及资源标识;当前域是目的域时,根据接收的DHT查询请求发起域内查询流程。
13.如权利要求12所述的方法,其特征在于:所述域间节点还负责保存域内映射信息,其中包括资源标识与所述资源标识的负责节点或所述资源标识与下一跳节点的映射关系; 所述域内查询流程包括: 根据接收的DHT查询请求中的资源标识查询域内映射信息; 向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求。
14.如权利要求12所述的方法,其特征在于:所述域间节点还负责保存域内映射信息和资源库,所述域内映射信息包括资源标识与所述资源标识的负责节点或所述资源标识与下一跳节点的映射关系; 所述域内查询流程包括: 所述域间节点根据接收的DHT查询请求中的资源标识判断当前节点是否是所述资源标识的负责节点; 所述域间节点根据判断结果对所述DHT查询请求进行处理,包括,在当前节点不是负责节点时,根据接收的DHT查询请求中的资源标识查询域内映射信息,向查询到的映射关系中的负责节点或下一跳节点转发所述DHT查询请求;用于在当前节点是负责节点时,查询所述资源库并反馈查询结果。
15.如权利要求12所述的实现方法,其特征在于,所述实现方法还包括如下域间映射信息维护流程: 所述域间节点接收所述域间映射信息更新请求或配置指令; 所述域间节点根据配置指令或根据接收的更新请求更新域间映射信息; 所述域间节点向相邻的域间节点发送域间映射信息更新请求; 其中,所述域间映射信息更新请求或配置指令中携带需要更新或创建的映射关系。
全文摘要
本发明涉及一种分布式哈希表(DHT)互通网络系统、域间节点及实现方法,该实现方法包括如下DHT查询请求处理流程域间节点接收DHT查询请求,其中携带目的域信息及资源标识;域间节点根据接收的DHT查询请求中的目的域信息判断当前域是否是目的域;域间节点根据判断结果对所述DHT查询请求进行处理,包括,当前域不是目的域时,根据接收的DHT查询请求中的目的域信息查询域间映射信息,根据域间映射信息查询结果向下一跳域间节点转发所述域间DHT查询请求及资源标识;当前域是目的域时,根据接收的DHT查询请求发起域内查询流程。本发明系统、节点及方法可以解决现有DHT叠加网互通方案难以实现的问题。
文档编号H04L12/741GK103139076SQ20121003728
公开日2013年6月5日 申请日期2012年2月17日 优先权日2011年11月23日
发明者汪军, 李漓春 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1