CN113810488B - 一种基于兴趣簇-热链的资源查找系统及其构建方法 - Google Patents
一种基于兴趣簇-热链的资源查找系统及其构建方法 Download PDFInfo
- Publication number
- CN113810488B CN113810488B CN202111075293.6A CN202111075293A CN113810488B CN 113810488 B CN113810488 B CN 113810488B CN 202111075293 A CN202111075293 A CN 202111075293A CN 113810488 B CN113810488 B CN 113810488B
- Authority
- CN
- China
- Prior art keywords
- node
- resource
- interest
- searching
- nodes
- 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.)
- Active
Links
- 238000010276 construction Methods 0.000 title abstract description 7
- 238000000034 method Methods 0.000 claims abstract description 60
- 230000008569 process Effects 0.000 claims abstract description 40
- 230000000750 progressive effect Effects 0.000 claims abstract description 32
- 230000006870 function Effects 0.000 claims description 28
- 230000002776 aggregation Effects 0.000 claims description 17
- 238000004220 aggregation Methods 0.000 claims description 17
- 230000007246 mechanism Effects 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 6
- 230000002457 bidirectional effect Effects 0.000 claims description 5
- 239000002243 precursor Substances 0.000 claims description 5
- 230000001960 triggered effect Effects 0.000 claims description 3
- 230000002441 reversible effect Effects 0.000 description 17
- 238000005457 optimization Methods 0.000 description 9
- 238000003860 storage Methods 0.000 description 9
- 230000009286 beneficial effect Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 230000008447 perception Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 235000008694 Humulus lupulus Nutrition 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000005304 joining Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000000275 quality assurance Methods 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000003892 spreading Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2255—Hash tables
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1059—Inter-group management mechanisms, e.g. splitting, merging or interconnection of groups
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1087—Peer-to-peer [P2P] networks using cross-functional networking aspects
- H04L67/1089—Hierarchical topologies
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种基于兴趣簇‑热链的层次递进式资源查找模型及其构建方法,所述资源查找模型是一个层次化递进式的查询结构,整个资源查找过程是一种兴趣簇内、兴趣簇间、热链、双环的层次递进式四步查找模型,其强调服务的本地提供,进行递进式资源查找。本发明是一个层次化递进式的查询结构,整个资源查找过程是一种兴趣簇内、兴趣簇间、热链、双环的层次递进式四步查找,强调了服务的本地化提供,降低用户查询等待时延,提高资源获取效率,降低骨干网流量。模型中各个域和簇可以并行工作,大大提高了系统并行工作效率,提高了网络吞吐量,使网络QoS得到保证。
Description
技术领域
本发明涉及P2P网络资源查找技术领域,尤其是涉及一种基于兴趣簇-热链的层次递进式资源查找模型及其构建方法,以有效保证网络服务质量。
背景技术
移动P2P网络资源查找是指在动态性高、资源受限的无线网络环境下,以何种方法有效地、快速地找到满足质量与数量需求的资源,同时仅花费可接受的网络通信开销、单点可接受的计算开销以及用户可接受的等待时间。由于移动P2P网络节点移动性强,网络缺乏中央控制节点,因此,网络资源的定位与查找变得更加困难。目前,移动P2P网络资源查找策略存在如下问题:
(1)拓扑失配导致的查询效率低下:
移动P2P网络资源查找策略中,移动节点的标识是通过哈希函数将节点映射到覆盖网中,由于哈希后的节点标识与节点物理位置没有相关性,很可能是物理网络相邻的两个节点,通过哈希操作后,在覆盖网上却相距甚远,产生拓扑失配问题,这就导致在资源查找时产生绕路现象,致使网络性能降低,同时又给底层物理网络带来很大负担,无法保证网络服务质量。
(2)缺乏对节点异构性的考虑:
对于移动P2P网络中各个节点在计算能力、存储空间、在线时间等方面存在着相当大的差异,现有的一些策略中没有充分考虑到节点之间的差异性,对网络节点进行相同的操作,这样往往会导致一些性能低下的节点无法胜任某些操作,因此成为网络瓶颈,而一些性能强的节点又无法充分发挥其优势,从而影响整个网络性能,无法达到用户满意的服务质量。
(3)网络抖动问题:
由于节点频繁移动、随意加入、退出网络,会使网络产生抖动问题。以Chord算法为例,当有新节点n加入时,需要更新网络中其它节点的前驱和指针表项以反映节点n的加入,把由n负责的数据对象索引传递给n,在节点的整个加入过程中,所产生的网络开销为O(logN)。最差情况下,会出现由于网络频繁调整拓扑而无法进入稳定状态,导致网络无法提供正常的服务。由此可见,节点的移动以及频繁的加入、退出,给移动P2P网络带来极大的不稳定性,导致网络的抖动。
(4)缺乏灵活有效的资源管理机制:
缺乏有效的资源管理与调整措施、忽略了资源和节点的分布规律,缺乏对节点的社会特性等特点的考量,致使系统内资源无法被充分利用,不仅导致系统产生大量低效的请求,而且会给底层物理网络带来严重的负担,产生网络性能瓶颈,网络服务质量难以得到保证。
综上所述,虽然移动P2P网络以其自组织、分布式的组网方式已经成为近年来的研究热点,但研究还处于“尽力而为”的服务提供,无法提供有质量保证的P2P服务,尤其是对于流媒体等一些实时性要求较高的业务类型,缺乏QoS保证已经成为制约移动P2P网络发展的瓶颈,因此,需要建立具有服务质量保证的移动P2P网络资源查找策略。
公开于该背景技术部分的信息仅仅旨在加深对本申请的总体背景技术的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域技术人员所公知的现有技术。
发明内容
本发明的目的在于提供一种基于兴趣簇-热链的层次递进式资源查找模型极其构建方法,以解决上述现有技术中存在的技术问题。
为解决上述技术问题,本发明提供一种基于兴趣簇-热链的层次递进式资源查找模型,所述资源查找模型是一个层次化递进式的查询结构,整个资源查找过程是一种兴趣簇内、兴趣簇间、热链、双环的层次递进式四步查找模型,其强调服务的本地提供,进行递进式资源查找。
作为一种进一步的技术方案,所述兴趣簇内的资源查找过程具体为:
1)节点n发送查询消息给本兴趣簇管理节点m;
2)兴趣簇管理节点m收到查询消息后,查看自身所保存的簇内资源索引表,如果找到,簇管理节点m将所查资源的相关信息列表返回给节点n;否则转簇间查询过程。
作为一种进一步的技术方案,所述兴趣簇间的资源查找过程具体为:
1)兴趣簇管理节点h收到簇内节点发来的查询消息,首先节点h查询自身保存的快速资源索引表:利用k个哈希函数,计算其在CBF中的k个地址;
2)节点h查询自身CBF中k个地址是否都大于0;
如果是,则定位成功,返回查询成功信息;
如果否,则节点h没有所查找的信息;
3)节点h查询自身缓存的其它兴趣簇的CBF;
查询节点h缓存的其它簇的CBF,如果在节点j的CBF中k个位置都大于0,则说明在节点j内有所查资源,节点h将消息转发给节点j;
4)将查询消息转发到下一个兴趣簇管理节点处,转步骤1);否则,转步骤5);
5)都没有成功,则返回结果为空,意味着各兴趣簇内都没有找到所查询的资源,域内查找过程结束,触发全局资源查找。
作为一种进一步的技术方案,所述热链以及双环的资源查找过程具体为:
1)当前节点n发起查询目标键值key,如果节点n的标识符正好等于查询目标键值key,则返回当前节点,查找结束;否则转步骤2);
2)如果待查目标键值key落在当前节点n和节点n的直接后继节点之间,则返回节点n的后继节点,查找结束;否则转步骤3);
3)节点n查询自身保存的热点资源热链,如果存在指向所查询键值key的热链,则返回热链信息,查找结束;否则转步骤4);
4)节点n查询自身保存的Neighbor表,包括r个前驱节点和r个后继节点,如果发现目标键值key在某一个邻居节点处,则返回该邻居节点,查找成功,返回所请求的资源索引信息给查询节点,否则进入步骤3);
5)节点n计算自身标识符与所查目标键值key的差值,判断查询方向,查询指针表,将查询消息转发到距离目标键值key最近的节点处;转步骤6);
6)重复步骤1)到步骤5),直到定位到所查资源键值key,则查找过程结束;否则转步骤7);
7)没有找到所查资源,查找过程结束。
本发明还提供一种基于兴趣簇-热链的层次递进式资源查找模型的构建方法,所述方法包括如下步骤:
1)在聚集域内,根据节点的兴趣偏好,建立多个兴趣簇;在每个兴趣簇选取一个兴趣簇管理节点,负责管理本兴趣簇的节点以及他们共享的资源;
2)建立基于计数布鲁姆过滤器的快速资源索引表;
3)建立热链模型;
4)根据体系结构模型,将各个域的超级节点提取出来,形成核心服务层;在核心服务层中,所有超级节点按照节点标识符大小,映射到一个首尾相接的环形结构中;设计新的节点指针表,在核心服务层中建立了双环结构,实现核心服务层资源的双向查询。
作为一种进一步的技术方案,步骤1)中所述兴趣簇管理节点采用轮流机制,由能力强的节点轮流担当。
作为一种进一步的技术方案,步骤2)具体为:
移动节点根据自身共享资源的关键字key,通过哈希函数,生成基于计数布鲁姆过滤器的索引信息,定期的向兴趣簇管理节点发布其共享的资源;兴趣簇管理节点将收到的簇内移动节点发来的资源索引,合并成为一张快速资源索引表,即重新生成一个计数布鲁姆过滤器,该过滤器中保存的是整个兴趣簇内节点共享资源的快速资源索引表。
作为一种进一步的技术方案,步骤3)具体为:
每个超级节点根据域内对资源的需求情况,择优与多个热点资源建立热链:每个超级节点维护一个热链表,热链表中的每一项是指向网络中某一热点资源的指针,即热链;通过该热链,能够定位到该资源的相关信息,即资源的索引信息,通过该索引信息能够根据资源的查找热度变化定期更新,从而使超级节点所维护的热链表能够反映当前的资源查询热度,从而增加热链表的命中率。
采用上述技术方案,本发明具有如下有益效果:
本发明是一个层次化递进式的查询结构,整个资源查找过程是一种兴趣簇内、兴趣簇间、热链、双环的层次递进式四步查找,强调了服务的本地化提供,降低用户查询等待时延,提高资源获取效率,降低骨干网流量。模型中各个域和簇可以并行工作,大大提高了系统并行工作效率,提高了网络吞吐量,使网络QoS得到保证。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的基于兴趣簇-热链的层次递进式资源查找模型的结构示意图;
图2为本发明实施例提供的兴趣簇内资源查找示意图;
图3为本发明实施例提供的基于计数布鲁姆过滤器的快速资源索引表;
图4为本发明实施例提供的节点N1的指针表;
图5为本发明实施例提供的双环资源查找示意图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合具体的实施方式对本发明做进一步的解释说明。
本发明提供一种基于兴趣簇-热链的层次递进式资源查找模型,所述资源查找模型是一个层次化递进式的查询结构,整个资源查找过程是一种兴趣簇内、兴趣簇间、热链、双环的层次递进式四步查找模型,其强调服务的本地提供,进行递进式资源查找。
本申请中,为了解决拓扑不一致问题,提高资源查询效率,根据节点的物理位置邻近关系,构建了拓扑感知聚集域,使得物理位置邻近的节点在覆盖层中也具有邻近特性,从而有效减少绕路等导致的系统资源过度消耗以及网络性能下降等问题。
然后,充分考虑移动P2P网络节点异构性强的网络特点,对节点性能进行区分,合理利用,在每个聚集域中选取一个稳定性高且能力强的节点作为域超级节点,负责管理本域的节点和资源。
再次,为了实现全局的资源查找与服务的协同,将各个域超级节点提取出来,形成核心服务层,这些超级节点相互协同工作,共同实现节点和资源的全局管理与查找。
本申请提出了一种基于兴趣簇-热链的层次递进式资源查找模型(HierarchicalResource Discovery Model based on and Interest-group&Hotlinks,简称HRDMIH)。HRDMIH模型主要从三个方面展开:
首先,是基于拓扑结构的优化。为了避免绕路等导致的网络性能下降,在拓扑结构上,通过改善物理拓扑与逻辑拓扑结构不一致性问题,构建具有物理拓扑感知的拓扑结构,从而使覆盖网上的消息转发在底层物理网络上产生最少的负载。
其次,是基于节点的优化。在移动P2P网络中,如果对所有节点一视同仁,则性能低的节点会成为网络性能瓶颈,因此,充分利用节点异构性的特点,让能力强的节点承担更多的责任,从而减轻性能低的节点的负载,避免瓶颈的产生。
再次,是基于资源的优化。强化资源的局部访问特性,使大部分请求访问可以在域内得到满足,极大的提高了用户数据获取效率,同时,也有效增强了核心网吞吐量。
已有研究成果表明,网络通常具有一些基本规律和访问特性,如果能够对这些规律和访问特性充分利用,对分布式应用系统的设计和优化将起着非常重要的作用,本申请所提出的HRDMIH资源查找模型主要基于以下两个网络特性:
(1)有限兴趣原则,即在整个内容分类空间中,节点感兴趣的内容集合仅占很少的分类,有限兴趣原则说明节点的兴趣是相对集中的,有限个数的爱好相同的节点就可以满足节点的大部分查询需求,因此,可以按照兴趣对节点进行分类。
(2)兴趣的局部性定律,即如果节点A拥有节点B感兴趣的某个资源,那么,节点A也很可能拥有节点B感兴趣的其它资,该定律说明根据节点兴趣组织的网络可以高效率的提高网络资源获取效率。
结合以上两种网络特性,本章提出的基于兴趣簇-热链的层次递进式资源查找模型HRDMIH,其核心思想是:提出了层次递进式资源查找方法,建立了兴趣簇内、兴趣簇间、热链、双环的4个查找层次,强调服务的本地提供,进行递进式资源查找。
首先,在拓扑感知聚集域内,根据节点的兴趣、爱好等社会属性,将兴趣相同或相近的节点聚集起来,在域内形成多个兴趣簇。在每个兴趣簇内选取一个管理节点,管理节点主要负责管理兴趣簇内的节点和资源。进行资源查找时,优先在兴趣簇内查找。
兴趣簇间提供了一种快速查找与定位方法:兴趣簇管理节点建立一个基于计数布鲁姆过滤器的簇内快速资源索引表,兴趣簇间进行资源查找时,只将查询消息路由到兴趣簇管理节点处,通过快速资源索引表,可以迅速确定簇内是否有满足条件的资源,从而大大提高资源查询效率。聚集域内资源查找通过兴趣簇和簇间快速查找方式,不但充分利用了聚集域内节点的物理邻近特性,同时考虑了节点的兴趣、爱好等社会属性,降低了资源查找时延,节省了系统带宽资源,提高资源定位效率,从而保证网络服务质量。
为了提高全局资源查找效率,本申请提出一种基于热链的快速全局资源查找方式。超级节点通过择优机制与多个热点资源建立热链,在进行资源查找时,首先查找超级节点是否保存有该资源的热链,如果有,则定位成功。通过建立的热链,既可以大大提高资源查找效率,又可以节省大量的网络带宽消耗,有利于移动P2P网络整体工作效率。
核心服务层是由各个域的超级节点组成,它们之间相互协作,实现全局资源管理和查找。本申请还提出了一种双环查询结构,进行全局资源查找。这种双环结构可以有效降低核心服务层中资源查找平均路径长度。
HRDMIH模型是一个层次化递进式的查询结构,如图1所示,整个资源查找过程是一种兴趣簇内、兴趣簇间、热链、双环的层次递进式四步查找,强调了服务的本地化提供,降低用户查询等待时延,提高资源获取效率,降低骨干网流量。HRDMIH中各个域和簇可以并行工作,大大提高了系统并行工作效率,提高了网络吞吐量,使网络QoS得到保证。
在该实施例中,作为一种进一步的技术方案,所述兴趣簇内的资源查找过程具体为:
1)节点n发送查询消息给本兴趣簇管理节点m;
2)兴趣簇管理节点m收到查询消息后,查看自身所保存的簇内资源索引表,如果找到,簇管理节点m将所查资源的相关信息列表返回给节点n;否则转簇间查询过程。
由以上查询过程可以看出,兴趣簇内采用这种集中管理方式,查询机制简单而高效,支持模糊查询,资源查找效率为O(1),即常数跳。另一方面,根据节点兴趣局部性定律可知,具有相同或相近兴趣爱好的节点之间更易发生资源交互,因此,在同一个兴趣簇的节点定位到所需资源的概率更高。这种方法有效控制查找扩散范围,节省了大量网络流量,大大提高了资源查找效率。
在该实施例中,作为一种进一步的技术方案,所述兴趣簇间的资源查找过程具体为:
1)兴趣簇管理节点h收到簇内节点发来的查询消息,首先节点h查询自身保存的快速资源索引表:利用k个哈希函数,计算其在CBF中的k个地址;
2)节点h查询自身CBF中k个地址是否都大于0;
如果是,则定位成功,返回查询成功信息;
如果否,则节点h没有所查找的信息;
3)节点h查询自身缓存的其它兴趣簇的CBF;
查询节点h缓存的其它簇的CBF,如果在节点j的CBF中k个位置都大于0,则说明在节点j内有所查资源,节点h将消息转发给节点j;
4)将查询消息转发到下一个兴趣簇管理节点处,转步骤1);否则,转步骤5);
5)都没有成功,则返回结果为空,意味着各兴趣簇内都没有找到所查询的资源,域内查找过程结束,触发全局资源查找。
在该实施例中,作为一种进一步的技术方案,所述热链以及双环的资源查找过程具体为:
1)当前节点n发起查询目标键值key,如果节点n的标识符正好等于查询目标键值key,则返回当前节点,查找结束;否则转步骤2);
2)如果待查目标键值key落在当前节点n和节点n的直接后继节点之间,则返回节点n的后继节点,查找结束;否则转步骤3);
3)节点n查询自身保存的热点资源热链,如果存在指向所查询键值key的热链,则返回热链信息,查找结束;否则转步骤4);
4)节点n查询自身保存的Neighbor表,包括r个前驱节点和r个后继节点,如果发现目标键值key在某一个邻居节点处,则返回该邻居节点,查找成功,返回所请求的资源索引信息给查询节点,否则进入步骤3);
5)节点n计算自身标识符与所查目标键值key的差值,判断查询方向,查询指针表,将查询消息转发到距离目标键值key最近的节点处;转步骤6);
6)重复步骤1)到步骤5),直到定位到所查资源键值key,则查找过程结束;否则转步骤7);
7)没有找到所查资源,查找过程结束。
本发明还提供一种基于兴趣簇-热链的层次递进式资源查找模型的构建方法,具体包括如下步骤:
步骤一:在聚集域内,根据节点的兴趣偏好,建立多个兴趣簇;在每个兴趣簇选取一个兴趣簇管理节点,负责管理本兴趣簇的节点以及他们共享的资源;具体为:
(1)兴趣簇的建立
已有研究表明,具有相同或相近兴趣爱好的节点之间更容易发生信息共享与交互,并且,节点A有节点B所需要的某个资源,根据兴趣的局部性定律可知,节点A也很有可能拥有节点B感兴趣的其它资源。因此,在聚集域内,根据节点的兴趣偏好,建立其多个兴趣簇,以达到提高资源查找效率的目的。
(2)兴趣簇管理节点
在每个兴趣簇选取一个兴趣簇管理节点,负责管理本兴趣簇的节点以及他们共享的资源,兴趣簇管理节点选择那些有着较高连接带宽、处理能力强、具有较高稳定性的节点来担当。考虑到节点负载均衡以及网络生命周期,兴趣簇管理节点可以采用轮流机制,由能力强的节点轮流担当。这种轮流担当管理节点机制,既可以避免某个节点长期担当管理节点而导致能量过度消耗而过早退出网络,又增加了网络的安全性,避免个别节点成为恶意攻击的目标节点,提高了系统的安全性。为了避免管理节点单点失效,可以采取后备管理节点机制,提高了系统的健壮性。聚集域内移动节点根据自身的兴趣偏好选择加入到一个兴趣簇,并将自己所共享的资源索引信息发送给本兴趣簇的管理节点,每个兴趣簇管理节点存储其所负责的兴趣簇共享的全部资源索引信息。
兴趣簇管理节点主要负责簇内节点和资源的管理以及簇间管理节点间的协同工作,实现簇内和簇间的资源查找功能。在兴趣簇内,簇成员节点周期性的向簇管理节点发送hello消息,兴趣簇管理节点收到更新消息后及时更新成员的在线状态、共享资源索引表。当管理节点如果没有周期性收到簇成员节点的hello消息,则认为该节点失效或离开网络,管理节点将其相关信息删除。如果簇管理节点失效,则备份管理节点自动成为本簇的管理节点。
(3)兴趣簇内资源查找过程
如图2所示,当移动节点想要加入到某一个兴趣簇时,首先要连接该兴趣簇管理节点,并将其要共享的资源信息以<key,value>对的形式发送给该兴趣簇的管理节点,其中,key是资源标识符,即资源属性通过哈希函数操作后获得的覆盖网标识符,通常是m位的二进制位串,而资源的属性可以是资源名称、内容、大小、发布者等信息或者是这些信息的组合,value是资源发布节点的相关信息。因此,兴趣簇管理节点需要维护一个簇内共享资源的索引表,保存着本簇内节点共享的资源信息,簇内共享资源索引表会随着共享资源的发布和删除而不断更新,实时反映簇内共享资源的变化情况。簇内资源查找采取这种集中管理方式,可以实现快速的簇内资源查找与定位。
兴趣簇管理节点一方面要维护所有簇内节点共享的资源索引信息,另一方面还要监控簇内移动节点的状态,例如跟踪用户所报告的连接带宽、连接时间,以及离线用户的发现等,维护这些信息的优势在于:(1)对于发现的离线用户,兴趣簇管理节点必须要将该节点所共享的资源索引信息删除,以保证资源索引表的时效性。(2)兴趣簇管理节点在发给查询节点应答消息中可以包含这些状态信息,这些信息有利于查询节点做出择优连接的决策。
下面给出兴趣簇内资源查找算法。
步骤二:建立基于计数布鲁姆过滤器的快速资源索引表;具体为:在具有拓扑匹配的聚集域内形成多个兴趣簇,簇内由簇管理节点对其节点和资源采取集中的管理方式,考虑到域内移动节点计算能力、电池电量等资源受限的特点,因此,兴趣簇管理节点不应负载过大,需要建立轻量化资源查找机制,在保证高效性的同时还要尽量少的占用节点的存储空间。因此,簇间查询提出一种基于布鲁姆过滤器的快速资源定位方法。
布鲁姆过滤器(Bloom Filter,BF)是一种二进制向量结构,通过位向量简洁地表示数据集合,每个元素通常只占用几个bit,具有很好的空间效率和时间效率,可以用于快速检测一个元素是否属于这个集合。因此,非常适合于移动P2P网络节点和带宽受限的网络应用环境。布鲁姆过滤器是由一个长度为m的位向量BF(b1,b2,…,bm)和k个哈希函数h1,h2,…,hk组成,布鲁姆过滤器就是将数据集合S={s1,s2,…,sn}通过k个哈希函数映射到长度为m的位向量BF中。通常,这k个哈希函数相互独立且函数的取值范围为{0,1,2,…,m-1}。在初始时,位向量BF中所有二进制位均为0。对于集合S中的每一个元素si(i=1,2,…,n),都用k个哈希函数将其映射到位向量BF中,在映射后的对应位上置1,其它位保持0不变。当集合S中的所有元素都插到位向量BF后,该位向量BF就称为集合S的布鲁姆过滤器,记为BF(S)。
元素插入过程分为两个步骤:
①使用k个哈希函数对集合S中的元素si(i=1,2,…n)计算其对应的哈希地址h1(si),h2(si),…,hk(si)。
②将布鲁姆过滤器对应的k个位置置位,即BF[h1(si)]=BF[h2(si)]=…=BF[hk(si)]=1,完成元素插入操作。
元素查询操作和插入操作过程相反,假设要查询元素si(i=1,2,…n)是否属于集合S,需要执行两个步骤:
①分别使用k个哈希函数对si进行哈希运算,求出相应的哈希地址,即h1(si),h2(si),…,hk(si)。
②检查布鲁姆过滤器的这k个对应位置BF[h1(si)],BF[h2(si)],…,BF[hk(si)]是否都为1。如果有一个是0,则si必定不在集合S中。如果全部是1,则si可能在集合S中,但不一定。这就是布鲁姆过滤器假阳性误判(false positive),即将不属于集合的元素误判成属于该集合中。但布鲁姆过滤器不会出现假阴性误判(false negative),即永远不会将属于集合中的元素误判为不属于集合中。
通过以上分析可以看出,布鲁姆过滤器所需空间与元素自身的大小无关,仅与元素映射到向量的位数相关,因此,可以大大节约存储空间,适合于移动P2P网络节点资源受限的情况。在移动P2P网络资源查找过程中,当有新的资源加入到兴趣簇中时,兴趣簇管理节点要能够及时插入新资源的索引,当资源离开社区时,管理节点要能够及时将该资源的索引删除,以便实时、准确的反映社区内的资源变化、更新情况。但是,由于标准布鲁姆过滤器存在一定的误判概率,并且,标准布鲁姆过滤器只支持插入和查询操作,而无法有效地支持删除操作。因此,本申请采取改进的布鲁姆过滤器,提出一种基于计数布鲁姆过滤器的快速资源索引方法,用于簇内与簇间的资源查找快速定位。
计数布鲁姆过滤器是将标准布鲁姆过滤器位向量的每一位扩展成为一个r位的计数器,即对于有n个元素的数据集合S={s1,s2,…,sn},通过k个哈希函数h1,h2,…,hk映射到由m个计数器组成的计数器向量CBF=(C1C2…Cm)中。初始时,CBF的每个计数器都为0,当元素si(i=1,2,…,n)插入时,用k个哈希函数分别对si计算求出其计数器的哈希地址,将对应的计数器加1,从而完成元素的插入。当有多个元素的哈希地址映射到同一个计数器上时,只需要将计数器自加1即可。相反的,随着资源离开,管理节点需要及时的将资源索引删除,从而实时准确地反映兴趣簇内资源状况,在进行资源索引删除时,计算出元素对应的k个计数器地址,将其计数器值进行减1运算即可。
移动节点根据自身共享资源的关键字key,通过哈希函数,生成基于计数布鲁姆过滤器的索引信息,定期的向兴趣簇管理节点发布其共享的资源,具体过程如图3所示。兴趣簇管理节点将收到的簇内移动节点发来的资源索引,合并成为一张快速资源索引表,即重新生成一个计数布鲁姆过滤器,该过滤器中保存的是整个兴趣簇内节点共享资源的快速索引表,该索引表由于具有占用存储空间小,查询快的特点,有利于资源的快速检索,同时,借助于计数器,还可以直接评估兴趣簇内与查询匹配的资源数目的多少,用以制定合适的资源选择策略。
假设计数布鲁姆过滤器共有n条索引信息,系统采用k个哈希函数,计数器个数假设为m,当这n条索引信息映射完成后,计数布鲁姆过滤器中第i个计数器counter(i)增加j次的概率为:
式(0.1)右端表达式中,第一个分量表示从nk次哈希操作中选择j次的组合数,第二个分量表示j次哈希都选中了第i个计数器的概率,第三个分量表示其它nk-j次哈希都没有选中第i个计数器的概率。则第i个计数器的值大于或等于j的概率上界为:
对于标准布鲁姆过滤器假阳性误判率最小时,k=(ln2)m/n,因此,取0≤k≤(ln2)m/n,有:
或
当计数器位数r取4时,计数器达到16时就会溢出,其溢出概率为:
可见,当计数器位数为4位时,其计数器溢出概率已经非常小,对于大多数应用来讲,计数器位数取r=4就足够了。基于以上分析,本申请中的计数布鲁姆过滤器采用4位计数器,其所需要的总的存储空间为4×m,存储空间和计数器溢出概率都很低,完全可以满足节点和应用两方面的需求。本申请所提出的基于计数布鲁姆过滤器的快速资源索引表具有占用存储空间小,节省带宽资源,并且提供了一种簇内与簇间快速资源定位的方法,因此,非常适合于移动P2P网络应用,能够大大降低域内资源查找时延,从而提高网络服务质量。
兴趣簇管理节点维护本簇内的计数布鲁姆计数器簇内快速资源索引表,由于该索引表具有空间小,查询快的特性,因此,可以通过两种方式进行簇间查询。首先,兴趣簇管理节点间定期交换彼此的簇快速资源索引表,这样查找就有很大概率会在该簇的管理节点保存的其它簇的快速资源索引表中定位成功。如果没有找到,则将查询消息转发到下一个簇管理节点。每个簇管理节点保存有自己的前驱簇管理节点和后继簇管理节点。因此,可以根据保存的后继节点信息,将查询消息转发给后继管理节点。
如果定位不成功,则将该查找信息转发到其它兴趣簇管理节点处,其它兴趣簇管理节点根据快速资源定位索引表,快速确认是否本簇内有所查找的资源,如果有,则定位成功,将相应信息返回给查询发起的兴趣簇管理节点,并最终返回给查询节点;否则,定位不成功,说明在本聚集域内范围内没有找到所需的资源,需要进行下一步全局资源定位。
下面给出兴趣簇间资源查找算法。
可以看出,本申请提出的基于计数布鲁姆过滤器的快速簇间资源定位机制,充分考虑了移动节点资源受限的特点,兴趣簇管理节点消耗的计算开销、存储开销都很小,并且能够快速、准确地完成簇间资源的查找,非常适合于移动P2P网络。
步骤三:建立热链模型;具体为:
核心服务层由各聚集域的超级节点共同形成了全网统一视图,负责全局范围内的资源查找,对于整个移动P2P网络来讲,核心服务层的工作效率直接关系到整个网络的性能,因此,如何提高核心服务层资源查找效率,降低用户请求响应时延,提高网络吞吐量是本申请所要解决的重点问题。
在移动P2P网络中,某些热点资源在一段时间内会受到较多的关注,当多个节点发起对这些热点资源的查询时,即使该资源刚刚被查询过,当新的查询到来时,仍然需要按照路由表再重新执行一次查询过程,这种对热点资源发起的重复查询,会给核心服务层带来网络资源消耗过大,用户查询等待时延过高等问题,对于那些QoS要求较高的应用,网络则无法提供具有质量保证的服务。因此,为了提高核心服务层资源查找效率,针对核心服务层网络特点,本申请提出了一种超级节点热链的资源查找方法,其核心思想是:首先,超级节点通过对资源查询请求进行统计和分析,建立热点资源集合;然后,在热点资源集合中,选择查询热度较高的资源,建立指向这些热点资源的热链。当这些资源再次被查询时,超级节点只需要查找自身保存的热链,就可以定位成功,而不需要重新再发起一轮查找过程。热链模型充分利用了网络资源访问的局部性原理,实现了热点资源的快速定位,降低了核心服务层带宽资源消耗。
基于以上论述,可以看出,热链的合理建立是提升系统性能的关键。热链建立的好,热链命中率高,则整个系统性能越好,因此,如何建立热链是关键问题,下面给出热链模型的形式化描述。
定义1假设核心服务层中超级节点集合为V={SN1,SN2,…,SNm},其中,SNi(i=1,2,…,m)表示为核心服务层中第i个超级节点。网络中全部资源集合为D={d1,d2,…,dp},其中,dk(k=1,2,…,p)表示网络中第k个资源。
定义2资源查找热度p(dk):是指对资源dk的查询次数占总查询次数的比例,即:
其中,N(dk)为对资源dk的查询次数,p为网络资源总数。
定义3热点资源:对于查找热度超过系统阈值α(0<α<1)的资源,称为热点资源,记为p(dhj)>α,dhj∈D,其中,dhj为第j个热点资源,α是热点资源系统阈值,也称为临界值。
定义4热点资源集合,热点资源的全体称为热点资源集合,即DH={dhj|p(dhj)>α,j=1,2,...,n},n为热点资源集合元素个数。
定义5热链:超级节点与热点资源之间建立的一个指针,表示超级节点指向热点资源,热链可表示为标志函数形式,即当节点SNi与热点资源dj之间存在一条热链时,L(SNi,dj)=1,SNi∈V,dj∈DH。
当节点SNi与热点资源dj之间无热链,即L(SNi,dj)=0,SNi∈V,dj∈DH。
这样,我们就得到一个热链集合:
Φ={L(SNi,dhj)i=1,2,...,m,j=1,2,...,n,SNi∈V,dhj∈DH} (0.7)
则系统优化思路为通过调节系统阈值α(0<α<1)来控制网络中热链的总量。
定义6超级节点SNi与热点资源的连接概率为r(0<r<1),r值可以根据具体应用背景而变化。
定义7对于c:V×DH→(0,∞),c(SNi,dhj)表示节点SNi到资源dhj建立一条热链的成本。则全网总的热链建立与维护成本为:
定义8对于d:V×D→(0,∞),定义节点SNi到资源dk的查找时延为d(SNi,dk),则总的资源查找时延为:
定义9定义网络中建立热链后的查找时延为d′(SNi,dk),则建立热链后总的资源查找时延为:
定义10网络资源查找总时延与建立热链后的资源查找总时延之差定义为热链收益函数:
根据以上定义,热链的建立问题就是在保证约束条件下,最大化建立热链带来的网络收益的同时,应尽量减少热链建立成本,优化目标函数为:
s.t.p(dhj)>α,j∈[1,n] (0.14)
|V|·vDH|·r=|Φ| (0.15)
L(SNi,dhj)={0,1},i∈[1,m],j∈[1,n] (0.17)
其中,式(0.12)、式(0.13)为目标优化函数,式(0.12)中,P表示建立热链所带来的总收益,优化目标是使热链建立后产生的网络总收益最大化,其中,|V|为超级节点个数,|D|为网络资源个数;式(0.13)中,C表示全网热链建立与维护总成本,优化目标为使热链建立总成本最小,|DH|为热点资源个数;式(0.14)至式(0.17)为模型约束,式(0.14)中,超过系统阈值的资源为热点资源,亦即通过调节系统阈值α以控制热点资源集合大小;式(0.15)中,|Φ|为热链总数,通过式(0.14)中系统阈值α的调节,可控制热链总数,r为超级节点与热点资源的连接概率;式(0.16)(5)表示热链总数为|Φ|;式(0.17)为热链建立标志函数L(SNi,dj)的决策空间。这是一个NP难问题,可以通过智能算法进行求解。
热链表结构是一个四元组,用Hotlink=<KeyID,Value,P,T>表示,其中,KeyID是资源的标识符,Value是该资源发布节点的相关信息,P是该资源的查询热度,T是该资源的最近访问时间。随着网络中对资源查询的热度变化,超级节点维护的热链表也是不断更新的,因此,热链表总能反映最近的网络资源需求情况,从而增加热链表的命中率,达到提高网络资源查找效率的目的。
每个超级节点根据域内对资源的需求情况,择优与多个热点资源建立热链:每个超级节点维护一个热链表,热链表中的每一项是指向网络中某一热点资源的指针(即热链),通过该热链,能够定位到该资源的相关信息(即资源的索引信息),通过该能够根据资源的查找热度变化定期更新,从而使超级节点所维护的热链表能够反映当前的资源查询热度,从而增加热链表的命中率。当进行全局资源查找时,首先查找热链表,如果命中,则本次查找成功,则直接将热链表中的资源信息返回给查询请求节点,这种情况下资源查找复杂度为O(1),从而大大提高了资源查找效率,降低了用户请求时延。热链表其本身具有结构简单、占用存储空间小等特点,使得其空间损耗和维护费用都很小,使其通过较小的成本换取整个系统性能方面的较大提升,适合于移动P2P网络特性。
下面给出资源热链查询算法。
步骤四:根据体系结构模型,将各个域的超级节点提取出来,形成核心服务层;在核心服务层中,所有超级节点按照节点标识符大小,映射到一个首尾相接的环形结构中;设计新的节点指针表,在核心服务层中建立了双环结构,实现核心服务层资源的双向查询。具体为:
为了能够在对等覆盖层中进行有效的资源定位,节点需要将其共享的资源索引信息发布到移动P2P网络中,通常采用(键值/数据)对的形式,用<key,value>表示,其中,key称为资源的键值,是资源的属性(属性可以是资源名称、内容、大小、发布者等或者它们的组合)经过一致性哈希函数计算后得到的一个二进制位串;value是资源发布节点的相关信息。因此,<key,value>对就将资源的键值及其共享节点的相关信息建立起一对一的联系。通常的基于DHT的资源查找策略,由于网络结构是平面式的,其资源查找过程是直接在全局范围内查询,因此,只需要直接将<key,value>对直接插入到资源的后继节点处即可。但在HRDMIH查找模型中,首先要在本聚集域内查找是否有请求的资源,域内节点共享的资源信息需要发布到本聚集域内,其资源发布过程为:节点首先需要将自己共享的资源发送给兴趣簇管理节点,以便兴趣簇管理节点生成一张兴趣簇内资源索引表;然后,节点通过生成自身的基于布鲁姆过滤器的快速资源索引表,并将其发送给兴趣簇管理节点,在兴趣簇间资源的快速定位时使用;当域内没有找到所请求的资源时,才会在核心服务层中进行全局范围内的查找,因此,共享资源的资源索引信息还需要发布到核心服务层中,其发布过程为:根据资源名称、关键字等属性通过哈希函数生成一个长度为m位的二进制位串,将其发布到核心服务层中,资源索引按照其键值被分配到环上顺时针方向紧随键值(包括与键值相等)的第一个节点上。
核心服务层的路由表结构及查找算法是资源查找高效率的保障,核心服务层是由每个聚集域的超级节点按照其NID的大小,首尾相连形成一个基于地理位置信息的环形结构,每个超级节点维护一张Finger表,其结构如图4所示,观察Finger表可以发现,表中每个表项是以2的指数间隔,每一跳至少覆盖标识符环上当前节点和目标节点之间剩余距离的一半。通过分析可以发现,这种Finger表结构只能沿顺时针方向进行查找,对于源节点和目的节点来说并不一定是最优路径,以图4为例,假设节点N1要查找键值为13的资源,根据资源索引在核心服务层映射规则可知,键值为13的资源索引应当保存在节点N14处。那么,根据节点N1的Finger表,将该查询消息转发到距离目标最近的节点,即节点N10处。节点N10收到转发过来的查询消息,查找其自身的Finger表发现,键值13的后继节点为节点N14,定位成功。显然,这个过程需要2跳才能定位到所要查询的资源。但是,通过观察可以发现,如果节点N1沿逆时针方向进行查询,定位到节点N14则只需要1跳就能定位成功。当网络节点和资源数较多时,可以大大减少查询跳数,提高资源查找效率。基于这一思想,在核心服务层中,通过增加一个逆向指针表,在核心服务层中建立双环结构,实现资源的双向查找。此外,在路由表中还增加一个Neighbor表,保存多个前驱和后继的邻居节点信息,进一步提高资源定位效率。
为了实现核心服务层中的资源双向查找,每个超级节点除了需要维护一个顺时方向Finger表外,还需要维护一个逆向Finger表,称之为Reverse Finger表,这两个Finger表以当前节点为中心,沿顺时针和逆时针方向对称构建。通过增加了逆向Finger表,在核心服务层中实现了双环结构,在进行资源查找时,可以通过正向环或者反向环进行查询,提高了查询效率。
超级节点路由表中包含三个信息表:即Finger表、Reverse Finger表,Neighbor表,具体定义如下:
①Finger表:Finger表共有m个表项(m为NID位数),Finger表中的各项符号及定义见表3.1所示。
表3.1节点n的Finger表中各项符号及定义
②Reverse Finger表:Reverse Finger表与正向指针表对称构造,表中各项符号及定义见表3.2所示。
③Neighbor表:为了进一步提高网络资源定位效率,在路由表中增加了节点Neighbor表。Neighbor表中保存的是当前节点的r个前驱节点和r个后继节点,其中r的取值可以根据系统容错能力确定。
表3.2节点n的ReverseFinger表中各项符号及定义
在双环结构中,首先需要判断查询资源ID与当前节点ID之间的距离,根据两者之间的距离差值,选择正向环或者逆向环进行查找。如果查询资源ID在当前节点的前半环中,则选择正向环进行查询;如果查询节点在当前节点的后半环中,则选择逆向环查询。设正向环两者距离计算公式为:d1=(KID-n+2m)mod2m。逆向环两者距离计算公式为:d2=(n-KID+2m)mod2m,当d1≤d2时,选择正向环查询,当d1>d2时,选择逆向环进行查询。在双环查询结构中,通过增加一个判断语句,节点可以选择正向环或反向环进行查询,能够减少查询消息在环上的转发次数,提高了查询效率,并节省了无线网络带宽资源消耗。为了充分利用邻居节点信息,每个节点还需要维护一张Neighbor表,保存多个前驱和多个后继,有效减少查询消息在环上的转发次数。
下面给出双环查找算法的伪代码。
下面通过一个实例来详细说明核心服务层双环结构查找过程。例如,如图5所示,当节点N1要查找资源键值为13时,通过对比节点ID和所查资源ID的差值,发现沿逆向环距离目标节点更近,因此根据ReverseFinger表项,一跳就定位到所需资源。通过增加一步判断操作,而有效地减少了网络中信息的转发次数,节省了网络带宽、节点的计算资源和电池电量,并大大降低了资源查找平均路径长度。
综上所述,本申请具有如下有益技术效果:
(1)HRDMIH模型有效解决了绕路问题,在构建对等覆盖层时,充分考虑了节点的物理邻近特性,使得物理邻近的节点在覆盖网上也具有邻近特性,从而使得移动P2P网络的逻辑拓扑尽量反映实际的物理拓扑,解决了绕路问题,提高了数据传输效率,使网络服务得到保证。
(2)HRDMIH模型实现了内容服务本地化,通过拓扑感知聚集域的划分以及所提出的资源查找策略,使得网络内容服务尽量本地化实现,有利于减少网络服务响应延迟,降低网络带宽消耗。另一方面,分级控制策略有利于减少由于节点频繁加入、退出以及移动产生的系统更新报文的数量,进一步减少网络负载。
(3)HRDMIH模型通过对节点能力进行区分,使节点能力得到充分利用,通过让稳定性高、能力强的节点在网络中承担更多的任务,从而保证了系统的稳定性,有利于提高网络整体工作性能。
(4)充分考虑节点兴趣特性,通过将兴趣爱好相同或相近的节点组织成兴趣簇,使得资源查找时可以在兴趣相似的节点处获得的可能性增大,大大缩短了资源查询路径长度,降低了用户查询时延,提高了网络服务质量。
(5)HRDMIH模型有利于提高系统的可扩展性和动态环境下的自适应能力,通过层次管理策略和节点分类提高了网络的服务质量支持,同时,与集中式结构相比,分层结构将网络功能分散化的处理方式,使得单个节点不会由于负载过重而成为系统瓶颈,网络的可管理性得到增强。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (2)
1.一种基于兴趣簇-热链的层次递进式资源查找系统,其特征在于,所述资源查找系统是一个层次化递进式的查询结构,整个资源查找过程是一种兴趣簇内、兴趣簇间、热链、双环的层次递进式四步查找模型,其强调服务的本地提供,进行递进式资源查找;
所述兴趣簇内的资源查找过程具体为:
1)节点n发送查询消息给本兴趣簇管理节点m;
2)兴趣簇管理节点m收到查询消息后,查看自身所保存的簇内资源索引表,如果找到,簇管理节点m将所查资源的相关信息列表返回给节点n;否则转簇间查询过程;
所述兴趣簇间的资源查找过程具体为:
1)兴趣簇管理节点h收到簇内节点发来的查询消息,首先节点h查询自身保存的快速资源索引表:利用k个哈希函数,计算其在计数布鲁姆过滤器,即CBF中的k个地址;
2)节点h查询自身CBF中k个地址是否都大于0;
如果是,则定位成功,返回查询成功信息;
如果否,则节点h没有所查找的信息;
3)节点h查询自身缓存的其它兴趣簇的CBF;
查询节点h缓存的其它簇的CBF,如果在节点j的CBF中k个位置都大于0,则说明在节点j内有所查资源,节点h将消息转发给节点j;
4)将查询消息转发到下一个兴趣簇管理节点处,转步骤1);否则,转步骤5);
5)都没有成功,则返回结果为空,意味着各兴趣簇内都没有找到所查询的资源,域内查找过程结束,触发全局资源查找;
所述热链以及双环的资源查找过程具体为:
1)当前节点n发起查询目标键值key,如果节点n的标识符正好等于查询目标键值key,则返回当前节点,查找结束;否则转步骤2);
2)如果待查目标键值key落在当前节点n和节点n的直接后继节点之间,则返回节点n的后继节点,查找结束;否则转步骤3);
3)节点n查询自身保存的热点资源热链,如果存在指向所查询键值key的热链,则返回热链信息,查找结束;否则转步骤4);
4)节点n查询自身保存的Neighbor表,包括r个前驱节点和r个后继节点,如果发现目标键值key在某一个邻居节点处,则返回该邻居节点,查找成功,返回所请求的资源索引信息给查询节点,否则进入步骤3);
5)节点n计算自身标识符与所查目标键值key的差值,判断查询方向,查询指针表,将查询消息转发到距离目标键值key最近的节点处;转步骤6);
6)重复步骤1)到步骤5),直到定位到所查资源键值key,则查找过程结束;否则转步骤7);
7)没有找到所查资源,查找过程结束。
2.一种权利要求1所述的基于兴趣簇-热链的层次递进式资源查找系统的构建方法,其特征在于,所述方法包括如下步骤:
1)在聚集域内,根据节点的兴趣偏好,建立多个兴趣簇;在每个兴趣簇选取一个兴趣簇管理节点,负责管理本兴趣簇的节点以及他们共享的资源;
2)建立基于计数布鲁姆过滤器的快速资源索引表;
3)建立热链模型;
4)根据体系结构模型,将各个域的超级节点提取出来,形成核心服务层;在核心服务层中,所有超级节点按照节点标识符大小,映射到一个首尾相接的环形结构中;设计新的节点指针表,在核心服务层中建立了双环结构,实现核心服务层资源的双向查询;
步骤1)中所述兴趣簇管理节点采用轮流机制,由能力强的节点轮流担当;
步骤2)具体为:
移动节点根据自身共享资源的关键字key,通过哈希函数,生成基于计数布鲁姆过滤器的索引信息,定期的向兴趣簇管理节点发布其共享的资源;兴趣簇管理节点将收到的簇内移动节点发来的资源索引,合并成为一张快速资源索引表,即重新生成一个计数布鲁姆过滤器,该过滤器中保存的是整个兴趣簇内节点共享资源的快速资源索引表;
其特征在于,步骤3)具体为:
每个超级节点根据域内对资源的需求情况,择优与多个热点资源建立热链:每个超级节点维护一个热链表,热链表中的每一项是指向网络中某一热点资源的指针,即热链;通过该热链,能够定位到该资源的相关信息,即资源的索引信息,通过该索引信息能够根据资源的查找热度变化定期更新,从而使超级节点所维护的热链表能够反映当前的资源查询热度,从而增加热链表的命中率。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111075293.6A CN113810488B (zh) | 2021-09-14 | 2021-09-14 | 一种基于兴趣簇-热链的资源查找系统及其构建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111075293.6A CN113810488B (zh) | 2021-09-14 | 2021-09-14 | 一种基于兴趣簇-热链的资源查找系统及其构建方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113810488A CN113810488A (zh) | 2021-12-17 |
CN113810488B true CN113810488B (zh) | 2023-10-24 |
Family
ID=78895295
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111075293.6A Active CN113810488B (zh) | 2021-09-14 | 2021-09-14 | 一种基于兴趣簇-热链的资源查找系统及其构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113810488B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102469115A (zh) * | 2010-11-08 | 2012-05-23 | 电子科技大学 | 一种在p2p网络中基于兴趣社区的覆盖网络搜索架构 |
CN104022892A (zh) * | 2014-03-31 | 2014-09-03 | 东莞中山大学研究院 | 一种基于用户兴趣分组的网络优化的方法 |
CN105357247A (zh) * | 2015-09-22 | 2016-02-24 | 上海理工大学 | 基于分层云对等网络的多维属性云资源区间查找方法 |
CN106612318A (zh) * | 2016-04-29 | 2017-05-03 | 四川用联信息技术有限公司 | 云计算中一种云资源的查找方法 |
CN108460121A (zh) * | 2018-01-22 | 2018-08-28 | 重庆邮电大学 | 智慧城市中时空数据小文件合并方法 |
-
2021
- 2021-09-14 CN CN202111075293.6A patent/CN113810488B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102469115A (zh) * | 2010-11-08 | 2012-05-23 | 电子科技大学 | 一种在p2p网络中基于兴趣社区的覆盖网络搜索架构 |
CN104022892A (zh) * | 2014-03-31 | 2014-09-03 | 东莞中山大学研究院 | 一种基于用户兴趣分组的网络优化的方法 |
CN105357247A (zh) * | 2015-09-22 | 2016-02-24 | 上海理工大学 | 基于分层云对等网络的多维属性云资源区间查找方法 |
CN106612318A (zh) * | 2016-04-29 | 2017-05-03 | 四川用联信息技术有限公司 | 云计算中一种云资源的查找方法 |
CN108460121A (zh) * | 2018-01-22 | 2018-08-28 | 重庆邮电大学 | 智慧城市中时空数据小文件合并方法 |
Non-Patent Citations (2)
Title |
---|
《基于小世界原理的教育资源发现策略》;马艳;刘方爱;《计算机工程与设计》;20071216;第28卷(第23期);第1-3节 * |
《无结构P2P 网络中的混合式搜索方法》;王双,禹继国;《计算机工程》;20110405;第37卷(第7期);第1-3节 * |
Also Published As
Publication number | Publication date |
---|---|
CN113810488A (zh) | 2021-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Xu et al. | Building low-maintenance expressways for p2p systems | |
Lv et al. | Can heterogeneity make gnutella scalable? | |
Doulkeridis et al. | DESENT: Decentralized and distributed semantic overlay generation in P2P networks | |
Felber et al. | Survey on load balancing in peer-to-peer distributed hash tables | |
Moeini et al. | Efficient caching for peer-to-peer service discovery in Internet of Things | |
Khodaparas et al. | A multi criteria cooperative caching scheme for internet of things | |
Saravanan et al. | An effective model for QoS assessment in data caching in MANET environments | |
CN113810488B (zh) | 一种基于兴趣簇-热链的资源查找系统及其构建方法 | |
Rahmani et al. | A comparative study of replication schemes for structured P2P networks | |
Gu et al. | A peer-to-peer architecture for context lookup | |
Alduayji et al. | PF-EdgeCache: Popularity and freshness aware edge caching scheme for NDN/IoT networks | |
Meng et al. | A P2P Network Model Based on Hierarchical Interest Clustering Algorithm. | |
Chung et al. | Direction-aware resource discovery service in large-scale grid and cloud computing | |
Wang et al. | Improving lookup performance based on kademlia | |
Gupta et al. | Cooperative data caching in MANETs and WSNs: a survey | |
Gao et al. | Distributed caching strategies in peer-to-peer systems | |
Li et al. | Semantic overlay network for grid resource discovery | |
Li et al. | rsearch: Ring-based semantic overlay for efficient recall-guaranteed search in p2p networks | |
Zhou et al. | An effective cooperative caching scheme for mobile P2P networks | |
Liu et al. | A heuristic data update mechanism in unstructured mobile P2P systems | |
Meng et al. | A traffic-efficient message forwarding approach in unstructured P2P networks | |
Lalitha | Efficient Techniques to Reduce Effects of Topology Mismatch and Heterogeneity in Unstructured P2P Networks | |
CN116346706A (zh) | 一种大规模服务网络架构的性能优化方法 | |
Jibiki et al. | Shortcut Creation for MeNW in the Consideration of Topological Structure and Message Exchanged | |
Chung et al. | Architecture and implementation of cluster-based peer-to-peer topology and its application in search. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |