CN103701846B - 基于节点临近度估计的对等网络资源搜索优化方法 - Google Patents

基于节点临近度估计的对等网络资源搜索优化方法 Download PDF

Info

Publication number
CN103701846B
CN103701846B CN201310431043.0A CN201310431043A CN103701846B CN 103701846 B CN103701846 B CN 103701846B CN 201310431043 A CN201310431043 A CN 201310431043A CN 103701846 B CN103701846 B CN 103701846B
Authority
CN
China
Prior art keywords
node
resource
super
network
domain name
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
Application number
CN201310431043.0A
Other languages
English (en)
Other versions
CN103701846A (zh
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.)
Nupt Institute Of Big Data Research At Yancheng
Original Assignee
Nanjing Post and Telecommunication University
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 Nanjing Post and Telecommunication University filed Critical Nanjing Post and Telecommunication University
Priority to CN201310431043.0A priority Critical patent/CN103701846B/zh
Publication of CN103701846A publication Critical patent/CN103701846A/zh
Application granted granted Critical
Publication of CN103701846B publication Critical patent/CN103701846B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明是一种基于节点临近度估计的对等网络资源搜索优化方法。该方法结合了混合式分层P2P网络拓扑结构,主要用于优化P2P网络资源搜索过程,解决P2P网络逻辑拓扑与物理拓扑失配、节点异构等问题。考虑到一般情况下,各主机通常选择与物理上邻近的域名解析服务器相连,基于这一点,本发明运用余弦相似度原理公式将具有相同或相近域名解析服务器的主机根据节点临近度估计值划分到一个P2P群组内,使得P2P应用在搜索和下载资源过程中尽可能选择本地群组内部资源或物理距离较接近的资源节点,降低在域间或骨干网络上产生的不必要流量,提高资源搜索效率,促进P2P流量优化。

Description

