论文部分内容阅读
近几年来P2P业务发展迅速,成为各国计算机网络研究的热点。共享资源搜索是P2P技术的核心和重点。如何快速准确的找到资源,如何找到符合一定QoS要求的最小代价的资源是P2P应用的关键问题。由于现在的资源查找算法如Gossip算法,在查找资源时存在一定的盲目性因此搜索效率并不高,当网络规模较大时,甚至会导致网络出现“分片”现象。再者搜索资源时并没有考虑资源的优劣性,没有根据网络带宽、节点处理能力等因素来选取资源,不适合应用在对QoS要求较高的P2P业务中。因此,研究新的资源查找机制是十分必要的。本文针对现有资源查找算法效率不高的缺点,研究了如何提高资源查找算法的效率和速度。通过建立自组织的具有小群体特性的P2P覆盖网络拓扑结构,使节点具有高聚集度和低特征路径长度。在这个拓扑结构之上,提出了两级资源查询算法。仿真实验表明两级资源查询算法在网络开销、查寻结果满意度、响应时间方面均要优于Gossip算法和聚集度优先算法,其中网络开销分别较Gossip算法和聚集度优先算法减少了80%和70%。查寻结果满意度分别提高了20%和10%。算法响应时间分别缩短了40%和15%。该算法可应用在各种规模的非结构化P2P网络中。本文通过动态调整信息素浓度,提出了改进的蚁群算法,解决了标准蚁群算法的收敛速度慢,算法易于陷入局部最优解的问题。通过标准TSP实验表明,改进的蚁群算法得到的解优于标准蚁群算法。在小群体特性的P2P网络拓扑结构基础之上,本文引入了改进蚁群算法的思想,提出了ACD算法(ant cycle system based detection algorithm),解决了如何查找符合QoS要求的资源这一NP困难问题。实验表明ACD算法在QoS满意率方面比MSDP算法、PBSP算法提高了8%左右,和SCP算法及SBP算法相比,满意率提高了16%左右。该算法可应用在对服务质量有一定要求的P2P业务中。