游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3437|回复: 6

P2P技术分析

[复制链接]

15

主题

192

帖子

213

积分

中级会员

Rank: 3Rank: 3

积分
213
QQ
发表于 2009-3-4 11:41:00 | 显示全部楼层 |阅读模式
这是以前做的一个P2P技术分析。很多是从别的地方整理过来的。随便看看。

网络P2P技术应用优势分析
1.        P2P技术介绍
1.1 什么叫P2P?
  P2P在IT届最初的含义是Peer-to-peer,即点对点。
  现在P2P已经被更广泛的理解为Pointer-to-Pointer、PC-to-PC等等。
简单来说,P2P就是指数据的传输不再通过服务器,而是网络用户之间直接传递数据。这是一种用于不同PC用户之间、不经过中继设备直接交换数据或服务的技术。其网络通信方式如图1所示。

  例如在QQ出现之前,人们上网聊天大多通过聊天室,信息的传递方式是:用户A-聊天室服务器-用户B。QQ时代,用户之间的信息传递不需要服务器参与,信息传递方式为:用户A-用户B。这就是典型的P2P应用。
P2P让用户直接连接到其他用户的计算机进行文件交换,而不是像过去那样连接到服务器去浏览与下载。P2P另一个重要特点是改变互联网目前以大网站为中心的状态、重返“非中心化”,并把权力交还给用户,赋予用户自由的主动权,消除了“中间商”,直接通过互联网将人们联系起来,使网络沟通更通畅,使用户资源获得了更直接的共享和交互。
  P2P并不是什么新概念,P2P是互联网整体架构的基础。互联网最基本的协议TCP/IP并没有客户机和服务器的概念,所有的设备都是通讯的平等的一端。在十年之前,所有的互联网上的系统都同时具有服务器和客户机的功能。当然,后来发展的那些架构在TCP/IP之上的软件的确采用了客户机/服务器的结构:浏览器和Web服务器,邮件客户端和邮件服务器。但是,对于服务器来说,它们之间仍然是对等联网的。以E-mail为例,互联网上并没有一个巨大的、惟一的邮件服务器来处理所有的E-mail,而是对等联网的邮件服务器相互协作把E-mail传送到相应的服务器上去。另外,用户之间E-mail则一直是对等的联络渠道。以共享下载文件为例,下载同一个文件的众多用户中的每一个用户终端只需要下载文件的一个片段,然后互相交换,最终每个用户都得到完整的文件。
P2P采用在个人电脑之间直接进行资源和服务的共享,而不象传统browser/server或者client/server结构那样需要经过服务器的介入和服务。在P2P结构中,每台个人电脑同时充当服务器和客户端的角色,当需要其他电脑的文件或者服务时,两台电脑直接建立联系,本机是客户端,而当响应其他电脑的资源要求时,本机又成为提供资源与服务的服务器。通常这些资源和服务包括:文件的共享与交换,计算资源如CPU的共享使用等.P2P的实质就是把控制权重新还到用户手中去。人们通过P2P可以共享硬盘上的文件、目录甚至整个硬盘。这种能量是非常令人激动的,那些费心存储在自己的硬盘上的东西肯定是我们认为最有价值的东西,所有人都共享了他们认为最有价值的东西,这将使互联网上信息的价值得到极大的提升。
  P2P技术第一次让个人计算机和高贵的服务器平起平坐,让PC焕发了新的活力。当人们加入P2P网络的时候,所有人都拥有了平等的机会,所有人都拥有了极容易地在网络上创造“内容”的机会。有一天,你忽然发现你不再需要到别人的网站申请免费主页空间和Email,你可以在自己的计算机上实现这些服务。无论走到哪里,你都可以使用上网设备(例如WAP手机)读取办公室或家里的计算机上的文件。凡此种种,P2P改变了互联网的游戏规则,也改变了我们的生活。
