1998年,当19岁的肖恩-范宁(Shawn Fanning)坐在电脑前编写一个基于P2P技术的共享软件时,他丝毫没有意识到这个叫Napster的软件即将引发一场互联网地震。Napster能够很方便地让肖恩跟女同学在互联网上交换最新的MP3格式的音乐,这位美国波士顿东北大学的一年级新生,慷慨地与同学们分享自己的聪明才智,他们当时的目的很简单,那就是更方便地结识到漂亮女同学。
1999年夏天,肖恩把他的Napster程序放到了互联网上,并架设了服务器让网友下载。出人意料的是,Napster突然之间成为了人们争相转告的“杀手程序”——它令无数散布在互联网上的音乐爱好者美梦成真,无数人在一夜之间开始使用Napster。与此同时,由Napster引发的P2P思想也传遍了互联网。
P2P技术在很大程度上颠覆了人们对互联网的传统观念。以往占据主导地位的互联网架构是客户端/服务器(Client/Server)结构。互联网以服务器为中心,各种各样的资源,包括文字、图片、音乐、电影等都存放在服务器的硬盘上,网民把自己的电脑作为客户端通过网络连到服务器上检索、下载、上传资料或请求运算———在这种架构下,客户端和服务器存在着明显的主从关系;而P2P技术,也称为对等网络(PeertoPeer)结构,它的本质思想是,整个网络结构中不存在中心节点(或中心服务器),在P2P结构中,每一个节点(Peer)大都同时具有信息消费者、信息提供者和信息通讯等三方面的功能,在P2P网络中每一个节点所拥有的权利和义务都是对等的。
肖恩编写的Napster音乐交换软件正是基于这种P2P技术原理,每一个安装了Napster软件的电脑既是服务器又是客户端,当这台电脑联上网络后,你就能够搜索到另一台装有Napster软件电脑里的音乐文件,同时其他装有Napster软件的电脑也能连上你的电脑,进行搜索或下载。然而,Napster的P2P思想贯彻得并不彻底,基于运行效率的考虑,也为了更方便网友检索和交流音乐,Napster把所有的音乐文件地址都存放在一个集中的服务器中,Nap-ster的用户能够方便地过滤大量的地址,快速找到自己需要的MP3文件。也就是说,Napster的用户还是需要Napster公司的服务器这个中转站才能找到另外一台装有Napster的电脑。而这个服务器,正是由肖恩成立的Napster公司维护。
很显然,肖恩为这个做法付出了代价。1999年12月,美国唱片业协会RIAA(Recording Industry Association of Ameri-ca)代表环宇音乐、索尼音乐、华纳音乐、百代唱片、BMG等七大唱片公司,以违反版权保护法为由把Napster公司推向法庭。他们称Napster向网民提供MP3文件共享软件侵犯了音乐版权,要求法院关闭该公司并赔偿损失1亿美元,Napster公司最终输掉了官司。唱片公司能够胜诉的原因是,法官认为集中化的服务器索引让这家公司必须对网络上的盗版负法律责任。
第二代P2P软件吸取了Napster的教训。1999年底,美国在线(AOL)的员工贾斯汀.弗兰克尔(JustinFrankel)发布了Gnutella。这个软件采用了一种新的文件交换网络技术,Gnutella不需要固定的服务器,使用者也不必进行注册,从理论上讲,只要打开Gnutella便能连上网络上的某台机器,用户发送的搜索请求在每一台电脑间来回传递,一直到找到文件为止,然后再将信息传回搜索者的电脑,这是一种真正意义上的对等分布式网络。由于没有真正的网络控制中心,FBI侦探和唱片公司律师永远都不知道该找谁的麻烦,美国上诉法院也认为,Gnutella和Napster不一样,这种软件的散播者,并未直接控制网络上所发生的行为,因而这种分布式网络是合法的。
但第二代P2P软件有个很大的问题,就是你很难分辨它与蚕食网络带宽的蠕虫病毒有何区别。就Gnutella而言,当数以百万计的搜索要求在网络上同时运行时,网络大塞车的情况就屡屡发生。幸运的是,Gnutella工程师改进了搜索处理方式,使搜索结果变成只限定于网络的某些人获得——例如,只有1万人,而不是200万人。
近两年来,P2P的用户越来越多,互联网上运行着各种各样的P2P软件,这直接导致的结果就是网络带宽趋于紧张。有调查显示,互联网三分之一的带宽是被P2P或BT下载软件“吃掉”的,P2P和BT软件转眼间成为众矢之的。于是,使用节约带宽新技术的第三代P2P软件应运而生。这类软件进一步改进了搜索算法,如借鉴了“Google”等搜索引擎所常用的“快照”技术(SnapShot),然后把这些文件“快照”分布式地存放在网络上。当用户发出搜索指令的时候,搜索的要求是先到达网络上的任何一台电脑上,然后这台电脑就会再将它转到另一台有更多文件信息的电脑,第三台电脑可能就拥有文件本身———或者也可能再继续将搜索要求转到其他有正确信息的电脑。整个过程有点像在照着交通指示牌循序问路,而不是路上随便找个人问路,这样很大程度上提高了搜索效率,节约了带宽。在第三代P2P网络里,分布式存放的索引文件都会随着电脑及文件的加入而持续更新。
如果把P2P技术仅仅用于交换MP3文件或下载电影,就有点辜负了它是互联网“杀手程序”的美誉了。实际上,P2P技术在下一代互联网运用中有着广阔的前景,如果说传统互联网的标志运用是“WWW”的话,新一代互联网就可以用P2P来指代。除了用于交换文件,P2P技术还可以实现对等计算、对等存储、协同处理与服务共享等。P2P技术将重构今天的互联网络,它正在互联网各个运用领域产生持久而巨大的变化。
但是,P2P对于用户最大的意义不是它的技术和功能,而是它的理念。P2P技术把网络中不同的计算机连接在一起,并充分利用互联网和Web站点中任何地方的闲置资源。P2P的目的是将它以用户为中心,所有的用户都是平等的伙伴。相隔万里的用户可以通过P2P共享硬盘上的文件、目录乃至整个硬盘,所有人都共享了他们认为最有价值的东西。这种用户间直接交流的方式,真正实现了互联网共享和自由的梦想,它正在改变着互联网现有的游戏规则,也改变着我们的生活。这种理念源于人们对互联网的憧憬和梦想,它使网络回归到Internet的本质,让共享与自由的精神充满网络世界。