作者:Can Erten(我叫他罐子先生:D)修改:Richard MacManus。
这是在Read/WriteWeb上发表的以探索网络的P2P世界为主题的两篇系列文章中的第一篇。第一部分(本文)是对P2P的概要介绍,还有一些现实中已为广泛应用的P2P程序,第二部分将讨论未来的P2P应用。
随着互联网接入速度的提高,网上相关服务的需求也在不断增加。网络革命后,点对点网络历经进化并发展形成了一批针对领域千秋的应用– 即时通讯,文件共享等。其他的一些革命性的想法还在研究之中。人们试图在各种不同的应用中使用P2P,包括电子商务,教育,协同工作,搜索,文件存储,高性能计算。在这一篇post中,我们会把关于P2P的点子和程序都过一遍。
介绍
点对点网络已经被越来越多的用户所需要并且作为一种标准的分发信息的标准方式登堂入室,因为它的结构使得网络富有延展性,相较普通网络有更高的效率和更好的表现。P2P网络是去中心,自组织和从单纯意义上来说的动态的(网络),并且为传统的服务器-客户端计算模型提供另外一种选择。服务器-客户端结构容许用户链接到某一个服务器,尽管服务器是可扩展的,但这总有限制(金钱,架构和服务等诸多方面)。而P2P网络却拥有几乎无限的扩展可能。
在“纯粹”的P2P系统中,每个节点都扮演服务器和客户端的角色– 他们在没有任何集中控制的情况下分享资源(真是共产主义和谐社会的典范!)。但相对的,大部分P2P应用都有某种程度上的集权。这些网络被称作为“杂交”P2P网络,它们至少会集中用户列表。这是IM和文件分享软件工作的原理– 系统总是保存着包含着IP地址信息的用户列表。
不同软件所使用的P2P网络让用户可以分享电脑的处理能力(分布式系统),数据(文件分享)和带宽(使用多节点传送)。P2P利用个人电脑的能量和资源,而不是强大的中央服务器。分享的资源通过大量的用户基数保证高可用性。P2P是互联网研究的重要领域,因为他在分布式计算中有巨大的潜力。他对IT产业也是非常重要的,因为围绕着P2P网络新型的商业模型已经在逐步建立中。
P2P标准
P2P网络的关键结构是保证其可靠性,效率,可扩展性和可移植性。
目前而言P2P程序研发没有标准可用,但互联互通需要标准。Sun尝试建立被称作JXTA的基本框架,这是为网络编程和为分布式计算提供解决方案的平台。Sun是第一家试图为P2P提供标准的公司,但明摆着其他的公司也会在这个领域里插上一腿。Microsoft,Intel和IBM在他们的研究实验室中捣鼓着自己的一套标准。所以总结起来,这是个开放而没有标准的领域。
Gnutella

