P2P(对等网络)--  一种 分布运算的模型

 

陈余   方美琪

 

 

 

 

             P2P (Peer-to-Peer—对等网络) 是分布运算的一种模型,是分布运算系统的一种新体制。有人称之为“民主化” 体制。自顾客/服务者系统以来, Internet 上取得信息或与别人连接,总得由一个作为数据聚散点的中央服务者计算机,负责指挥调度。P2P 等于在这系统中来一个“民主革命” ,废止中央极权,人人平等,每个实体既是服务者,又是顾客;或者说,都是同等人,无所谓服务者或顾客身份之分。

            P2P 2000 开始流行的,作为网络体系,是指两个或以上实体  PC 机或设备 Internet 上直接通讯或协作,可在有或无服务者的协助下,彼此相互共享共用资源,包括处理(CPU) ,过程(代码) 以及数据(文件) 三大类资源。由于通向每一个顾客的路途是经过一个 ISP,  因而 P2P 实际上是 Internet 内的一个内部网。一个人下载一个文件共享的应用,然后另一人也来下载,一旦连接于一个 ISP 上后,他们即可不须通过一个 Web 网点或电子邮件,而直接交换文件美国闹得打官司被控侵犯版权的网上共享音乐文件可自由下载音乐的 Napster 网就是用 P2P 做的。P2P 把许多计算机在 Internet 上连接起来,形成一虚拟超级计算机,以便在其上共享共用运算资源。Napster 虽因吃官司而出名但它并不是完全非集中的, 因而其文件共享协议不是最精致的 一个英国大学生发明的叫做 Freenet 的文件共享协议以及America Online 内几个程序员搞出来的Gnutella 都不要求用户必须路由一个中央服务者,他们的工作更体现P2P的思想

            P2P网络体系中,个个结点都直接连接起来,地位平等,彼此相互提供及/或要求服务。这些结点的地位虽平等,但其物理能力可以不要求平等从大型计算机到移动设备,其能力就彼此差距较大譬如大型计算机能作服务者,而移动设备就不见得能当服务者。但他们可以直接地位平等连接起来,实体(结点) 的加入增加体系的资源。

P2P网络体系中人人平等,权力分散,管理是个大问题。安全政策,后备政策,等等,都是复杂的。

            P2P的实现方面,宜提的有 Sun JXTA  Groove Networks GrooveSun JXTA (读作juxta) 是一种网络运算平台,为P2P应用的研制,建立了基本的基础体系结构。详见 (www.javaworld.com/javaworld/jw-10-2001/ jw-1019-jxta.html )

            Groove Networks Groove (www.groove.net) 是群件(groupware, 该公司愿称之为“peerware”) 应用,可使协作者以非集中的方式,为某一事项组织协作群。Groove 可使群的成员能在高度安全的共用空间内互动,以支持群内实时协作编辑群内所有一切文件、通讯以及应用都存储和复制在群内用户机上,以便群内所有成员都能联网或脱网访问。

 

            P2P作为一个新兴的领域,  时有名词不统一或意义不明确的现象,这是我们这个行业中常见现象。例如,有把网上 PC 间主要是直接共享共用数据(文件),叫 P2P  运算(其典型事例是Napster) 。网上 PC间直接共享共用处理能力,叫 Grid运算 (其典型事例是SETI@Home) ( "Power from the Grid," The Industry Standard, Feb. 2001, p. 92) 其实,P2P 运算和Grid运算都同样提供处理能力、数据和过程等三大类资源的直接共享共用。两词似很类似。但可以SunMicro 的两文件为例来说明其区别。在Sun The Jxta solution to P2P P2P的定义是,“一种网络模型,其中随操作内容而定,任何结点可作为服务者或顾客来操作。” SunGrid Computing: A New Technology for the Advanced Web网格是,“一种分布运算体系结构以便把计算和数据资源作为服务,在 Internet上提供,就很象电在电力网格上提供一样。”  换言之,前者强调“民主化” ;后者强调资源共享共用。网格运算是公用事业运算(Utility Computing) 的重要支柱之一。本栏今后将陆续介绍网格运算和公用事业运算。