论文部分内容阅读
P2P网络中存在着丰富的信息资源,正确高效地搜索信息是P2P系统实现有效的资源共享和协同的关键。然而,由于现有P2P系统规模越来越大,并且具有较高的动态性和较强的异构性等特点,有效的P2P搜索技术一直是P2P系统研究中的重点问题和难点问题。
本文针对P2P网络的搜索技术进行了研究,分析了现有P2P搜索技术存在的不足,并提出一种基于语义相似的P2P搜索机制,通过积累历史搜索经验获得路由指引信息,帮助搜索结点快速发现与搜索内容最相关的结点,提高搜索效率和目标命中率。本文的研究内容主要包括以下三个方面:
第一,综述了P2P网络的基本搜索算法及其相关的改进,并分别对无结构P2P网络和结构化P2P网络分析了现有搜索算法存在的不足以及改进的难点。无结构P2P网络由于采用泛洪搜索机制,信息量随着网络规模的扩大而呈指数增加,导致网络拥塞,影响了网络性能,系统的可扩展性降低;此外,对于稀疏资源的搜索不能避免产生大量的查询信息,而且搜索结果不可知。结构化P2P网络由于采用分布式散列表技术(DHT),用户必须明确知道所搜索资源的唯一标识才能进行散列和找到该资源,而且DHT仅支持精确匹配查询,对于多关键词搜索却无法提供直接的支持,也无法支持内容、语义等复杂查询。
第二,提出了一种基于语义相似度的P2P搜索机制SRVN,该机制利用了P2P网络的拓扑特性,以及网络资源访问的局部性原理,各结点在查找过程中积累“有用的”搜索经验以更有效地指引路由,使得路由总是指向能提供更多信息的邻近结点。并且,用户提交查询请求后,通过该机制可以得到一组相关的信息(文件),从而扩大了搜索的范围。同时,在应答消息回路经过的各跳结点上,可以根据一定的策略存放文件副本信息,更新搜索经验,从而进一步提高全局搜索性能。
第三,研究了SRVN在P2P网络中的应用。主要以无结构P2P网络中典型系统Gnutella为例,通过仿真实验和性能分析,说明应用该算法能有效地减少由于采用类泛洪方式广播消息、定位对等点的方法造成的急剧增加的网络流量,提高了搜索效率和目标命中率。此外,也探讨了在结构化P2P系统上应用该算法的可行性,分析了应用基于语义相似度搜索机制的P2P信息检索系统的体系结构。该算法可以作为对基于DHT技术的结构化搜索算法的一种补充,改善搜索范围的限制,提供了对于多关键词搜索和模糊搜索的尝试。