CN105187308A - 一种资源节点查找方法及装置 - Google Patents

一种资源节点查找方法及装置 Download PDF

Info

Publication number
CN105187308A
CN105187308A CN201510228987.7A CN201510228987A CN105187308A CN 105187308 A CN105187308 A CN 105187308A CN 201510228987 A CN201510228987 A CN 201510228987A CN 105187308 A CN105187308 A CN 105187308A
Authority
CN
China
Prior art keywords
node
resource
search
identifier
topological structure
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201510228987.7A
Other languages
English (en)
Inventor
王卫斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHENZHEN DATA FAULT TOLERANCE SYSTEM CO Ltd
Original Assignee
SHENZHEN DATA FAULT TOLERANCE SYSTEM CO Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHENZHEN DATA FAULT TOLERANCE SYSTEM CO Ltd filed Critical SHENZHEN DATA FAULT TOLERANCE SYSTEM CO Ltd
Priority to CN201510228987.7A priority Critical patent/CN105187308A/zh
Publication of CN105187308A publication Critical patent/CN105187308A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供了一种资源节点查找方法,包括:在预先构建的所有节点的环形逻辑拓扑结构中,通过蚂蚁算法确定最短环形路径并将其作为环形物理拓扑结构,查找节点接收到查找请求时,首先判断本地是否存有资源,若否,则根据资源标识符以及节点标识符确定资源节点的查找方向,根据确定的查找方向,按照查找节点上保存的顺时针方向指针路由表或逆时针方向指针路由表查找资源节点,查找到时返回查找结果。同时还提供了一种资源节点查找装置,可提高查找资源节点的速度和效率。

Description

