大型机方案里,几乎每一件事都由大型计算机来处理。在很多信息系统里,大型机的处理能力很快成为瓶颈。企业被迫不断投钱到大型系统的升级中以增加处理能力。然而,大部分时间里很多客户机是空闲的,并且有大量的磁盘存储能力没有使用。
计算系统的客户/服务器(C/S)结构是作为改变大企业里大型机系统的传统方案而第一次提出来的。在大型机方案里,几乎每一件事都由大型计算机来处理。在很多信息系统里,大型机的处理能力很快成为瓶颈。企业被迫不断投钱到大型系统的升级中以增加处理能力。然而,大部分时间里很多客户机是空闲的,并且有大量的磁盘存储能力没有使用。
当今,全球的企业又开始搜寻提高处理能力而不用进行更多投资的方法。Peer-to-Peer(P2P)模型就是答案。
在P2P系统里,计算机能够同时扮演客户机和服务器的角色,它们的作用在任何任务里都取决于当时系统适合于工作的对象。这个方案能够最小化工作负荷而最大化全部网络的性能。
P2P计算允许用户使用网络中集中的处理能力。它帮助组织进行大量以前不能进行的计算工作。对于每一个使用者,P2P应用的好处是拥有更低的成本和更快的处理速度。
平时,当我们在网上冲浪的时候,我们通过封装的连接来选择一个预期的Web页面,浏览器会发送一条信息到远程的Web服务器。信息以超文本传输协议(HTTP)编码。Web服务器定位相应的Web页面并把它发回浏览器。这个简单的模型对于只想浏览静态Web页面的用户来说是足够的。但是,一些应用程序需要更多的处理,因此要求动态的Web页面。把这种调用Web服务器端的程序的能力在P2P应用中使用,就引出了一个新概念――同时使用众多服务器计算力的单一客户计算机。传统的C/S系统里,服务器通常为客户机提供数据服务。在这种模型里,我们定义了“计算力”,其意义在于,这些计算机向其他用户提供CPU计算能力服务。系统里的每一个计算机在安装了Web服务器包和一些Java程序后就成为了一个计算力服务器。Web服务器的行为被很好地定义过后,有很多好的服务软件包可供使用。它们大多是自由/共享软件,容易安装。任何计算机用户都能够安装Web服务器程序包并允许计算机作为计算力服务器。
在计算力服务器模型里我们需要一个接一个地升级服务器机器。如果我们有大量的服务器,其维护将会很耗时。但是,大部分Web服务器具有上载功能,维护的工作能够通过这个功能来减轻。如果所有的参与者都在一个组织内部并且他们的计算机连接在一个局域网里面的时候,维护的工作能够进一步减少。只要一个Web服务器和小服务程序的拷贝安装在网络驱动器里。每个计算机都通过单一版本的网络驱动器调用Web服务器和小服务程序。
一些障碍不是仅仅软件就能够克服的,单单建造可靠的自动机也不能解决传输问题。必须建造一个计算基础设施才能实现P2P应用的全部好处。其中重要的环节就是协调者的产生。协调者――这个模型的一个问题是很难发现计算力服务器。
客户机把小服务程序存储在协调者上。任何想捐赠计算力到网络的计算机主人必须注册到协调者,并提供如下信息:IP地址、处理器类型、何时以及有多长时间可用来捐赠、可用的内存数量。
协调者不参与实际的计算,它存储参与者处理能力的信息。它的任务是:允许新用户注册;维护计算力服务器信息数据库;满足用户的计算力需要,传送计算力服务器的IP地址给用户;传输小服务程序给计算力服务器。
用户与协调者联系以获得可用计算力服务器的IP地址,并使用IP地址初始化计算力服务器上的小服务程序。
对于非常大的P2P项目,每个国家、城市和组织建立一个多级别的协调者非常必要。组织协调者将记录组织里计算机的IP地址。城市协调者将记录该城市所有组织协调者和计算力服务器。全球的系统将包括许多国家、城市和组织的协调者。
如果我们欲建立一个由不同组织和个人组成的P2P系统,我们必须向参与者提供一定的激励。一种方法是建立一个协会,其成员(组织或个人)能分享其他成员的计算力。协会的成员承诺连接到因特网议定的时间长,允许其他成员访问计算资源。当然,也可以建立一个过剩计算力的市场,个人、组织者能够销售他们没有使用的计算力来赚取一定的收入,这样能够增加投资的回报率并削减计算机的折旧期。
很多企业等待供应商开发软件产品允许相互共享CPU的计算力。现存的Web服务器技术能够很轻松地使用这里所描述的模型。除了不花费昂贵的金钱在专用的P2P软件包上外,作为被广泛接受的Web服务器的特征,P2P系统使用Web服务器技术很容易维护。Web服务器添加少量的Java程序就可以成为计算力服务器了。
用于交换计算力的P2P网络在将来会很流行。很多组织和个人会发现他们能够以更有力的不同方式获得对计算力的进一步的访问。