APP下载

基于语义覆盖网的P2P信息共享系统研究*

2013-06-07周广新唐九阳

计算机工程与科学 2013年2期
关键词:查全率服务中心语义

周广新,唐九阳,张 扬

(1.国防科学技术大学训练部,湖南 长沙 410073);2.国防科学技术大学信息系统工程重点实验室,湖南 长沙 410073);3.长沙师范专科学校办公室,湖南 长沙 410073)

1 引言

信息系统随着数据量的增大对扩展性、健壮性、可靠性以及容错性的要求越来越高,传统集中式系统由于对中心服务器的依赖,存在瓶颈与单点失效的问题,已经不能完全满足现有的需求,信息组织管理与查询检索越来越趋向于分布式结构[1]。作为分布式计算的一种新模式,P2P强调在不需要服务中介的条件下,通过系统间的直接交互实现计算机资源和服务的共享,P2P以其非集中式控制、自适应性良好、扩展性好、可靠性高等诸多优点满足了大规模信息共享的需要,并在文件共享、协同工作、实时通信等领域得到了广泛应用[2]。

目前,大部分P2P 应用分别采用结构化和非结构化拓扑结构,两种结构各有优缺点[3,4]。结构化拓扑在可扩展性以及精确定位等方面具有天然的优势,然而其缺乏对部分匹配或模糊查询的有效支持,限制了它在信息共享中的应用;非结构化拓扑的应用包括为数众多的文件共享领域,但由于该结构缺乏对资源的有效组织,使得资源搜索的盲目性较大,存在系统资源利用率低下和网络难以扩展的问题。

文献[5]首次提出了语义覆盖网的概念。建立语义覆盖网的根本目的是对网络节点进行有效的组织,将包含同类信息的节点组织成聚类,在进行资源检索的时候只要找到一个聚类就可以进行聚类内的检索,提高了资源检索的效率。从信息共享应用中节点的地位来看,现有系统结构基于节点具有相同能力和责任的假设,节点的地位完全对等。实际上,节点间存在很强的异构性,包括能力异构和行为异构[6,7]。现有拓扑结构不加区分地赋予所有节点相同的拓扑维护、路由以及与应用相关的索引、搜索等责任,造成的问题是,拓扑中“好”的节点无法充分发挥其可能的潜力,而“差”的节点往往承担了超出其能力的责任,无法通过有效利用节点的差异提高网络的使用效率。

结合传统集中式网络易于管理与分布式网络具有良好的区域自治、负载平衡以及健壮性的优点,本文提出一种基于语义覆盖网的P2P 信息共享系统。首先对系统中的信息资源进行聚类划分主题域,然后依照节点的能力进行分层次组织,建立了一个具有分层分布式结构、高度可扩展性和鲁棒性以及可靠服务质量的P2P 信息共享系统架构,并详细阐述了系统运行流程。该系统具有支持语义丰富的信息共享、可扩展性好等特性,能有效优化系统性能并高效满足用户需求。

2 系统体系架构

为了保证信息资源组织的灵活性、易扩展性和健壮性,以及信息资源发现的高效性、可靠性,设计了一种基于语义覆盖网络的信息共享体系框架,如图1所示。信息提供者将发布的各类信息资源基于元数据描述注册到信息服务中心,语义覆盖网络层对分布在不同服务中心的信息资源进行有效组织,信息用户通过发现、查询或订阅等方式获取所需信息资源。

Figure 1 Architecture of system图1 系统结构

基于语义覆盖网的P2P信息共享体系结构共划分为四层:资源层、信息服务中心层、语义覆盖网络层和应用层,下面进行详细介绍。

2.1 资源层

资源层由信息源节点组成,信息资源存储在信息源层,信息资源具有异构性和多样性的特点。各信息源的信息资源基于元数据规范进行描述和封装。提供相应的封装器,对信息源进行封装和存取访问。信息源的信息资源通过元数据注册发布到特定的信息服务中心。

