




已阅读5页,还剩54页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、概述2、典型分布式计算技术3、存在的公共问题4、发展趋势5、分布式系统简介,分布式计算技术漫谈,分布式计算是利用网络把成千上万台计算机连接起来,组成一台虚拟的超级计算机,完成单台计算机无法完成的超大规模的问题求解。,1、概述,分布式计算的最早形态出现在80年代末的Intel公司,Intel公司利用他们的工作站的空闲时间为芯片设计计算数据集,利用局域网调整研究。随着Internet的迅速发展和普及,分布式计算的研究在90年代后达到了高潮,目前,在Internet网上分布式计算已非常流行。(Web系统),1、概述(续),分布式计算研究主要集中在分布式操作系统研究和分布式计算环境研究两个方面,在过去的20多年间出现了大量的分布式计算技术,如中间件技术,网格技术,移动Agent技术,P2P技术,WebService技术,云计算技术等。每一种技术都得到了一定程度的认同,在特定的范围内得到了广泛的应用。,1、概述(续),2.1中间件技术2.2WebService技术2.3网格技术2.4移动Agent技术2.5P2P技术2.6云计算技术,2、典型分布式计算技术,中间件是基础软件,处于操作系统(或网络协议)与分布式应用之间,从而屏蔽操作系统(或网络协议)的差异,实现分布式异构系统之间的互操作。目前,对中间件还没有形成一个统一的定义,比较公认的定义是:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。,2.1中间件技术,到90年代,中间件技术得到了巨大的发展和广泛的应用,出现了大量具有广泛影响的中间件产品,如OMG的Corba、Microsoft的DCOM/COM+等,支持分布式系统开发。分类:消息中间件(MOM:Message-OrientedMiddleware)数据库中间件(DatabaseMiddleware)()远程过程调用中间件(RPC:RemoteProcessCall)对象请求代理中间件(ORB:ObjectRequestBroker)事务处理中间件(TPMonitor:TransactionProcessMonitor),2.1中间件技术(续),90年代末期开始,由于受需求增长和多种技术融合两方面的影响,中间件的内涵和外延进一步拓展,中间件的类别也进一步增多,如出现了反射中间件、移动中间件、自适应中间件等。,2.1中间件技术(续),Android系统构成,2.中间件技术(续),WebService是对象/组件技术在Internet中的延伸,是一种部署在Web上的对象/组件。WebService结合了以组件为基础的开发模式以及Web的出色性能,一方面,WebService和组件一样,具有黑匣子的功能,可以在不关心功能如何实现的情况下重用;同时,与传统的组件技术不同,WebService可以把不同平台开发的不同类型的功能块集成在一起,提供相互之间的互操作。所以,WebService被普遍认为是下一代分布式系统开发的模型。,2.2WebService技术,国际标准化组织W3C的定义:WebService是一个通过URL识别的软件应用程序,其界面及绑定能用XML文档来定义、描述和发现,并且基于Internet协议上的消息传递,使用XML支持和其它软件应用程序的直接交互。,2.2WebService技术(续),Microsoft的定义:WebServices是为其它应用提供数据和服务的应用逻辑单元,应用通过标准的Web协议和数据格式获得WebServices,如HTTP、XML和SOAP等,每个WebService如何实现是完全独立的。WebServices具有基于构件的开发和Web两者的优点,是Microsoft的.NET程序设计模式的核心。,2.2WebService技术(续),IBM公司的定义:WebServices是自包容的、模块化的应用,它们能在一个网络上被描述、发布、查找和调用,一般是在Web上。,2.2WebService技术(续),W3C(TheWorldWideWebConsortium)认为WebService有三个部分组成,分别是传输模块、描述模块和发现模块。三个部分是密切相关的,传输模块是在线交换的标准,描述模块用于描述服务个体或服务的收集,发现模块用于服务的发现。,2.2WebService技术(续),2.2WebService技术(续),目前,WebService技术已得到了广泛的赞同,W3C已进行了相关标准的制定,现推出的相关标准有:SOAPversion1.2、WSDLVersion1.2Part1等。WebService的相关标准协议主要包括服务调用协议SOAP、服务描述协议WSDL和服务发现/集成协议UDDI,以及服务工作流描述语言WSFL。还有许多更高层的协议有待进一步的开发,如路由、可靠性以及事务等方面的协议。,2.2WebService技术(续),2.2WebService技术(续),内容名称?Routing,ReliabilityandTransaction?WorkflowWSFLServiceDiscovery,IntegrationUDDIServiceDescriptionWSDLMessagingSOAPTransportHTTP,FTP,SMTPInternetIpv4,Ipv6图2:WebService“stack”,网格(GRID)的概念起源于90年代中期,最初的含义是为尖端科研和工程提供分布式计算基础设施。,2.3网格技术,网格计算目前还没有一个被普遍接受的定义,著名的网格研究专家,Globus项目的领导人IanFoster认为:网格提供在动态变化的多个虚拟机构间共享资源和协同解决问题。但随着网格技术的发展,特别是OGSA(开放网格服务结构)体系结构的提出,IanFoster对网格的定义作了扩充:网格是可扩展的网格服务集合,这些服务以不同的方式结合在一起以满足虚拟机构的需要,这些虚拟机构本身被定义成它们操作和共享的服务的一部分。,2.3网格技术(续),到目前为止,比较重要的网格体系结构有两个,一个是Foster等提出的五层沙漏结构,另一种是在以IBM为代表的工业界的影响下,在考虑到Web技术的发展与影响后,结合WebService提出的开放网格服务结构OGSA。,2.3网格技术(续),以“协议”为中心,同时十分强调服务与API和SDK的重要性。共享互操作协议服务API/SDK,五层沙漏结构,五层沙漏结构,五层沙漏结构,构造层(Fabric)提供共享的资源,它们是物理或逻辑实体。,五层沙漏结构,连接层(Connectivity)它是网格中网络事务处理通信与授权控制的核心协议。,五层沙漏结构,资源层(Resource)对单个资源实施控制,实现资源注册、资源分配和资源监视。,五层沙漏结构,汇集层(Collective)资源汇集,供虚拟组织的应用程序共享、调用。提供目录服务、日程安排、资源代理、资源监测诊断、网格启动、负荷控制、账户管理等多种功能。,五层沙漏结构,应用层(Applications)通过各层的API调用相应的服务,再通过服务调用网格上的资源来完成任务。需要构建支持网格计算的库函数。,五层沙漏结构,应用层,工具与应用,汇集层,资源与连接层,各种资源,构造层,资源与服务的安全访问,目录代理诊断与监控等,开放网格服务体系结构,OGSA是以服务为中心的“服务结构”。这里的服务是指具有特定功能的网络化实体。OGSA定义了“网格服务”的概念,网格服务是一种WebService,该服务提供了一组接口。网格=网格服务网格服务=接口/行为+服务数据,主要研究计划,Globus计划Legion计划InformationPowerGridEuroGridDistributedTerascaleFacility,Globus计划,Globus是美国Argonne国家实验室的研发项目,全美有12所大学和研究机构参与了该项目。Globus对资源管理、安全、信息服务及数据管理等网格计算的关键理论进行研究,开发能在各种平台上运行的网格计算工具软件(Toolkit),帮助规划和组建大型的网格试验平台,开发适合大型网格系统运行的大型应用程序。Toolkit是Globus最重要的成果,其第一版在1999年推出。Toolkit源码开放,任何人都可以从其网站上下载源代码,并进行修改。目前,Globus的技术已在欧洲数据网格(DataGrid)、美国国家技术网格(NTG)等8个项目中得到应用。,Globus计划,网格(GRID)归诸于一个下部基础构造,它使得高端计算、网络、数据库和私有科学工具的集成和协作使用成为可能,并且,能够被多个组织所管理。网格应用通常包含大量的数据或计算,经常需要组织间安全的资源共享。因此,它们不易被今天的Internet和Web基础构造所处理。而是由网格构造层、连接层、资源层、汇集层和应用层组成。,Legion计划是维吉尼亚大学的一个基于对象的元系统软件项目,它被设计成一个具有几百万个主机和几百万亿个对象的系统,这些主机和对象通过高速链路系在一起。在家用机器上工作的用户在获取各种数据和物理资源时,例如数字图书馆、物理仿真、照相机、线性加速器和视频流,看起来就像在一台单一的计算机上获取的。用户群体可以构造共享虚拟工作空间,进行合作研究和交换信息。这一抽象概念来源于Legion计划的透明进度、数据管理、容错、位置自治、一些列的安全选项。,Legion计划,InformationPowerGrid,IPG(InformationPowerGrid)项目是由NASA的NAS小组(NASAAdvancedSupercomputing)领导的,它是一个由高性能计算机、数据存储设备、科学仪器和高级用户界面组成的网格。目前,由三个NASA中心(Ames,Glenn,andLangley)的超级计算机、大容量存储设备和大量的客户机相连组成的“产品试验床”系统,为研究者提供高性能计算的实验。它能够用于测试网格系统软件,以及使用网格的应用,所有这些形成了将来网格的核心基础构造。美国国家航空和宇宙航行局(NationalAeronauticsandSpaceAdministration),InformationPowerGrid,其定义为广泛的计算机、数据和仪器的分布式网络,以及实现其共享的协作环境。分成四层,分别是分布式异构资源层、虚拟机器层、工具和高水平服务层、应用层。,EuroGrid,EuroGrid项目是由欧洲经济共同体共同出资的研究和技术发展项目,实施时间为2000年11月1日至2003年10月31日。EuroGrid项目用于在选定的科学和工业团体作网格使用的示范,针对这些团体的特殊需要,展示使用网格的好处。主要基于德国的UNICORE系统,分成服务层、网关层和客户层。,DistributedTerascaleFacility,TeraGrid项目是美国国家科学基金会在2001年8月投资5300万美圆启动的项目,目的是通过多年的努力,建造和展示世界上最大、最快的用于开放科学研究的分布式基础构造。建成后,TeraGrid将包括分布在5个地点的20万亿浮点运算能力,方便地管理和存储近1PB数据的能力,高级别的可视环境,网格计算工具集。这些组件将通过每秒40GB的网络紧密地集成和连在一起。,1PB=1015byte,Alchemi桌面计算网格,Alchemi是澳大利亚墨尔本大学开发的一个计算网格系统,采用.net实现。能够将很多闲置的PC集合起来,共同通过并行计算,完成一个大的计算任务。每个计算机这时就相当于一个大计算机的CPU,那么很多很普通的计算机集合起来,就可以聚集非常可观的计算能力。,软件Agent技术最早可以追溯到人工智能研究的初期阶段,1977年Hewitt在研究ConcurrentActorModel时就首次提出了具有自组织性、反应机制和同步执行能力的软件模型,这就是最初的软件Agent思想。此后从70年代末到90年代初,科学家都将精力集中于对软件Agent理论的研究,并从系统的角度提出了一些基本概念。软件Agent的具体实践开始于90年代,期间人们进行了一些非常成功的尝试(如Pleiades,ARCHON计划等),并对软件Agent有了进一步的认识。,2.4移动Agent技术,20世纪90年代初,GeneralMagic公司在推出其商业系统Telescript时第一次提出了移动Agent的概念,即一个能在异构网络环境中自主地从一台主机迁移到另一台主机,并可与其它Agent或资源交互的软件实体。移动Agent是一类特殊的软件Agent,可以看成是软件Agent技术与分布式计算技术相结合的产物,它除了具有软件Agent的基本特性-自治性、响应性、主动性和推理性外,还具有移动性,即它可以在网络上从一台主机自主地移动到另一台主机,代表用户完成指定的任务。,2.4移动Agent技术(续),目前还没有一个关于移动Agent的确切的定义。一般认为移动Agent是一类能在自己控制之下从一台计算机移动到另一台计算机的自治程序。一方面它们自身分布执行,同时为其它分布式应用提供服务。,2.4移动Agent技术(续),移动Agent的研究已取得了一些成就,产生了大量的移动Agent系统,如OpenGroup公司的MOA、Stuttgart大学的Mole、Ochanomizu大学的MobileSpaces,IBMAglet系统(move()函数)等等。网络爬虫(网络蜘蛛),是一个网页抓取程序。网络爬虫是通过网页的链接地址来寻找网页,从网站首页开始,读取网页的内容,,2.4移动Agent技术(续),找到在网页中的其它链接地址,然后通过这些链接地址寻找下一个网页,这样一直循环下去,直到把这个网站所有的网页都抓取完为止。如果把整个互联网当成一个网站,那么网络爬虫就可以用这个原理把互联网上所有的网页都抓取下来。,2.4移动Agent技术(续),搜索引擎基本原理1利用爬虫系统程序,自动访问互联网,并沿着任何网页中的所有URL爬到其它网页,重复这过程,并把爬过的所有网页收集回来。2.由分析索引系统程序对收集回来的网页进行分析,提取相关网页信息,根据一定的相关度算法进行大量复杂计算,得到每一个网页针对页面内容中及超链中每一个关键词的相关度(或重要性),然后用这些相关信息建立网页索引数据库。3.当用户输入关键词搜索后,由搜索系统程序从网页索引数据库中找到符合该关键词的所有相关网页。相关度数值排序,相关度越高,排名越靠前。最后,由页面生成系统将搜索结果的链接地址和页面内容摘要等内容组织起来返回给用户。,2.4移动Agent技术(续),P2P(peer-to-peer)起源于最初的联网通信方式,P2P的原意是一种通信模式,在这种通信模式中,每一个部分具有相同的能力,任意一个部分都能开始一次通信。但目前P2P已被赋予了新的含义,是旧有技术的新的应用模式。,2.5P2P技术,现在,对P2P概念进行了扩展,如IBM公司认为:P2P系统由若干互联协作的计算机构成,且至少具有如下特征之一:系统依存于边缘化(非中央式服务器)设备的主动协作,每个成员直接从其他成员而不是从服务器的参与中受益;系统中成员同时扮演服务器与客户端的角色;系统应用的用户能够意识到彼此的存在,构成一个虚拟或实际的群体。,2.5P2P技术(续),(1)即时通信软件,如ICQ、QQ等。2个或多个用户可以通过文字、语音或文件进行交流。(2)实现共享文件资源的软件,如Napster和Gnutella等。用户可以直接从任意一台安装同类软件的PC上下载或上载文件,并检索、复制共享的文件。迅雷下载软件。(3)游戏软件。目前的许多网络游戏都是通过对等网络方式实现的。(4)数据搜索及查询软件,如Infrasearch、Pointera。用来在对等网络中完成信息检索。,2.5P2P技术(续),对等网络尚无统一的标准。2000年8月成立了P2P工作组,成员包括Intel、IBM和HP公司等。发展对等网络的其他主要障碍还有版权问题、网络带宽问题、管理问题和安全问题等。如何连接电话、手机和家电、工业设备等,也是对等网络需要解决的问题。,2.5P2P技术(续),云计算(CloudComputing)是一种新近提出的计算模式。是分布式计算、并行计算和网格计算的发展。目前,亚马逊、微软、谷歌、IBM、英特尔等公司纷纷提出了“云计划”。例如亚马逊的AWS(AmazonWebServices)、IBM和谷歌联合进行的“蓝云”计划等。这对云计算的商业价值给予了巨大的肯定。同时学术界也纷纷对云计算进行深层次的研究。例如谷歌同华盛顿大学以及清华大学合作,启动云计算学术合作计划(AcademicCloudComputingInitiative),推动云计算的普及,加紧对云计算的研究。,2.6云计算技术,当前云计算的定义主要包括如下几种:1)维基百科给云计算下的定义。云计算将IT相关的能力以服务的方式提供给用户,允许用户在不了解提供服务的技术、没有相关知识以及设备操作能力的情况下,通过Internet获取需要的服务。2)中国云计算网将云计算定义为:云计算是分布式计算、并行计算和网格计算的发展,或者说是这些科学概念的商业实现。3)某文献在综合多个云计算的定义之后,给“云”下了如下定义:,2.6云计算技术(续),2.6云计算技术(续),云是一个包含大量可用虚拟资源(例如硬件、开发平台以及I/O服务)的资源池。这些虚拟资源可以根据不同的负载动态地重新配置,以达到更优化的资源利用率。这种资源池通常由基础设施提供商按照服务等级协议(ServiceLevelAgreement,SLA)采用用时付费(Pay-Per-Use,PPU)的模式开发管理。SaaS(Software-as-a-service软件及服务)PaaS(平台及服务)IaaS(基础设施及服务),2009OracleProprietaryandConfidential52,OraclePaaS由Savvis托管,OracleVM,Oracle
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论