论文部分内容阅读
随着对等网络(Peer—to—Peer,简称P2P)技术的快速发展,P2P网络已成为互联网上的一个重要应用。P2P网络将互联网上闲散节点通过一定方式组织起来,提供强大的计算与存储能力。P2P网络中节点日益增多,相应地存储的数据量也日益增加。此外,来自上层的应用对P2P网络中信息搜索的能力也逐渐提高。因此要求P2P网络具备更加有效的信息搜索功能。国际上许多一流的大学和科研机构都在积极地从事这方面的研究工作,并取得了一些研究成果,但对于如何高效地、深层次地搜索P2P网络中的信息仍然是一个亟待解决的难题。本文从无结构P2P网络中基于内容的搜索、结构化P2P网络中的数据发布及索引维护、移动P2P网络中的搜索等方面进行了研究,取得了关于P2P网络中信息搜索方面的一些研究成果。
本文的主要贡献包括以下几个方面:
1)提出了一种无结构P2P环境下基于层次兴趣树(Hierarchical Interest Tree,简称HIT)的语义检索机制以便优化基于内容的全文检索。由于节点可以灵活地设定查询语义相似度阈值,故可以得到更好的个性化服务。此外,我们提出了一个有效计算查询节点与响应节点相似性的函数来引导查询,从而提高了查询的精度和效率。最后,由于节点从自身的HIT中的每个类别中抽出了前n个特征关键词,将其倒排索引发送到超级节点,从而改善查询效率。实验表明基于HIT的语义检索方法比以前的方法具有更好的精度与效率。
2)提出了一种DHT(Distributed Hash Table,简称DHT)网络中数据分阶段发布的算法,较好地解决了目前eMule中单阶段发布算法固有的问题。利用传统信息检索领域的向量空间模型和用户反馈等技术来改善DHT网络中的搜索命中率、降低发布代价。针对P2P系统中节点和数据的动态性问题,提出了索引信息副本的建立策略和索引信息的更新策略,提高DHT网络中的搜索命中率和下载成功率。大量的实验表明,我们提出的算法具有较低的网络开销和发布代价、较高的搜索命中率和下载成功率。
3)提出了一种名为混合检索(Hybrid Retrieval,简称HR)的有效信息检索方法。通过分析期望的查询开销,HR能够自适应地选择基于flooding或基于DHT的检索策略,以达到高效的检索。我们在HR中部署了一种协同缓存策略,该策略使用一种高效的缓存更新方法,考虑了访问时间等四个因素。另外引入了两种相互结合的缓存更新策略:基于时间戳“拉”的策略和基于更新记录“推”的策略,并给出了有关缓存命中率的理论分析。模拟实验表明,我们提出的方法较已有的方法更精确、更有效。
4)设计并实现了一个可用于搭建分布式关键词搜索应用的DHT中间件系统:Jupiter,可以使搭建一个DHT的应用更加方便,同时可以使多个DHT应用运行在同一个中间件系统之上。提出并实现了一系列策略构建健壮的Jupiter节点的路由表。Jupiter实现了高效的路由,从节点间连接方式和路由模式等角度来提高路由的效率。Jupiter实现了安全的路由,所有收到的消息都会经过若干步检查以抵御攻击。通过仿真实验,我们证实了Jupiter的有效性和实用性。