1.2         P2P技术产生的背景及发展历史
1)        诞生的背景:
P2P应用最初出现时和现在并不相同。事实上可以认为它是若干不同技术以及流行趋势的产物。
下面是两个导致 P2P 技术发展最重要的趋势:
首先是某些新技术与软件工程结合,形成了一种将工作分散的趋势。P2P计算正是这种分散工作趋势的自然结果。
其次,从工程的角度看来,在企业应用集成等因素的驱动下,过去十年渐渐形成一种从集中的单机系统转向分布式系统的趋势。在集中式的应用中进行控制是相对容易的,这一点在一定程度上抑制了分布式潮流的发展。然而随着互联网的发展,以及B2B商务交易方式的日益流行,全面的分布式计算也就成为一种商业需求。
对功能强大的网络计算机的需求以及昂贵的带宽开销,是对这种趋势影响最大的两个因素。为了提高效率,P2P计算由许多互相连接的同位体 (peer) 组成。
这两种趋势导致了 P2P 应用技术研究的迅速发展。
除了技术方面之外的社会因素也是一个重要原因。毫无疑问,人们现在对P2P 计算技术的热切关注起源于 Napster, Scour, Gnutella,以及这些家族的其他成员产品。这些产品提供了所谓的 "killer apps"功能,能够将 P2P技术中的一部分下放到客户端用户的手中。正是这种第一手的体验,使得人们越来越关注P2P 技术的强大功能。
然而必须指出的是,最初的 P2P应用大约产生于20年前,并且其中的许多至今仍然被使用。尽管这些早期应用的核心就是P2P,但由于大多数的使用者并未感觉或接触到,因此通常人们并不认为它们是P2P 技术。
虽然 P2P这个术语是现在才发明的,但 P2P 本身的基本技术的存在时间却至少和USENET、FidoNet这两种非常成功的分布式对等网络技术一样长,甚至更长些。关键在于,在最初的 P2P应用出现时,许多使用该技术的人们甚至不会使用计算机。有人评论说,“实际上,最早使用P2P技术的是即时通讯行业,ICQ、QQ 和MSN其实都是基于P2P技术产生的。”
USENET 产生于 1979年,是一种分布式系统,能够为各个地方提供新闻组(如rec.arts.int-fiction 和 rec.games.int-fiction )。USENET最早的雏形由是两名研究生 Tom Truscott 和 Jim Ellis实现的。当时并没有任何类似于互联网上“随选”信息的概念,文件只能通过电话线批量传送,且常常选在长途费用比较低的夜间进行。因此,当时的USENET若采用集中式的控制管理方法将效率低下,自然而然地就提出了一种分散、分布式的管理方法。这种分布的结构一直沿用到今天。这种结构将在下面的“P2P主要模式结构分析”中说明。
早期 P2P 应用另一个杰出的代表则是 FidoNet。它和 USENET类似,也是一个分散、分布的信息交换系统。Tom Jennings 于 1984年创建了 FidoNet 系统,来让不同 BBS系统中的用户们互相交换信息。这种符合人们需要的技术,迅速成长起来,并一直沿用到今天。
USENET 和 FidoNet都是值得探究的系统,因为它们在多年前就遇到并解决了许多当今 P2P技术所面临的同样问题,同时也还存在着安全性以及其他一些问题。

2)        震动世界的创新
    六七十年代ARPANET、UseNet和DNS初建的目的就是为了实现资源的对等共享; 80年代随着Internet的发展,Saltzer、Reed和Clank将端对端的概念进行了表述和研究。在95年到99年Internet逐渐向client/sever的模式发展。2000年Napster的出现,以及由此产生的版权纠纷,使得人们重新开始关注P2P——P2P被再次发现并且被称为是2000年互联网的唯一震动世界的创新。