Gnutella网络允许同意网络内的链接并通过集中式搜索文件内容(泛洪搜索),已经在很多程序中应用。它是开放,去中心的通过节点搜寻文件的搜索协议。Gnutella是纯粹的P2P网络,没有任何集中式服务器。
都是使用Gnutella搜索协议,在兼容网络应用中却发展出了不同的应用。使用Gnutella协议的任何人都可以在搜索和接触网络中的文件。它工作的原理是这样的,当程序启动后,Gnutella将尝试寻找至少一个可连接的节点。当连接建立后,客户端申请可连接的其他节点的IP地址列表并尝试连接,直到达到可连接数的最大值。当用户搜索文件时,将向所有所连接着的节点发送请求,该请求将会被这些节点发送到与他们相连的更多节点,直到节点之间的跳跃数达到一定次数。
根据Wikipedia,截至2005年12月Gnutella是互联网上域第三流行的文件分享网络 – 在eDonkey 2000和FastTrack(有谁知道这个是什么?)之后。Gnutella被认为至少为220万用户提供服务,并保持有75万-100万用户在线。
P2P产业用各种不同的方法使用P2P网络,每个应用都有不同的商业模型和结构。那么让我们来看看现实世界中正在被广泛使用的P2P程序们:
即时通讯
首次应用P2P技术的程序是IM软件。在互联网发展的初期,人们使用Gopher协议和IRC服务器来交流。这些技术只能处理一定数量的并发动作,所以那时候当服务器接近爆炸装提案的时候信息的传递总有延时。P2P的应用使得IM的构想发生了翻天覆地的变化。P2P网络下,所耗费的带宽被用户分担,这使得更快更灵活的交流成为可能。
文件分享
点对点文件分享纪元始自Napster并且被更加强劲的比如Kazaa,Gnutella这样的程序发扬光大,这些程序使得P2P成为主流。尽管一些P2P文件分享程序(大名鼎鼎的Napster)被司法问题搞死鸟,人们对这个产业的需求并没有因此而止反而愈演愈烈。如今Napster已经被“合法化”(我想说和谐了)同时还有其他的比如Joost这样的新型媒体P2P程序进入市场。我们会在下一篇post中讨论这些应用。
协同社区
文档分享和协同对一个公司来说是非常重要的。这个问题在P2P网络之前是通过内部门户系统和协作服务器来实现的。不过信息必须要保持更新这对门户来说是比较麻烦。使用每台电脑的资源而不是中央式服务器的P2P网络的协作打破了这层阻碍。
Groove是Microsoft在2005年4月发布的带有P2P功能的软件。Groove现在提供基于Microsoft Office的解决方案,主要是利用P2P实现文档分享。它同时提供IM并且集成了视频会议系统解决方案。它能够提供用户和基于角色的安全保证,而这对于企业级应用的P2P是最重要的一个方面。Groove也是一种提供离线服务的“中继服务器”。
IP电话
P2P的另一个最主要的应用是IP电话。IP电话革命性的改变了我们使用互联网的方法,允许我们从不管世界上的哪个地方通过电脑拨打免费的电话。
Skype是P2P VoIP应用的最好例子。它在2005年被eBay收购。Skype建立在Kazaa已有的P2P文件分享网络的基础之上。用于实时传输视频和音频的带宽被作为资源分享。主服务器只为了保存在线信息和计费存在(比如SkypeOut)。
高性能计算 – 网格计算
高性能计算对于科研和大公司有着重要意义。而P2P因为在实现高性能计算中帮助系统分享比如计算力,网络带宽和磁盘空间这样的资源而扮演重要角色。
蜂窝计算是类似的 – 它是由亿万台电脑连接至互联网并形成一个超级计算机,如果这样能够成功的进行管理的话。SETI@HOME是其中一个流行的项目(主要目的是搜寻外星智慧,这是一个在两年半时间内建立的参与者包括226个国家的330万志愿者用户,使用79万6千年CPU计算时间和45T数据的项目)(妈妈呀,好长的句子)。
一些其他的项目也在这个领域内工作。Datasynapse向他们的用户所使用的计算能力收取费用(不是很了解,是不是类似虚拟机的产品)。这样的开源项目有Globus和Globus Grid Forum。
下期预告
在第二部分中,我们将探索未来的P2P应用。与此同时,告诉我们你在用啥P2P软件(你肯定在用)和你觉得P2P产业怎么样。
原文翻译完
说起来这篇文章没有什么营养,也没有提供什么我们所不了解的东西,说起来国内的P2P应用在某种程度上比其他任何一个大陆都要活跃,我们所接触的P2P程序和建立在P2P程序上的违反P2P精神的程序都不少,那个不要脸的vagaa,我说的就是你。只是我很想抢劫翻译这个文章的第二部分(不准和我抢!XD),如果只翻译第二部分而不翻译第一部分的话大概第一部分会不高兴的吧;)所以翻译这篇本篇先,
本篇文章不废话罗嗦,也可能你觉得我已经很废话罗嗦了吧:)











P2P介绍和互联网应用


花花 状元 | Blog | 03/31/2007
总是搞不好排版
这篇大家瞄一眼就好:)
neuron 探花 | 04/01/2007
呵呵, 花花翻译的速度和质量都能得到很好的保障。 这篇文章里基本上挑不出什么不妥的地方。希望你篇文章的人气能够超过Twitter那篇。
摩摩 探花 | 04/01/2007
支持一哈~~
zhoucheng 榜眼 | Blog | 04/01/2007
期待下一篇,不会和你抢的,哈哈。。。
springrider 探花 | Blog | 04/01/2007
p2p这玩意儿必将大行其道
keke 童生 | 08/29/2007
是第一次接触p2p,感觉有点神奇,希望以后可以用得到.
<br/><br/>
<br/><br/>
<br/><br/>
<br/><br/>