论文部分内容阅读
P2P(peer-to-peer)技术自由平等的思想使P2P文件共享系统得到广泛应用。有效地发现资源是充分利用P2P资源的前提,因此P2P搜索技术成为P2P领域研究的热点问题之一。目前P2P系统开发比较混乱且没有统一的标准,JXTA的出现为开发P2P系统提供了统一标准。当前基于JXTA的P2P搜索技术采用DHT算法,该算法会导致搜索效率低、维护管理成本高等问题。针对当前基于JXTA的P2P搜索技术的缺陷与不足,本文分析了当前P2P和JXTA的各项技术,并对基于JXTA的P2P搜索技术进行了探讨。本文在提高搜索效率、降低管理成本方面做的主要工作如下:①提出了自适应对等组的概念。具有相似兴趣的对等点组成自适应对等组,每个自适应对等组会维持在一定规模。根据自适应对等组的定义,提出了自适应对等组的规模调整策略,即当网络规模过大或过小时,自适应对等组可以进行拆分与合并。②在自适应对等组的基础上,改进了Gnutella算法,使改进的搜索算法适用于在自适应对等组内执行。Gnutella算法是广播式的转发查询,只适用于小规模的网络,当网络规模过大时,容易引起广播风暴而占用太多网络带宽。改进的Gnutella算法在每个节点加入了辅助信息,在很多情况下可以替代广播式的转发而采用选择性转发,从而减少了不必要的网络资源浪费,并且可以更快搜索到资源。本文利用PeerSim仿真平台对改进的Gnutella算法进行了仿真测试,通过实验数据分析,表明改进的Gnutella算法在自适应对等组内执行可以提高搜索算法的性能。③当搜索不满足条件时,应该允许搜索在其它对等组内进行。在这种情况下,为了使组外搜索更为有效,应该将搜索限制在与本地对等组具有相似兴趣的对等组内,所以提出了自适应对等组相似度算法。④根据自适应对等组相似度算法的计算结果建立组等点视图(Group Peer View,GPV)。在自适应对等组、改进的Gnutella算法、组等点视图的基础上提出了一种优先级对等组搜索机制(Prioritized Adaptive Group Searching,PAGS)。PAGS搜索机制设计了组内外搜索控制的具体策略。最后根据PAGS搜索机制的思想完成了搜索系统的总体设计,实现了P2P搜索系统的关键部分。该搜索系统可以支持简单的模糊查询,算法实现简单并且在一定程度上降低了管理成本,与目前基于JXTA的P2P搜索相比具有一定的优势。