基于节点临近度估计的对等网络资源搜索优化方法
技术领域
本发明涉及一种应用于对等网络(P2P,PeertoPeer)的基于节点临近度估计的资源搜索优化方法,具体应用在P2P网络资源搜索过程中,属于网络通信技术领域。
背景技术
近年来,互联网用户数飞速增长,P2P应用得到了空前的发展,用户数占据了互联网用户的绝大部分。在P2P促使网络空前活跃的同时,P2P流量占据了大量网络带宽,消耗了大量网络资源,导致了网络关键链路拥塞和其它互联网应用性能急剧下降。
现有研究工作表明:P2P过度消耗网络资源的重要原因之一是P2P应用在资源搜索节点选择上的随意性。这种随意性主要源于P2P网络中逻辑拓扑和实际物理拓扑的失配,在P2P网络中逻辑相邻的节点可能在物理网络中相隔很远,这就给P2P路由带来了不便。P2P路由是根据节点查询请求基于逻辑拓扑找到P2P网络中相应资源信息存储的位置,其不是基于物理拓扑实现的。事实上,局域网或自治域内节点之间的查找,在下一跳的P2P路由过程中,IP路由可能往返于局域网或自治域内外之间,不能保证每一跳的合理性。可能存在两节点逻辑距离很近、但物理距离很远的情况发生,从而可能导致部分P2P流量频繁穿越运营商网络和骨干链路,造成P2P路由效率低下,查询时延较大。
在P2P网络中,节点的异构性也是值得考虑的。一般来说,大多数P2P网络中对等节点的地位设置是平等的。然而这种平等和实际情况存在着一定的差距。事实上,P2P网络中的各节点存在普遍的差异性,每个节点在存储能力、CPU能力、网络能力以及节点在线时间长短等方面都可能存在差异。然而在大多数P2P网络中均没有考虑这些节点之间的差异,而是将所有节点都平等地看待,这样可能会引起存储负载和路由负载不均衡等一系列问题,造成对等节点负载失衡,浪费大量的可用资源。由于P2P节点的在线活动时间也存在着巨大的差异,节点频繁加入和退出可能会影响网络的稳定性。而且,当网络中节点数目达到一定数量时,网络拓扑维护以及网络中的流量超过大部分节点的最大负载极限时,很容易造成网络的突然崩溃。
因此,当前P2P网络中逻辑拓扑和实际物理拓扑失配、节点异构是亟待解决的问题,其对于提升P2P应用性能、提高网络资源搜索效率均有着重要意义。
发明内容
技术问题:本发明针对P2P网络逻辑拓扑和物理拓扑失配问题而导致路由低效与节点异构引起的负载失衡等,提出了一种混合式的分层P2P拓扑结构,更进一步,考虑到节点的实际物理地址和节点性能的差异,设计了一种基于节点临近度估计的对等网络资源搜索优化方法,将网络中的节点按照节点临近度估计值划分为不同的群组,群组之间互连构成分层分布式的P2P网络。
技术方案:这种分层分布式的P2P网络分为两层,主干网层和子网层。上层主干网由超级节点组成一个自适应的P2P网络,而下层的网络由一个超级节点,一个备份节点和若干个普通节点组成一个以本组超级节点为中心服务器的群组。实际数据存放在普通节点上,超级节点保存数据索引并负责响应本组普通节点请求。群组的划分基于节点临近度估计值,参照了节点的物理地址,使得物理地址邻近的节点被分在同一个群组内,保证了P2P网络逻辑拓扑和物理拓扑的一致性,以减少不必要的跨域流量,从而提高P2P路由效率和资源搜索效率。
为了优化P2P网络资源搜索方法,提高资源搜索效率,我们引入了一种基于节点临近度估计的对等网络资源搜索优化方法。节点临近度估计需要用到域名解析服务器的一些信息。域名解析服务器(DNS,Domain Name System)是指保存有网络中主机的域名和对应的IP地址,并具有将域名转换为IP地址功能的服务器。考虑到一般情况下,各主机通常选择与物理上邻近的DNS服务器相连,我们可将具有相同或相近DNS服务器的主机根据节点临近度估计值划分到一个群组内,使得P2P应用在搜索和下载资源过程中尽可能降低在域间或骨干网络上产生的不必要流量,促进P2P流量优化。
在超级节点的选择上,优先选择在线活动时间长、存储运算能力强的高性能节点。并且我们在超级节点中嵌入移动代理(Agent)的运行环境,使之与移动代理结合起来。移动代理是一个可以在网络中从某一主机迁移到另一主机,并且可以与其他的代理相互通信,并与网络系统上的分布式系统进行沟通及交互作用的智能代理(Intellgent Agent)软件程序。移动代理可以到远程的服务器上要求服务器执行搜寻或者直接至远程的服务器上执行所需的服务;也可以与其他的移动代理作互动与会谈,以达到分工合作的目的。移动代理的加入,减少了P2P网络路由查询的时间,提高了资源搜索效率。
一、体系结构
基于本发明的混合式分层P2P网络拓扑结构如图1所示,由三类节点组成:超级节点、普通节点和备份节点。实际数据存放在普通节点上,超级节点保存数据索引并负责响应本组普通节点的请求。超级节点中嵌有移动代理的运行环境,在数据查询过程中超级节点的移动代理之间可以进行交互、信息查询,提高P2P资源搜索效率。
·普通节点
普通节点主要用来存放数据,能在P2P网络中进行数据发布,资源搜索,请求加入网络,请求离开网络。
·超级节点
超级节点用来存放数据索引,负责响应普通节点的发布,搜索,加入,离开请求。
·备份节点
备份节点存放超级节点必要信息备份,在超级节点失效的时候能自行恢复。
二、方法流程
本发明的基于节点临近度估计的对等网络资源搜索优化方法为:当节点加入P2P网络后进行资源搜索时,利用节点临近度估计值的计算方法,选择本地群组内部资源或者物理距离较接近的资源节点,降低在域间或骨干网络上产生的不必要流量,促进P2P流量优化;主要用于解决P2P网络逻辑拓扑与物理拓扑失配、节点异构问题,其具体步骤如下:
步骤1.初始时刻,构建P2P网络,设置超级节点;
步骤2.普通节点基于节点临近度估计加入到P2P网络中相应的群组;
步骤3.普通节点向所在群组的超级节点发送数据资源搜索请求;
步骤4.超级节点接收到搜索请求后首先查询本地索引资源列表,在本群组内进行搜索,如果查询到本群组内有符合条件的资源,则直接向查询节点发送请求响应,即发送拥有该资源的节点信息;
步骤5.若本群组内尚未发现符合条件的资源,则超级节点在上层主干网上发起搜索请求;由于上层主干网是一个由超级节点组成的自适应的P2P网络,同时也是一个由移动代理组成的P2P网络,根据移动代理的自主性、协作性、移动性和智能性等特征,该超级节点中的移动代理会通过与邻居超级节点或邻近超级节点的移动代理之间进行信息交互,来进行P2P路由;
步骤6.规定一个最长查找时间T,如果在时间T内未找到符合条件的资源,则超级节点向查询节点发送数据资源搜索失败的消息,如果在时间T内查找到了符合条件的资源,若资源数目为1,则直接向查询节点发送拥有该资源的节点信息,若资源数目大于等于2,就利用节点临近度估计值的计算方法,将查询节点与这些资源节点的临近度分别进行计算,比较得出一个物理距离最接近的资源节点,发送给查询节点;
步骤7.普通查询节点收到超级节点的响应后,便向目标资源节点发起连接请求,资源搜索过程结束。
所述步骤2普通节点基于节点临近度估计加入到P2P网络中相应群组的具体过程为:
1).普通节点随机选择一个超级节点M并向它发送加入请求;
2).超级节点M收到加入请求后,不会立即进行回复,而是将请求加入节点与所有的超级节点通过节点临近度估计值的计算方法进行计算,根据计算结果得到与请求加入节点物理地址临近度的一个超级节点序列,与之物理地址最近的超级节点排在序列首部,后面依次类推;
3).在计算得出的超级节点序列中,选择与请求加入节点物理地址最接近的超级节点N1,M通过移动代理和N1进行交互,查询N1的群组中节点个数是否已满,如果未满,就让超级节点N1所在群组做好接收该普通节点的准备,如果N1的群组已满,就选择与请求加入节点物理地址次接近的超级节点N2,再进行查询,并依次类推,直到找到可以接收该普通节点的群组;
4).如果所有群组容量都达到了上限,则M向普通节点回复请求加入失败,否则,M向普通节点发送能够接收它并且与它物理地址相对较近的超级节点N,指示它向该超级节点发送加入请求;
5).普通节点收到回复后,重新向由M发送过来的超级节点N发送加入请求;
6).超级节点N向普通节点回复允许加入的消息,保存新加入节点的相关信息,将其所存放的数据资源记录在自己的数据索引项,并使群组内节点个数加一。
所述步骤6中节点临近度估计值的计算方法具体如下:
①为了估算节点A和节点B物理地址的临近度,首先通过查询得出A、B的域名解析服务器列表Ia和Ib,假设Ia={S1,S2,…,Si,…,Sm},其中S1,S2,…Si,…Sm代表Ia中不同的域名解析服务器,1,2,…i,…,m分别是不同域名解析服务器的标号且有1≤i≤m,i,m∈N+,N+为正整数,Ib={K1,K2,…Kj,…Kn},其中K1,K2,…Kj,…Kn代表Ib中不同的域名解析服务器,1,2,…j,…,n分别是不同域名解析服务器的标号且有1≤j≤n,j,n∈N+,N+为正整数;对于Ia和Ib中任意的域名解析服务器,即 其中Si代表Ia中标号为i的域名解析服务器,Kj代表Ib中标号为j的域名解析服务器,在现实环境中可能会存在A、B的域名解析服务器列表Ia和Ib中同时具有相同服务器的情况,即 能够使得Si∈Ia,Kj∈Ib且Si=Kj,其中i,j为域名解析服务器的标号,Si为Ia中标号为i的域名解析服务器,Kj为Ib中标号为j的域名解析服务器,根据A、B的域名解析服务器列表Ia和Ib可以得到A、B两节点的频率图,用二元组表示为:
FA=<(S1,1/m),(S2,1/m),…(Si,1/m),…,(Sm,1/m)>
FB=<(K1,1/n),(K2,1/n),…(Kj,1/n),…,(Kn,1/n)>
②根据以上二元组可以作出A、B两节点的频率图(ua,i)i∈Ia和(ub,i)i∈Ib,横坐标为域名解析服务器,纵坐标为所占频率,由余弦相似度的计算公式
similarity = cos ( θ ) = AB | | A | | | | B | |
把向量a=(ua,i)和向量b=(ub,i)代入上式中的A和B,就得到节点A和B的相似度为:
cos _ sim ( a , b ) = Σ i ∈ I a ( u a , i u b , i ) Σ i ∈ I a u a , i 2 Σ i ∈ I b u b , i 2
其中,分子中的i∈Ia也可变为i∈Ib,不影响最后的计算结果;
③得出计算结果后,如果节点A和节点B的相似度cos_sim(a,b)接近1,表明两节点的临近度估计值较高,即两节点的物理地址比较接近;如果节点A和节点B的相似度cos_sim(a,b)接近0,表明两节点的临近度估计值较低,即两节点的物理地址相距甚远。
有益效果:本发明提出了一种基于节点临近度估计的对等网络资源搜索优化方法,主要用于解决在P2P网络环境下,如何使逻辑拓扑和实际物理拓扑相匹配以及节点异构等问题。
通常P2P网络的设计,由于没有考虑P2P节点的逻辑地址与物理地址之间的关系,常常使得逻辑距离很近的两点物理距离却很远,导致资源搜索效率不高,查询时延普遍增大。另外,没有考虑到P2P网络中对等节点的异构性,导致节点负载失衡,严重时还会影响P2P网络的稳定性和可扩展性。本发明在深入研究探讨以上问题的基础上,提出了一种基于节点临近度估计的对等网络资源搜索优化方法,利用该方法可以保证逻辑拓扑与物理拓扑的一致性,减少查询时延,提高P2P资源搜索效率,促进P2P流量优化。另外,针对对等节点的异构特性,本发明采用了混合式的分层拓扑结构,为低性能的节点分担了负载压力,同时为高性能的节点提供了发挥潜力的空间,并在一定程度上提高了网络的稳定性和可扩展性。
附图说明
图1是根据本发明的混合式分层P2P网络拓扑结构图,主要由超级节点、普通节点和备份节点三类节点组成。
图2是普通节点请求加入P2P网络的流程图。
图3是普通节点进行数据资源搜索的流程图。
具体实施方式
在P2P网络中,节点依次执行加入网络、资源搜索、离开网络等操作,下面就不同的功能模块详细讲述。
1.节点加入模块
在初始创建P2P网络时,首先设置一些参考点,也就是最初的超级节点,这些超级节点的物理地址分布是分散而且相对平均的,邻居超级节点在物理地址上也是相近的。有了这些超级节点,就形成了最初的以物理地址划分的不同群组,每个群组都设有节点个数的上限值,以防负载过重、超级节点崩溃。新加入的普通节点可以根据与这些超级节点的节点临近度估计值选择加入不同的群组。在P2P网络创建完成运行之后,每隔一定周期会对超级节点做一次自适应的调整,即在群组内部选择一个比当前超级节点存储处理能力更强、更加稳定的节点替代当前的超级节点。
普通节点请求加入P2P网络的步骤如下,其流程图如图2所示。
步骤1.随机选择一个超级节点M并向它发送加入请求。
步骤2.超级节点M收到加入请求后,不会立即进行回复,而是将请求加入节点与所有的超级节点分别通过节点临近度估计值的计算方法进行计算,根据计算结果得到与请求加入节点物理地址临近度的一个超级节点序列,与之物理地址最近的超级节点排在序列首部,后面依次类推。
节点临近度估计值的计算方法如下:
(1)为了估算节点A和节点B物理地址的临近度,首先通过查询得出A、B的域名解析服务器列表Ia和Ib,假设Ia={S1,S2,…,Si,…,Sm},其中S1,S2,…Si,…Sm代表Ia中不同的域名解析服务器,1,2,…i,…,m分别是不同域名解析服务器的标号且有1≤i≤m,i,m∈N+,N+为正整数,Ib={K1,K2,…Kj,…Kn},其中K1,K2,…Kj,…Kn代表Ib中不同的域名解析服务器,1,2,…j,…,n分别是不同域名解析服务器的标号且有1≤j≤n,j,n∈N+,N+为正整数。对于Ia和Ib中任意的域名解析服务器,即 其中Si代表Ia中标号为i的域名解析服务器,Kj代表Ib中标号为j的域名解析服务器,在现实环境中可能会存在A、B的域名解析服务器列表Ia和Ib中同时具有相同服务器的情况,即 能够使得Si∈Ia,Kj∈Ib且Si=Kj,其中i,j为域名解析服务器的标号,Si为Ia中标号为i的域名解析服务器,Kj为Ib中标号为j的域名解析服务器,根据A、B的域名解析服务器列表Ia和Ib可以得到A、B两节点的频率图,用二元组表示为:
FA=<(S1,1/m),(S2,1/m),…(Si,1/m),…,(Sm,1/m)>
FB=<(K1,1/n),(K2,1/n),…(Kj,1/n),…,(Kn,1/n)>
(2)根据以上二元组可以作出A、B两节点的频率图(ua,i)i∈Ia和(ub,i)i∈Ib,横坐标为域名解析服务器,纵坐标为所占频率。由余弦相似度的计算公式
similarity = cos ( θ ) = AB | | A | | | | B | |
把向量a=(ua,i)和向量b=(ub,i)代入上式中的A和B,就得到节点A和B的相似度为:
cos _ sim ( a , b ) = Σ i ∈ I a ( u a , i u b , i ) Σ i ∈ I a u a , i 2 Σ i ∈ I b u b , i 2
其中,分子中的i∈Ia也可变为i∈Ib,不影响最后的计算结果。
(3)得出计算结果后,如果节点A和节点B的相似度cos_sim(a,b)接近1,表明两节点的临近度估计值较高,即两节点的物理地址比较接近;如果节点A和节点B的相似度cos_sim(a,b)接近0,表明两节点的临近度估计值较低,即两节点的物理地址相距甚远。
步骤3.在计算得出的超级节点序列中,选择与请求加入节点物理地址最接近的超级节点N1,M通过移动代理和N1进行交互,查询N1的群组中节点个数是否已满,如果未满,就让超级节点N1所在群组做好接收该普通节点的准备,如果N1的群组已满,就选择与请求加入节点物理地址次接近的超级节点N2,再进行查询,并依次类推,直到找到可以接收该普通节点的群组。
步骤4.如果所有群组容量都达到了上限,则M向普通节点回复请求加入失败,否则,M向普通节点发送能够接收它并且与它物理地址相对较近的超级节点N,指示它向该超级节点发送加入请求。
步骤5.普通节点收到回复后,重新向由M发送过来的超级节点N发送加入请求。
步骤6.超级节点N向普通节点回复允许加入的消息,保存新加入节点的相关信息,将其所存放的数据资源记录在自己的数据索引项,并使群组内节点个数加一。
备份节点按照普通节点的方式请求加入P2P网络,所不同的是,备份节点加入P2P网络后,它会自动保存超级节点的一些必要信息备份,以便在超级节点失效时能自行恢复。
2.资源搜索模块
普通节点进行数据资源搜索的步骤如下,如图3所示。
步骤1.普通节点向所在群组的超级节点发送数据资源搜索请求。
步骤2.超级节点接收到搜索请求后首先查询本地索引资源列表,在本群组内进行搜索。如果查询到本群组内有符合条件的资源,则直接向查询节点发送请求响应,即发送拥有该资源的节点信息。
步骤3.若本群组内尚未发现符合条件的资源,则超级节点在上层主干网上发起搜索请求。由于上层主干网是一个由超级节点组成的自适应的P2P网络,同时也是一个由移动代理组成的P2P网络,根据移动代理的自主性、协作性、移动性和智能性等特征,该超级节点中的移动代理会通过与邻居超级节点或邻近超级节点的移动代理之间进行信息交互,来进行P2P路由。
步骤4.规定一个最长查找时间T,如果在时间T内未找到符合条件的资源,则超级节点向查询节点发送数据资源搜索失败的消息。如果在时间T内查找到了符合条件的资源,若资源数目为1,则直接向查询节点发送拥有该资源的节点信息,若资源数目大于等于2,就利用节点临近度估计值的计算方法,将查询节点与这些资源节点的临近度分别进行计算,比较得出一个物理距离最接近的资源节点,发送给查询节点。
步骤5.普通查询节点收到超级节点的响应后,便向目标资源节点发起连接请求,资源搜索过程结束。
3.节点离开模块
P2P网络中的节点随时都可能离开。普通节点离开,只需将该节点所在群组的超级节点中保存的有关该节点的信息、数据索引项直接删除即可。若是超级节点要离开P2P网络,首先需要将该超级节点上保存维护的群组所有信息通过移动代理复制到群组内的备份节点,并通知上层超级节点组成网络中的相关超级节点修改路由表,然后由备份节点担任该群组的超级节点,原来的超级节点方可离开。
实例:
混合式分层P2P网络的拓扑结构如图1所示,它的运作主要包括节点加入、数据资源搜索、节点离开三个模块,其具体步骤如下:
步骤1.初始时刻,构建P2P网络,设置超级节点。
步骤2.超级节点收到普通节点的请求,若是请求加入P2P网络转步骤3,若对应为请求离开P2P网络操作转步骤4,若对应数据资源搜索请求操作转步骤5。
步骤3.进入普通节点请求加入P2P网络模块,流程图如图2所示,具体过程如下:
(1).普通节点随机选择一个超级节点M并向它发送加入请求。
(2).超级节点M收到加入请求后,不会立即进行回复,而是将请求加入节点与所有的超级节点通过节点临近度估计值的计算方法进行计算,根据计算结果得到与请求加入节点物理地址临近度的一个超级节点序列,与之物理地址最近的超级节点排在序列首部,后面依次类推。
节点临近度估计值的计算方法如下:
①为了估算节点A和节点B物理地址的临近度,首先通过查询得出A、B的域名解析服务器列表Ia和Ib,假设Ia={S1,S2,…,Si,…,Sm},其中S1,S2,…Si,…Sm代表Ia中不同的域名解析服务器,1,2,…i,…,m分别是不同域名解析服务器的标号且有1≤i≤m,i,m∈N+,N+为正整数,Ib={K1,K2,…Kj,…Kn},其中K1,K2,…Kj,…Kn代表Ib中不同的域名解析服务器,1,2,…j,…,n分别是不同域名解析服务器的标号且有1≤j≤n,j,n∈N+,N+为正整数。对于Ia和Ib中任意的域名解析服务器,即 其中Si代表Ia中标号为i的域名解析服务器,Kj代表Ib中标号为j的域名解析服务器,在现实环境中可能会存在A、B的域名解析服务器列表Ia和Ib中同时具有相同服务器的情况,即 能够使得Si∈Ia,Kj∈Ib且Si=Kj,其中i,j为域名解析服务器的标号,Si为Ia中标号为i的域名解析服务器,Kj为Ib中标号为j的域名解析服务器,根据A、B的域名解析服务器列表Ia和Ib可以得到A、B两节点的频率图,用二元组表示为:
FA=<(S1,1/m),(S2,1/m),…(Si,1/m),…,(Sm,1/m)>
FB=<(K1,1/n),(K2,1/n),…(Kj,1/n),…,(Kn,1/n)>
②根据以上二元组可以作出A、B两节点的频率图(ua,i)i∈Ia和(ub,i)i∈Ib,横坐标为域名解析服务器,纵坐标为所占频率,由余弦相似度的计算公式
similarity = cos ( θ ) = AB | | A | | | | B | |
把向量a=(ua,i)和向量b=(ub,i)代入上式中的A和B,就得到节点A和B的相似度为:
cos _ sim ( a , b ) = Σ i ∈ I a ( u a , i u b , i ) Σ i ∈ I a u a , i 2 Σ i ∈ I b u b , i 2
其中,分子中的i∈Ia也可变为i∈Ib,不影响最后的计算结果。
③得出计算结果后,如果节点A和节点B的相似度cos_sim(a,b)接近1,表明两节点的临近度估计值较高,即两节点的物理地址比较接近;如果节点A和节点B的相似度cos_sim(a,b)接近0,表明两节点的临近度估计值较低,即两节点的物理地址相距甚远。
(3).在计算得出的超级节点序列中,选择与请求加入节点物理地址最接近的超级节点N1,M通过移动代理和N1进行交互,查询N1的群组中节点个数是否已满,如果未满,就让超级节点N1所在群组做好接收该普通节点的准备,如果N1的群组已满,就选择与请求加入节点物理地址次接近的超级节点N2,再进行查询,并依次类推,直到找到可以接收该普通节点的群组。
(4).如果所有群组容量都达到了上限,则M向普通节点回复请求加入失败,否则,M向普通节点发送能够接收它并且与它物理地址相对较近的超级节点N,指示它向该超级节点发送加入请求。
(5).普通节点收到回复后,重新向由M发送过来的超级节点N发送加入请求。
(6).超级节点N向普通节点回复允许加入的消息,保存新加入节点的相关信息,将其所存放的数据资源记录在自己的数据索引项,并使群组内节点个数加1。
步骤4.进入普通节点请求离开P2P网络模块。普通节点离开,只需将该节点所在群组的超级节点中保存的有关该节点的信息、数据索引项直接删除即可。
步骤5.进入普通节点数据资源搜索模块,流程图如图3所示,具体过程如下:
(1).普通节点向所在群组的超级节点发送数据资源搜索请求。
(2).超级节点接收到搜索请求后首先查询本地索引资源列表,在本群组内进行搜索。如果查询到本群组内有符合条件的资源,则直接向查询节点发送请求响应,即发送拥有该资源的节点信息。
(3).若本群组内尚未发现符合条件的资源,则超级节点在上层主干网上发起搜索请求。由于上层主干网是一个由超级节点组成的自适应的P2P网络,同时也是一个由移动代理组成的P2P网络,根据移动代理的自主性、协作性、移动性和智能性等特征,该超级节点中的移动代理会通过与邻居超级节点或邻近超级节点的移动代理之间进行信息交互,来进行P2P路由。
(4).规定一个最长查找时间T,如果在时间T内未找到符合条件的资源,则超级节点向查询节点发送数据资源搜索失败的消息。如果在时间T内查找到了符合条件的资源,若资源数目为1,则直接向查询节点发送拥有该资源的节点信息,若资源数目大于等于2,就利用节点临近度估计值的计算方法,将查询节点与这些资源节点的临近度分别进行计算,比较得出一个物理距离最接近的资源节点,发送给查询节点。
(5).普通查询节点收到超级节点的响应后,便向目标资源节点发起连接请求,资源搜索过程结束。
步骤6.每隔一定周期,超级节点会进行自适应的更新调整。如果群组内部有比当前超级节点存储处理能力更强、更加稳定的节点,就用它来替代更换当前的超级节点。
步骤7.超级节点等待接收处理普通节点的请求。

