论文部分内容阅读
Peer-to-Peer(简称P2P)是一种很有发展潜力的网络技术,在对等计算、协同工作、搜索引擎、文件交换等领域有很好的应用前景。Gnutella是一种P2P的网络通信协议,基于Gnutella通信协议的网络叫做Gnutella网络。近年来Gnutella网络发展的非常迅速。但是Gnutella网络还有诸如规模可扩充性不强、查询速度慢与查询效果不佳等缺点,限制了P2P网络的进一步发展。 本文针对这些缺点,提出了一种新的基于Gnutella协议的P2P网络模型。在传统的模型中,网络上的所有主机不管它们所处的距离远近,它们的地位都是一样的。针对这种情况,我们在新的模型中将网络划分为不同的子网,子网内与子网外的主机分别对待,相应的每一个结点都同时保存内部和外部两个动态更新的主机列表。在内部网络中,我们采用IP多播技术自动定位主机结点,在外部网络中,则采用手工输入和自动发现相结合的方法来定位主机结点。在网络的查询机制中,我们也对内部网络和外部网络采用了不同的查询方法。最后,我们用java实现了该模型。 短路效应(Short-Circuiting Effect)是严重影响Gnutella网络性能的另一个因素,本文通过修改泛滥式(flooding)查询的消息控制机制的办法,消除了短路效应的影响。