P2P发展的螺旋过程与硬件的发展息息相关的,初期的P2P主要针对网络上的小型机、大型机而言,着重于在主机之间交流数据;现在,随着互联网以及个人计算机计算能力的发展,使的PC层次的P2P技术使用成为可能,P2P的概念得到了复兴。
P2P技术的重新发现得到了包括Intel、Mirosoft在内的诸多公司的重视,以此为基础开展了分布式计算、并行计算等方面的研究。
1.3 主要的P2P模式结构分析
P2P模式的变化经历了集中式、分布式和混合式3个阶段。P2P技术起源于文件交换技术,在P2P的发展过程中,文件交换技术的演变最具代表性,下面我们就以典型的P2P文件交换软件为例来研究P2P模式的几种主要形式。
(1)集中式对等网络
Napster提供的MP3下载服务就是最早的P2P实践。它并不提供MP3音乐资源,只是提供动态刷新的MP3目录服务。音乐资源散布在全球互联网上的用户手中,借助Napster几乎可以找到任何一首歌曲,这是一种集中式对等网络模式。如图2:服务器-客户端的集中式对等网络

  集中式P2P模式由一个中心服务器来负责记录共享信息以及反馈对这些信息的查询;每一个对等实体要对它所需共享的信息以及进行的通信负责,根据需要下载它所需要的其他对等实体上的信息。这种形式具有中心化的特点,但是它不同于传统意义上的Client/Server模式。因为传统意义上的Client/Server模式采用的是一种垄断的手段,所有资料都存放在服务器上,客户机只能被动地从服务器上读取信息,并且客户机之间不具有交互能力;而集中式P2P模式则是所有网上提供的资料都存放在提供该资料的客户机上,服务器上只保留索引信息,此外服务器与对等实体以及对等实体之间都具有交互能力。
  集中目录式P2P模型还存在很多问题,主要表现为:
        中央服务器的瘫痪容易导致整个网络的崩溃,可靠性和安全性较低;
        随着网络规模的扩大,中央目录服务器维护和更新的费用将急剧增加,所需成本过高;
        中央服务器的存在引起共享资源在版权问题上的纠纷,这也是直接导致Napster破产的原因;
        缺乏有效的强制共享机制,资源可用性差。
        集中式P2P可提供中心服务器目录检索、管理服务和标准的点到点通信,具有高效的检索和低效的交换服务的特点。集中式P2P对小型网络而言在管理和控制方面占有一定的优势,但对大型网络并不适合。
(2)分布式对等网络
Napster因为中央服务器的存在引起的版权纠纷导致了它的破产,以Gnutella和eDonkey或eMule为代表的后来者们吸取了Napster失败的教训,将Napster的理念推进一步。当用户PC安装这些软件后,就会立即变成一台能够提供完整目录和文件服务的服务器,并会自动搜寻其他同类服务器,从而联成一台由无数PC组成的网络超级服务器。与Napster网络不同,它不存在中枢目录服务器,或者说把所有机器都变成了服务器,这就是第二代P2P??分布式P2P。
  在分布式P2P中,对等机通过与相邻对等机之间的连接遍历整个网络体系。每个对等机在功能上都是相似的,并没有专门的服务器,而对等机必须依靠它们所在的分布网络来查找文件和定位其他对等机。
图3:点对点的分布式网络

  以Gnutella网络为例,一台新对等机首先通过访问某特殊站点提供的“主机缓存服务”(Host Cache Services)机制来得到一台活动对等机地址,通过与它建立一个连接将自己接入Gnutella网络;接着,该新对等机主动探查网络中的其它对等机,找到与之相邻的对等机节点,在进行文件查找时,该对等机首先向与之相邻的所有活动对等点发送一个查询描述符Query,在其他对等机接收到该查询描述符后,检查本地是否有符合查询请求的文件内容,如果有,则按查询描述符的发送路径返回一个查询响应描述符QueryHit,无论本地是否存在符合查询请求的文件内容,其他对等机都会将该查询包通过扩散方式继续在网络中传递,直至查询包中TTL(Time of Life)属性值递减为0时才停止继续转发;一旦定位了响应查询文件的对等机之后,就与响应对等机建立TCP连接,通过HTTP协议从响应对等机中下载自己查询的文件。文件的传输不再经过Gnutella网络进行。
  
  分布式对等网络模型也存在很多弊端,主要表现在以下方面:
        搜索请求要经过整个网络或者至少是一个很大的范围才能得到结果,因此,这种模式占用很多带宽,而且需要花费很长时间才能有返回结果。
        随着网络规模的扩大,通过扩散方式定位对等点及查询信息的方法将会造成网络流量急剧增加,从而导致网络拥塞,最终使Gnutella网络被分片,使得查询访问只能在网络很小的范围内进行,因此,网络的可扩展性不好,不适合大型网络。
        纯分布式的P2P模式很难被企业所利用,因为它缺少对网络上的用户节点数以及对他们提供的资源的一个总体把握。
        安全性不高,易遭受恶意攻击,如攻击者发送垃圾查询信息,造成网络拥塞等。
        这种无中心、纯分布式系统的特点是:它不再是简单的点到点通信,而是更高效、更复杂的网络通信;eDonkey和eMule等软件引入了强制共享机制,在一定程度上避免了第一代P2P纯个人服务器管理带来的随意性和低效率。