Claims (3)

1.一种基于节点临近度估计的对等网络资源搜索优化方法,其特征在于:当节点加入P2P网络后进行资源搜索时,利用节点临近度估计值的计算方法,选择本地群组内部资源或者物理距离接近的资源节点,降低在域间或骨干网络上产生的不必要流量,促进P2P流量优化;主要用于解决P2P网络逻辑拓扑与物理拓扑失配、节点异构问题,其具体步骤如下:
步骤1.初始时刻,构建P2P网络,设置超级节点;
步骤2.普通节点基于节点临近度估计加入到P2P网络中相应的群组;
步骤3.普通节点向所在群组的超级节点发送数据资源搜索请求;
步骤4.超级节点接收到搜索请求后首先查询本地索引资源列表,在本群组内进行搜索,如果查询到本群组内有符合条件的资源,则直接向普通节点发送请求响应,即发送拥有该资源的节点信息;
步骤5.若本群组内尚未发现符合条件的资源,则超级节点在上层主干网上发起搜索请求;由于上层主干网是一个由超级节点组成的自适应的P2P网络,同时也是一个由移动代理组成的P2P网络,根据移动代理的自主性、协作性、移动性和智能性等特征,该超级节点中的移动代理会通过与邻居超级节点或邻近超级节点的移动代理之间进行信息交互,来进行P2P路由;
步骤6.规定一个最长查找时间T,如果在时间T内未找到符合条件的资源,则超级节点向普通节点发送数据资源搜索失败的消息,如果在时间T内查找到了符合条件的资源,若资源数目为1,则直接向普通节点发送拥有该资源的节点信息,若资源数目大于等于2,就利用节点临近度估计值的计算方法,将普通节点与这些资源节点的临近度分别进行计算,比较得出一个物理距离最接近的资源节点,发送给普通节点;
步骤7.普通节点收到超级节点的响应后,便向目标资源节点发起连接请求,资源搜索过程结束。
2.根据权利要求1所述的基于节点临近度估计的对等网络资源搜索优化方法,其特征在于,步骤2普通节点基于节点临近度估计加入到P2P网络中相应群组的具体过程为:
1).普通节点随机选择一个超级节点M并向它发送加入请求;
2).超级节点M收到加入请求后,不会立即进行回复,而是将请求加入节点与所有的超级节点通过节点临近度估计值的计算方法进行计算,根据计算结果得到与请求加入节点物理地址临近度的一个超级节点序列,与之物理地址最近的超级节点排在序列首部,后面依次类推;
3).在计算得出的超级节点序列中,选择与请求加入节点物理地址最接近的超级节点N1,M通过移动代理和N1进行交互,查询N1的群组中节点个数是否已满,如果未满,就让超级节点N1所在群组做好接收该普通节点的准备,如果N1的群组已满,就选择与请求加入节点物理地址次接近的超级节点N2,再进行查询,并依次类推,直到找到可以接收该普通节点的群组;
4).如果所有群组容量都达到了上限,则M向普通节点回复请求加入失败,否则,M向普通节点发送能够接收它并且与它物理地址相对较近的超级节点N,指示它向该超级节点发送加入请求;
5).普通节点收到回复后,重新向由M发送过来的超级节点N发送加入请求;
6).超级节点N向普通节点回复允许加入的消息,保存新加入节点的相关信息,将其所存放的数据资源记录在自己的数据索引项,并使群组内节点个数加一。
3.根据权利要求1所述的基于节点临近度估计的对等网络资源搜索优化方法,其特征在于,步骤6中节点临近度估计值的计算方法具体如下:
①为了估算节点A和节点B物理地址的临近度,首先通过查询得出A、B的域名解析服务器列表Ia和Ib,假设Ia={S1,S2,…,Si,…,Sm},其中S1,S2,…Si,…Sm代表Ia中不同的域名解析服务器,1,2,…i,…,m分别是不同域名解析服务器的标号且有1≤i≤m,i,m∈N+,N+为正整数,Ib={K1,K2,…Kj,…Kn},其中K1,K2,…Kj,…Kn代表Ib中不同的域名解析服务器,1,2,…j,…,n分别是不同域名解析服务器的标号且有1≤j≤n,j,n∈N+,N+为正整数;对于Ia和Ib中任意的域名解析服务器,即其中Si代表Ia中标号为i的域名解析服务器,Kj代表Ib中标号为j的域名解析服务器,在现实环境中可能会存在A、B的域名解析服务器列表Ia和Ib中同时具有相同服务器的情况,即能够使得Si∈Ia,Kj∈Ib且Si=Kj,其中i,j为域名解析服务器的标号,Si为Ia中标号为i的域名解析服务器,Kj为Ib中标号为j的域名解析服务器,根据A、B的域名解析服务器列表Ia和Ib可以得到A、B两节点的频率图,用二元组表示为:
FA=<(S1,1/m),(S2,1/m),…(Si,1/m),…,(Sm,1/m)>
FB=<(K1,1/n),(K2,1/n),…(Kj,1/n),…,(Kn,1/n)>
②根据以上二元组可以作出A、B两节点的频率图(ua,i)i∈Ia和(ub,i)i∈Ib,横坐标为域名解析服务器,纵坐标为所占频率,由余弦相似度的计算公式
s i m i l a r i t y = c o s ( θ ) = A B | | A | | | | B | |
把向量a=(ua,i)和向量b=(ub,i)代入上式中的A和B,就得到节点A和B的相似度为:
cos _ s i m ( a , b ) = Σ i ∈ I a ( u a , i u b , i ) Σ i ∈ I a u a , i 2 Σ i ∈ I b u b , i 2
其中,分子中的i∈Ia也可变为i∈Ib,不影响最后的计算结果;
③得出计算结果后,如果节点A和节点B的相似度cos_sim(a,b)接近1,表明两节点的临近度估计值较高,即两节点的物理地址比较接近;如果节点A和节点B的相似度cos_sim(a,b)接近0,表明两节点的临近度估计值较低,即两节点的物理地址相距甚远。
CN201310431043.0A 2013-09-18 2013-09-18 基于节点临近度估计的对等网络资源搜索优化方法 Active CN103701846B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310431043.0A CN103701846B (zh) 2013-09-18 2013-09-18 基于节点临近度估计的对等网络资源搜索优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310431043.0A CN103701846B (zh) 2013-09-18 2013-09-18 基于节点临近度估计的对等网络资源搜索优化方法

