CN100518129C - 混杂式对等网络环境下的通用资源管理方法 - Google Patents
混杂式对等网络环境下的通用资源管理方法 Download PDFInfo
- Publication number
- CN100518129C CN100518129C CNB2007101687228A CN200710168722A CN100518129C CN 100518129 C CN100518129 C CN 100518129C CN B2007101687228 A CNB2007101687228 A CN B2007101687228A CN 200710168722 A CN200710168722 A CN 200710168722A CN 100518129 C CN100518129 C CN 100518129C
- Authority
- CN
- China
- Prior art keywords
- node
- resource
- strong
- peer
- over
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种混杂式对等网络环境下的通用资源管理方法,步骤为:①节点P对其所有资源进行统一描述,将上层服务的内部资源对应到通用资源描述上;②节点P加入到混杂式拓扑中,再确定自己作为强节点还是弱节点的角色;③节点P根据管理操作不同,分别进行资源发布、资源搜索或资源删除。本发明通过对资源进行通用描述标准的定义,使得资源的管理向多种基于对等网络技术的服务开放。另外,本发明通过构建分布式哈希表与延迟聚集的多解析环状拓扑相混杂的对等网络环境,实现在动态网络环境下对统一资源的有效管理。本发明利用开放式的资源管理方法支持多种服务,减少了网络带宽和节点计算能力的浪费,并保证了系统的动态性和资源搜索的有效性。
Description
技术领域
本发明属于计算机应用领域,是一种混杂式对等网络环境中的通用资源管理方法。
背景技术
对等网络技术是近年来兴起的一项利用终端桌面PC计算能力以及终端网络带宽在用户之间进行文件共享的新技术,它具有使用灵活性、可扩展性、健壮性、负载均衡等诸多优点,因此它同时也为流媒体服务、语音服务等一些网络多媒体服务的普及提供了一种良好的技术基础。基于对等网络的节点能够互相分享已有的数据而不用全部集中到单一服务器端获取数据,从而大大减轻了服务器和网络的负担。
在基于对等网络技术的服务中,数据不再从单一服务器获取,用户需要在网络中采用分布式的方法维护自己的资源并搜索想要获取的资源。目前,通过对等网络技术进行资源维护和搜索主要有两种方法:一种是利用分布式哈希表(Distributed Hash Table)有结构地组织用户节点和共享的资源,然后通过哈希算法来进行资源的发布和搜索;另一种是采用洪泛(Flooding)请求的方法,不需要以一定结构组织节点,用户在网络中利用附近的节点将消息转发,扩散资源搜索消息,直到拥有资源的节点收到消息后回复给请求者。这两种方法都存在自己的缺点:分布式哈希表方法中资源维护的开销非常大,不支持多键值搜索,并且容易受到网络动态性的影响;洪泛请求在资源搜索过程中会产生较大的网络流量,对于稀少资源的搜索效果很差。混杂式的对等网络则是一种折中方法,将网络中的节点分为弱节点和强节点两个层次,一个强节点管理一些弱节点,在强节点之间采用分布式哈希表方法维护和搜索资源,在弱节点间则采用洪泛请求的方法。
目前,基于对等网络技术的服务多采用混杂式的方法,但是这些服务本身都是封闭与独立的,彼此之间存在大量重复的资源和操作步骤,因此,对于资源维护本身,造成了网络带宽和终端节点计算能力的浪费。
发明内容
本发明的目的在于提供一种混杂式对等网络环境下的通用资源管理方法,该方法利用开放式的资源管理方法支持多种服务,减少了网络带宽和节点计算能力的浪费,并保证了系统的动态性和资源搜索的有效性。
本发明提供的混杂式对等网络环境下的通用资源管理方法,其步骤包括:
(1)节点P对自身的所有资源进行统一描述,将上层服务的内部资源对应到通用资源描述上;
(2)节点P按照下述流程加入到对等网络中:
(2.1)初始化,默认节点P为弱节点;节点P连接启动服务器,并获取路标节点列表,路标节点是预先布置在网络中不同地域的特定服务器,是用做建立网络虚拟坐标系的参照点;
(2.2)测量节点P与上述路标节点列表中各路标节点之间的网速,找到最近的路标节点LM[M],向路标节点LM[M]请求离节点P小于系统设定的延迟阈值的节点组成的列表,作为强节点列表;如果该列表中存在离节点P延迟少于延迟阈值的强节点,进入步骤(2.3),否则转入步骤(2.7);
(2.3)节点P获取的强节点列表中离节点P延迟少于延迟阈值的强节点的数目等于或多于三个时,进入步骤(2.4),否则进入步骤(2.6);
(2.4)节点P和与其最近的强节点S建立强连接,如果节点S下所挂载的弱节点数目小于等于系统指定的上限值,则节点P与节点S建立TCP强链接,并选取两个次近的强节点B1,B2作为自己的后备强节点,以UDP的通信方式保持联系,进入步骤(3),否则进入步骤(2.5);
(2.5)当节点S的挂载弱节点数目达到上述上限值时,节点S随机通知节点P或者某个挂载在S下的弱节点Q转变为强节点,进入步骤(2.7);
(2.6)检查节点P或者Q的带宽、处理能力,如果满足成为强节点的要求,进入步骤(2.7),否则转入步骤(3);
(2.7)提升节点P或者Q为强节点,该节点建立索引表,该索引表包括标识符哈希表和时间排序的双向链表,该节点与其他各强节点合作维护一张分布式哈希表,同时加入其他强节点维护的一个延迟聚集的多解析环结构拓扑;
(3)节点P根据管理操作不同,按照下述流程进行资源管理:
(3.1)判断操作类型,如果是发布/删除资源,进入步骤(3.2);如果是搜索资源,进入步骤(3.8);
(3.2)判断节点P是否为强节点,如果是,进入步骤(3.3);否则进入步骤(3.5);
(3.3)节点P在索引表中建立/删除标识符资源索引项;
(3.4)节点P在分布式哈希表中发布/删除资源,然后转入步骤(3.17);
(3.5)节点P向它的代理强节点S发送发布/删除资源请求;
(3.6)节点S收到节点P的发布/删除请求后,在索引表中建立/删除标识符资源索引项;
(3.7)节点S在分布式哈希表中发布/删除资源,然后转入步骤(3.21);
(3.8)判断节点P是否为强节点,如果是,进入步骤(3.9),否则转入步骤(3.13);
(3.9)节点P在索引表中搜索,获取搜索结果;
(3.10)节点P在延迟聚集的多解析环结构拓扑上进行扩散搜索,等待拥有该资源的其他节点的响应消息,设置等待时间;节点P在分布式哈希表中搜索,等到拥有该资源的其他节点的响应消息;
(3.11)当节点P收到响应消息时进入步骤(3.17),否则转入步骤(3.12);
(3.12)当节点P等待时间用完时进入步骤(3.17),否则转入步骤(3.11);
(3.13)节点P向它的代理节点S发送搜索资源请求;节点P进入等待搜索结果状态;节点S在索引表中搜索,获取搜索结果,并将结果告诉给节点P;
(3.14)节点S在延迟聚集的多解析环结构拓扑上进行扩散搜索,等待拥有该资源的其他节点的响应消息;节点S在分布式哈希表中搜索,等到拥有该资源的其他节点的响应消息;
(3.15)当节点S收到响应消息时,告诉节点P,进入步骤(3.17),否则转入步骤(3.16);
(3.16)当节点S设置的等待时间用完时,告诉节点P,进入步骤(3.17),否则转入步骤(3.15);
(3.17)根据用户输入,判断是否需要结束资源管理,如果需要则结束,否则,返回步骤(3.1)进行下一步资源管理操作。
本发明通过对资源进行通用描述标准的定义,使得资源的管理向多种基于对等网络技术的服务开放。另外,本发明通过构建分布式哈希表与延迟聚集的多解析环状拓扑相混杂的对等网络环境,实现在动态网络环境下对统一资源的有效管理。具体而言,本发明具有以下特点:
(1)资源管理的开放性
无论是应用于哪种服务,本发明中所管理的资源只是抽象的资源描述,而基于这些描述,包括发布、搜索、删除等管理操作产生的结果都是对资源的抽象,服务内部再对这些抽象进行反向解析得到服务内部的资源本身。因此,不同的服务不需要了解其他服务内部的资源,而是遵循同样的统一描述进行维护,从而保证了资源管理的开放性。
(2)动态性
在混杂式对等网络环境中,弱节点会和自己的管理强节点保持强连接关系,同时会选取两个后备强节点保持弱连接。如果弱节点离开系统,强连接的强节点会知道连接断开并以代理的身份动态维护资源变动状况。反过来,如果强节点离开,那么弱节点就会在得知连接断开后选取一个后备强节点作为管理者,并建立强连接。强节点自身也会在延迟聚集的多解析环状拓扑中定时和最邻近的其它强节点互通节点存活状况,如果出现强节点离开的状况,其他强节点会更新自己的环状拓扑,并在扩散资源管理消息时不再发向已离去的节点。
(3)有效性
通用资源描述的定义是开放式的,因此可扩展地支持所有服务的资源类型。另外,通过混杂式对等网络的构成和强节点的本地资源组织,实现了三级资源管理:索引表管理,延迟聚集的多解析环状拓扑管理和分布式哈希表管理,避免了对无效资源的搜索,避免了对热门资源的哈希搜索,避免了对稀缺资源的洪泛搜索,并保证资源管理的有效性。
附图说明
图1为本发明方法的主流程图
图2为本发明方法的通用资源统一描述流程;
图3为本发明方法的混杂式拓扑示意图;
图4为本发明方法的节点加入流程;
图5为本发明方法的强节点资源索引表组织图;
图6为本发明方法的资源管理流程;
图7为本发明方法的资源发布的示意图;
图8为本发明方法的资源删除的示意图;
图9为本发明方法的强节点搜索资源的示意图;
图10为本发明方法的弱节点搜索资源的示意图。
具体实施方式
本发明针对对等网络中的多种服务共有的资源管理需求,提出了一种混杂网络环境下的通用资源管理方法,下面结合附图和实例对本发明作详细的说明。
如图1所示的是本方明方法中任一个节点P的主流程图,节点P如果要在混杂室对等网络环境下进行通用资源管理,必须要经过以下几个步骤:
(1)P必须先对自身的所有资源进行统一描述(图2),将上层服务的内部资源对应到通用资源描述上;
(2)通过节点加入流程(图4),P需要加入作为整个方法下部支撑的混杂式拓扑(图3)。在加入混杂式拓扑后,节点P确定自己作为强节点还是弱节点的角色,之后再进入步骤(3);
(3)该步骤则是资源管理流程(图6)。通用资源管理的操作分别有资源发布、资源搜索与资源删除三类。
图2就是节点P对内部资源进行的统一资源描述流程。它通过提取内部资源的各项特征,包括资源的名称、内容、容量大小、所属服务的类型、标识符,再通过组合运算对应到通用资源描述的统一资源定位符、资源名称、资源类型、资源内容、内容大小、内容哈希值以及资源标签几个部分。具体实施步骤如下:
(1.1)节点P选择一个本地资源,读出该资源的名称,所属服务的类型以及容量大小;
(1.2)如果该资源容量大小大于系统设定的阀值(50兆字节),进入步骤(1.3),否则转入步骤(1.4);这个阀值是通过不断实验得到的,一个可以令系统开销与资源特征抽取准确性达到平衡的最佳经验值;
(1.3)节点P从资源内随机读取大小为系统设定阀值的部分内容,进入步骤(1.5);
(1.4)节点P读出资源的全部内容;
(1.5)节点P对读出的内容进行哈希运算,得到哈希值;
(1.6)节点P读出系统中不同服务在资源上添加的标识符;
(1.7)节点P根据资源所属于的服务以及哈希值,生成资源的统一定位符(URL);
以某一文件共享服务为例,说明统一描述的过程。统一资源定位符被定义为“文件共享(服务类型)://地址:端口/文件名”,在节点P只能发布不同名称资源的前提下,定位符可以保证全局资源的唯一性。资源名称就是文件名,资源服务类型就是文件共享,资源内容是文件在资源容量的阀值(50兆字节)以内的内容,内容大小是文件长度,内容哈希值是对资源内容进行哈希运算后的结果,资源标识符是文件的标签。
如图3所示,基于分布式哈希表与延迟聚集的多解析环结构组成的混杂式对等网络构成了通用资源管理的支撑网络。组成这个网络的终端节点分为两种,一种是强节点,如图中编号1至6的节点;另一种是弱节点,如图中编号7至9的节点。弱节点和强节点是根据终端的计算能力、网络带宽来以及在线时间来进行划分的,目的是为了让更有能力更稳定的节点承担较多的责任,增加网络的稳定性。因此,强节点的责任便是管理一部分弱节点,并代理弱节点来行使资源管理操作。在具体实施中,我们设置计算能力超过2GHZ,带宽超过1Mbps并且平均在线时长达到2小时的节点可以作为强节点。图中,弱节点7、8、9选取离它们延迟最小的强节点6作为资源管理操作的代理,并与6建立了强连接。此外,弱节点还会选取其他延迟最小的两个强节点作为后备节点,并保持弱连接,如节点9选取了强节点2和5为后备。
强节点之间通过分布式哈希表算法组织成一个大环,将节点发布资源的索引散列在环上的所有节点之中,并可依据哈希算法进行精确查找。与此同时,强节点还各自维护了一个延迟聚集的多解析环结构拓扑,用来维护周围的其他强节点并将它们按照网络延迟的不同划分在不同的环带内。(可参见专利申请“一种基于对等覆盖网络的游戏平台系统”,申请号200710052729.3)。如图3所示,节点5就在节点4的环带中。具体实施中,我们将环带边界代表的延迟分别设置成:15ms,50ms,100ms及300ms(这些环带边界的延迟阈值可以在一个可接受的范围内集体波动,但要保证其依次增大)。
而组织一个如图3所示的混杂式对等网络环境,需要节点P按照如图4所示的流程先加入整个拓扑,具体实施步骤如下:
(2.1)初始化,默认P为弱节点;
(2.2)节点P连接启动服务器,并获取路标节点列表;路标节点(Landmark)是预先布置在网络中不同地域的特定服务器,是用做建立网络虚拟坐标系的参照点;任何一个节点可以通过与他们的测速,得到一个以网络延迟为坐标值的虚拟坐标,并用这个坐标来度量该节点在网络中的位置。假设有三个坐标点A、B、C,那么P如果和它们的网络延迟分别为10毫秒、20毫秒、5毫秒,那么P的网络虚拟坐标就是(10,20,5)。如果路标节点数目越多,这个虚拟坐标的度量精度也就越高,不过考虑到路标节点的花费和坐标复杂度,实际部署的范围应该在3到7个之间。
(2.3)测量节点P与上述路标节点列表中各路标节点之间的网速,找到最近的路标节点LM[M],向路标节点LM[M]请求离节点P小于系统设定的路标阈值(其取值范围一般为300~400毫秒)的强节点列表;如果该列表中存在离节点P延迟少于延迟阈值(如设定为50毫秒)的强节点,进入步骤(2.4),否则转入步骤(2.8);
(2.4)节点P获取的列表中离节点P延迟少于延迟阈值的强节点的数目等于或多于三个时,进入步骤(2.5),否则进入步骤(2.7);
(2.5)节点P和最近的强节点S建立强连接,如果节点S下所挂载的弱节点数目小于等于上限(为系统指定值,至少为20个),则P与S建立TCP强连接,同时选取两个次近的强节点B1,B2作为自己的后备强节点,以UDP的通信方式保持联系,进入步骤(3),否则进入步骤(2.6);挑选两个后备节点是为了预防S突然离去,导致节点P的操作动荡。
(2.6)当节点S所连接的弱节点数目达到了上限,节点P或者某个连接在S下的弱节点Q会随机被通知转变为强节点,进入步骤(2.7);
(2.7)检查节点P或者Q的带宽、处理能力,如果满足成为强节点的要求(如带宽大于或等于1兆比特/秒,并且处理能力大于或等于2吉赫兹),进入步骤(2.8),否则转入步骤(3);
(2.8)提升节点P或者Q为强节点,该节点建立索引表,该索引表包括标识符哈希表和时间排序的双向链表,该节点与其它各强节点合作维护一张分布式哈希表,同时加入其他强节点维护的一个延迟聚集的多解析环结构拓扑;
这样,基于分布式哈希表与延迟聚集的多解析环结构拓扑的混杂式对等网络就能建立起来。
强节点是资源管理操作的代理者,它管理着所辖弱节点的资源信息,并且要支持发布、删除以及多种搜索的资源操作,因此对于弱节点的资源信息如何进行索引与管理需要依赖于如图5所示的数据结构。强节点的索引表依赖于统一资源描述的标识符来建立。首先将资源的各种标识符放入一张哈希表,哈希冲突的标识符项如图中的标识符1、标识符2和标识符3用拉链法解决,并将拥有某种标识符的资源索引项放入该标识符的纵向列表中。资源索引所指向的资源描述另外通过一条时间相关的双向链表来维护,被更新的资源会放入链头,这样,链尾的资源就是时间最久的,如果发生超时状况,就可以从尾部往前移除。
资源管理的流程图如图6所示,根据管理操作不同,划分为资源发布、删除与搜索三个子流程。而发布和删除两个操作由于是完全相对应的,所以流程几乎一样。强节点首先在本地的资源索引表中根据所操作资源的标识符添加资源索引(发布资源)或者移除资源索引(删除资源),然后再在分布式哈希表中对远端节点上的资源索引进行相应的添加或删除操作。而弱节点则通过向自己的代理强节点发送请求的方法,由代理强节点依次完成本地资源索引表建立/移除以及分布式哈希表添加/移除的相应操作。节点P进行资源管理的形式化描述如下:
(3.1)判断操作类型,如果是发布/删除资源,进入步骤(3.2);如果是搜索资源,进入步骤(3.8);
(3.2)判断节点P是否为强节点,如果是,进入步骤(3.3);否则进入步骤(3.5);
(3.3)节点P在索引表中建立/删除标识符资源索引项;
(3.4)节点P在分布式哈希表中发布/删除资源,然后转入步骤(3.21);
(3.5)节点P向它的代理强节点S发送发布/删除资源请求;
(3.6)节点S收到节点P的发布/删除请求后,在索引表中建立/删除标识符资源索引项;
(3.7)节点S在分布式哈希表中发布/删除资源,然后转入步骤(3.21);
(3.8)判断节点P是否为强节点,如果是,进入步骤(3.9),否则转入步骤(3.13);
(3.9)节点P在索引表中搜索,获取搜索结果;
(3.10)节点P在延迟聚集的多解析环结构拓扑上进行扩散搜索,等待拥有该资源的其他节点的响应信息,设置等待时间(为系统根据需求和承受能力决定的30秒以下的一个数值);节点P在分布式哈希表中搜索,等到拥有该资源的其他节点的响应信息;
(3.11)当节点P收到响应消息时进入步骤(3.17),否则转入步骤(3.12);
(3.12)当节点P等待时间用完时进入步骤(3.17),否则转入步骤(3.11);
(3.13)节点P向它的代理节点S发送搜索资源请求;节点P进入等待搜索结果状态;节点S在索引表中搜索,获取搜索结果,并将结果告诉给节点P;
(3.14)节点S在延迟聚集的多解析环结构拓扑上进行扩散搜索,等待拥有该资源的其他节点的响应信息;节点S在分布式哈希表中搜索,等到拥有该资源的其他节点的响应信息;
(3.15)当节点S收到响应消息时,告诉节点P,进入步骤(3.17),否则转入步骤(3.16);
(3.16)当节点S等待时间用完时,告诉节点P,进入步骤(3.17),否则转入步骤(3.15);
(3.17)根据用户输入,判断是否需要结束资源管理,如果需要则结束,否则,返回步骤(3.1)进行下一步资源管理操作。
图7和图8分别是资源发布与资源删除的示意图。图中节点1到5是强节点,其余为弱节点,图中把节点1到5连接起来的粗线代表了分布式哈希表,和强节点连接的云中的所有节点则是其管理的弱节点。图7中强节点4发布资源的过程只有两步:在本地资源索引表中发布资源,在分布式哈希表中发布资源。弱节点7发布资源的过程有三步:向其代理强节点3请求发布资源,节点3先在本地资源索引表中发布资源,再在分布式哈希表中发布资源。图8所示的通用资源删除过程与发布过程几乎一致。强节点4删除资源的过程有两步:在本地资源索引表中删除资源,在分布式哈希表中删除资源。弱节点7发布资源的过程有三布:向其连接的强节点3请求删除资源,节点3先在本地资源索引表中删除资源,再在分布式哈希表中删除资源。
图9所示的是强节点进行分布式搜索的示意图,其中节点1到5是强节点,节点12、13、14、35互相在对方的环结构拓扑上,并且所有强节点都在分布式哈希表中。节点1是搜索资源的发起者,在搜索过程中其行为如下,这即是步骤3.10和3.11的详细执行过程:
(A1)节点1向周围2,3,4三个强节点发送资源搜索请求,搜索请求包的生存时间是5;
(A2)节点2收到资源搜索请求,发现除了节点1以外没有其他强节点邻居,不继续洪范节点1的搜索请求;节点2搜索自己本地的哈希表,发现自己没有节点1要搜索的资源,不返回任何信息;
(A3)节点3收到资源搜索请求,把搜索请求包的生存时间减1,变为4,向节点5继续发送该搜索请求包;节点3搜索自己本地的资源索引表,发现自己没有节点1要搜索的资源,不返回任何信息;
(A4)节点4处理情况和(A2)相同;
(A5)节点5收到资源搜索请求,发现自己除了节点3以外没有其他强节点邻居,不继续洪泛节点1的搜索请求;节点5搜索自己本地的资源索引表,发现节点1要搜索的资源,向节点1返回搜索结果。
(A6)在分布式哈希表中,节点1通过哈希录由算法向节点3发起搜索请求,节点3无节点1要搜索的资源,继续基于哈希录由算法向节点5传播搜索请求;
(A7)节点5收到搜索请求,直接向节点1返回要搜索的资源。
图10所示的则是弱节点发起搜索请求的分布式过程,其中节点1、2、3、4、5是强节点,节点6是节点1代理的弱节点,节点12、13、14、35互相在对方的环状网络上。弱节点6搜索资源的过程如下,这即是(3.17)和(3.18)的详细执行过程:
(B1)节点6向节点1发送搜索请求,搜索请求包的生存时间是5;
(B2)节点1把搜索请求包的生存时间减1,变为4,向节点2、3、4发送资源搜索请求;节点1搜索自己本地的资源索引表,发现自己没有节点6要搜索的资源,不返回任何信息;
(B3)节点2收到资源搜索请求,发现除了节点1以外没有其他强节点邻居,不继续洪范节点6的搜索请求;节点2搜索自己本地的资源索引表,发现自己没有节点6要搜索的资源,不返回任何信息;
(B4)节点3收到资源搜索请求,把搜索请求包的生存时间减1,变为4,向节点5继续发送该搜索请求包;节点3搜索自己本地的资源索引表,发现自己没有节点6要搜索的资源,不返回任何信息;
(B5)节点4处理情况和(2)相同;
(B6)节点5收到资源搜索请求,发现自己除了节点3以外没有其他强节点邻居,不继续洪范节点6的搜索请求;节点5搜索自己本地的资源索引表,发现节点6要搜索的资源,向节点6返回搜索结果。
(B7)在分布式哈希表中,节点1向节点3发起搜索请求,节点3无节点6要搜索的资源,继续向节点5传播搜索请求;
(B8)节点5收到搜索请求,直接向节点6返回要搜索的资源。实例:
利用本发明所阐述的混杂式对等网络环境下的通用资源管理方法,实验室提供了1个启动服务器,三个路标服务器,以及10台普通PC机,每台PC按照泊松分布的规律加入拓扑组织,然后在每台PC上同时运行即时通信和文件共享两种基于对等网络技术的服务。PC机的硬件配置如下:
机器名 | CPU | 内存 | 硬盘 | 网络带宽 |
启动服务器 | PIV 2.0G | 2G | 300G | 100M |
路标服务器1 | PIV 2.0G | 2G | 40G | 100M |
路标服务器2 | PIV 2.0G | 1G | 200G | 100M |
路标服务器3 | PIV 2.0G | 1G | 200G | 100M |
PC 1-10 | PIIII 1.7G | 256M | 40G | 10M |
PC 1-10分别称为节点1、节点2......节点10。
本实例中所选用的各个常数阈值如下:资源容量阈值为50兆字节;多解析环结构拓扑的环带边界代表的延迟分别设置成15毫秒,50毫秒,100毫秒及300毫秒;路标延迟阈值为300毫秒;延迟阈值为50毫秒;强节点能挂载的弱节点数量上限为20个;成为强节点的要求是带宽大于或等于1兆比特/秒,并且处理能力大于或等于2吉赫兹;等待时间是30秒。
混杂式对等网络环境的建立及其中通用资源管理方法的实例操作如下:
(1)建立启动服务器
启动服务器在8000端口进行TCP监听,并在9000端口保持UDP准备状态。在路标服务器和终端节点启动的时候都要登陆启动服务器,启动服务器维护了一张路标服务器的表,记录了路标服务器的ID和IP地址。当客户端节点连接启动服务器的时候,启动服务器会把表内的路标节点信息返回给客户端。
(2)建立路标服务器
路标服务器在9100端口保持UDP准备状态,并在启动后连接启动服务器,启动服务器记录了路标服务器1、2、3的ID和IP地址。当终端节点启动并通过启动服务器得到路标服务器地址后,会向所有的路标服务器进行测速。路标服务器会以自己为中心,维护一个延迟聚集的多解析环结构拓扑,将测速过的强节点按照延迟维护在延迟环带中,当新的终端测速后,路标节点会在环带内寻找和新节点临近的强节点,并回复给新加入节点。
(3)终端节点的加入
某时刻,根据泊松分布的规律,启动终端节点1到节点10,加入混杂式拓扑。节点1作为第一个启动的节点,它会先通过启动服务器得到路标服务器1、2、3,测速后,发现离路标服务器2最近,并且没有回复的强节点,于是作为拓扑中的第一个节点自动提升为强节点,并在路标服务器2中登记。
后面的节点加入后,形成了如图2所示的混杂式对等网络环境,另外节点10作为弱节点由强节点5所管理。
(4)通用资源管理操作
所有的节点上都同时运行了即时通信和文件共享两种服务,即时通信服务的资源是服务的用户资料,而文件共享的资源则是文件。通过统一资源描述符的定义抽取,使通信的用户资料按照{用户ID,资源名称},{即时通信,服务类型},{昵称,资源标识符},{即时通信://用户位置/用户ID,统一资源定位符}一一对应的方式建立资源描述;文件共享的文件则按照{文件名称,资源名称},{文件共享,服务类型},{文件内容,资源内容},{文件共享://文件位置/文件名称,统一资源定位符},{文件的标签,资源标识符}的方式建立资源描述。
节点8登陆即时通信服务时,会通过弱节点资源发布过程将自己的用户资料作为通用资源,经由强节点6发布,然后根据好友列表的信息,在混杂式对等网络环境中搜索好友节点9,1,3。如果好友节点9,3上线,在混杂式的对等网络环境中则会存在他们的用户资料,他们的网络IP位置便可以被搜索到。节点9在节点6的本地索引中,节点3和节点6在同一个分布式哈希表中,当节点8通过搜索知道9和3的位置时,即时通信的服务功能便可以实现。如果节点8登出,则可以把自己的用户资料在混杂式网络环境中删除
节点1运用文件共享服务,共享一个歌星A演唱的热门歌曲B时,会将基于文件构建的通用资源统一描述发布到分布式哈希表中,同时本地也会将这个资源描述加入索引表。节点9在搜索这个歌曲时,采用了标签关键字“A”的模糊搜索。代理强节点6先在延迟聚集的多解析环结构拓扑中采用洪泛式的搜索,环中的节点1和节点2,都有歌星A这个标签标识符,节点2不只有歌曲B,还有歌曲D,节点2的环中节点3也有这个标签的资源电影C,但是节点3突然离线,在搜索过程中节点2没有把搜索请求转发给已经离线的节点3,故只返回了节点1和2的资源,歌曲B和D。
经多次测试,采用本发明所论述的混杂式对等环境下的通用资源管理方法,可以支持多种基于对等网络技术的服务,并且能够有效实现资源的发布、删除以及精确、模糊搜索,同时对于网络的动态性有很好的适应性。
Claims (2)
1、一种混杂式对等网络环境下的通用资源管理方法,其步骤包括:
(1)节点P对自身的所有资源进行统一描述,将上层服务的内部资源对应到通用资源描述上;
(2)节点P按照下述流程加入到对等网络中:
(2.1)初始化,默认节点P为弱节点;节点P连接启动服务器,并获取路标节点列表,路标节点是预先布置在网络中不同地域的特定服务器,是用做建立网络虚拟坐标系的参照点;
(2.2)测量节点P与上述路标节点列表中各路标节点之间的网速,找到最近的路标节点LM[M],向路标节点LM[M]请求离节点P小于系统设定的延迟阈值的节点组成的列表,作为强节点列表;如果该列表中存在离节点P延迟少于延迟阈值的强节点,进入步骤(2.3),否则转入步骤(2.7);
(2.3)节点P获取的强节点列表中离节点P延迟少于延迟阈值的强节点的数目等于或多于三个时,进入步骤(2.4),否则进入步骤(2.6);
(2.4)节点P和与其最近的强节点S建立强连接,如果节点S下所挂载的弱节点数目小于等于系统指定的上限值,则节点P与节点S建立TCP强链接,并选取两个次近的强节点B1,B2作为自己的后备强节点,以UDP的通信方式保持联系,进入步骤(3),否则进入步骤(2.5);
(2.5)当节点S的挂载弱节点数目达到上述上限值时,节点S随机通知节点P或者某个挂载在S下的弱节点Q转变为强节点,进入步骤(2.7);
(2.6)检查节点P或者Q的带宽、处理能力,如果满足成为强节点的要求,进入步骤(2.7),否则转入步骤(3);
(2.7)提升节点P或者Q为强节点,该节点建立索引表,该索引表包括标识符哈希表和时间排序的双向链表,该节点与其他各强节点合作维护一张分布式哈希表,同时加入其他强节点维护的一个延迟聚集的多解析环结构拓扑;
(3)节点P根据管理操作不同,按照下述流程进行资源管理:
(3.1)判断操作类型,如果是发布/删除资源,进入步骤(3.2);如果是搜索资源,进入步骤(3.8);
(3.2)判断节点P是否为强节点,如果是,进入步骤(3.3);否则进入步骤(3.5);
(3.3)节点P在索引表中建立/删除标识符资源索引项;
(3.4)节点P在分布式哈希表中发布/删除资源,然后转入步骤(3.17);
(3.5)节点P向它的代理强节点S发送发布/删除资源请求;
(3.6)节点S收到节点P的发布/删除请求后,在索引表中建立/删除标识符资源索引项;
(3.7)节点S在分布式哈希表中发布/删除资源,然后转入步骤(3.21);
(3.8)判断节点P是否为强节点,如果是,进入步骤(3.9),否则转入步骤(3.13);
(3.9)节点P在索引表中搜索,获取搜索结果;
(3.10)节点P在延迟聚集的多解析环结构拓扑上进行扩散搜索,等待拥有该资源的其他节点的响应消息,设置等待时间;节点P在分布式哈希表中搜索,等待拥有该资源的其他节点的响应消息;
(3.11)当节点P收到响应消息时进入步骤(3.17),否则转入步骤(3.12);
(3.12)当节点P等待时间用完时进入步骤(3.17),否则转入步骤(3.11);
(3.13)节点P向它的代理节点S发送搜索资源请求;节点P进入等待搜索结果状态;节点S在索引表中搜索,获取搜索结果,并将结果告诉给节点P;
(3.14)节点S在延迟聚集的多解析环结构拓扑上进行扩散搜索,等待拥有该资源的其他节点的响应消息;节点S在分布式哈希表中搜索,等到拥有该资源的其他节点的响应消息;
(3.15)当节点S收到响应消息时,告诉节点P,进入步骤(3.17),否则转入步骤(3.16);
(3.16)当节点S设置的等待时间用完时,告诉节点P,进入步骤(3.17),否则转入步骤(3.15);
(3.17)根据用户输入,判断是否需要结束资源管理,如果需要则结束,否则,返回步骤(3.1)进行下一步资源管理操作。
2、根据权利要求1所述的通用资源管理方法,其特征在于:步骤(1)按照下述步骤描述所有资源:
(1.1)节点P选择一个本地资源、读出该资源的名称、所属服务的类型以及容量大小;
(1.2)如果该资源容量大小大于系统设定的阀值,进入步骤(1.3),否则转入步骤(1.4);
(1.3)节点P从资源内随机读取大小为系统设定阀值的部分内容,进入步骤(1.5);
(1.4)节点P读出资源的全部内容;
(1.5)节点P对读出的内容进行哈希运算,得到哈希值;
(1.6)节点P读出系统中不同服务在资源上添加的标识符;
(1.7)节点P根据资源所属于的服务以及哈希值,生成资源的统一定位符。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007101687228A CN100518129C (zh) | 2007-12-10 | 2007-12-10 | 混杂式对等网络环境下的通用资源管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007101687228A CN100518129C (zh) | 2007-12-10 | 2007-12-10 | 混杂式对等网络环境下的通用资源管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101184016A CN101184016A (zh) | 2008-05-21 |
CN100518129C true CN100518129C (zh) | 2009-07-22 |
Family
ID=39449108
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2007101687228A Expired - Fee Related CN100518129C (zh) | 2007-12-10 | 2007-12-10 | 混杂式对等网络环境下的通用资源管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100518129C (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101399778B (zh) * | 2008-10-30 | 2011-08-31 | 北京邮电大学 | 一种无线对等网络中节点的组织方法及资源发现方法 |
CN101753428A (zh) * | 2008-12-16 | 2010-06-23 | 华为终端有限公司 | 实例标识的信息获取、上报方法及装置、处理系统 |
CN101938509B (zh) * | 2009-06-29 | 2015-11-25 | 日电(中国)有限公司 | 为p2p网络提供节点信息的服务器、方法及系统 |
EP2491698B1 (en) * | 2009-10-21 | 2013-07-17 | Telefonaktiebolaget LM Ericsson (publ) | Method and arrangement for locating services in a peer-to-peer network |
CN101742702B (zh) * | 2009-12-31 | 2014-03-19 | 中兴通讯股份有限公司 | 移动互联网业务共享系统及方法 |
CN101924793B (zh) * | 2010-08-17 | 2013-03-13 | 北京易视腾科技有限公司 | 基于p2p流媒体的二次编码播放方法及系统 |
CN101916295B (zh) * | 2010-08-27 | 2011-12-14 | 董方 | 基于点对点网络的互联网搜索系统和方法 |
CN102164186B (zh) * | 2011-05-31 | 2013-10-30 | 互动在线(北京)科技有限公司 | 一种实现云搜索服务的方法及系统 |
US9374420B2 (en) | 2012-12-14 | 2016-06-21 | Microsoft Technology Licensing, Llc | Content source selection in a P2P network |
US9413846B2 (en) | 2012-12-14 | 2016-08-09 | Microsoft Technology Licensing, Llc | Content-acquisition source selection and management |
US9716749B2 (en) | 2012-12-14 | 2017-07-25 | Microsoft Technology Licensing, Llc | Centralized management of a P2P network |
US10391387B2 (en) | 2012-12-14 | 2019-08-27 | Microsoft Technology Licensing, Llc | Presenting digital content item with tiered functionality |
CN106375130A (zh) * | 2016-09-28 | 2017-02-01 | 苏州迈科网络安全技术股份有限公司 | 基于Linux的智能带宽管理方法及系统 |
CN108449374B (zh) * | 2017-10-16 | 2020-08-14 | 吉林吉动盘古网络科技股份有限公司 | Web3D虚拟场景对等传输数据调度方法及平台 |
CN111369777A (zh) * | 2020-04-21 | 2020-07-03 | 深圳芯珑电子技术有限公司 | 一种低压用户用电信息采集系统的维护方法及维护系统 |
CN111629051B (zh) * | 2020-05-26 | 2021-12-03 | 北京邮电大学 | 一种用于工业互联网标识解析系统的性能优化方法及装置 |
CN114285602B (zh) * | 2021-11-26 | 2024-02-02 | 成都安恒信息技术有限公司 | 一种分布式业务安全检测方法 |
-
2007
- 2007-12-10 CN CNB2007101687228A patent/CN100518129C/zh not_active Expired - Fee Related
Non-Patent Citations (6)
Title |
---|
SemreX:一种基于语义相似度的P2P覆盖网络. 陈汉华,金海,宁小敏,袁平鹏,武浩,郭志鑫.软件学报,第17卷第5期. 2006 |
SemreX:一种基于语义相似度的P2P覆盖网络. 陈汉华,金海,宁小敏,袁平鹏,武浩,郭志鑫.软件学报,第17卷第5期. 2006 * |
一种P2P点播系统中的数据调度策略. 王福臣,金海,程斌,廖小飞.华中科技大学学报(自然科学版),第34卷第增刊 1期. 2006 |
一种P2P点播系统中的数据调度策略. 王福臣,金海,程斌,廖小飞.华中科技大学学报(自然科学版),第34卷第增刊 1期. 2006 * |
面向分布式协同设计的对等信息共享系统. 王征,刘心松,李美安.计算机工程,第33卷第4期. 2007 |
面向分布式协同设计的对等信息共享系统. 王征,刘心松,李美安.计算机工程,第33卷第4期. 2007 * |
Also Published As
Publication number | Publication date |
---|---|
CN101184016A (zh) | 2008-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100518129C (zh) | 混杂式对等网络环境下的通用资源管理方法 | |
EP2058980B1 (en) | A method, system and device for establishing a peer to peer connection in a p2p network | |
Lua et al. | A survey and comparison of peer-to-peer overlay network schemes | |
Ramanathan et al. | Finding good peers in peer-to-peer networks | |
CN101378409B (zh) | 分层对等网络的最佳操作 | |
Joseph | An extendible open source P2P simulator | |
Guerraoui et al. | Gosskip, an efficient, fault-tolerant and self organizing overlay using gossip-based construction and skip-lists principles | |
Scheideler et al. | A distributed and oblivious heap | |
Sacha et al. | Using aggregation for adaptive super-peer discovery on the gradient topology | |
CN111800516B (zh) | 一种基于p2p的物联网设备管理方法及装置 | |
Medrano-Chávez et al. | A performance comparison of Chord and Kademlia DHTs in high churn scenarios | |
Schmid et al. | Structuring unstructured peer-to-peer networks | |
CN101626336A (zh) | 一种利用信任机制提高p2p覆盖网络交互性能的方法 | |
Li et al. | A chord-based novel mobile peer-to-peer file sharing protocol | |
KR20110070447A (ko) | 데이터 분배 서비스에서 통신 참여자의 분산 발견 방법 | |
Rivière et al. | Compositional gossip: a conceptual architecture for designing gossip-based applications | |
Pietiläinen et al. | Experiments in mobile social networking | |
Sotiriadis et al. | Using self-led critical friend topology based on P2P chord algorithm for node localization within cloud communities | |
Sacha et al. | A gradient topology for master-slave replication in peer-to-peer environments | |
Zeng et al. | A novel lookup and routing protocol based on CAN for structured P2P network | |
Sethom et al. | Palma: A P2P based Architecture for Location Management | |
Adamsky et al. | Locust: Highly Concurrent DHT Experimentation Framework for Security Evaluations | |
Ktari et al. | A peer-to-peer social network overlay for efficient information retrieval and diffusion | |
Gatani et al. | Notice of Violation of IEEE Publication Principles: Reinforcement learning for P2P searching | |
Gatani et al. | Notice of Violation of IEEE Publication Principles: An adaptive routing mechanism for P2P resource discovery |
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090722 Termination date: 20111210 |