(3)混合P2P网络
集中式P2P有利于网络资源的快速检索,并且只要服务器能力足够强大就可以无限扩展,但是其中心化的模式容易遭到直接的攻击;分布式P2P解决了抗攻击问题,但是又缺乏快速搜索和可扩展性。混合式P2P结合了集中式和分布式P2P的优点,在设计思想和处理能力上都得到了进一步的优化。它在分布式模式的基础上,将用户节点按能力进行分类,使某些节点担任特殊的任务。这些节点共分为3种:
        用户节点:普通节点,它不具有任何特殊的功能。
        搜索节点:处理搜索请求,从它们的“孩子”节点中搜索文件列表,这些节点必须有128 kbit/s RAM的网络连接速度,建议使用高性能的处理器。
        索引节点:连接速度快、内存充足的节点可以作为索引节点。索引节点用于保存可以利用的搜索节点信息,并搜集状态信息,维护网络结构信息。

一个节点可以既是搜索节点又是索引节点。用户节点可以选择3个搜索节点作为它的“父”节点,如果“父”节点接受该用户节点作为它的“孩子”的话,那么该用户节点就可以提交其所要共享的列表给它的“父”节点。在缺省的情况下,搜索节点可以最多维护500个“孩子”节点。在第三代P2P的软件体系结构中,采用了混合式P2P。这种模式的关键之一是引入了索引节点,索引节点不会直接连接到有版权的资料上,它就像搜索引擎一样,只是搜索和所需资料相关的地址,至于用户到底连接下载了什么内容则和它无关。这种模式的关键之二是引入搜索节点,搜索节点管理着所属用户的文件列表。用户节点通过索引节点获得搜索节点信息,之后用户节点就与获得的搜索节点相连,每一次查询都通过该搜索节点进行。当用户发出搜索请求后,如果和用户节点直接相连的搜索节点查询结果达到100个(这里的100个搜索结果,可以由用户自己来设定)就停止;如果不足100个,就向相邻的搜索节点发出请求,如果查询结果还不够,就继续向外快速发散,直到所有的搜索节点都被搜索到为止。若所有的搜索节点都被访问过,就意味着整个网络上的节点都被搜索到了,其速度要比纯P2P模式快得多。
  BT就是第三代混合式P2P网络的典型代表,开创了新一代P2P的潮流,它批判地继承了前辈产品的优点,将中心目录服务器的稳定性同优化的分布式文件管理结合起来,从而在效率上远远超出了eDonkey这类产品。它要求提供一个或多个统一的Web发布服务器,以供发布和搜寻资料。在客户端,它通过一个IE插件提供下载、上传管理。BT把一份大文件切割成碎片,为每一个碎片标上特殊标识,用户无需到一个固定地点。
图4: P2P软件BT下载文件的网络流通方式


而在网络游戏的P2P技术运用中,为了减轻单台服务器sever的压力,采用的是“服务器群”传输的概念。但是目前存在的问题是由于服务器群数量庞大、价格昂贵,而且难于部署和管理。在网络游戏的制作过程中,研发人员应尽量把点对点的分布式模式加入其中,尽量减少服务器的成本量。
图5:混合式服务器群/客户端群

