基于语义相似度的层次式对等网络结构及构建方法

文档序号:7665478阅读:775来源:国知局

专利名称::基于语义相似度的层次式对等网络结构及构建方法
技术领域
:本发明涉及计算机网络
技术领域
,特别是涉及一种基于语义相似度的层次式对等网络结构及其构建方法。
背景技术
:对等(Peer-to-Peer,P2P)计算模型,作为一种新型的体系结构模型,强调用对等模式实现资源的全面共享。对等网络中的节点相互连接构成的覆盖网络(OverlayNetwork),是在物理网络层之上构建的。从覆盖网络结构上,P2P系统可以分为结构化P2P系统和非结构化P2P系统。结构化P2P系统以基于分布式哈希表(DistributedHashTable,DHT)的P2P系统为代表,如麻省理工学院设计的Chard,加州伯克利与AT&T设计的CAN,以及Tapestry,Pastry,Freenet等。基于DHT的P2P系统难以完全支持复杂的査询,在大规模的动态P2P环境下,维持系统的结构代价很高。非结构化P2P系统根据拓扑结构的集中化程度具体分为集中式、全分布式、和混合分布式三种。集中式P2P系统中有集中的索引服务器,典型代表是Napster,具有效率高的优点,但存在单点失效、带宽瓶颈、容错性低、负载不平衡等问题。全分布式P2P系统中每个P2P节点的地位相同,没有集中协调。典型的代表是Gnutella,全分布式系统没有单点失效问题,但无法保证资源发现的效率。混合分布式P2P系统是集中式结构和全分布式结构的折衷,典型代表有Kazza、FastTrack、Sun公司的研究项目ProjectJXTA2.0S叩er-PeerVirtualNetwork。这类系统利用了节点的异构性,可扩展性和性能较好,但资源定位的性能和容错性都易于受到超级节点的影响。目前覆盖网络构造主要在为了提高资源发现效率而构造特定的拓扑结构方面,主要的想法是,通过一定的分类标准,如资源类型、服务质量、可信度等对节点进行分类,根据聚类的结果将节点划分到相关领域中,从而将相似的节点组织在一起,缩减资源发现的空间,提高搜索效率。田慧蓉等人借鉴社会网络中信任关系的概念,提出了基于节点互惠能力的自适应拓扑构造协议。张骞等人在领域可信度基础上提出了一种自适应的P2P拓扑构造协议。唐九阳等人提出一种以共享和需求为目的的社区结构,但其工作孤立地考虑节点的资源和需求,存在一定的局限性。PeerIS系统中节点基于兴趣与行为相似性形成不同的簇,该方法基于非结构化网络拓扑,节点是完全对等的,没有考虑节点能力的差异。乐光学等人提出了一种基于Region多层结构P2P计算网络协议模型。但他们对中心节点的确定方法、域相似性划分依据没有提及。Brocade提出了一个基于Internet物理拓扑的分级覆盖层网络模型。LiuY等人提出了自适应的无结构化拓扑构造机制。黄道颖等人将骨干网络中的路由交换节点扩展成主动节点,所有的节点加入网络时找最近的主动节点,所构造的拓扑结构实际上就是网络路由节点的物理拓扑结构。李祖鹏等人建立起一个分层、结构化的自组织网络体系架构。但这些机制都是通过选择物理位置更近的节点作为邻居来解决P2P拓扑与底层物理网络之间的匹配问题。宋建涛等人基于CAN构造语义对等网pGroup。YinglinSun等人基于非结构化的拓扑结构,根据潜在的语义将节点分成若干语义覆盖层,节点再依据拓扑的距离(跳数)分成若干组,对于组的代表节点的确定没有考虑节点的处理能力和行为方式的不同,组和组之间采用泛洪的消息机制。SemreX系统采用基于统计的相似性度量方法计算语义相似度,生成语义拓扑网络,但是语义划分所需要依据已知的概念模型。语义覆盖网络结构中,存在的问题是分类的标准需要预先定义,不够灵活,同时也无法动态地反映P2P共享网络中的内容更替,拓扑领域的划分严重依赖于文档的归类结果。基于上述的分析,本发明提出一种基于语义相似度的层次式对等网络结构(Semantically-BasedLayeredP2PStructure,SLPS)及其构建方法。
发明内容本发明的目的是提出一种基于语义相似度的层次式对等网络结构及其构建方法。本发明的技术方案本发明提出的一种基于语义相似度的层次式对等网络结构及其构建方法是以域作为划分单位、构建三层的网络拓扑结构。依据节点的访问带宽和处理能力之间差别大的特点,将网络中的节点分为超级节点(SuperPeer)和普通节点(Peer)。超级节点由性能好、带宽较高的节点承担,除了共享自身资源、访问系统中其他资源外,还要承担维护系统正常运行的管理功能。超级节点分为一级超级节点和二级超级节点。一级超级节点位于网络结构的第一层,二级超级节点位于网络结构的第二层。普通节点可以共享自身资源和访问系统中其他资源。一级超级节点及其管理的节点集合称为域,二级超级节点及它的子节点集合称为组。依据语义相似度,将主题相似的节点组织在一起形成组,组内节点从事相似的业务,需求相近,那么对共享资源数据的访问,多数数据请求在组内就能够满足,可以极大提供资源的响应时间,使消息的扩散更具有针对性。在这个网络结构中,一级超级节点之间的关系是对等的。模型结构如图l所示。'便于说明基于语义相似度的层次式对等网络的构建方法,先给出相关定义。定义1:基于语义相似度的层次式对等网络可以称为由点集V和边集E组成的无向图G,表示为G气V,E)。节点数记为N叫VI,边数记为M叫EI。定义2:域是以一级超级节点为根节点的一棵树,它有多个分支,每个分支代表一个组。一个域内可以有多个组。组是以二级节点为根节点的一棵树,域的根节点的孩子节点是它管辖的域的二级节点。定义3:基于语义相似度的层次式对等网络模型SLPS是可抽象为一个三元组G气F,E/,T),其中F(G)^y;,/2,…,/J表示域的集合。域力(!'",2,…")的根节点,r表示一级超级节占。/、、、oEw(G)-{^,e2,...,ej表示域^的根节点/r之间形成的边的集合,e,是以和,为端点的无向边。r(G)^M2,…,^表示组的集合,"/=1,2,..?)的根节点^表示二级超级节点。定义4:设无向图G,巧,v,eV(G),e,是以巧和力为端点的无向边,则称边e,.的权为网络中节点v,和"的实际距离,记为^(v,.,v》。本发明的SLPS模型构造方法主要包括节点如何加入网络,和超级节点的备份,具体如下1.节点加入网络的方法输入图G,节点r,其中wr(G),域集合F(G)的每个域刀("1,2,…")的根节点>的集合巧。。,(G);组集合r(G)的每个组^=1,2,…")的根节点i的集合u)。输出点集(V(G),r〉的图G'。方法的步骤表达如下第一步、计算节点r与图G中一级节点的距离,得出最小距离c/(r,。)和次短距离d(r,),即min"(r,巧),min"0%。;计算节点1"与图0中二级节点的距离,得出最小距离命,0,即"(^》="0%~)。第二步、如果节点r是一级超级节点,将边(r力)和(r,r,)加入到边集&中得&,即£/—将由r节点构成的树加入到域集合F中得F',即尸'—FU{r};转到第五步。第三步、如果节点r是二级超级节点,将r作为。的子节点,将由节点r构成的组加入々所在的域内;转到第五步。第四步、如果节点r是普通节点,将r申请加入rt所辖的组内;计算语义相似度sz'm!7an'^(。v)=mins/mZ/ar^(r,v,.),(r(。表示节点r,所在的v,Er(r,)组)将r作为v的子节点,加入以v为根的树中。第五步、返回图G'。2.语义相似度的计算方法利用向量空间模型(vectorspacemodel,VSM)进行两个字符串之间相似度的计算。节点关键字A和查询的关键字s之间的相似度通过计算两个字符串向量的夹角余弦进行衡量,具体公式为w(W)为词项t在字符串s中的权重,4,0=log(,/s,+l).logd+l)'水其中(^是t在字符串s中出现的频率,N为所有字符串数,《是出现词项t的所有字符串数。3.超级节点备份方法为了保证网络模型的鲁棒性,避免超级节点失效或离开,超级节点所管辖的域或组无法正常工作,采取超级节点的备份方法。基本思想是当超级节点失效或离开,确定超级节点的若干备份节点,保持备份节点的管理信息与超级节点一致,超级节点的备份节点承担超级节点的工作,保证系统的健壮性。一级超级节点的备份节点在域间选择距离近且节点度数小的邻居节点担当;二级超级节点的备份节点在组内选择,即在子节点内选择备份节点。二级超级节点的备份节点的选取可以依据这样的规则计算组内其他节点对这个节点的访问费用,选出n个(n—般为23个)费用低的节点作为备份节点。费用计算模型如下-。=2尸"乃其中yt为组内普通节点个数,7;为第/个节点到达当前节点的跳数,《为第/个节点访问当前节点的频率,。为第y个节点的访问费用。备份节点选出后,超级节点会定期把域内管理信息发送给备份节点,保持备份节点的管理信息与超级节点一致。当发现一级超级节点离开或失效后,备份节点(其他一级超级节点)接管该超级节点下的所有节点,并通知下属域内的所有二级超级节点;当发现二级超级节点离开或失效后,启用备份节点,备份节点向组内发送广播,通知组内所有节点,并且备份节点与原二级超级节点的父节点建立连接,替代原来超级节点。有益效果基于语义相似度的层次式对等网络结构及构建方法有如下优点-(1)减少了资源搜索的时间和带宽消耗本发明提出的网络结构将资源的搜索分解到更小的域中进行,而各个域中的超级结点拥有指向域内各结点的索引信息,相比较其他拓扑模型,它的搜索更加快速,高效。(2)兼顾了实际物理结构一级超级节点由路由交换节点扩展而成,其他节点进入网络时采用就近选择一级超级节点的策略,这样做就可以使得overlay网络节点之间的延迟与物理网络上的延迟接近。(3)可管理性超级节点都由可靠性和能力更强的节点组成,它们可以对与之连接的节点进行监测和管理,从而保证整个网络资源的高效利用。(4)负载平衡只有那些性能相对较好,带宽更高的节点才能提升为超级节点,从而保证网络负荷根据节点性能被分配到不同的节点,进而全面提升整个网络性能。另外超级节点的备份机制避免了超级节点的主机单点失效情况的发生。图1、SLPS模型;图2、实例的网络结构图3、一级超级节点211管辖节点的元数据信息。具体实施例方式下面结合附图和实施例对本发明做进一步说明。以构造具有16个节点的基于语义相似度的层次式对等网络为例,网络中的机器配置如表1所示。表l网络的机器配置<table>tableseeoriginaldocumentpage9</column></row><table><table>tableseeoriginaldocumentpage10</column></row><table>在表1中,一级超级节点数为三个,一级超级节点名分别为211、136、222;二级超级节点数目为四个,二级超级节点的名字分别为211137、211224、136201、222202;其余的节点为普通节点。此实例的网络结构如图2所示,其网络结构共分为三层,三个一级超级节点211、136、222组成第一层;四个二级超级节点构成网络的第二层;普通节点构成网络的第三层。此实例包括有三个域,假定这三个域的名字分别为211域、136域、222域。其中211域是以一级超级节点211为根节点的树(包括的节点有211、211137、211224、211137101、211137102、211137103、211137104、211137105);136域是以一级超级节点136为根节点的树(包括的节点有136、136201、136201106、136201137);222域是以一级超级节点222为根节点的树(包括的节点有222、222202、222202108、222202109)。此实例包括四个组,211域管辖两个组,假定组的名字分别为211137组、211224组;136域管辖一个组,假定组名为136201组;222域管辖一个组,假定组名为222202组。211137组是以二级超级节点211137为根节点的树(包括的节点有:211137、211137101、211137102、211137103);211224组是以二级超级节点211224为根节点的树(包括的节点有211224、211224104、211224105);136201组是以二级超级节点136201为根节点的树(包括的节点有136201、136201106、136201107);222202组是以二级超级节点222202为根节点的树(包括节点:222202、222202108、222202109。一级超级节点通过OpenLDAP管理本域的节点元数据信息,二级超级节点通过OpenLDAP管理本组的节点元数据信息。节点元数据信息属性表如表2所示。表2节点元数据信息属性表<table>tableseeoriginaldocumentpage11</column></row><table>一级超级节点211管辖本域节点的元数据信息如图3所示。211域中包括两个二级节点211137、211224;节点资源类型用节点关键字(TopoKeyWords)表示。二级超级节点上管理的元数据结构与一级超级节点类似,区别在于二级超级节点上只管理本组的节点信息。通过节点元数据可以得到节点本身的信息和节点位置信息,用户查询数据时查询一级超级节点管理的节点元数据,即得到本域的节点的信息;查询二级超级节点管理的节点元数据,即得到本组的节点的信息。节点加入网络方法(1)一级超级节点的加入假定节点名"BitFsp"是一级超级节点。在一级超级节点"BitFsp"上部署WebService、0GSA和0penLDAP,然后通过广播找到距离节点"BitFsp"最短的两个节点设为节点"BitFsp"的邻居节点,并向这两个邻居节点发送消息让它们加节点"BitFsp"为邻居节点,并完成配置。(2)二级超级节点的加入假定节点"BitSsp"是二级超级节点。通过广播找到物理距离最近的一级超级节点,所有一级超级节点都将收到该加入请求,若请求合法则回复请求,二级超级节点只会处理收到的第一个回复信息(因为一般情况下,发送这个回复信息的一级超级节点是离该二级超级节点距离最近),后来收到的回复将被忽略。假设此二级超级节点最近的一级超级节点是211,二级超级节点"BitSsp"将成为一级超级节点211的子节点。(3)普通节点的加入假定节点名"Bitp"的节点是普通节点,节点的关键字是"CS"(—种游戏名字),系统将通过节点类型和节点关键字"CS"来选取父节点。通过广播找到物理距离最近的一级超级节点,所有一级超级节点都将收到该加入请求,若请求合法则回复请求,普通节点只会处理收到的第一个回复信息(因为一般情况下,发送这个回复信息的一级超级节点是离该普通节点距离最近的),后来收到的回复将被忽略。假设此普通节点最近的一级超级节点是211。将节点加入信息再次发送到该一级超级节点211上,一级超级节点收到信息后遍历OpenLDAP目录,找到与该普通节点的节点关键字语义最相似的二级超级节点,并将该信息返回给普通节点。该实例中,一级超级节点211收到请求后,将节点"Bitp"的节点关键字"CS"分别与211224和211137的节点关键字作比较(假定二级超级节点211137的节点关键字为"计算机"类资源,级超级节点211224的节点关键字为"游戏"类资源),因为"CS"与211224的关键字"游戏"语义最相近,所以211将211224的OpenLDAP连接参数信息返回给普通节点"Bitp"。普通节点"Bitp"收到后就将信息写到二级超级节点211224的OpenLDAP中,一级超级节点211的OpenLDAP会同时自动更新。超级节点备份方法为了避免超级节点失效或离开,超级节点所管辖的域或组无法正常工作,采取超级节点的备份方法。当发现一级超级节点离开或失效后,备份节点(其他一级超级节点)接管该超级节点下的所有节点,并通知下属域内的所有二级超级节点。假定对于图2中的一级超级节点136,它的两个邻居节点根据距离远近分别作为节点136的第一备份节点(节点222)和第二备份节点(节点211)。当一级超级节点136离开网络或失效后将首先启用第一备份节点222,节点222接管136节点的功能,并通知它下属域内的所有二级超级节点,让原136节点的子节点成为节点222的子节点,并更新节点222的OpenLDAP元数据信息。二级超级节点的备份节点在组内选择,即在子节点内选择备份节点。依据费用计算模型计算组内其他节点对此二级超级节点的访问费用,选出2个费用低的节点作为备份节点。假定对于图2中的二级超级节点211137,依据费用计算模型,选择组内的节点211137102、211137103作为节点211137的备份节点。当二级超级节点211137离开网络或失效后首先启用第一备份节点211137102。节点211137102向组内发送备份节点向组内发送广播,通知组内所有节点,组内的其它节点211137101、211137103成为节点211137102的子节点,并且节点211137102与原二级超级节点211137的父节点211建立连接,替代原来二级超级节点211137,并建立OpenLDAP存储组内的元数据信息。权利要求1.一种基于语义相似度的层次式对等网络结构,依据节点的访问带宽和处理能力,将网络中的节点分为超级节点和普通节点;超级节点由性能好、带宽较高的节点承担,除了共享自身资源、访问系统中其他资源外,还要承担维护系统正常运行的管理功能;普通节点可以共享自身资源和访问系统中其他资源;其特征在于1)该结构分为3层;超级节点分为一级超级节点和二级超级节点;一级超级节点位于网络结构的第一层,二级超级节点位于网络结构的第二层,普通结点位于网络结构的第三层;一级超级节点之间的关系是对等的;2)一级超级节点及其管理的节点集合称为域,二级超级节点及其子节点集合称为组;依据语义相似度,将主题相似的节点组织在一起形成组。2.—种基于语义相似度的层次式对等网络结构构建方法,所述方法包括1)将新节点加入到该网络;2)如果是普通节点,计算节点的语义相似度;3)当超级节点失效或离开,对超级节点进行备份。3.根据权利要求2所述的构建方法,其特征在于新节点加入到该网络的方法如下首先定义①基于语义相似度的层次式对等网络可以称为由点集V和边集E组成的无向图G,表示为G气V,E);节点数记为N叫VI,边数记为M叫EI;②域是以一级超级节点为根节点的一棵树,它有多个分支,每个分支代表一个组;一个域内可以有多个组;组是以二级节点为根节点的一棵树,域的根节点的孩子节点是它管辖的域的二级节点;③基于语义相似度的层次式对等网络模型SLPS是可抽象为一个三元组G=(F,E*,T),其中^(^)={/,/2,—,/}表示域的集合;域州",2,…")的根节点^表示一级超级节点;E^(G)={61,62,...,^}表示域力的根节点,之间形成的边的集合,e,是以,和^"为端点的无向边;7(。=仏,,2,...,}表示组的集合,"/=1,2,..?)的根节点^表示二级超级节点;④设无向图G,v,,力eV(G),e,是以巧和力为端点的无向边,则称边e,的权为网络中节点v,和v,.的实际距离,记为"(",、);其次新节点加入到该网络的方法的步骤为输入图G,节点r,其中^G),域集合F(G)的每个域邻-1,2,…")的根节点,的集合(G);组集合的每个组(/=1,2,…")的根节点的集合输出点集(V(G),r〉的图G';第一步、计算节点r与图G中一级节点的距离,得出最小距离d(r^)和次短距离d(),即mindO,c),"0,。=mind(厂,");计算节。s6。。,(G)~《。,(G),,勻点r与图G中二级节点的距离,得出最小距离"(v,),即"(广。=/"。;第二步、如果节点r是一级超级节点,将边(r,。)和(r,r,)加入到边集&中得A,即&'—将由r节点构成的树加入到域集合F中得F',即"—FU{r};转到第五步;第三步、如果节点r是二级超级节点,将r作为G的子节点,将由节点r构成的组加入^所在的域内;转到第五步;第四步、如果节点r是普通节点,将r申请加入rt所辖的组内;计算语义相似度s/脂7anXyO,v)=mins//m7a"XyO,v,),(r(r,)表示节点/;所在的组)将r作为v的子节点,加入以v为根的树中;第五步、返回图G'。4.根据权利要求2所述的构建方法,其特征在于一级超级节点的备份节点由在域间选择距离近且节点度数小的邻居节点担当;二级超级节点的备份节点在组内选择,即在子节点内选择备份节点。5.根据权利要求4所述的构建方法,其特征在于二级超级节点的备份节点的选取可以依据这样的规则计算组内其他节点对这个节点的访问费用,选出n个(n—般为23个)费用低的节点作为备份节点;费用计算模型如下。=Zx77其中A为组内普通节点个数,7;为iPl^节点到达当前节点的跳数,巧为第/个节点访问当前节点的频率,。为第y个节点的访问费用。全文摘要本发明涉及一种基于语义相似度的层次式对等网络结构及其构建方法,属于计算机网络
技术领域
。本发明以域作为划分单位、构建三层的网络拓扑结构。将网络中的节点分为超级节点和普通节点。超级节点分为一级超级节点和二级超级节点。一级超级节点位于网络结构的第一层,二级超级节点位于网络结构的第二层。一级超级节点之间的关系是对等的。通过节点加入网络方法、语义相似度的计算方法、超级节点备份方法,减少了资源搜索的时间和带宽消耗,兼顾了实际物理结构,网络具有可管理性,负载平衡的特性。文档编号H04L29/08GK101170578SQ20071017846公开日2008年4月30日申请日期2007年11月30日优先权日2007年11月30日发明者新孙,侃李申请人:北京理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1