论文部分内容阅读
由于P2P系统在资源共享方面有着巨大的应用前景,对他的研究已成为学术界的重点问题之一。在P2P系统中,每个节点即是客户机,又是服务器,所有的数据交换都是在节点间完成。P2P引导网络计算模式从集中式向分布式偏移,也就是说网络应用的核心从中央服务器向网络边缘的终端设备扩散。 Gnutella是一种完全的分布式、无等级结构的P2P网络模型,能够适应P2P网络中节点频繁加入和离开的自然特性,它具有健壮性、实时性、可靠性、负载平衡等优势。基于Gnutella协议开发的软件越来越多,有大量的用户使用这类软件在Internet上搜索查询信息、下载文件和共享数据。然而,在Gnutella网络中还存在以下问题: 1.冗余消息多,吞噬带宽。Onutella网络协议采用泛洪式(flooding)消息传播机制,这种消息传播机制产生了呈指数级增长的冗余消息。据统计,P2P软件白天占Internet上运行带宽的40%—70%,晚上有时能达到80%。 2.搜索效率低,可扩展性差。Gnutella网络的搜索协议将所有资源与节点统一对待,没有考虑节点的性能差异,也没有利用查询成功的历史经验,使得搜索效率低下。同样由于节点性能的差异,网络中个别节点可能没有足够的CPU时间片、内存和带宽来完成消息的转发,导致了网络的分裂。 3.可达性问题。为了控制消息在网络中不会被无限制的扩散,减少冗余,Gnutella网络协议引进了消息控制机制,而网络异构延迟和这些消息控制机制共同作用形成了短路效应。短路效应会严重影响消息的到达率,造成网络的查询效率降低。 4.网络协议的正确性。协议是网络的血液和生命。协议中任何一点错误和缺陷都将给分布系统的稳定性、可靠性、坚固性、安全性、容错性以及异种系统之间互通性带来巨大的危害。然而,P2P网络协议是否正确,其协议是否具有安全性等性质,以及P2P网络协议是否是按协议工程的要求研制的,均未见相关报道。 围绕上述问题,本文进行了深入地研究工作,其主要贡献如下: 1.GFB:一个具有消息反馈机制、可扩展的P2P系统 GFB是作者通过对Gia系统的改进得到的。Gia系统在保留了Gnutella的简洁性同时,改善了网络的扩展性能。在任何一段时间内,网上资源的需求都不是均一的,笔者按照Gnutella网络的小世界和幂规律等特性,将成功查询结果内容的索引复制到多个性能高的节点上,因为这些内容往往是近期在网上流行的资源。另外,我们用mdfRM搜索协议替代Gia中的搜索协议,使GFB系统具有更好的可适性和搜索效率。 2.Gnutella网络的连接管理 针对洪泛消息广播机制,产生大量冗余消息和严重吞噬带宽这一关键问题。本文在解