论文部分内容阅读
互联网技术的飞速发展,导致海量网络资源的产生。目前,互联网几乎已成为人与人之间相互交流以获取信息资源的最大平台。尤其是多媒体技术与数字娱乐的发展,极大地推动了人们对网络资源共享的需求。传统的C/S(客户端/服务器)模式对于应付全世界范围内海量的用户请求,已显得越来越不堪重负。作为一种新兴的计算模式,P2P的产生就是希望能够尽可能地挖掘网络中潜在的计算资源,使网络资源得到最大化地利用。近年来P2P已迅速成为业界关注的热门研究领域之一,P2P为互联网技术的发展开启了新的篇章。在P2P网络中,每个用户节点都具有同等的功能地位与责任,它们在享用其它用户提供的网络资源与服务的同时也在主动地为其它资源提供资源数据及服务。形成一种“我为人人,人人为我”的共享局势,节点间可以直接交互而非依赖于传统的中央服务器,增强了网络的灵活性,同时弱化了服务器的主导控制权,使传统集中式网络模式中普遍存在的系统瓶颈问题得到了极大的缓解。如今,包括资源共享、协同工作、分布式计算、实时通信及深度搜索等多个应用领域都能见到P2P技术的存在。它以其高性价比、自组织、健壮性、可扩展强且能够较好的保护隐私等优点而成为构建大规模网络应用的首选网络计算模式。然而,面对分布式的网络环境,网络结构的高度动态性,如何快速、准确的搜索与定位资源给基于P2P的网络资源共享带来了巨大的挑战,也是当前P2P网络研究中所面临的难题。本文概括介绍了P2P的概念特点及相对传统网络模式的优势,然后针对现有的各种P2P网络模型及其各种模型下的资源搜索算法及基本原理进行了详细的分析,对P2P网络中的数据传输的NAT穿透等关键问题进行了深入研究,在此基础上给出了一种混合式的P2P网络资源共享系统的构建方案。通过多种P2P模型相结合实现资源的有效组织以增加系统的稳定性及可扩展性;通过基于元数据的关键字匹配及副本机制与纠删码相结合的数据冗余策略以确保资源的可用性及搜索效率,同时给出了UDP协议下的NAT穿透解决方案。最后对系统关键模块进行了详细的分析与设计并对未来的研究工作进行了展望。