Publications (2)

Publication Number Publication Date
CN103701846A CN103701846A (zh) 2014-04-02
CN103701846B true CN103701846B (zh) 2016-09-28

Family

ID=50363242

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310431043.0A Active CN103701846B (zh) 2013-09-18 2013-09-18 基于节点临近度估计的对等网络资源搜索优化方法

Country Status (1)

Country Link
CN (1) CN103701846B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104079659B (zh) * 2014-07-14 2017-06-13 清华大学 一种基于随机代理的位置服务匿名查询系统及其使用方法
CN109743253A (zh) * 2018-12-29 2019-05-10 杭州趣链科技有限公司 一种融合地理位置的分布式哈希表路由方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101150427A (zh) * 2006-09-20 2008-03-26 腾讯科技(深圳)有限公司 一种确定归属超级节点的实现方法与系统
CN101188625A (zh) * 2007-12-26 2008-05-28 腾讯科技(深圳)有限公司 一种实现资讯内容订阅的方法及系统
CN101399713A (zh) * 2008-09-28 2009-04-01 腾讯科技(深圳)有限公司 测量网络节点邻近度的方法
CN102714665A (zh) * 2009-12-17 2012-10-03 阿尔卡特朗讯公司 用于分解对等网络并且使用分解的对等网络的方法和设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101170578B (zh) * 2007-11-30 2010-06-30 北京理工大学 基于语义相似度的层次式对等网络结构及构建方法
CN101394423B (zh) * 2008-09-27 2012-07-18 中兴通讯股份有限公司 一种媒体定位、搜索方法和系统
US8179801B2 (en) * 2009-06-09 2012-05-15 Cisco Technology, Inc. Routing-based proximity for communication networks

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101150427A (zh) * 2006-09-20 2008-03-26 腾讯科技(深圳)有限公司 一种确定归属超级节点的实现方法与系统
CN101188625A (zh) * 2007-12-26 2008-05-28 腾讯科技(深圳)有限公司 一种实现资讯内容订阅的方法及系统
CN101399713A (zh) * 2008-09-28 2009-04-01 腾讯科技(深圳)有限公司 测量网络节点邻近度的方法
CN102714665A (zh) * 2009-12-17 2012-10-03 阿尔卡特朗讯公司 用于分解对等网络并且使用分解的对等网络的方法和设备