2.2 信息服务中心层

信息服务中心层由信息服务中心节点组成。信息服务中心节点是进行信息组织与管理的核心,完成对信息资源元数据的存储与管理,并提供信息服务能力。各自自治的信息服务中心节点构成一个对等网络,提供网络环境下不同节点之间的信息资源存储、交互、通信与协作机制。服务中心对外与其它服务中心协作完成网络拓扑维护、资源全局范围内的组织,从而提供高效的信息资源发现、查询和订阅/分发服务;对内进行局部的信息组织管理,负责维护和管理一组注册上来的信息资源,提供隶属信息资源的注册、维护和管理,并且通过信息源代理可以有效地监控局部范围内信息源的状态和存取访问所需的信息资源(如图2所示)。

服务中心的具体功能描述如下:

Figure 2 Architecture of a peer图2 信息服务中心节点结构

(1)服务中心负责所辖局部区域内各类信息资源的注册管理。各类信息源根据元数据规范对发布的信息资源的元数据进行描述,注册到相应服务中心,服务中心通过对注册资源的有效性验证和审核后,将相应资源元数据添加到元数据库。

(2)通过与其它服务中心协作进行语义覆盖网络的动态维护。

(3)服务中心可以通过本地搜索引擎和远程搜索引擎,与其它服务中心协作来完成客户的资源发现请求。

(4)服务中心能够提供相应订阅/分发服务,这也是建立在资源发现的基础上的。

由于各服务中心管理着一个局部范围内信息源的信息资源,在功能上是完全对等和自治的。不同服务中心可以根据自身管理注册资源的内容以及节点之间的网络延迟和网络负载,自适应地调整自己的邻接拓扑来提高网络效率、减轻网络负载。

2.3 语义覆盖网络层

语义覆盖网络层是系统的核心,提供查询路由服务。信息服务中心节点间维护着一种复合拓扑结构,每一个信息服务中心节点只存储和维护部分资源信息,而所有信息服务中心节点又共同存储并维护整个资源信息空间。语义覆盖网络层是在信息服务中心对等网络基础上,通过构建语义覆盖拓扑,形成信息服务中心层信息资源的索引体系。

语义覆盖网络中的所有信息服务中心节点依据自身能力进行分级,划分为超级节点SP(Super Peer)和普通节点CP(Common Peer)两类,超级节点由网络中主题相关度大、带宽能力强、能够长时间稳定工作的节点担任。图3示意了网络拓扑结构。网络采用两层体系结构,下层是由所有普通节点经信息聚类后构成的各个主题域,称之为主题域层;上层由主题域内通过能力选举产生的超级节点构成的网络,称之为主题索引层。

Figure 3 Semantic overlay network topology图3 语义覆盖网络拓扑

主题域层由多个主题域组成。主题域是根据各节点包含的主题,将主题相似节点聚合到一起形成的。主题域的构造过程是整个网络的构造过程,同时也是拓扑结构优化的过程[8]。

主题索引层由超级节点组成,超级节点之间根据一定的机制组织成一个非结构化P2P 网络,为下层提供主题索引服务。超级节点逻辑上位于主题域的中心,与主题域内普通节点距离最短,是主题域间的接口。由于该层中超级节点的加入和离开都会影响该层网络的结构,需要作适当的修复操作,因此要求超级节点比普通节点稳定得多。

2.4 应用层

应用层负责与用户或应用程序的交互,通过该层系统可以帮助用户或应用程序形成资源发现请求,对资源发现请求进行适当的处理后传递给语义覆盖网络层,最后以适当的形式向用户返回查询结果。

3 系统运行流程

系统工作流程包括网络自组织和资源发现两个主要过程,如图4所示。网络自组织过程通过构造语义覆盖网优化网络拓扑,资源发现过程则利用语义覆盖网进行资源检索。网络自组织是高效资源发现的基础,反过来资源发现又能促进网络结构进一步的优化,因此这两个过程密切相关。

