P2P计算的未来 ——用web服务技术从P2P系统提取计算力的经济地模型上课讲义

上传人:go****e 文档编号:137408000 上传时间:2020-07-08 格式:DOC 页数:11 大小:213.50KB
返回 下载 相关 举报
P2P计算的未来 ——用web服务技术从P2P系统提取计算力的经济地模型上课讲义_第1页
第1页 / 共11页
P2P计算的未来 ——用web服务技术从P2P系统提取计算力的经济地模型上课讲义_第2页
第2页 / 共11页
P2P计算的未来 ——用web服务技术从P2P系统提取计算力的经济地模型上课讲义_第3页
第3页 / 共11页
P2P计算的未来 ——用web服务技术从P2P系统提取计算力的经济地模型上课讲义_第4页
第4页 / 共11页
P2P计算的未来 ——用web服务技术从P2P系统提取计算力的经济地模型上课讲义_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《P2P计算的未来 ——用web服务技术从P2P系统提取计算力的经济地模型上课讲义》由会员分享,可在线阅读,更多相关《P2P计算的未来 ——用web服务技术从P2P系统提取计算力的经济地模型上课讲义(11页珍藏版)》请在金锄头文库上搜索。

1、P2P计算的未来 用web服务技术从P2P系统提取计算力的经济地模型精品文档P2P计算的未来用web服务技术从P2P系统提取计算力的经济地模型原作:Alfred W. Loo译者:东南大学计算机科学与工程系华东北网络中心 彭艳兵计算系统的客户/服务器(C/S)结构是作为改变大企业里大型机系统的传统方案而第一次提出来的。在大型机方案里,几乎每一件事都由大型计算机来处理。在很多信息系统里,大型机的处理能力很快成为瓶颈。企业被迫不断投钱到大型系统的升级中以增加处理能力。C/S模型把处理的负担转移到客户机。在这个模型里,客户机就是向其他计算机(也就是服务器)请求服务的计算机,服务器则是专注为客户机提供

2、服务的计算机。例如,客户机请求数据库服务器搜索一条记录。在服务器向客户机返回该记录后,客户计算机进行更多的处理工作(计算、处理输出、准备图形用户界面GUI)。通过工作负担的分担,C/S系统能够在减少计算资源的预算的同时,提高整体效率。当在上世纪80年代晚期,经济萧条中的公司开始寻找新鲜的有竞争力的优势时,C/S模型开始被广泛接受。在当今的全球经济形势下,那些公司又开始搜寻提高他们处理能力而不用在软硬件上进行更多投资的方法。大部分时间里很多客户机是空闲的,并且有大量没有使用的磁盘存储能力。下一个逻辑的步骤是最大限度地使用这些计算机。Peer-to-Peer(P2P)模型就是答案。在P2P系统里,

3、计算机能够同时扮演客户机和服务器的角色,他们的作用在任何任务里都取决于当时系统适合于工作的对象。这个方案最小化工作负荷而最大化了全部网络的性能。 Figure 1. Napsters model.P2P计算允许用户使用网络中集中的处理能力。它帮助组织进行大量以前不能进行的计算工作。P2P的应用对小型公司和对个人一样都是具有成本效率的。对于每一个使用者的好处是拥有更低的成本和更快的处理速度。Napster模型尽管P2P是时髦的工业词汇之一,在开发大规模P2P项目时仍存在一些问题。这里我们看一下两个高姿态的P2P网络的例子并提出我们的解决方案。Napster模式的Napster是一个高姿态的P2P

4、网络,赋予其成员革命性的能力直接链结到其他成员的计算机并在他们的硬盘里搜索数字音乐文件并交换。Napster的操作如Fig1所示。成员从Napster网站下载一个软件包并安装到他们的计算机里面。Napster中央计算机维护当前链结到网络的成员的音乐文件目录。这些目录在一个成员上线或下线时自动升级。无论成员何时提交一个查询文件的请求时,中央计算机把信息提供给的成员让他直接与处理指定文件的其他成员计算机建立联系。目标文件的下载越过中央计算机直接发生在成员计算机之间。Napster和相似的程序的能力是他们允许分享广泛分散的信息储备而不需中央的文件服务器。有超过三千六百万的人加入到Napster社区,