Also Published As

Publication number Publication date
CN103701846A (zh) 2014-04-02

Similar Documents

Publication Publication Date Title
CN103347068B (zh) 一种基于代理集群网络缓存加速方法
CN109104464B (zh) 一种边缘计算环境下面向协同存储的分布式数据更新方法
CN100452734C (zh) 基于全局Internet拓扑知识的P2P应用构建方法
CN101420337A (zh) 一种资源定位的方法、装置和索引服务器
WO2009100637A1 (zh) 一种建立路由的方法和装置
Lee et al. Efficient peer-to-peer information sharing over mobile ad hoc networks
CN102075359A (zh) 一种基于网络坐标的服务器部署方法及装置
Zulhasnine et al. Towards an effective integration of cellular users to the structured peer-to-peer network
CN103701846B (zh) 基于节点临近度估计的对等网络资源搜索优化方法
CN101237467A (zh) 一种引入矢量定位的移动对等网络资源发现方法
CN102377826B (zh) 一种对等网络中冷门资源索引的优化放置方法
Shah et al. Cross-layer design to merge structured P2P networks over MANET
Sacha et al. Using aggregation for adaptive super-peer discovery on the gradient topology
Hudzia et al. Treep: A tree based p2p network architecture
CN101123610B (zh) 一种混和分布式重叠网络装置及其服务注册方法
CN103118113B (zh) 一种对等网络及其网络资源定位方法
Han Cooperative caching algorithm based on grouping nodes in mobile ad hoc networks
Moufida et al. An efficient replication scheme to increase file availability in mobile peer to peer systems
CN102035870B (zh) 无线移动网络中基于极坐标划分管理的服务发现方法
CN102055798B (zh) 基于Chord环和区域Chord环内节目收集方法
Rahmani et al. A clustering-based replication strategy for mobile P2P networks
Ye Mobile intelligence sharing based on agents in mobile peer-to-peer environment
Kamran et al. Popularity estimation in a popularity-based hybrid peer-to-peer network
Venkadeshan et al. Effective communication in P2P network by introducing GOSIP–PHE algorithms
Dahbi et al. A hierarchical architecture for distributed EPCglobal discovery services

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20140402