Figure 4 Process of information organization图4 信息组织过程

3.1 网络自组织过程

网络自组织过程包括初始无序组网、网络动态优化、容错处理这三个核心子过程,容错处理子过程与初始无序组网、网络动态优化过程同时发生。

在初始无序组网阶段,节点是以一种无序的形式加入信息共享系统,最初加入系统的几个节点被指定为超级节点,后加入的节点随机选择超级节点进行连接。此时形成的网络拓扑是随机形成的无序网络。

在节点达到一定数量之后,系统进行网络动态优化,如图5所示,主要通过对信息资源的内容进行聚类运算,构造出相关主题域,将资源相似节点聚集在同一主题域,主题域内则选举能力强的节点担任超级节点负责管理域内成员,实现节点资源的有序组织。

Figure 5 Process of dynamic network optimization图5 网络动态优化过程

由于系统允许各个节点自由加入、退出网络,容错处理的目的在于避免由于节点动态加入、退出引起的系统故障,提高系统的稳定性与可靠性。容错处理的过程如图6所示,主要是通过对各个节点进行实时监控,确认节点运行状态,提供多种容错手段。

Figure 6 Fault tolerance process图6 容错处理过程

3.2 资源发现过程

资源发现过程由用户的查询触发,结束于向用户返回查询结果,其过程如图7所示。首先将查询条件与主题类别匹配,按照对应的相似度算法,查找相关的主题域;然后将查询条件投递到这些主题域的超级节点,由超级节点发起域内检索,并将各节点返回的结果进行合并,返回给用户。

Figure 7 Process of information discovery图7 资源发现过程

4 系统性能分析

对系统进行实验性能分析,所有实验在一台PC机上完成,PC 机的配置为CPU P4 2.0GHz,内存1GB,Windows XP sp2操作系统,仿真程序由Java编写。

仿真实验中,设定文档主题类别为16,每个类别中包含2 000篇文档,共有32 000篇文档;每个节点包含的文档数量为500篇,随机选择最多3个主题的文档子集作为一个节点的文档集合,保证其中有一个主题权重最高(大于60%)。

采用信息查全率Recall和信息共享系统中每个查询平均需要处理的消息数Message_Num 作为性能指标。

信息查全率是衡量基于内容检索的重要指标之一,它反映检索到的文档占所有相关文档的比例。具体计算公式:

其中,Doc_Numberrelevant是针对某个具体查询,仿真系统中分布的所有相关文档的集合;Doc_Numberretrieved是实际搜索到的文档集合。

每个查询平均需要处理的消息数Message_Num 反映了查询的开销,受查询转发次数影响,并且决定了被查询节点的数量。该项指标主要通过仿真实验中每次查询各个节点收到查询消息的数量之和得到,具体计算公式为:

其中,Messagesi为每个节点在一次查询中收到的消息数,N 为节点总数。

设定系统节点总数为1 000,每个节点按照文献[8]的聚类方法加入相应的主题域,加入主题域的阈值设定为0.4。根据主题域的数量M=1,16分别构造两种拓扑网络,其中主题数M=1时,可以认为该网络未经主题分类,拓扑结构类似于非结构化的网络。在这两种网络结构下,分别运行8组不同的查询(每组8个),利用返回的查询结果数量计算查全率,总共进行16次实验获取平均数据,实验结果如图8所示。