一种资源节点查找方法及装置
技术领域
本发明涉及通信技术领域,特别涉及一种资源节点查找方法及装置。
背景技术
对等网络中各台计算机有相同的功能,无主从之分,一台计算机都是既可作为服务器,设定共享资源供网络中其他计算机所使用。对等网络是小型局域网常用的组网方式。对等计算(PeertoPeer,简称P2P)可以简单的定义成通过直接交换来共享计算机资源和服务,而对等计算模型应用层形成的网络通常称为对等网络。在P2P网络环境中,成千上万台彼此连接的计算机都处于对等的地位。在P2P网络中一个常见问题是如何高效的定位节点,即,在一个P2P网络中,一个节点怎样高效的查找到包含它所寻找的数据所在的节点。
现有技术中,通过Chord算法查找节点。Chord算法是麻省理工大学提出的一种基于分布式散列的算法。它在物理网络上建立一个环形逻辑覆盖网。它的目标是提供一个适合于P2P网络环境的分布式资源查找服务,通过使用分布式散列技术只需要维护O(LogN)长度的路由表就可以发现指定要查找的对象。Chord算法是使用相容性哈希函数把所有节点映射成一个虚拟的逻辑拓扑,该逻辑拓扑为一个环状结构,然后在此环状逻辑拓扑结构之上采用单向查找机制,即接收到查询请求的节点按环的顺时针方向进行资源查找。但是这样会导致环中若目标节点是与查询节点相距较远的节点,则需要经过多跳才能找到该目标节点,查找效率低。并且,Chord算法通常会忽略P2P网络的物理拓扑结构,即其物理拓扑结构与网络拓扑结构不匹配,从而在路由选择时造成严重的网络延时。
发明内容
有鉴于此,本发明提供一种资源节点查找方法及装置,通过蚂蚁算法确定环形物理拓扑结构,以及可以提高使用即时通信客户端的趣味性,从而增加即时通信客户端的应用率。
本发明实施例提供一种资源节点查找方法,包括:
在预先构建的所有节点的环形逻辑拓扑结构中,通过蚂蚁算法确定最短环形路径并将其作为环形物理拓扑结构,所有节点均存有顺时针方向指针路由表和逆时针方向指针路由表;当查找节点接收到资源的查找请求时,判断本地是否存有所述资源;若否,则根据所述资源的资源标识符以及所述查找节点的节点标识符确定所述资源所在的资源节点的查找方向;根据确定的查找方向,按照所述查找节点上保存的所述顺时针方向指针路由表或所述逆时针方向指针路由表查找所述资源节点;当查找到所述资源节点时,返回查找结果。
本发明实施例提供一种资源节点查找装置,包括:
第一确定模块,用于在预先构建的所有节点的环形逻辑拓扑结构中,通过蚂蚁算法确定最短环形路径并将其作为环形物理拓扑结构,所有节点均存有顺时针方向指针路由表和逆时针方向指针路由表;判断模块,用于当查找节点接收到资源的查找请求时,判断本地是否存有所述资源;第二确定模块,用于若所述判断模块判断本地未存有所述资源,则根据所述资源的资源标识符以及所述查找节点的节点标识符确定所述资源所在的资源节点的查找方向;查找模块,用于根据确定的查找方向,按照所述查找节点上保存的所述顺时针方向指针路由表或所述逆时针方向指针路由表查找所述资源节点;反馈模块,用于当查找到所述资源节点时,返回查找结果。
根据上述实施例的资源节点查找方法及装置,通过蚂蚁算法在Chord算法形成的环形逻辑拓扑结构中确定经过所有节点的最短路径的环,作为环形物理拓扑结构,使得Chord算法中物理拓扑结构与逻辑拓扑结构一致,从而提高查找资源节点的速度和效率。进一步地,在确定的环形物理拓扑结构中通过可沿顺时针方向可沿逆时针方向的双向查找机制,进一步提高查找资源节点的速度和效率。
为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。
附图说明
图1为本发明第一实施例提供的资源节点查找方法的流程图;
图2为P2P网络结构示意图;
图3为本发明实例中环形逻辑拓扑结构上节点与资源分布示意图;
图4为本发明实例中环形逻辑拓扑结构上节点根据指针路由表查找资源节点的每一跳示意图;
图5为本发明第二实施例提供的资源节点查找方法的流程图;
图6为本发明第三实施例提供的资源节点查找方法的流程图;
图7为本发明第四实施例提供的资源节点查找装置的结构示意图;
图8为本发明第五实施例提供的资源节点查找装置的结构示意图。
具体实施方式
为更进一步阐述本发明为实现预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明的具体实施方式、结构、特征及其功效,详细说明如后。
本发明各实施例中的资源节点查找方法,为查找存储有资源的资源节点,通过Chord算法将网络中的所有节点形成一个Chord环,即形成一个环形逻辑拓扑结构。在此基础上,通过蚂蚁算法在该环形逻辑拓扑结构中确定经过所有节点的最短路径的环,作为环形物理拓扑结构,用以解决传统Chord算法中物理拓扑结构与逻辑拓扑结构不一致,从而导致路由选择时造成严重的网络延时的问题。进一步地,在该最短路径的环形成之后,通过双向查找机制,即可以从当前节点逆时针或顺时针方向在该最短路径的环上查找资源节点,进一步提高查找资源节点的效率。
参见图1,本发明第一实施例提供了一种资源节点查找方法,该方法包括:
101、在预先构建的所有节点的环形逻辑拓扑结构中,通过蚂蚁算法确定最短环形路径并将其作为环形物理拓扑结构,所有节点均存有顺时针方向指针路由表和逆时针方向指针路由表;
如图2所示,在P2P网络结构中,资源和服务分散在各个节点100上,各节点100之间进行通信,各节点100之间地位相等,没有服务器和客户端的区别。
蚂蚁算法,又称蚁群算法(antcolonyoptimization,ACO),是一种用来在图中寻找优化路径的机率型算法,通过正反馈、分布式协作来寻找最优路径。这是一种基于种群寻优的启发式搜索算法。它充分利用了蚁群能通过个体间简单的信息传递,搜索从一个节点走遍所有节点再回到出发节点走过的最短路径的集体寻优特征。蚂蚁算法采用正反馈机制,即信息素含量大的路径被选择的概率就越高。当越来越多的蚂蚁通过某一路径时,这条路径上的信息素含量也越大,因此,该路径被选择的概率也越高,最终能够有效的获得相对比较优的解,即最短的路径。
本发明实施例中,首先通过Chord算法预先构建一个关于所有节点的环形逻辑拓扑结构(即Chord环),Chord算法是使用相容性哈希函数把所有节点100映射成一个虚拟的环状逻辑拓扑结构,它的目标是提供一个适合于P2P网络环境的分布式资源查找服务,通过使用分布式散列技术,若节点个数为N,则只需要维护O(LogN)长度的路由表便可查找到资源的位置,即资源所在的资源节点是哪一个。
为便于理解,下面简要介绍在Chord算法构建的环形逻辑拓扑结构上,查找资源所在的资源节点的过程。
Chord算法采用一致性哈希函数把资源存储在环形逻辑拓扑结构(即Chord环)的相应节点上。一致性哈希先为每个节点(Node)和资源(此处本为Key,其实际表示一个资源,因为Key与一个资源Value哈希绑定,故在本文中统称资源)分配一个m位的标识符(ID,Identity),即节点标识符NID和资源标识符KID。标识符形成一个一维的对2m取模的标识符环,NID和KID被分配到一个大小为2^m的环上,NID和KID的范围是[0,2m-1]。此标识符可以用SHA-1等哈希函数生成。节点的标识符可以通过哈希节点的IP地址生成,而资源的标识符可以直接哈希Key本身而来。
SHA-1会产生一个2160的空间,每项为一个160bit的大整数。这些整数首尾相连形成一个Chord环,这些大整数在Chord环上按大小顺时针排列,Node与Key都被哈希到Chord环上。Chord环上的每个节点为标志符(大整数)。如果某个Node映射到了某个标志符,则该标识符被称为Node。按顺时针方向,某节点前面的节点成为它的前驱(predecessor)节点,后面的节点成为他的后继(successor)节点。
如图3所示,图3为一个m=6的Chord环,其中有10个节点,5个资源(Key)。NID和KID被分配到一个大小为2^m的环上,用于资源分配(分配给某一个节点)、节点分布、资源定位。资源被分配到NID>=KID的节点上,这个节点成为Key的后继节点,即,在该节点上存有Key对应的资源,是环上从Key起顺时针方向的第一个节点,记为successor(k)。而节点分布则顺时针将节点N由小到大放在这个环上。图3中,K10的后继节点为N14,即,K10的资源被分配给了N14。K24和K30的后继节点为N38,即,K24和K30被分配给了N38。
在查找资源所在的资源节点时,比较简单的方法是单个节点之间的查询。例如,节点N8查找资源K54所在的资源节点时,节点N8在Chord环上的下一个节点N14的KID不属于查找节点的ID与资源节点的ID构成的区间,即则表示资源K54不在节点N14上。进一步地,节点N14发起同样的查找,然后一跳一跳后直到节点N56满足54∈(51;56],这样查找到资源K54在N56这个节点上。在一个有N个节点的环上,这样的查找方法最多需要查找N次才能得到所需资源的位置,查找次数与节点个数成线性关系。因此,此种查找方式效率较低。
另外一种查找效率较高的方式相对复杂,它是在相关节点之间跳跃查找,而无需逐个查找单个节点,能够更快的查找到资源所在的位置。该种方式是在每个节点上都维护了最多m项(m为ID的位数)的指针路由表(称为fingertable),通过该指针路由表定位资源。指针路由表的第i项是保存有该指针路由表的节点的后继节点位置,至少包含到2^(i-1)后的节点位置。该指针路由表通常不包含直接找到后继节点的信息,往往需要询问其他节点来完成对资源节点的查找。
请参阅图4,每个节点上均保存有指针路由表,每个指针路由表中只包含全网中一小部分节点的资源信息。每个节点对于临近节点负责的资源所在节点知道的更多。例如,图4中节点N8上保存有一个指针路由表,该指针路由表如表1所示,节点N8对于节点N14负责的资源所在节点位置的信息掌握3处,即该指针路由表的前三行所示内容,而对节点N21负责的资源所在节点位置的信息只掌握1处,即该指针路由表的第四行所示内容。
表1
节点N8的指针路由表中,左侧栏中包含了N8+1(1=2^(1-1))到N8+32(32=2^(6-1)的位置,左侧栏中分别为节点N9、N10、N12、N16、N24、N40。右侧栏中为左侧栏中每个节点对应的资源实际存在的节点,即,右侧栏中为左侧栏中每个节点对应的后继节点(successor)。比如第一行中的节点N9(N8+1)对应N14,表示在N8后的第一个位置(节点)上的资源由节点N14负责,同样的,节点N10(N8+2)和节点N12(N8+4)的资源也由节点N14负责。节点N16(N8+8)的资源由节点N21负责,节点N24(N8+16)的资源由节点N32负责,节点N40(N8+32)的资源由节点N42负责。
当负责查找资源的查找节点在Chord环上查找资源时,首先判断该查找节点的后继节点是不是保存有该资源,若没有则下一步直接从该查找节点的指针路由表中所示距离该查找节点最远处的节点开始查找,该最远处的节点便距离保存有资源的资源节点最近,跳转至该最远处的节点继续查找,如此迭代下去,若查找完整个Chord环没有查到该资源节点,则说明该查找节点就是要查找的资源节点,其自身就保存有要查找的资源。因此,最多经过O(logN)次查找,在Chord环上便能够定位一个资源所在的资源节点。
例如:节点N8查找资源K54所在的资源节点。首先,在节点N8的指针路由表上查找节点N8的后继节点为N14,由于N14的KID不属于查找节点的ID与资源节点的ID构成的区间,即则表示资源K54不在节点N14上。那么直接在节点N8上保存的指针路由表上继续查找,该指针路由表中所示的距离节点N8最远的一项N8+32对应的是节点N42,表明节点N42距离保存有资源K54的资源节点最近,则跳到节点N42继续查找该资源节点。节点N42的后继节点为节点N48,由于则表示资源K54不在节点N48上。那么在节点N42的指针路由表上继续查找,节点N42的指针路由表请参见表2。该路由表中所示的距离节点N42最远的一项N42+8对应的是节点N51,表明节点N51距离保存有资源K54的资源节点最近,则跳到节点N51继续查找该资源节点。节点N51的后继节点为节点N56,此时,由于54∈(51;56],表示节点N56便是保存有资源的资源节点,本次查找完成。图4中的箭头走向表明了此次资源K54的查找轨迹。
表2
以上简要介绍了如何在Chord算法构建的环形逻辑拓扑结构上查找资源节点。
本实施例中,在通过Chord算法预先构建的所有节点的环形逻辑拓扑结构中,通过蚂蚁算法确定一条经过所有节点的最短环形路径,并将该最短的环形路径作为环形物理拓扑结构,该环形物理拓扑结构中的所有节点均保存有顺时针方向指针路由表和逆时针方向指针路由表。与现有技术中的单向查找算法不同,每个节点的的指针路由表路由表由原来的一个长度为m的指针路由表扩展为两个长度为m-1的指针路由表,分别负责顺时针查找资源节点和逆时针查找资源节点。
其中,顺时针方向指针路由表由两部分组成:左侧栏为当前节点后第i个节点的标识符(NID+2^(i-1)),右侧栏为左侧栏各节点分别对应的后继节点(successor)的标识符(NID),按照顺时针方向指针路由表可以沿该环形物理拓扑结构的顺时针方向查找资源节点;逆时针方向指针路由表由两部分组成:左侧栏为当前节点后第i个节点的标识符(NID-2^(i-1)),右侧栏为左侧栏各节点分别对应的前驱节点(predecessor)的标识符(NID),按照逆时针方向指针路由表可以沿该环形物理拓扑结构的逆时针方向查找资源节点。
需要说明的是,按照逆时针方向指针路由表查找资源节点,与按照顺时针方向指针路由表查找资源节点的方式原理相同,此处不再赘述。
102、当查找节点接收到资源的查找请求时,判断本地是否存有该资源;
当该环形物理拓扑结构中的一个节点接收到查找资源的查找请求时,该负责查找资源的查找节点判断该查找节点的本地是否存有要查找的资源。若该查找节点的本地有要查找的资源,则直接返回查找结果。
103、若否,则根据该资源的资源标识符以及该查找节点的节点标识符确定该资源所在的资源节点的查找方向;
若该查找节点的本地没有要查找的资源,则根据该资源的资源标识符以及该查找节点的节点标识符确定该资源所在的资源节点的查找方向,即,确定该查找节点是沿该环形物理拓扑结构的顺时针方向查找该资源节点,还是沿该环形物理拓扑结构的逆时针方向查找该资源节点。
104、根据确定的查找方向,按照该查找节点上保存的顺时针方向指针路由表或逆时针方向指针路由表查找该资源节点;
确定了该查找节点是沿该环形物理拓扑结构的顺时针方向查找该资源节点,还是沿逆时针方向查找该资源节点后,该查找节点按照其保存的顺时针方向指针路由表或逆时针方向指针路由表查找该资源节点。
105、当查找到该资源节点时,返回查找结果。
当该查找节点查找到该资源所在的资源节点时,返回查找结果。
本发明实施例中,通过蚂蚁算法在Chord算法形成的环形逻辑拓扑结构中确定经过所有节点的最短路径的环,作为环形物理拓扑结构,使得Chord算法中物理拓扑结构与逻辑拓扑结构一致,从而提高查找资源节点的速度和效率。进一步地,在确定的环形物理拓扑结构中通过可沿顺时针方向可沿逆时针方向的双向查找机制,进一步提高查找资源节点的速度和效率。
参见图7,本发明第二实施例提供了一种资源节点查找方法,该方法包括:
201、产生多个蚂蚁,并随机放置在环形逻辑拓扑结构中的节点上;
按照蚂蚁算法,产生多个蚂蚁,随机放置在Chord算法构建的环形逻辑拓扑结构中的所有节点上。具体构建方式参见前述图1所示实施例的描述,此处不再赘述。
202、设置选路矩阵以及选路概率,使得每只蚂蚁根据设置的选路矩阵以及选路概率,选择每一步经过的节点;
初始化信息矩阵和选路矩阵,设置选路矩阵以及选路概率,并设置最大迭代次数、最优路径长度值以及节点位置的标志位数组。之后,每只蚂蚁根据预先设置的选路矩阵以及选路概率,选择每一步经过的节点。
203、当蚂蚁走过该环形逻辑拓扑结构中的所有节点并回到出发节点时,记录蚂蚁走过的路径并计算路径长度;
204、在本次迭代中所有蚂蚁各自走过的路径中选择最短路径,并增加该最短路径的信息素;
当所有蚂蚁各自走完所有节点后,选出在本次迭代中所有蚂蚁各自走过的最短路径,增加该最短路径上的信息素,以便增加下次迭代中该条最短路径再被蚂蚁选中的概率。
205、重复执行以上步骤,直至迭代次数到达预置的最大迭代次数时,确定所有迭代中蚂蚁走过的最短路径,并作为环形物理拓扑结构;
重复执行步骤201~204,即重复迭代蚂蚁走过所有节点的最短路径,直至到达预置的最大迭代次数,确定在以上所有迭代中蚂蚁走过所有节点的最短路径,并将确定的该最短路径作为所有节点的环形物理拓扑结构。
若所有蚂蚁走过的路径中的最短路径的长度值小于预先设置的最优路径长度值,则将该最优路径长度值更新为该最短路值径的长度值,并记录该最短路径,完成对系统中最优路径长度值的更新。
综上所述,Chord算法构建的环形逻辑拓扑结构中的节点数是n,n为至少大于1的自然数,由于一个网络中节点很多,所以通常情况下n远远大于1。按照蚂蚁算法产生多个蚂蚁,随机放置在该环形逻辑拓扑结构中的一个起始节点上。
首先初始化网络中的信息素矩阵ph[n][n],节点i到节点j路径上的信息素的值统一初始值为ph[i][j]=vinit,其中,i,j∈[1,n]。进一步地,初始化选路矩阵choice[n][n],节点i到节点j这条路径被选择的参考矩阵值为choice[i][j],该参考矩阵值越大,该条路径被蚂蚁选中行走的概率也越大。
信息素矩阵和选路矩阵的关系如下式所示:
choice [ i ] [ j ] = Ph [ i ] [ j ] D [ i ] [ j ] i ≠ j 0 i = j
其中,D[i][j]表示从节点i到节点j的距离。D[i][j]的初始值为0,即i=j时,节点i即为节点j,此时二者之间的距离为0。
在计算开始之前,还要设置通过蚂蚁算法确定最短路径的最大迭代次数Iterationmax,每次迭代选择最短路径,是当所有蚂蚁各自走完所有节点后统计出的最短路径,当到达最大迭代次数,则迭代出各次统计结果以得到本次算法计算得到的最短路径。同时,在系统中设置一个最优路径长度值作为对比值,与每次迭代出的最短路径进行对比,若后者更优,则在系统中更新将最短路径更新为最优路径长度值。进一步地,设置各节点标志位(flag),这样,各节点的标识符均由flag标志位和ID标识符两部分组成,flag标志位代表节点输出的先后顺序,也表示节点在网络中的物理位置,ID标识符由散列运算产生,flag标识符和ID标识符位数相同。各节点的标志位组成标志位数组。其中,标志位可用于标识一个节点是否被访问过,也可用于标识节点在该环形逻辑拓扑结构中的位置。标志位初始值为零,当一个节点被蚂蚁访问后,其对应的标识位数值增加。标识位为非零数值时,表示其对应的节点被访问过。标识位数值的大小可表示其对应的节点在环行逻辑拓扑结构中的位置。
在t时刻,节点i到节点j路径上的信息素含量为pht[i][j],在t+1时刻,节点i到节点j路径上的信息素含量为pht+1[i][j]。那么,
pht+1[i][j]=(1-ρ)pht[i][j]+Δph[i][j]
其中ρ表示路径上信息素的挥发系数,(1-ρ)表示路径上信息素的保留系数。
ΔPh [ i ] [ j ] = Vinit D [ i ] [ j ] i ≠ j 0 i = j
其中,D[i][j]表示从节点i到节点j的距离。
选路矩阵中的元素choice[i][j]的值,与路径上的信息素含量成正比,与两节点间的距离成反比。即,
choice [ i ] [ j ] = Ph t + 1 [ i ] [ j ] D [ i ] [ j ] i ≠ j 0 i = j
在路径构建中,每只蚂蚁根据选路矩阵choice[i][j]的值来选择每一步,choice[i][j]的值越大,该条路径被蚂蚁选中的概率也越大。为了避免可能会出现局部收敛的问题,设置蚂蚁选择节点i到节点j的概率为
P ij = choice [ i ] [ j ] Σchoice [ i ] [ k ]
其中,j为蚂蚁所在当前节点,k为从第一未访问节点到最后一个未访问节点,j∈M,k∈M,M为所有未被访问的节点,k的取值范围是未访问的节点。
当蚂蚁走过所有节点,又回到出发的节点,则记录其构建的此次路径并计算此次路径长度。当记录完所有蚂蚁构建的路径,则确定本次迭代中蚂蚁经过所有节点构建的最短路径,增加这个最短路径上的信息素,以便增加下次迭代中该最短路径再被蚂蚁选择的概率。若该最短路径的长度值小于设置的最优路径长度值,则将该最短路径的长度值替换为最优路径长度值,并记录该最短路径。进入下次迭代,重复上述步骤,当迭代到达最大迭代次数时,迭代结束,确定以上多次迭代出蚂蚁经过所有节点的最短路径。
206、当查找节点接收到资源的查找请求时,判断本地是否存有该资源;
当该环形物理拓扑结构中的一个节点接收到查找资源的查找请求时,该负责查找资源的查找节点判断该查找节点的本地是否存有要查找的资源。若是,则直接返回查找结果。
207、若否,则根据该资源的资源标识符以及该查找节点的节点标识符确定该资源所在的资源节点的查找方向;
若该查找节点的本地没有要查找的资源,则根据该资源的资源标识符以及该查找节点的节点标识符确定该资源所在的资源节点的查找方向,即,确定该查找节点是沿该环形物理拓扑结构的顺时针方向查找该资源节点,还是沿该环形物理拓扑结构的逆时针方向查找该资源节点。
208、根据确定的查找方向,按照该查找节点上保存的顺时针方向指针路由表或逆时针方向指针路由表查找该资源节点;
209、当查找到该资源节点时,返回查找结果。
本实施例中,通过蚂蚁算法在Chord算法形成的环形逻辑拓扑结构中确定经过所有节点的最短路径的环,作为环形物理拓扑结构,使得Chord算法中物理拓扑结构与逻辑拓扑结构一致,从而提高查找资源节点的速度和效率。进一步地,在确定的环形物理拓扑结构中通过可沿顺时针方向可沿逆时针方向的双向查找机制,进一步提高查找资源节点的速度和效率。
参见图8,本发明第三实施例提供了一种资源节点查找方法,该方法包括:
301、在预先构建的所有节点的环形逻辑拓扑结构中,通过蚂蚁算法确定最短环形路径并将其作为环形物理拓扑结构,所有节点均存有顺时针方向指针路由表和逆时针方向指针路由表;
本步骤的具体内容,请参见图1所示实施例中步骤101的内容,此处不再赘述。
302、当查找节点接收到资源的查找请求时,判断本地是否存有该资源;
当该环形物理拓扑结构中的一个节点接收到查找资源的查找请求时,该负责查找资源的查找节点判断该查找节点的本地是否存有要查找的资源。若是,则直接返回查找结果。
303、若否,则根据该资源的资源标识符以及该查找节点的节点标识符确定该资源所在的资源节点的查找方向;
若该查找节点的本地没有要查找的资源,则根据该资源的资源标识符以及该查找节点的节点标识符确定该资源所在的资源节点的查找方向,即,确定该查找节点是沿该环形物理拓扑结构的顺时针方向查找该资源节点,还是沿该环形物理拓扑结构的逆时针方向查找该资源节点。
具体地,判断要查找的资源的资源标识符(KID)与查找节点的节点标识符(NID)之差是否大于或等于零,即,判断KID-NID的值是否大于等于0,若KID-NID≥0,即该资源标识符与该节点标识符之差大于或等于零,则判断该资源标识符与该节点标识符之差是否大于或等于2m-1,其中m为资源标识符和节点标识符的位数,NID和KID的大小范围为[0,2m-1]。即此时判断KID-NID是否大于或等于2m-1
本实施例中的资源节点查找方法为以查找节点为出发点的双向查找算法,环形物理拓扑结构中的每个节点都维护两张指针路由表,即一个顺时针指针路由表和一个逆时针指针路由表。与现有技术中的单向查找算法不同,每个节点的的指针路由表由原来的一个长度为m的指针路由表扩展为两个长度为m-1的指针路由表,分别负责顺时针查找资源节点和逆时针查找资源节点。
顺时针指针路由表在[(NID+l)mod2m,(NID+2m-1)mod2m]范围内,共存储m-1项,划分的区间为:[(NID+l)mod2m,(NID+2)mod2m),[(NID+2)mod2m,(NID+4)mod2m],......,[(NID+2m-2)mod2m,(NID+2m-1)mod2m]。
逆时针指针路由表在[(NID-l)mod2m,(NID-2m-1)mod2m]范围内,逆时针指针路由表中也有m-1项。划分的区间为:[(NID-l)mod2m,(NID-2)mod2m),[(NID-2)mod2m,(NID-4)mod2m],......,[(NID-2m-2)mod2m,(NID-2m-1)mod2m]。
一个实例中,仍以节点N8为查找节点,查找资源K54。由于满足条件K54-N8>0,以及,K54-N8>26-1,符合逆时针查找资源的条件,对应查找逆时针路由表,第一步便直接查找到存有资源K54的节点N56。在此例中,节点N8上保存的顺时针路由表如表3所示,逆时针路由表如表4所示:
表3
表4
进一步地,若KID-NID≥2m-1,则确定的查找方向为从该查找节点沿该环形物理拓扑结构的逆时针方向,若KID-NID<2m-1,则确定的查找方向为从该查找节点沿该环形物理拓扑结构的顺时针方向。
另一方面,若该资源标识符与该节点标识符之差小于零,则判断该资源标识符与该节点标识符之差与该环形物理拓扑结构上的节点最大序数之和是否大于或等于该节点标识符的最大值,即,若KID-NID<0,则判断KID-NID+2m是否大于或等于2m-1,其中,2m为该环形物理拓扑结构上的节点最大序数,例如,m=6,则该环形物理拓扑结构上的节点最大序数为64。若KID-NID+2m≥2m-1,则确定的查找方向为从该查找节点沿该环形物理拓扑结构的逆时针方向,若KID-NID+2m<2m-1,则确定的查找方向为从该查找节点沿该环形物理拓扑结构的顺时针方向。
304、若确定的查找方向为从该查找节点沿该环形物理拓扑结构的顺时针方向,则按照该顺时针方向指针路由表查找该资源节点,若确定的查找方向为从该查找节点沿该环形物理拓扑结构的逆时针方向,则按照该逆时针方向指针路由表查找该资源节点;
305、当查找到该资源节点时,返回查找结果。
当该查找节点查找到该资源所在的资源节点时,返回查找结果。
本实施例中,通过蚂蚁算法在Chord算法形成的环形逻辑拓扑结构中确定经过所有节点的最短路径的环,作为环形物理拓扑结构,使得Chord算法中物理拓扑结构与逻辑拓扑结构一致,从而提高查找资源节点的速度和效率。进一步地,在确定的环形物理拓扑结构中通过可沿顺时针方向可沿逆时针方向的双向查找机制,进一步提高查找资源节点的速度和效率。
请参见图7,本发明第四实施例提供了一种资源节点查找装置,包括:
第一确定模块401,用于在预先构建的所有节点的环形逻辑拓扑结构中,通过蚂蚁算法确定最短环形路径并将其作为环形物理拓扑结构,所有节点均存有顺时针方向指针路由表和逆时针方向指针路由表;
判断模块402,用于当查找节点接收到资源的查找请求时,判断本地是否存有该资源;
第二确定模块403,用于若判断模块402判断本地未存有该资源,则根据该资源的资源标识符以及该查找节点的节点标识符确定该资源所在的资源节点的查找方向;
查找模块404,用于根据确定的查找方向,按照该查找节点上保存的顺时针方向指针路由表或逆时针方向指针路由表查找该资源节点;
反馈模块405,用于当查找到该资源节点时,返回查找结果。
进一步地,反馈模块405还用于若判断模块402判断本地存有该资源,则直接返回查找结果。
关于本实施例的装置中各模块实现技术方案的其他细节,可参考前述第一实施例、第二实施例以及第三实施例的描述,此处不再赘述。
本发明实施例中,通过蚂蚁算法在Chord算法形成的环形逻辑拓扑结构中确定经过所有节点的最短路径的环,作为环形物理拓扑结构,使得Chord算法中物理拓扑结构与逻辑拓扑结构一致,从而提高查找资源节点的速度和效率。进一步地,在确定的环形物理拓扑结构中通过可沿顺时针方向可沿逆时针方向的双向查找机制,进一步提高查找资源节点的速度和效率。
请参见图8,本发明第五实施例提供了一种资源节点查找装置,包括:
第一确定模块501,用于在预先构建的所有节点的环形逻辑拓扑结构中,通过蚂蚁算法确定最短环形路径并将其作为环形物理拓扑结构,所有节点均存有顺时针方向指针路由表和逆时针方向指针路由表;
判断模块502,用于当查找节点接收到资源的查找请求时,判断本地是否存有该资源;
第二确定模块503,用于若判断模块502判断本地未存有该资源,则根据该资源的资源标识符以及该查找节点的节点标识符确定该资源所在的资源节点的查找方向;
查找模块504,用于根据确定的查找方向,按照该查找节点上保存的顺时针方向指针路由表或逆时针方向指针路由表查找该资源节点;
反馈模块505,用于当查找到该资源节点时,返回查找结果。
进一步地,反馈模块505还用于若判断模块502判断本地存有该资源,则直接返回查找结果。
第一确定模块501可以包括:
放置模块5011,用于产生多个蚂蚁,并随机放置在所述环形逻辑拓扑结构中的节点上;
设置模块5012,用于设置选路矩阵以及选路概率,使得每只蚂蚁根据设置的选路矩阵以及选路概率,选择每一步经过的节点;
记录模块5013,用于当蚂蚁走过该环形逻辑拓扑结构中的所有节点并回到出发节点时,记录蚂蚁走过的路径;
计算模块5014,用于计算蚂蚁走过的路径长度;
选择模块5015,用于在本次迭代中所有蚂蚁各自走过的路径中选择最短路径;
信息素模块5016,用于增加所述最短路径的信息素;
确定路径模块5017,用于直至迭代次数到达预置的最大迭代次数时,确定所有迭代中蚂蚁走过所有节点的最短路径,并将确定的最短路径作为所有节点的环形物理拓扑结构。
更近一步地,该装置还可以包括:
更新模块506,用于若所有蚂蚁走过的路径中的最短路径的长度值小于预先设置的最优路径长度值,则将该最优路径长度值更新为该最短路值径的长度值;
记录单元5013,还用于记录更新模块506更新后的该最短路径。
进一步地,第二确定模块503包括:
判断子模块5031,用于判断该资源标识符与该节点标识符之差是否大于或等于零;
判断子模块5031,还用于用户若该资源标识符与该节点标识符之差大于或等于零,则判断该资源标识符与该节点标识符之差是否大于或等于节点标识符最大值;
确定子模块5032,用于若判断子模块5031判断该资源标识符与该节点标识符之差大于或等于节点标识符最大值,则确定的查找方向为从该查找节点沿该环形物理拓扑结构的逆时针方向,若判断子模块5031判断该资源标识符与该节点标识符之差小于节点标识符最大值,则确定的查找方向为从该查找节点沿该环形物理拓扑结构的顺时针方向;
判断子模块5031,还用于若该资源标识符与该节点标识符之差小于零,则判断该资源标识符与该节点标识符之差与该节点标识符最大值之和是否大于或等于该节点标识符最大值;
确定子模块5032,还用于若该资源标识符与该节点标识符之差与该节点标识符最大值之和大于或等于该节点标识符最大值,则确定的查找方向为从该查找节点沿该环形物理拓扑结构的逆时针方向,若该资源标识符与该节点标识符之差与该节点标识符最大值之和小于该节点标识符最大值,则确定的查找方向为从该查找节点沿该环形物理拓扑结构的顺时针方向。
进一步地,查找模块504,还用于若确定的查找方向为从该查找节点沿该环形物理拓扑结构的顺时针方向,则按照该顺时针方向指针路由表查找该资源节点,若确定的查找方向为从该查找节点沿该环形物理拓扑结构的逆时针方向,则按照该逆时针方向指针路由表查找该资源节点。
关于本实施例的装置中各模块实现技术方案的其他细节,可参考前述第一实施例至第四实施例的描述,此处不再赘述。
本实施例中,通过蚂蚁算法在Chord算法形成的环形逻辑拓扑结构中确定经过所有节点的最短路径的环,作为环形物理拓扑结构,使得Chord算法中物理拓扑结构与逻辑拓扑结构一致,从而提高查找资源节点的速度和效率。进一步地,在确定的环形物理拓扑结构中通过可沿顺时针方向可沿逆时针方向的双向查找机制,进一步提高查找资源节点的速度和效率。
此外,本发明实施例还提供一种计算机可读存储介质,其内存储有计算机可执行指令,上述的计算机可读存储介质例如为非易失性存储器例如光盘、硬盘、或者闪存。上述的计算机可执行指令用于让计算机或者类似的运算装置完成上述的数据处理方法中的各种操作。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭示如上,然而并非用以限定本发明,任何本领域技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

Claims (10)

1.一种资源节点查找方法,其特征在于,包括:
在预先构建的所有节点的环形逻辑拓扑结构中,通过蚂蚁算法确定最短环形路径并将其作为环形物理拓扑结构,所有节点均存有顺时针方向指针路由表和逆时针方向指针路由表;
当查找节点接收到资源的查找请求时,判断本地是否存有所述资源;
若否,则根据所述资源的资源标识符以及所述查找节点的节点标识符确定所述资源所在的资源节点的查找方向;
根据确定的查找方向,按照所述查找节点上保存的所述顺时针方向指针路由表或所述逆时针方向指针路由表查找所述资源节点;
当查找到所述资源节点时,返回查找结果。
2.根据权利要求1所述的方法,其特征在于,所述在预先构建的所有节点的环形逻辑拓扑结构中,通过蚂蚁算法确定最短环形路径并将其作为环形物理拓扑结构包括:
产生多个蚂蚁,并随机放置在所述环形逻辑拓扑结构中的节点上;
设置选路矩阵以及选路概率,使得每只蚂蚁根据设置的选路矩阵以及选路概率,选择每一步经过的节点;
当蚂蚁走过所述环形逻辑拓扑结构中的所有节点并回到出发节点时,记录蚂蚁走过的路径并计算路径长度;
在本次迭代中所有蚂蚁各自走过的路径中选择最短路径,并增加所述最短路径的信息素;
重复执行以上步骤,直至迭代次数到达预置的最大迭代次数时,确定所有迭代中蚂蚁走过所有节点的最短路径,并将确定的最短路径作为所有节点的环形物理拓扑结构。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若所有蚂蚁走过的路径中的最短路径的长度值小于预先设置的最优路径长度值,则将所述最优路径长度值更新为所述最短路值径的长度值,并记录所述最短路径。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述根据所述资源的资源标识符以及所述查找节点的节点标识符确定所述资源所在的资源节点的查找方向包括:
判断所述资源标识符与所述节点标识符之差是否大于或等于零;
若所述资源标识符与所述节点标识符之差大于或等于零,则判断所述资源标识符与所述节点标识符之差是否大于或等于所述节点标识符最大值;
若是,则确定的查找方向为从所述查找节点沿所述环形物理拓扑结构的逆时针方向,若否,则确定的查找方向为从所述查找节点沿所述环形物理拓扑结构的顺时针方向;
若所述资源标识符与所述节点标识符之差小于零,则判断所述资源标识符与所述节点标识符之差以及与所述环形物理拓扑结构上的节点最大序数之和是否大于或等于所述节点标识符最大值;
若是,则确定的查找方向为从所述查找节点沿所述环形物理拓扑结构的逆时针方向,若否,则确定的查找方向为从所述查找节点沿所述环形物理拓扑结构的顺时针方向。
5.根据权利要求4所述的方法,其特征在于,所述根据确定的查找方向,按照所述节点上保存的所述顺时针方向指针路由表或所述逆时针方向指针路由表查找所述资源节点包括:
若确定的查找方向为从所述查找节点沿所述环形物理拓扑结构的顺时针方向,则按照所述顺时针方向指针路由表查找所述资源节点,若确定的查找方向为从所述查找节点沿所述环形物理拓扑结构的逆时针方向,则按照所述逆时针方向指针路由表查找所述资源节点。
6.一种资源节点查找装置,其特征在于,包括:
第一确定模块,用于在预先构建的所有节点的环形逻辑拓扑结构中,通过蚂蚁算法确定最短环形路径并将其作为环形物理拓扑结构,所有节点均存有顺时针方向指针路由表和逆时针方向指针路由表;
判断模块,用于当查找节点接收到资源的查找请求时,判断本地是否存有所述资源;
第二确定模块,用于若所述判断模块判断本地未存有所述资源,则根据所述资源的资源标识符以及所述查找节点的节点标识符确定所述资源所在的资源节点的查找方向;
查找模块,用于根据确定的查找方向,按照所述查找节点上保存的所述顺时针方向指针路由表或所述逆时针方向指针路由表查找所述资源节点;
反馈模块,用于当查找到所述资源节点时,返回查找结果。
7.根据权利要求6所述的装置,其特征在于,所述第一确定模块包括:
放置模块,用于产生多个蚂蚁,并随机放置在所述环形逻辑拓扑结构中的节点上;
设置模块,用于设置选路矩阵以及选路概率,使得每只蚂蚁根据设置的选路矩阵以及选路概率,选择每一步经过的节点;
记录模块,用于当蚂蚁走过所述环形逻辑拓扑结构中的所有节点并回到出发节点时,记录蚂蚁走过的路径;
计算模块,用于计算蚂蚁走过的路径长度;
选择模块,用于在本次迭代中所有蚂蚁各自走过的路径中选择最短路径;
信息素模块,用于增加所述最短路径的信息素;
确定路径模块,用于直至迭代次数到达预置的最大迭代次数时,确定所有迭代中蚂蚁走过所有节点的最短路径,并将确定的最短路径作为所有节点的环形物理拓扑结构。
8.根据权利要求6或7所述的装置,其特征在于,所述装置还包括:
更新模块,用于若所有蚂蚁走过的路径中的最短路径的长度值小于预先设置的最优路径长度值,则将所述最优路径长度值更新为所述最短路值径的长度值;
所述记录单元,还用于记录所述更新模块更新后的所述最短路径。
9.根据权利要求8所述的装置,其特征在于,所述第二确定模块包括:
判断子模块,用于判断所述资源标识符与所述节点标识符之差是否大于或等于零;
所述判断子模块,还用于用户若所述资源标识符与所述节点标识符之差大于或等于零,则判断所述资源标识符与所述节点标识符之差是否大于或等于所述节点标识符最大值;
确定子模块,用于若所述判断子模块判断所述资源标识符与所述节点标识符之差大于或等于所述节点标识符最大值,则确定的查找方向为从所述查找节点沿所述环形物理拓扑结构的逆时针方向,若所述判断子模块判断所述资源标识符与所述节点标识符之差小于所述节点标识符最大值,则确定的查找方向为从所述查找节点沿所述环形物理拓扑结构的顺时针方向;
所述判断子模块,还用于若所述资源标识符与所述节点标识符之差小于零,则判断所述资源标识符与所述节点标识符之差以及与所述环形物理拓扑结构上的节点最大序数之和是否大于或等于所述节点标识符最大值;
确定子模块,还用于若所述资源标识符与所述节点标识符之差与所述节点标识符最大值之和大于或等于所述节点标识符最大值,则确定的查找方向为从所述查找节点沿所述环形物理拓扑结构的逆时针方向,若所述资源标识符与所述节点标识符之差与所述节点标识符最大值之和小于所述节点标识符最大值,则确定的查找方向为从所述查找节点沿所述环形物理拓扑结构的顺时针方向。
10.根据权利要求9所述的装置,其特征在于,
所述查找模块,还用于若确定的查找方向为从所述查找节点沿所述环形物理拓扑结构的顺时针方向,则按照所述顺时针方向指针路由表查找所述资源节点,若确定的查找方向为从所述查找节点沿所述环形物理拓扑结构的逆时针方向,则按照所述逆时针方向指针路由表查找所述资源节点。
CN201510228987.7A 2015-05-07 2015-05-07 一种资源节点查找方法及装置 Pending CN105187308A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510228987.7A CN105187308A (zh) 2015-05-07 2015-05-07 一种资源节点查找方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510228987.7A CN105187308A (zh) 2015-05-07 2015-05-07 一种资源节点查找方法及装置

Publications (1)

Publication Number Publication Date
CN105187308A true CN105187308A (zh) 2015-12-23

Family

ID=54909159

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510228987.7A Pending CN105187308A (zh) 2015-05-07 2015-05-07 一种资源节点查找方法及装置

Country Status (1)

Country Link
CN (1) CN105187308A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105681214A (zh) * 2015-12-28 2016-06-15 无锡城市云计算中心有限公司 一种大规模网络传输优化方法和系统
CN108282525A (zh) * 2018-01-22 2018-07-13 浙江省公众信息产业有限公司 基于对等网络的视频资源管理系统和方法
CN110389826A (zh) * 2018-04-20 2019-10-29 伊姆西Ip控股有限责任公司 用于处理计算任务的方法、设备和计算程序产品
CN110740148A (zh) * 2018-07-19 2020-01-31 中国移动通信集团海南有限公司 内容资源的处理方法、装置、设备和介质
CN111611343A (zh) * 2020-04-28 2020-09-01 北京智通云联科技有限公司 基于知识图谱最短路径查询的搜索系统、方法及设备
CN111639140A (zh) * 2020-06-08 2020-09-08 杭州复杂美科技有限公司 分布式数据存储方法、设备和存储介质
CN114125982A (zh) * 2021-11-10 2022-03-01 浙江大学 用于无人系统自组织网络的环定向路由算法及存储介质
CN114666260A (zh) * 2016-12-13 2022-06-24 维尔塞特公司 混合网络中的返回链路路由

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101237467A (zh) * 2008-03-06 2008-08-06 北京邮电大学 一种引入矢量定位的移动对等网络资源发现方法
CN103596235A (zh) * 2013-01-22 2014-02-19 江苏大学 一种无线传感器网络路由蚁群算法的优化方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101237467A (zh) * 2008-03-06 2008-08-06 北京邮电大学 一种引入矢量定位的移动对等网络资源发现方法
CN103596235A (zh) * 2013-01-22 2014-02-19 江苏大学 一种无线传感器网络路由蚁群算法的优化方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
张建伟 等: "基于蚁群优化算法的Chord模型", 《计算机工程》 *
张浩 等: "Dual-Chord一种更加有效的分布式哈希表", 《小型微型计算机系统》 *
王菁 等: "基于延迟敏感的双向查询Chord系统", 《小型微型计算机系统》 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105681214B (zh) * 2015-12-28 2018-11-27 无锡城市云计算中心有限公司 一种大规模网络传输优化方法和系统
CN105681214A (zh) * 2015-12-28 2016-06-15 无锡城市云计算中心有限公司 一种大规模网络传输优化方法和系统
CN114666260B (zh) * 2016-12-13 2023-11-03 维尔塞特公司 混合网络中的返回链路路由
CN114666260A (zh) * 2016-12-13 2022-06-24 维尔塞特公司 混合网络中的返回链路路由
CN108282525B (zh) * 2018-01-22 2021-03-30 浙江省公众信息产业有限公司 基于对等网络的视频资源管理系统和方法
CN108282525A (zh) * 2018-01-22 2018-07-13 浙江省公众信息产业有限公司 基于对等网络的视频资源管理系统和方法
CN110389826A (zh) * 2018-04-20 2019-10-29 伊姆西Ip控股有限责任公司 用于处理计算任务的方法、设备和计算程序产品
CN110740148B (zh) * 2018-07-19 2022-03-29 中国移动通信集团海南有限公司 内容资源的处理方法、装置、设备和介质
CN110740148A (zh) * 2018-07-19 2020-01-31 中国移动通信集团海南有限公司 内容资源的处理方法、装置、设备和介质
CN111611343A (zh) * 2020-04-28 2020-09-01 北京智通云联科技有限公司 基于知识图谱最短路径查询的搜索系统、方法及设备
CN111611343B (zh) * 2020-04-28 2023-06-16 北京智通云联科技有限公司 基于知识图谱最短路径查询的搜索系统、方法及设备
CN111639140A (zh) * 2020-06-08 2020-09-08 杭州复杂美科技有限公司 分布式数据存储方法、设备和存储介质
CN114125982A (zh) * 2021-11-10 2022-03-01 浙江大学 用于无人系统自组织网络的环定向路由算法及存储介质
CN114125982B (zh) * 2021-11-10 2023-12-01 浙江大学 用于无人系统自组织网络的环定向路由方法及存储介质

Similar Documents

Publication Publication Date Title
CN105187308A (zh) 一种资源节点查找方法及装置
Sharma et al. kROp: k-Means clustering based routing protocol for opportunistic networks
Wang et al. Indexing multi-dimensional data in a cloud system
Korzun et al. Structured peer-to-peer systems: fundamentals of hierarchical organization, routing, scaling, and security
CN108733803B (zh) 一种道路网络下多用户空间关键词查询方法
Michlmayr Ant algorithms for search in unstructured peer-to-peer networks
WO2022012576A1 (zh) 路径规划方法、装置、路径规划设备及存储介质
CN105357247A (zh) 基于分层云对等网络的多维属性云资源区间查找方法
Javadpour et al. Reinforcement learning-based slice isolation against ddos attacks in beyond 5g networks
US20190087445A1 (en) Method of facilitating distributed data search in a federated cloud and system thereof
Xu et al. Adaptive and scalable load balancing for metadata server cluster in cloud-scale file systems
Salgado Keyword-aware skyline routes search in indoor venues
Khettabi et al. Clustering and parallel indexing of big IoT data in the fog‐cloud computing level
Akdogan et al. ToSS-it: A cloud-based throwaway spatial index structure for dynamic location data
CN103345509A (zh) 获取路网上复反向最远邻居的层次分区树方法及系统
Sharma et al. A load balanced directory for distributed shared memory objects
Toda et al. Autonomous and distributed construction of locality aware skip graph
Rai et al. Load balanced distributed directories
Xue et al. Two phase enhancing replica selection in cloud storage system
Akila et al. Improved nature-inspired algorithms in cloud computing for load balancing
Ramzan et al. Enhanced Artificial Bee Colony Based Optimization for Mitigating Replication in Large Data for Internet of Things (Iot)
Tang et al. Supporting continuous skyline queries in dynamically weighted road networks
Michlmayr et al. Query routing with ants
Michlmayr et al. Applying ant-based multi-agent systems to query routing in distributed environments
Devi et al. Hybridization of K-means and harmony search method for text clustering using concept factorization

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20151223

RJ01 Rejection of invention patent application after publication