1.4 代表性P2P研发产品和技术
1)        ICQ、AOL Instant Messenger、Yahoo Pager、微软的MSN Messenger以及国内的OICQ类的即时通信软件。
两个或多个用户互相使用文字、语音或文件进行交流,快速、直接,易于同非PC网络设备(如PDA、手机)通信,而且它不依赖设备即可辨别用户。由于利用P2P技术可以弱化甚至摆脱对中央服务器的依赖,这样的通信更接近非互联网通信模式。
2)        Farsite(Microsoft),Ocean Store类数据存储软件。
用于在网络上将存储对象分散化存放,而不像现在放于专用服务器。这样减轻了服务器负担,增加了数据的可靠性和传输速度。
3)        Napster类软件
实现数据共享,使用者可以直接从任意一台安装同类软件的PC上下载及上载文件,而不是从服务器。用户可以检索、复制共享的文件。软件自动发现最新的文件列表,发布者无需担心发布的问题。
4)        Infrasearch、Pointera类数据搜索及查询软件
用来在P2P网中完成信息检索。一旦形成P2P专用网,其上的数据搜索与现在互联网中数据存在中央服务器的情况有所不同,必须要考虑动态地将当前P2P网络中各个Peer的内容进行收集,并且要有效地向用户传递。 P2P网用户中相当数量在联网方式上不同,专线、拨号、宽带、窄带都会碰到;联网的时间可以一个是24小时在线,而另一个完全可能仅联机几十分钟; 使用的操作系统也不一定相同。
5)        Netbatch(Intel)类协同计算软件
可联接近1万台PC,利用它们的空闲时间进行协同计算,完成超计算量的工作(如空间探测,分子生物学计算,芯片设计)。
6)        Groove 类数据或行动协同软件
它是基于P2P连接的软件工具,可以建立一个安全的企业级协同工作平台(P2P网),提供供求信息链上的互动信息沟通,如货品目录、库存及发货清单,帮助使用者进行经销渠道维护、客户服务和支持。
7)        游戏软件
事实上许多网络游戏均是P2P方式的,尤其是早期的那些双人及多人对弈游戏,目前为了减轻游戏服务器成本的压力,越来越多的网络游戏,甚至MMORPG游戏都开始考虑加入P2P的技术理念,如劲乐团、劲舞团的歌曲同步下载等就是P2P技术的应用。
8)PPStream、PPLive、QQLive等播放器
    该类软件广泛用于网络电视,一般来说都播放流畅、稳定,视听清晰,并且在网络上能够突破地域,视听广泛,且可实现即时评论,并且多数软件的优势是观看的人越多(即节点越多),播放越流畅。
2.        P2P技术的应用前景及优势
近年来互联网上P2P业务发展迅速,P2P已经成为宽带的杀手级应用。目前P2P应用占宽带流量50-60%(白天)到90%(晚上),企业用户的40%。MP3和视频文件共享下载的P2P流已经成为宽带互联网业务的主流,基于P2P的即时通信和互联网电话发展迅速,对等广播正在兴起,P2P协同计算和网格方兴未艾。
2.1 P2P在技术上的实际应用
P2P在技术上的实际应用主要体现在以下几个方面:
    P2P分布式存储(图)
    P2P分布式存储系统是一个用于对等网络的数据存储系统,它可以提供高效率的、鲁棒的和负载平衡的文件存取功能。这些研究包括:OceanStore,Farsite等。其中,基于超级点结构的半分布式P2P应用如Kazza、Edonkey、Morpheus、Bittorrent等也是属于分布式存储的范畴,并且用户数量急剧增加。
    计算能力的共享(图)
    加入对等网络的结点除了可以共享存储能力之外,还可以共享CPU处理能力。目前已经有了一些基于对等网络的计算能力共享系统。比如SETI@home。目前SETI@home采用的仍然是类似于Napster的集中式目录策略。Xenoservers向真正的对等应用又迈进了一步。这种计算能力共享系统可以用于进行基因数据库检索和密码破解等需要大规模计算能力的应用。
    P2P应用层组播(图)
    应用层组播,就是在应用层实现组播功能而不需要网络层的支持。这样就可以避免出现由于网络层迟迟不能部署对组播的支持而使组播应用难以进行的情况。应用层组播需要在参加的应用结点之间实现一个可扩展的,支持容错能力的重叠网络,而基于DHT的发现机制正好为应用层组播的实现提供了良好的基础平台。Internet间接访问基础结构(Internet Indirection Infrastructure)。