5、并且这个社区迅速加速扩展和应用其他P2P模式。它的限制是它只能共享音乐文件,并且参与者不能共享其他资源。(Napster已经面临了不容忽视的法律挑战,那就是音乐出版公司反对受版权保护的作品自由拷贝,与它的技术模式没有关系,)Napster现在工作在一个新的模式,以避免法律问题。)CPU的共享除了文件共享,计算能力也能够由P2P网络共享。在2001年4月,英特尔公司、牛津大学、国家癌症研究基金和联合设备公司宣布加入通过链结数以百万计的PC组成的巨型P2P网络、瞄准战胜癌症的P2P计算项目。这个网络远比任何单一的超级计算机更强大。项目的执行很简单,每个用户通过因特网连接下载一个小程序到他/她的计算

6、机,这个程序以屏幕保护的方式运行,并且只在计算机空闲的时候工作。程序的目的是寻找治疗癌症的药物。它测试化学药物,通过“变形和组合”每一个数以亿计的分子结构来检测它们是否会影响与癌症治疗有关的蛋白质。当一个给定的分子结构触发了与目标蛋白质的作用时,它被通过因特网传输回协调者。项目在一定意义上成功了:它已经吸引了超过一百万台PC参与,到去年五月份时贡献已经积累到200,000年的CPU运行时间了。但是对于其他组织或个人开发相似于抗癌程序的P2P项目来说仍是困难重重。下面讨论一下这个方法的弱点和存在的问题。安全性:参与者在他们下载程序时必须完全信任研究组织。允许P2P程序运行在一台计算机上极大地增加

7、了脆弱性,它打开了一些安全缺口。这些缺口包括: 删除目标计算机里的文件或目录; 读写计算机上的文件; 执行程序或命令如使用调制解调器远程调用; 连接到其他计算机,执行非法操作,例如黑客攻击。难以增强P2P应用的安全性来对抗这些滥用,特别是当加入的计算机使用Windows操作系统时更是如此。任何名气超不过英特尔和牛津大学的组织在保证参与者网络的安全性方面都会存在问题。动机:参与者不会从参与这类的项目中获得任何切实的利益。他们贡献机时只不过是因为他们相信项目的目的。很多公众或者商业组织拥有数以千计的PC在上午9点到下午5点的工作时间里闲置不用。他们确实是理想的捐赠人,但是没有加入到这类项目中来。为

8、什么呢?首先,项目的研究结果将会出售,扩大牛津大学的财富。其他的学术机构不会赏识这种想法。尽管其他两个抗癌项目成员英特尔和联合设备不会从中受到任何益处,大部分观察家作其他假设,甚至只有按照行销和公共关系的处理方法来处理这些问题。这些理解阻止了很多企业参与到类似想法的项目中来。事实上,这些企业是极度不可能的通过直接经济目的吸引到项目的潜在的捐赠者。 执行的效率:在抗癌项目里,参与者必须下载一个程序并且把它安装到自己的计算机里。如果参与者想捐赠处理时间到新的项目,他们必须重复这个过程。维护系统和执行认为如在参与者的计算机上升级程序等等都是极度困难的。这里需要的是一个自动化的方法来储存和升级远端计算

9、机上面的程序。兼容性:抗癌项目里的软件只能在PC上执行。有很大数量的工作站使用Unix或者其他操作系统,很多是企业里的计算机,并且下班后就闲置。很遗憾的是工作站由于兼容性问题而不能加入这个项目。另外一个大规模的P2P项目加利福利亚大学的setihome (setiathome.berkeley.edu)分析无线电望远镜拾取的信号试图寻找外星智能生物。setihome项目通过不同的不同平台使用不同的版本解决了兼容性问题。参与者能够根据不同的操作系统如MacOS,Unix等等下载相应的版本。这个方案增加了研究者的计算力,但是也增加了维护成本,有众多的版本需要维护和升级。支撑技术所有这里提到的要求都

10、能够得到满足。一些问题能够通过最新的支撑软件解决,而其他问题则需要构建基础设施来处理。Java:在很多P2P系统里,我们发现有很多安装不同操作系统和硬件平台的异构系统。在这种结构里,程序的可移植性是最重要的。Java是唯一能够保证“一次编写、到处运行”的承诺的语言。安全管理:Java设计时就考虑了安全性,安全管理是它的一个特征。通过在安全管理器细化安全策略,用户能够依据预定义的限制控制程序行为。Web服务和小服务程序:当我们在网上冲浪的时候,我们通过封装的连接来选择一个预期的Web页面,我们的浏览器发送一条信息到远程的Web服务器。信息以超文本传输协议(Hypertext Transport

11、Protocol,HTTP)编码。Web服务器定位相应的Web页面并把它发回浏览器。这个简单的模型对于只想浏览静态Web页面的用户来说是足够的。一些应用程序需要更多的处理,因此要求动态的Web页面。典型的例子里,Web服务器在它能够组合一个Web页面前必须访问一些记录并进行一些计算。在这种情形下,HTTP消息将卷入了Web服务器端的程序计算。在服务器端,通用网关接口(Common Gateway Interface,CGI)程序使用除了Java语言外的任何语言编写,而小服务程序是Java程序。Java小服务程序比CGI程序好,因为Java没有兼容性和安全性问题。计算力服务器模型这种能调用Web