可以看出,在基于语义覆盖网的P2P 信息共享系统中,文档的查询效率与查全率随着主题域的划分有明显的提高,并且比较稳定。图8a和图8b展示了在节点生存时间TTL=2、3时两种网络结构的查全率,其中M=1时网络的查全率较低,在TTL=2时平均只有16%,在TTL=3时也仅达到28%左右;而通过基于信息聚类的主题域构造后,查全率明显提高,TTL=2时已经达到43%,在TTL=3时,平均查全率已经达到80%。这是因为通过主题域的构造,优化了网络拓扑结构,网络中的信息资源进行了合理组织,将主题相似的节点聚合到了一起,在这些节点中找到与查询相关的文档的概率远大于随机选择的节点;其次,每个主题域中的节点数量远小于整个网络中的节点总数,在TTL=3时,基本已经遍历了单个主题域中的所有节点,因此查全率较高。图8c和图8d中,在M=16的网络结构中,由于构造主题域之后单个主题域内节点数大约有60 个左右,在TTL=2时,每个查询引发的消息数为30~40条,大约遍历了一半的域内节点;而在TTL=3时,消息数为60条左右,基本遍历了所有域内节点;而在M=1的网络结构中,TTL=2 时,仅能遍历10%不到节点,TTL=3时,也才遍历了30%左右的节点。实验结果表明,基于语义覆盖网的拓扑结构能有效提高系统性能。

5 结束语

Figure 8 Experimental results of system performance图8 系统性能实验结果

基于P2P的信息共享环境中全局信息的缺失引发网络无序的问题,即节点间的拓扑连接是随机、无序的,节点资源相应随机散布在整个网络上,导致网络整体性能低效。

结合集中式网络易于管理与分布式网络具有良好的区域自治、负载平衡以及健壮性的优点,本文提出一种基于语义覆盖网的P2P 系统体系结构。其中语义覆盖网以主题域为基本逻辑管理单位,将网络系统结构分解为若干个子区域,从而在提供高效资源定位的同时保持节点的自治性和系统自组织性;针对节点能力的异构,将系统中的节点进行分层,赋予高性能节点更多职责,能够利用节点的差异提高网络的性能。相应分析表明,基于语义覆盖网的P2P信息共享系统有效优化了网络性能,可扩展性好。

[1]Raghavan S,Garcia-Molina H.Integrating diverse information management systems:A brief survey[J].IEEE Data Engineering Bulletin,2001,24(4):44-52.

[2]Steinmetz R,Wehrle K.Peer-to-peer systems and applications[M].Berlin:Springer-Verlag,2005.

[3]Stephanos A T,Diomidis S.A survey of peer-to-peer content distribution technologies [J].ACM Computing Surveys,2004,36(4):335-371.

[4]Lua E K,Crowcroft J,Pias M,et al.A survey and comparison of peer-to-peer overlay network schemes[J].Journal of IEEE Communications Survey and Tutorial,2005,7(2):72-93.

[5]Crespo A,Garcia-Molina H.Semantic overlay networks for P2Psystems[C]∥Proc of the 3rd International Workshop on Agents and Peer-to-Peer Computing,2004:1-13.

[6]Saroiu S,Gummadi P K,Dribble S D.A measurement study of peer-to-peer file sharing systems[C]∥Proc of Multimedia Computing and Networking,2002:1.

[7]Saroiu S,Gummadi K P,Gribble S D.Measuring and analyzing the characteristics of napster and gnutella hosts[J].Multimedia Systems,2003,9(2):170-184.

[8]Tang Da-quan,Tang Jiu-yang,Liu Jian,et al.Research on self-organization construction method of topic overlay P2P network[J].Computer Engineering & Science,2009,31(1):31-34.(in Chinese)

附中文参考文献:

[8]汤大权,唐九阳,刘健,等.主题覆盖P2P网络自组织构造方法[J].计算机工程与科学,2009,31(1):31-34.

猜你喜欢

查全率服务中心语义
队旗在党群服务中心飘扬
中证法律服务中心调解程序知多少
语言与语义
海量图书馆档案信息的快速检索方法
上海看见爱志愿者服务中心
基于词嵌入语义的精准检索式构建方法
“上”与“下”语义的不对称性及其认知阐释
认知范畴模糊与语义模糊
曲阜行政服务中心打造为民服务“升级版”
语义分析与汉俄副名组合