为了使Internet更好地支持组播、单播和移动等特性,Internet间接访问基础结构提出了基于汇聚点的通信抽象。在这一结构中,并不把分组直接发向目的结点,而是给每个分组分配一个标识符,而目的结点则根据标识符接收相应的分组。标识符实际上表示的是信息的汇聚点。目的结点把自己想接收的分组的标识符预先通过一个触发器告诉汇聚点,当汇聚点收到分组时,将会根据触发器把分组转发该相应的目的结点。Internet间接访问基础结构实际上在Internet上构成了一个重叠网络,它需要对等网络的路由系统对它提供相应的支持。
2.2 P2P的应用领域及优势
P2P技术从出现到各个领域的应用展开,仅用了几年的时间。从而证明了P2P技术具有非常广阔的应用前景。目前主要的应用优势有:文件交换、分布式计算、协同工作、分布式搜索、智能代理等。
1)文件共享与交换
可以说文件交换的需求直接引发了P2P技术热潮。在传统的WEB方式中,要实现文件交换需要服务器的大力参与,通过将文件上传到某个特定的网站,用户再到某个网站搜索需要的文件,然后下载,这种方式的不便之处不言而喻。电子邮件是方便了个人间文件传递问题,却没法解决大范围的交换。这也是WEB的重要缺陷,Napster就是在情况下横空出世,抓住人们对MP3喜欢的需求,Napster的MP3交换直接引发了网络的P2P技术革命。在国外类似Napster的产品很多,如CuteMX、Freenet、Gnutella、iMesh、Toadnode、Scour Exchange等。目前,国内领先的P2P技术可以实现文件传输、下载时的连接快、寻源快、下载快三大优势。
2)协同工作
公司机构的日益分散,给员工和客户提供轻松、方便的消息和协作的工具,变得日益重要。网络的出现,使协同工作成为可能。但传统的WEB方式实现,给服务器带来了极大的负担,造成了昂贵的成本支出。P2P技术的出现,使得互联网上任意两台PC都可建立实时的联系,建立了这样一个安全、共享的虚拟空间,人们可以进行各种各样的活动,这些活动可以是同时进行,也可以交互进行。P2P技术可以帮助企业和关键客户,以及合作伙伴之间建立起一种安全的网上工作联系方式,因此基于P2P技术的协同工作也受到了极大的重视。这点在电子商务领域体现的尤其明显,基于P2P的电子商务模型具有以下优点:
        安全性
企业之间的交易数据通过端对端的的安全传输进行,交易数据不易被窃取,具有较高的安全性。
        鲁棒性
基于分布式的特点,整个系统具有比较高的鲁棒性,其中一个端点的破坏不会影响其他端点的正常运行。即便是交易管理中心被破坏,各个端点的原有交易也不会受到影响,甚至已经建立业务联系的公司可以继续进行与原有过程比较比较类似的交易,只不过寻找新公司、建立新过程的能力受到了限制而已。
        分布性
参与交易的企业和交易中心本身都具有分布性。同时保证了对于企业操作透明,交易过程没有差别。将不同类型的交易市场分开,可以保证多个交易市场的特色以及服务的质量。
        扩展性
由于采用了XML技术,以及分布式的体系结构,保证了整个系统具有比较强的扩展性,可以较自由的增减市场、企业、产品、过程。
        服务质量管理