Assignee: Jiangsu Nanyou IOT Technology Park Ltd.

Assignor: NANJING University OF POSTS AND TELECOMMUNICATIONS

Contract record no.: 2016320000214

Denomination of invention: Peer-to-peer network resource search optimization method based on node proximity estimation

Granted publication date: 20160928

License type: Common License

Record date: 20161117

LICC Enforcement, change and cancellation of record of contracts on the licence for exploitation of a patent or utility model
EC01 Cancellation of recordation of patent licensing contract
EC01 Cancellation of recordation of patent licensing contract

Assignee: Jiangsu Nanyou IOT Technology Park Ltd.

Assignor: NANJING University OF POSTS AND TELECOMMUNICATIONS

Contract record no.: 2016320000214

Date of cancellation: 20180116

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200102

Address after: 224000 South 15 / F, intelligent Valley Science and technology building, Yannan high tech Zone, Yancheng City, Jiangsu Province

Patentee after: NUPT INSTITUTE OF BIG DATA RESEARCH AT YANCHENG

Address before: 210003 Gulou District, Jiangsu, Nanjing new model road, No. 66

Patentee before: NANJING University OF POSTS AND TELECOMMUNICATIONS

EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20140402

Assignee: Yancheng Nongfu Technology Co.,Ltd.

Assignor: NUPT INSTITUTE OF BIG DATA RESEARCH AT YANCHENG

Contract record no.: X2023980048144

Denomination of invention: A peer-to-peer network resource search optimization method based on node proximity estimation

Granted publication date: 20160928

License type: Common License

Record date: 20231127

EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20140402

Assignee: Jiangsu Yanan Information Technology Co.,Ltd.

Assignor: NUPT INSTITUTE OF BIG DATA RESEARCH AT YANCHENG

Contract record no.: X2023980049133

Denomination of invention: A peer-to-peer network resource search optimization method based on node proximity estimation

Granted publication date: 20160928

License type: Common License

Record date: 20231203

Application publication date: 20140402

Assignee: Yanmi Technology (Yancheng) Co.,Ltd.

Assignor: NUPT INSTITUTE OF BIG DATA RESEARCH AT YANCHENG

Contract record no.: X2023980049119

Denomination of invention: A peer-to-peer network resource search optimization method based on node proximity estimation

Granted publication date: 20160928

License type: Common License

Record date: 20231203