12、服务器上面的一个程序的能力在P2P应用中使用的。Fig2显示了一个使用了服务器和小服务程序的计算服务器模型。在这个模型里我们介绍了一个新概念同时使用众多服务器计算力的单一客户计算机。与通常的网络不同点在于通常的网络有很多客户机与一个服务器一起工作。Figure 2. Power server model.传统的C/S系统里,服务器通常为客户机提供数据服务。而在这个模型里,我们定义了“计算力”,其意义在于这些计算机向其他用户提供CPU计算能力服务。系统里的每一个计算机在安装了Web服务器包和一些Java程序后就成为了一个计算力服务器。一台计算机作为客户机。Java应用程序在客户机上执行,分解单一

13、的计算密集的任务为很多小的子任务,并把它们放置在系统等待队列里。应用程序调用服务器上的小服务程序,传输一部分小任务块到小服务程序。小服务程序在服务器上完成任务计算。完成的结果发回客户机。这类模型的性能测试可以在文献6里找到。Web服务器的行为被很好地定义过了。有很多好的服务软件包可供使用,它们大多是自由/共享软件。这些软件包很小且容易安装。任何计算机用户都能够安装Web服务器程序包并允许他的计算机作为计算力服务器。Figure 3. Coordinator and IP addresses.在计算力服务器模型里我们需要一个接一个地升级服务器机器。如果我们有大量的服务器,其维护将会很耗时。可以通

14、过自动化来克服这个缺点。因为大部分Web服务器具有上载功能,维护的工作能够通过这个功能来减轻。我们可以上载新版本的小服务程序来达到减少维护工作的目的,通过客户计算机上使用一个特别的程序就可以自动完成。如果所有的参与者都在一个组织内部并且他们的计算机连接在一个局域网里面的时候,维护的工作能够进一步地减少。只要一个Web服务器和小服务程序的拷贝安装在网络驱动器里。每个计算机都通过单一版本的网络驱动器调用Web服务器和小服务程序,因此维护工作是流线型的。将来开发的P2P系统:一些障碍不是仅仅软件就能够克服的。单单建造可靠的自动机也不能解决传输问题。我们也需要高速公路和加油站,否则就没有人能够从使用汽

15、车中受益。我们必须建造一个计算基础设施才能实现P2P应用的全部好处。分布式系统的基础设施已经成为了很多研究的主题。一个例子是Globus网格计算项目,其为不同的分布式系统开发了复杂的基础设施。感兴趣的读者可以从文献2, 3获得Globus项目的相关信息。但是对于计算力服务器模型来讲,一个简单的基础设施就足够了。 Comparison of P2P models.协调者:这个模型的一个问题是很难发现计算力服务器。我们通过在系统里加入一个协调者能够解决这个问题,如Fig3所示。协调者是一台计算机存储了所有计算力服务器的在小服务程序和IP地址。客户机把小服务程序存储在协调者上。任何想捐赠计算力到网络

16、的计算机主人必须注册到协调者,并提供如下信息:IP地址,处理器类型,何时以及有多长时间可用来捐赠,可用的内存数量。协调者不参与实际的计算,它存储参与者处理能力的信息。这个概念与文献7的工作相似。协调者的任务是: 允许新用户注册; 维护计算力服务器信息数据库; 满足用户的计算力需要,传送计算力服务器的IP地址给用户; 传输小服务程序给计算力服务器。用户与协调者联系以获得可用计算力服务器的IP地址,并使用这些IP地址初始化计算力服务器上的小服务程序。对于非常大的P2P项目,每个国家、城市和组织建立一个多级别的协调者非常必要。组织协调者将记录组织里计算机的IP地址。城市协调者将记录该城市所有组织协调者和计算力服务器。全球的系统将包括许多国家、城市和组织

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 幼儿/小学教育 > 其它小学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号