在这种模式下,可以很容易的实现服务质量管理,根据各个企业购买的服务不同,可以在合作企业数目、交易数目、登陆时间长度等等方面区分服务质量。
3)搜索引擎
P2P技术的另一个优势是开发出强大的搜索工具。P2P技术使用户能够深度搜索文档,而且这种搜索无需通过Web服务器,也可以不受信息文档格式和宿主设备的限制,可达到传统目录式搜索引擎(只能搜索到20%-30%的网络资源)无可比拟的深度(理论上将包括网络上的所有开放的信息资源)。以P2P技术发展的另一先锋Gnutella进行的搜索为例:一台PC上的Gnutella软件可将用户的搜索请求同时发给网络上另外10台PC,如果搜索请求未得到满足,这10台PC中的每一台都会把该搜索请求转发给另外10台PC,这样,搜索范围将在几秒钟内以几何级数增长,几分钟内就可搜遍几百万台PC上的信息资源。可以说,P2P为互联网的信息搜索提供了全新的解决之道。著名的搜索引擎公司Google也宣称要采用P2P技术来改进其搜索引擎,一家名为infrasearch的新建公司也因为开发P2P技术的搜索引擎而获得了一笔巨额风险投资。
4)分布计算
P2P技术可以为企业或者研究机构提供大规模的运算效能。它可以利用整个网络上的电脑,运用其闲置的中央处理器,内存以及磁盘空间,让企业或者研究机构将大型的运算工作分散到多部电脑上。此外,其运算结果可以直接分享到对等网络上的其他机器上。以往未曾运用的计算资源,如今可以不通过分布式建构就得到充分运用的效果。其结果就是更快速的计算过程以及更低廉的成本。
5)智能代理
P2P技术也可以让电脑网络通过智能代理程序,进行灵活的人机互动。智能代理程序常驻在对等网络的电脑上,并互相传送信息进行通信。智能代理还可以为其他对等共享系统进行初始化操作。例如,智能代理可以用来根据网络进程的优先顺序进行排序,统计流量,查找本地的共享文档或者检测异常行为并中止其运行,避免病毒和黑客程序对网络的破坏。
2.3 P2P技术在网络游戏中运用的优势
事实上许多网络游戏均是P2P方式的,尤其是早期的那些双人及多人对弈游戏,目前,为了减轻游戏服务器成本的压力,越来越多的网络游戏,甚至MMORPG游戏都开始考虑加入P2P的技术理念,如劲乐团、劲舞团的歌曲同步下载等就是P2P技术的应用。
P2P技术在网络游戏中的应用优势主要便体现于以下几方面:
        减轻服务器压力,缩小服务器成本;
        网络游戏玩家之间也可以进行游戏中的文件共享与交换,《劲乐团》、《QQ音速》等音乐资源在客户端的共享和交换。
        现在的网络游戏服务器可支持1000-2500左右同时在线,应用p2p技术后可以延伸到4000-10000人在线。100000
        节约成本
        以wow为例子。。。30w美金。。。应用p2p,,,
        节约服务器带宽1000/p---5000/s   1000/p---1000/s。
        文件共享交换。
        应用p2p可以增加自然互动功能(p2p功能的延伸,视频,语音)
        游戏速度快
        增加p2p的小游戏
