论文部分内容阅读
随着P2P网络的飞速发展,P2P技术已经逐渐成为当今IT技术领域研究与应用的热点。P2P网络的资源具有极大的分散性,资源分布在许多节点上;P2P网络中的节点可以自由地加入或退出,使P2P网络的资源处于不断的动态变化之中,这些都增加了P2P搜索技术的难度。研究P2P网络的搜索技术,不仅可以解决P2P网络中资源搜索的问题,还可以解决分布式存储与计算等方面的问题,所以研究P2P网络的搜索技术具有重要的意义。本文首先阐述了P2P网络的特性,比较了P2P模型与C/S模型,然后研究了P2P的四种网络拓扑结构模型。在研究各种主流P2P搜索算法的基础上,重点研究基于P2P的分布式搜索算法。P2P搜索算法的性能受到P2P网络拓扑结构的影响,传统的全分布式非结构化网络在搜索过程中会产生大量的消息冗余,给网络造成很大的压力,制约了搜索效率。为了解决P2P网络中的搜索问题,文本根据小世界现象的启示,对现有的分布式结构化Chord网络拓扑结构进行了改进,提出了一种分布式双环结构的网络拓扑结构,增加了内环网中的超级节点,并在此基础上对Chord搜索算法进行了扩展,设计了一种基于DHT技术的,按照目标资源流行性热门度进行网络路由的NChord搜索算法。该算法根据小世界现象规律,对系统中的流行性热门数据进行归纳提取,把存储有这些资源且经常在线的节点作为内环网中的超级节点,并为超级节点构造详细的路由索引表。节点在执行查询时,首先查询路由索引表,由于这部分热门数据承担了系统中绝大部分查询要求,所以大部分查询都在很少的几个逻辑跳数内完成了查询。实验表明,NChord算法在搜索过程中显著地减少了路由跳数、降低系统开销。最后,本文在以上研究内容的基础上,设计和实现了文件搜索系统,该系统提供了网络节点管理、流行性热门资源分类、文件共享、文件搜索和下载等功能。