P2P研究:主要应用模式及其现存问题

  对等网络(P2P)被美国财富杂志称为改变因特网发展 4大新技术的甚至被认为是无线宽带互联网未来技术

  P2P技术不仅为个人用户提供了前所未有自由和便利同时也试图有效地整合互联网潜在资源将基于网页互联网转变成动态存取、自由交互海量信息网络

  P2P技术发展以及P2P和网格技术结合将影响整个计算机网络概念和人们信息获取模式真正实现“网络就是计算机计算机就是网络”梦想

  作为改变现有Internet应用模式主要技术的计算机对等网络(P2P)是目前新代互联网技术研究热点的

  自1999年以来P2P研究得到了国内外学术界和商业组织广泛关注同时由于P2P本质特性不可避免地存在着许多社会、法律和技术上问题在学术界和产业界也直存在着些怀疑力量这在很长段时期使人们难以对P2P做出个准确和公平判断

  本文较为完整地分析了P2P网络4种典型结构并对P2P主要应用模式、存在问题以及可能发展方向进行简要阐述

  1.P2P网络模型

  P2P网络是种具有较高扩展性分布式系统结构其对等概念是指网络中物理节点在逻辑上具有相同地位而并非处理能力对等以Napster软件Software为代表P2P技术其实质在于将互联网集中管理模式引向分散管理模式将内容从中央单节点引向网络边缘从而充分利用互联网中众多终端节点所蕴涵处理能力和潜在资源相对于传统集中式客户/服务器(C/S)模型P2P弱化了服务器概念系统中各个节点不再区分服务器和客户端角色关系每个节点既可请求服务也可提供服务节点的间可以直接交换资源和服务而不必通过服务器

  P2P系统最大特点就是用户的间直接共享资源其核心技术就是分布式对象定位机制这也是提高网络可扩展性、解决网络带宽被吞噬关键所在迄今为止P2P网络已经历了 3代区别网络模型各种模型各有优缺点还存在着本身难以克服缺陷因此在目前P2P技术还远未成熟阶段各种网络结构依然能够共存甚至呈现相互借鉴形式

  1.1 集中目录式结构

  集中目录式P2P结构是最早出现P2P应用模式仍然具有中心化特点也被称为非纯粹P2P结构用于共享MP3音乐文件Napster是其中最典型代表(见图1)其用户注册和文件检索过程类似于传统C/S模式区别在于所有资料并非存储在服务器上而是存贮在各个节点中查询节点根据网络流量和延迟等信息选择合适节点建立直接连接而不必经过中央服务器进行这种网络结构非常简单但是它显示了P2P系统信息量巨大优势和吸引力同时也揭示了P2P系统本质上所不可避免两个问题:法律版权和资源浪费问题

  1.2 纯P2P网络模型

  纯P2P模式也被称作广播式P2P模型它取消了集中中央服务器每个用户随机接入网络并和自己相邻组邻居节点通过端到端连接构成个逻辑覆盖网络对等节点的间内容查询和内容共享都是直接通过相邻节点广播接力传递同时每个节点还会记录搜索轨迹以防止搜索环路产生

  Gnutella模型是现在应用最广泛纯P2P非结构化拓扑结构(见图2)它解决了网络结构中心化问题扩展性和容错性较好但是Gnutella网络中搜索算法以泛洪方式进行控制信息泛滥消耗了大量带宽并很快造成网络拥塞甚至网络不稳定同时局部性能较差节点可能会导致Gnutella网络被分片从而导致整个网络可用性较差另外这类系统更容易受到垃圾信息甚至是病毒恶意攻击

  1.3 混合式网络模型

  Kazaa模型是P2P混合模型典型代表(见图3)它在纯P2P分布式模型基础上引入了超级节点概念综合了集中式P2P快速查找和纯P2P去中心化优势Kazaa模型将节点按能力区别(计算能力、内存大小、连接带宽、网络滞留时间等)区分为普通节点和搜索节点两类(也有步分为 3类节点其思想本质相同)其中搜索节点和其临近若干普通节点的间构成个自治簇内采用基于集中目录式P2P模式而整个P2P网络中各个区别簇的间再通过纯P2P模式将搜索节点相连起来甚至也可以在各个搜索节点的间再次选取性能最优节点或者另外引入性能最优节点作为索引节点来保存整个网络中可以利用搜索节点信息并且负责维护整个网络结构

  由于普通节点文件搜索先在本地所属簇内进行只有查询结果不充分时候再通过搜索节点的间进行有限泛洪这样就极为有效地消除纯P2P结构中使用泛洪算法带来网络拥塞、搜索迟缓等不利影响同时由于每个簇中搜索节点监控着所有普通节点行为这也能确保些恶意攻击行为能在网络局部得到控制并且超级节点存在也能在定程度上提高整个网络负载平衡

  总来说基于超级节点混合式P2P网络结构比以往有较大程度改进

  然而由于超级节点本身脆弱性也可能导致其簇内结点处于孤立状态因此这种局部索引思路方法仍然存在局限性这导致了结构化P2P网络模型出现

  1.4 结构化网络模型

  所谓结构化和非结构化模型根本区别在于每个节点所维护邻居是否能够按照某种全局方式组织起来以利于快速查找结构化P2P模式是种采用纯分布式消息传递机制和根据关键字进行查找定位服务目前主流思路方法是采用分布式哈希表(DHT)技术这也是目前扩展性最好P2P路由方式的由于DHT各节点并不需要维护整个网络信息只在节点中存储其临近后继节点信息因此较少路由信息就可以有效地实现到达目标节点同时又取消了泛洪算法该模型有效地减少了节点信息发送数量从而增强了P2P网络扩展性同时出于冗余度以及延时考虑大部分DHT总是在节点虚拟标识和关键字最接近节点上复制备份冗余信息这样也避免了单节点失效问题

  目前基于DHT代表性研究项目主要包括加州大学伯克利分校CAN项目和Tapestry项目麻省理工学院Chord项目、IRIS项目以及微软研究院Pastry项目等这些系统般都假定节点具有相同能力这对于规模较小系统较为有效但这种假设并不适合大规模Internet部署同时基于DHT拓扑维护和修复算法也比Gnutella模型和Kazaa模型等无结构系统要复杂得多甚至在Chord项目中产生了“绕路”问题事实上目前大量实际应用还大都是基于无结构拓扑和泛洪广播机制现在大多采用DHT方式P2P系统缺乏在Internet中大规模真实部署例子成功应用还比较少见

  2.P2P网络应用模式

  Internet最初产生和发展个主动力就是资源共享也正是文件交换需求直接导致了P2P技术兴起这是P2P最初也是最成功应用的也正是针对这类应用Napster使得人们在客户/服务器模式下开始重新认识P2P思想对人们使用网络习惯影响

  随着人们对P2P思想理解和技术发展作为种软件Software架构P2P还可以被开发出种类繁多应用模式除了最初文件交换的外还出现了些分布式存储、深度搜索、分布式计算、个人即时通信和协同工作等新颖应用其中最著名例子是基于分布式计算搜索外星文明SETI@home科学实验每个志愿参加者只需下载并运行类似屏幕保护方式就可以贡献自己闲置计算能力参和分析Arecibo射电望远镜无线电磁波数据并回送计算数据截至2004年12月已有528万志愿者参加进来获得了相当于216万年CPU时间综合计算就相当于67.46Tflops运算另外随着SUN公司将其JXTA协议扩展到诸如个人数字助理(PDA)和移动电话等手持终端上并允许人们屏蔽具体物理平台进行资料共享和文件交换等P2P技术在移动通信和智能网领域也开始呈现出较大应用前景

  3.P2P网络存在问题

  P2P最大优点在于能够提供可靠信息查询但从社会和法律意义来说绝大多数P2P服务都将不可避免地遇到知识产权冲突也可能成为些非法内容传播平台同时由于缺乏中心监管以及自由平等动态特性自组织P2P网络在技术层面也有许多难以解决问题

  从某种意义上来说P2P网络和人际网络具有相似性般来说每个P2P网络都是众多参和者按照共同兴趣组建起来个虚拟组织节点的间存在着种假定相互信任关系但随着P2P网络规模扩大这些P2P节点本质所特有平等自由动态特性往往和网络服务所需要信任协作模型的间产生矛盾激励作用缺失使节点间更多表现出“贪婪”、“抱怨”和“欺诈”自私行为因此P2P中预先假设信任机制实际上非常脆弱同时这种信任也难以在节点的间进行推理导致了全局性信任缺乏这直接影响了整个网络稳定性和可用性此外相对于传统客户/服务器模式服务器可以做主动和被动防御由于P2P节点安全防护手段匮乏以及P2P协议缺乏必要认证机制和计算机操作系统安全漏洞安全问题在P2P网络中更为严重这将直接影响P2P大规模商用另外P2P网络中节点本身往往是计算能力相差较大异构节点个节点都被赋予了相同职责而没有考虑其计算能力和网络带宽局部性能较差点将会导致整体网络性能恶化在这种异构节点环境中难以实现优化资源管理和负载平衡同时由于用户加入离开P2P网络随意性使得用户获得目标文件具有不确定性导致许多并非必要文件下载而造成大量带宽资源滥用特别是大多数P2P用户更喜欢传送音频、视频这些较大媒体文件这将使得带宽浪费问题更为突出尤其在中国大量用户还是拨号用户较窄带宽也成为P2P应用难以逾越障碍


Tags: 

延伸阅读

最新评论

发表评论