2.4 P2P技术应用的限制条件
但目前,影响P2P技术应用的限制条件也很多。
  1.可管理性方面的问题
  在实际应用方面,P2P的运算结构很容易引发错误和故障。例如,在P2P网络中,用户可能会突然关闭其它人正在访问的电脑设备。还有目前越来越多的商业人士使用便携的笔记本电脑,很可能当带有非常重要数据的笔记本电脑离开公司的内部网络,就会出现其他人无法访问的尴尬局面。 P2P网络的精髓在于其“乌托邦”式的管理方式,这种方式给了用户更多的自由,但是这也陷入了“无政府主义”的困境。可以想象,缺乏管理的P2P网络将会成为病毒、色情内容以及非法交易的温床。
  2.安全问题 
  不少专家认为,不同的计算机平台、软件版本和大量存在的其他因素成为分布式计算得以广泛应用的一个难以逾越的障碍。微软的高级研究员Gordon Bell说:“要使P2P的梦想成为现实,安全和标准是最重要的。” 物理和逻辑安全是P2P模式所要关心的重点问题。公司用户理所当然地将他们的服务器放置在安全地点,同时使用安全软件进行保护。但是桌面电脑往往安全级别较低。如果将办公场所内的所有桌面电脑通过内部P2P网络进行互联,将大大增加不安全隐患--黑客可以只要访问其中一台电脑,就可以在整个网络中畅通无阻
  著名的网络安全公司ISS(Internet Security System Inc.)的研究主任Chris Rouland先生曾针对Napster这样的音乐交换服务做出这样的评判:“我们将网上音乐下载称作危险的网络行为。”这种安全上的隐患通常来自两个方面:病毒和黑客。谁也不知道,自己下载的文件是否带有致命的病毒,而无孔不入的黑客能放过一个呈开放状态的电脑系统吗? 在Napster上,有一点是不容置疑的,那就是:你正和自己不认识、不信任的人分享代码及IP地址。一旦IP地址公开,用户便很可能引来入侵者或“拒绝服务”攻击。与拨号上网的方式相比,任何以高速方式连接网络和维持开放状态的电脑,其遭受攻击的风险更高。
  3.成本仍然过高
  商业应用的开发人员需要仔细的检测企业应用程序所需要的服务器资源和带宽。P2P模式则减少了这种仔细设计的可能性,而增加了大量的不确定带宽、服务器资源和分布式存储的需求。尽管理想中的P2P模式会将数据存储在消费者的客户端系统中,这样在实际的应用中就需要客户端和服务器端一样都拥有所需数据的备份。此外,P2P模式的应用越多,那么就必须拥有更快的硬件性能和更大的存储容量。而上述问题可能造成的结果必然是抵消了原来P2P可以减少服务器端费用支出的优势。
  能源的消耗也是个问题--在P2P模式中,客户系统将需要24小时的不关机运行--而这种情况的出现,将会导致P2P解决方案的总体成本增高。虽然P2P系统所使用的硬件设备可能比服务器的价格较低,但专家指出,P2P模式的真正成本支出在于规划和管理。
  4.仍没有非常吸引人的商业应用
  P2P模式目前所存在的最大问题就是缺少足够吸引人的企业应用程序。而它最适应作相对简单、重复性的工作,可以把工作任务分配给数量众多的电脑系统中。上述的SETI是一个非常理想的分布式计算计划,由于运算结果不需要特定的排序,而任务是运行在大致相同的电脑系统中,因此数据可以更简便的汇总,日程安排也相对更加轻松。P2P模式也具有成为工作组协作系统的有力助手的潜力,但某些公司财政方面的操作,比如ERP(企业资源计划)和CRM(用户关系管理)等应用并不适合分布式计算环境。
  5.吞噬网络带宽
  由于P2P网络的用户众多,当某个用户进行搜索时,自然会得到大量的搜索结果。而除了少数有用的信息以外,其他大多数的信息可能都属于垃圾信息。用户将不可避免地陷入垃圾信息的汪洋大海。在P2P使网络变得空前活跃的同时,将大量吞噬网络带宽。特别是在大多数用户更喜欢传送大体积的MP3文件、视频文件的时候,这个问题更加不容忽视。在我国,网络带宽较窄成了P2P应用难以逾越的障碍。
  可是,尽管对P2P存在着这样那样的疑虑,许多PC业专家仍然相信该技术将彻底推翻现在抑制分布式计算发展的藩篱。现在的桌面系统的性能远远超过以前的许多服务器,这为P2P的发展提供了巨大的硬件基础。随着宽带、高速网络的发展,PC将释放出前所未有的潜能,而VPN(虚拟个人网络)软件也将为P2P的发展提供保障。

19

主题

561

帖子

581

积分

高级会员

Rank: 4

积分
581
发表于 2009-3-4 11:46:00 | 显示全部楼层

Re:P2P技术分析

这个……跟策划的设计有关吗?

122

主题

2758

帖子

3151

积分

论坛元老

Rank: 8Rank: 8

积分
3151
发表于 2009-3-4 11:54:00 | 显示全部楼层

Re:P2P技术分析

召唤SPY 删贴…………

149

主题

4781

帖子

5094

积分

版主

Rank: 7Rank: 7Rank: 7

积分
5094
QQ
发表于 2009-3-4 11:54:00 | 显示全部楼层

Re:P2P技术分析

同意楼上

lz麻烦把复制的地址附上

23

主题

1145

帖子

1146

积分

金牌会员

Rank: 6Rank: 6

积分
1146
发表于 2009-3-4 11:54:00 | 显示全部楼层

Re:P2P技术分析

技术性灌水,即言之有物,管内容是从哪里来的,其目的是灌水,但内容却无法让论坛管理者删帖,所以称为技术性灌水

40

主题

1149

帖子

1167

积分

金牌会员

Rank: 6Rank: 6

积分
1167
发表于 2009-3-4 13:04:00 | 显示全部楼层

Re:P2P技术分析

我觉得这帖子很好,策划人员也应该学习一下,扫扫盲。

149

主题

4781

帖子

5094

积分

版主

Rank: 7Rank: 7Rank: 7

积分
5094
QQ
发表于 2009-3-4 13:15:00 | 显示全部楼层

Re:P2P技术分析

楼上,策划不是白开水,啥都能往里兑的
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-20 05:09

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表