近年来互联网上P2P业务发展迅速,P2P已经成为宽带的杀手级应用。目前P2P应用占宽带流量50-60%(白天)到90%(晚上),企业用户的40%。MP3和视频文件共享下载的P2P流已经成为宽带互联网业务的主流,基于P2P的即时通信和互联网电话发展迅速,对等广播正在兴起,P2P协同计算和网格方兴未艾。
无所不在的互联网中P2P重叠网
P2P技术将各个用户互相结合成的一个网络,共享其中的带宽、共同处理其中的信息。与传统的客户机-服务器模式不同,P2P工作方式中,每一个客户终端既是客户机又是服务器。以共享下载文件为例,下载同一个文件的众多用户中的每一个用户终端只需要下载文件的一个片段,然后互相交换,最终每个用户都得到完整的文件。
实现P2P的第一步是在互联网上进行检索,找到拥有所需内容和计算力的结点的地址,第二步是通过互联网实现对等连接。为了充分发挥互联网无所不在的优势,不能对互联网协议进行任何修改,解决的方法就是在基础的互联网上架设一个P2P重叠网。
P2P重叠网分为“无组织的P2P重叠网”和“有组织的P2P重叠网”两大类。目前在互联网上广泛使用的大多是无组织的P2P重叠网。而有组织的P2P重叠网目前还处于学术界研究阶段。如Tapestry 、Chord 、Pastry 、和 CAN 等。正在研究的新一代的P2P应用包括多播、网络存储等都运行在这种有组织P2P重叠网上。
无组织的P2P重叠网已经演进了四代。第一代P2P网络采用中央控制网络体系结构。早期的Napster就采用这种结构。第二代P2P 采用分散分布网络体系结构。适合在自组织( ad-hoc)网上的应用,如即时通信等。第三代P2P 采用混合网络体系结构。这种模式综合第一代和第二代的优点,用分布的超级结点取代中央检索服务器。目前常用的P2P 软件BitTorrent,e donkey 和Gnutella等都属于此类。第四代P2P目前正在发展中。主要发展技术有动态口选择和双向下载。动态口选择需要发展适应P2P应用的分布式管理系统。