基于JXTA的开放的网格服务体系结构研究.doc

上传人:精*** 文档编号:882941 上传时间:2024-03-11 格式:DOC 页数:58 大小:1.28MB
下载 相关 举报
基于JXTA的开放的网格服务体系结构研究.doc_第1页
第1页 / 共58页
基于JXTA的开放的网格服务体系结构研究.doc_第2页
第2页 / 共58页
基于JXTA的开放的网格服务体系结构研究.doc_第3页
第3页 / 共58页
基于JXTA的开放的网格服务体系结构研究.doc_第4页
第4页 / 共58页
基于JXTA的开放的网格服务体系结构研究.doc_第5页
第5页 / 共58页
点击查看更多>>
资源描述

1、 基于JXTA的开放的网格服务体系结构研究摘 要基于JXTA技术的开放网格服务架构改进研究,主要使用JXTA技术对开放网格服务架构进行扩展。本文先从网格理论开始阐述,介绍了网格的概念和基础理论。然后简述了网格的两个主要的体系结构:五层沙漏结构和网格服务结构。五层沙漏结构是网格的基础结构,它定义了网格最初的很多重要概念和组件。网络服务结构是在五层沙漏机构的基础上集成了web服务的技术构架,大大扩展了网格的适用范围。接着提出使用JINI技术改进网格服务构架,提出了一个web容器的组件来实现JINI与网格服务结构的通信,JINI具有简单易用的特性,可以方便用户对网格服务的访问,但是它要求与JAVA平

2、台紧密联系,这就限制了它的使用范围。类似的,提出使用JXTA技术改进网格服务架构,JXTA具有独立于平台、开发语言和厂商的特性,在实现服务访问和成员管理方面也有比较完备和方便的组件,本文中针对一些重要的组件给出参考实现的细节。关键词: OGSA , OGSANI , OGSATA , JINI , JXTA目 录第1章 引言1第2章 网格体系结构概述32.1 网格技术简介32.2 网格技术的特点42.3 网格体系结构研究现状5第3章 五层沙漏结构简介73.1 架构83.1.1 构造层: 局部控制的界面83.1.2 连接层: 支持便利安全的通信93.1.3 资源层: 共享单一的资源103.1.4

3、 汇聚层:协调各种资源113.1.5 应用层133.2 应用与研究现状14第4章 OGSA结构简介154.1 架构154.1.1 物理和逻辑资源层164.1.2 Web 服务层164.1.3 基于 OGSA 架构的网格服务层164.1.4 网格应用程序层164.1.5 扩展网格的Web服务174.1.6 Web 服务的交互模型174.1.7 关于OGSI和Web服务的更多信息194.2 OGSA 的实现194.2.1 基于 OGSA 架构的服务204.2.2 网格程序执行和数据服务宿主234.3 开放的网格体系结构的改进244.3.1 基于JINI技术的架构改进方案254.3.2 基于JXTA

4、技术的架构改进方案31第5章 WEB 服务概述435.1 JINI技术概述445.2 JXTA技术概述45第6章 结论与展望49参考文献50致 谢54III第1章 引言.1.1问题的提出网格计算是一种面向服务的体系架构,该架构利用开放式标准实现因特网及专用网络上的分布式计算。网格计算可以使各种设备在各企业、行业或工作组间得以虚拟地共享、管理及访问,使得用户可以无缝、无干扰地访问这些资源。网格计算有助于促进企业技术资源的有效利用,同时还有助于创建可适应变化且经济高效的弹性IT基础设施。网格计算能够充分实现应用层面的互联互通,消除信息孤岛,让应用更方便、有效;基于国际标准,因此有利于升级维护,可为

5、用户提供更多的选择,同时也可以间接保护投资;使信息系统的管理维护更方便,更有利于总体的统一部署、运行、监控、维护和技术改造。网格计算被视为21世纪的新型网络基础架构以及未来10年中IT商业应用的主流。目前,科研、气象、铁道、电信等行业已有诸多成功应用案例。网格计算的建设和应用会产生大量的对硬件和软件产品的需求,带动大量的相关产品的生产和消费,会激发无数的服务提供和服务消费。网格计算蕴涵着巨大的商机。据Forbes ASAP预测,网格技术将在2005年达到高峰,并带来因特网的新生。如果网格技术能促使市场按预期17%年增长率持续增长的话,那么在2020年将会形成一个年产值20万亿美元的大产业。当前

6、,无论是企业还是政府都在积极地推动网格计算的发展。IBM、Oracle、HP、Intel、Microsoft、CA、Sun、SGI、Platform、联想、浪潮、曙光等国内外知名企业纷纷加入这个计算革命的大潮,投入巨资支持并大力从事商业应用开发。中国政府对于网格计算的建设十分关注,认为网格计算的应用将大幅度提高综合国力和国际竞争力,并在863专项中提出了具体的目标,即:建设新一代国家信息基础设施试验项目“中国国家网格(China National Grid)”,提供高性能计算、资源共享、协同工作的能力;在科学研究、环境资源、制造业、服务业中建设若干大型行业应用网格;研制面向网格计算,具有良好的

7、应用开发环境的高性能计算机,装备网格结点,促进高性能计算机的研究和产业化;研究以网格软件为代表的网格核心技术,在网格体系结构和网格软件、网格应用技术、网格服务模式、网格安全以及网格管理和运行机制等方面突破一批关键技术;推动网格计算的产业化进程。网格计算不仅仅是一种崭新的计算模式和理念,一项新技术或是一种新方案,同时它也带来了更为广阔的IT发展市场。随着技术的进一步发展,以及服务提供商的共同努力,网格计算会迅速渗透信息技术市场,应用于更广阔的领域及行业,必将对计算机网络技术的应用以及国民经济建设的发展产生巨大而深远的影响。本文从网格的基本理论入手,进而介绍关于网格的两种主要的体系结构:五层沙漏体

8、系结构、开放网格服务体系结构。其中五层沙漏体系结构为网格系统提供了基本的理论和基础架构,开放网格服务体系结构就是在它的基础上发展而来的,开放网格服务体系结构提出了以服务为中心,整合了现今流行的网络服务规范,从而使网格系统更易于实现,大大拓展了网格的使用范围。本文提到的开放网格服务体系结构改进,是在开放网格服务体系结构基础上,分别使用JINI和JXTA技术改进了该架构,主要解决了该架构的服务发现、成员资格管理和对等机的发现和注册的主要问题,并分别给出参考实现代码。第2章 网格体系结构概述2.1 网格技术简介网格是一种信息社会的网络基础设施,可实现互联网上所有资源(包括计算资源、存储资源、通信资源

9、、软件资源、信息资源、知识资源等)的互联互通,消除信息孤岛和资源孤岛,实现网络虚拟环境上的资源共享和协同工作,使人们的工作和生活变得更方便。美国计算网格项目的领导人福斯特年在他主编的网格:世纪信息技术基础设施的蓝图一书中说:“网格是构筑在互联网上的一组新兴技术,它将高速互联网、高性能计算机、大型数据库、传感器、远程设备等融为一体,为科技人员和普通老百姓提供更多的资源、功能和交互性服务。互联网主要为人们提供电子邮件、网页浏览等通信功能服务,而网格功能则更多更强,能让人们透明地使用计算、存储等其他资源。网格概念的核心是“资源”以及对“资源的使用”,这里的“资源”包括计算机、数据库、仪器设备、信息服

10、务等极其广泛的内容。网格概念的实质,就是打破传统的强加在“资源”上的种种限制,为用户提供一种前所未有的“高级服务”。所谓打破对资源的限制,包括几方面的含义:(1)资源的网格化,即将资源从特定的地理位置的束缚中解放出来,使得该资源可以通过网格输送到任何角落,达到网格资源完全与地理位置无关的目的;()网格资源的协调,即对任何网格资源,在一定的规则和管理下,都可以实现相互协作,破除不同资源之间在广泛共享与协作方面的障碍;()网格资源的融合,即打破原来加在资源能力和资源类型方面的限制。因此,网格系统提供的资源,是可以进行任意动态组合的资源。现在网格技术在商业应用中已经开始投入使用,因为对这种技术进行支

11、持的两种主要基础技术已经发展成熟,他们是:Globus系统(五层沙漏体系结构)和开放网格服务技术框架。和其它新兴技术一样,网格最初只是为科学研究领域服务的。现在随着网格技术的迅速发展,网格计算已经从科学领域扩展到政府和商业领域。自2002年初开始开发OGSA以来,这一新兴的架构已经在整个IT行业获得了重要的支持。诸多企业积极参与开发了OGSA,并承诺推动各种能够在网格环境中帮助实现有效共享和协作的标准。从商业产品角度看,IBM公司的WebSphere、Microsoft公司的.Net,以及预计在2005年推出的Blackcomb等产品,都是支持网格技术的产品。更多的商业公司正在开发自己的网格产

12、品,以期抢占网格技术带来的巨大市场。从网络发展的短暂历史来看,它对全球经济的发展起到了不可忽视的作用。网络的第一次浪潮是因特网,实现了全球计算机的连通;第二次浪潮是万维网,实现了网页的连通;第三次浪潮是网格技术,将实现全球资源的全面连通和共享。2.2 网格技术的特点1. 分布性与共享分布性是网格的一个最重要的特点。网格的分布性首先是指网格的资源是分布的。组成网格的计算能力不同的计算机,各种类型的数据库乃至电子图书馆,以及其他的各种设备与资源,是分布在地理位置互不相同的多个地方,而不是集中在一起的。分布的网格一般涉及的资源类型复杂,规模较大,跨越的地理范围较广。因为网格资源是分布的,因此基于网格

13、的计算一定是分布式计算而不是集中式计算。在网格这一分布式环境下,需要解决资源与任务的分配和调度问题,安全传输与通信问题,实时性保障问题,人与系统以及人与人之间的交互问题等等。网格资源虽然是分布的,但是他们却是可以充分共享的。即网格上的任何资源都可以提供给网格上的任何使用者。共享是网格的目的,没有共享便没有网络,解决分布资源的共享问题,是网格的核心内容。这里共享的含义是非常广泛的,不仅指一个地方的计算机可以用来完成其它地方的任务,还可以指中间结果,数据库,专业模型库,以及人才资源等各方面的内容。分布是网格硬件在物理上的特征,而共享是在网格软件支持下实现的逻辑上的特征,这两者对于网格来说都是十分重

14、要的。2. 自相似性网格的局部和整体之间存在着一定的相似性,局部往往在许多地方具有全局的某些特征,而全局的特征在局部也有一定的体现。3. 动态性与多样性对于网格来说,决不能假设它是一成不变的。原来拥有的资源或者功能,在下一刻可能就会出现故障或者不可用;而原来没有的资源,可能随着时间的推移会不断地加入进来。网格的动态性包括动态增加和动态减少两个方面的含义。网络资源的动态变化特点要求网格管理必须充分考虑并解决好这一问题,对于网格资源的动态减少或者资源出现故障的情况,要求网格能够及时采取措施,实现任务的自动迁移,做到对高层用户透明或者尽可能减少用户的损失。网格资源的动态增加需要提高网格的扩展性问题,

15、也就是说在网格的设计与实现时,必须考虑到新的资源能否很自然地加入到网格中来,并且可以和原来地资源融合在一起,共同发挥作用。网格扩展要求体现在规模、能力、兼容性等几个方面。一开始网格的规模往往不是特别大,不需要也不可能一步到位,但是网格应该能够允许对它自身进行多种形式的扩展,网格规模扩展后网格的相应管理软件也应该能够满足扩展性的要求,网格软件的升级要能够向下兼容。网格资源是异构和多样的。在网格环境中可以有不同体系结构的计算机系统和类别不同的资源,因此网格系统必须能够解决这些不同结构、不同类别资源之间的通信和互操作问题。正是因为异构性或者说资源多样性的存在,为网格软件的设计提出了更大的挑战,只有解

16、决好这一问题,才会使网格更有吸引力。4. 自治性与管理的多重性网格上的资源,首先是属于某一个组织或者个人的,因此网格资源的拥有者对该资源具有最高级别的管理权限,网格应该允许资源拥有者对他的资源有自主的管理能力,这就是网格的自治性。但是网格资源也必须接受网格的统一管理,否则不同的资源就无法建立相互之间的联系,无法实现共享和互操作,无法作为一个整体为更多的用户提供方便的服务。因此网格的管理具有多重性,一方面它允许网格资源的拥有者对网格资源具有自主性的管理,另一方面又要求网格资源必须接受网格的统一管理。2.3 网格体系结构研究现状到目前为止,比较重要的网格体系结构有两个,一个就是Foster等在早些

17、时候提出的五层沙漏结构,然后就是在以IBM为代表的工业界的影响下,在考虑到Web技术的发展与影响后,Foster等结合Web Service提出的开放网格服务结构OGSA(Open Grid Services Architecture)。下面两个部分将具体介绍上面提到的两种体系结构。第3章 五层沙漏结构简介我们描述网格体系的目标是:不是对全部所需协议的完整罗列,而是对该结构中各部分组件的通用要求进行定义。结果是一个开放的,可扩展的体系结构,提供虚拟组织的解决方案。我们的体系和接下来的讨论将组件形成一定的层次关系,每一层的组件具有相同的特征 ,上层组件可以在任何底层组件的基础上建造。在指明网格体

18、系的每一层时,我们按照沙漏模型的原理。少量的核心协议形成了协议层次结构中的一个瓶颈,(例如,internet上的TCP和HTTP)对于其最核心的部分,要实现上层协议(沙漏的顶层)向核心协议的映射,同时实现核心协议向下层协议(沙漏的底层)的映射。按照定义,核心协议的数量不能太多,这样核心协议就成了一个协议层次结构的瓶颈。在五层结构中,资源层和连接层共同组成这一核心的瓶颈部分,它促进了单独的资源的共享。这些层的协议被设计为,它们能够适应在构造层(Fabric)定义的不同种类的资源。因此能够被用来建造汇聚(Collective)层的服务和特殊的应用,称为汇聚层是因为它可以协调“多种”资源的共享。体系

19、描述是高层次的,在设计和实现上几乎没有限制。本文列举了一些用Globus工具包开发的协议,使用这些的网格的工程的有:美国国家科学基金会(The National Science Foundation)的国家技术(National Technology)网格,美国国家航空和宇宙航行局(NASA)的信息动力(Information Power)网格。图3.1 五层沙漏架构3.1 架构3.1.1 构造层: 局部控制的界面 网格构造层的基本功能就是控制局部的资源,向上提供访问这些资源的接口。构造层的资源是非常广泛的,可以是计算资源,存储系统,目录,网络资源和传感器。一个“资源”的概念也许是一个逻辑实体

20、,例如一个分布式文件系统,计算机集群,或者是分布式计算池(distributed computer pool);在这些例子中,资源本身也许包括内部的协议(例如,NFS存取控制协议或者一个集群的资源管理系统的进程控制协议),但这些并不是网格体系所关心的。网格组件实现对本地特定资源(物理的或逻辑的)的访问,向上提供访问这些资源的接口。因此构造层各种功能在实现上,有紧密和互相依赖的联系,还有对共享的支持。构造层资源提供的功能越丰富,构造层可以支持的高级共享操作就越多。 同时,如果构造层资源提供的功能较少,则网格结构的组织就可以比较简单,实现起来也相对容易一些。(例如如果在资源层支持提前预约功能(ad

21、vance reservations),则很容易在高层实现资源的协同调度服务,否则在高层实现这样的服务就会有较大的额外开销。)计算资源需要这样的机制:启动程序,监视和控制程序的运行,控制进程资源分配的管理机制,提前预约机制,需要查询机制来获得硬件和软件资源的特性以及相关的状态信息例如现在的负载,资源调度管理下的队列状态。存储资源需要这样的机制:保存和取得文件,第三方高性能传输方式,类似的读写文件子集机制,和/或对远程数据实行选取和归约的操作的机制。管理机制允许对分配用于数据传输资源的控制(空间,磁盘带宽, 网络带宽,CPU),类似于提前预约机制。需要查询机制来决定硬件和软件的状态和相关的负载信

22、息比如可用的空间和带宽。 网络资源:管理机制提供对分配给网络传输的资源(例如,优先级,预约)的控制,询问机制也应当提供以确定网络的特性和负载。 代码库:这种资源存储的特殊形式,需要一种用来管理源代码与目标代码版本的机制,例如,一个CVS控制系统。 目录:这种资源存储的特殊形式要求实现对目录的查询和更新的操作。比如一个关系型数据库。 Globus工具包:Globus工具包被设计为(主要是)利用现有的构造层组件,包括卖方支持的协议和界面。如果卖方没有提供必须的构造层行为,Globus将提供缺省的功能。例如,提供查询软件以发现不同种类的常见资源的结构和状态信息。 比如计算机(OS版本,硬件配置),存

23、储系统(比如可用空间),网络(比如现在和预期将来的负载),以及把这些信息封装成利于上层特别是在资源层(Resource layer)执行的形式。另一方面,资源管理,通常被假定为本地资源管理者的行为,一个例外是GARA(General-purpose Architecture for Reservation and Allocation),通过提供插槽管理(lot manager),为不支持这一能力的资源提供实现资源预约的功能。 3.1.2 连接层: 支持便利安全的通信连接层定义了核心的网络事务处理所需要的通信和认证协议。通信协议允许在构造层资源之间交换数据,建立在通信服务上的认证协议提供加密的

24、安全机制,用于识别用户和资源。通信的必要条件包括传输、路由和命名等功能。在实际上,通信协议大部分是从TCP/IP协议栈中抽出的。比如Internet体系结构的Internet层(IP and ICMP),传输层(TCP/UDP),和应用层(DNS、OSPF、RSVP、 )。这并不是说,在未来,网格通讯并不需要新的协议以适应特殊的动态网络类型。 考虑到连接层的安全问题,注意到安全问题的复杂性,使得一切解决方案应当尽可能的基于已存在的标准。在通信中,许多基于Internet协议组的安全标准是适用的。对于虚拟组织的安全认证需要解决的问题或者说应当具备的特征:单一注册:用户只需登录一次, 就可以以该身

25、份访问不同的构造层网格资源,不需要多次重复登录,也不需要用户的进一步介入。 代理:用户必须有让程序以自己身份运行的能力,因此程序就能够访问用户认证的不同资源,该程序还能够有条件地将它的部分权限授予另一个程序(受限制的代理)。与局部安全方法的集成:不同的站点或者资源提供商也许会使用其局部的安全解决方案,包括Kerberos和unix安全方案。网格安全解决方案必须能够和这些局部的方案进行互操作。不要求网格安全方案完全替代局部安全方案,但是它必须能够实现向局部的映射。 基于用户的信任机制:用户可以使用多个提供者提供的资源,但并不要求资源提供者在安全环境中协同操作或者互操作。不要求网格安全方案完全替代

26、局部安全方案,但是它必须能够实现向局部的映射。例如,如果一个用户有权利使用站点A和B的资源,这个用户能够同时将站点A和B结合起来用,而不需要要求A和B的安全管理相互作用。 网格安全方案也应该为通信保护提供灵活的支持。(例如,对保护级别的控制,除了TCP之外的可靠传输协议,独立数据单元的保护)。 Globus工具包:上列的Internet协议都是用于通信的,Globus 使用基于公匙的GSI(Grid Security Infrastructure)协议用于认证、通信保护和授权。GSI协议是基于和在TLS协议之上扩展,涉及了下列的大部分方面:单一登录点、代理、与局部方法的集成、基于用户的信任机制

27、。可以通过授权工具包来控制授权,它允许资源拥有者通过GAA(Generic Authorization and Access)来控制界面集成局部的策略。 3.1.3 资源层: 共享单一的资源资源层建立在连接层的通信和认证协议之上,定义的协议、API、SDK,包括安全的连接,初始化,监视和控制,审计,计费等方面。资源层的协议实现调用构造层的功能以访问和控制本地资源。资源层的协议只考虑单个的局部资源,因此忽略了全局状态和跨越分布资源集合的原子操作。(这些问题是下面将要讨论的汇聚(Collective)层所考虑的。) 资源层的两个主要的协议族是很重要的:信息协议用来获得资源的结构和状态的信息,例如,

28、它的配置、当前的负载,还有使用策略(比如开销)。 管理协议用来磋商对共享资源的访问,指出资源需求(包括提前预约和服务质量)和将执行的操作(例如创造的进程或者数据存取)。管理协议还负责初始化共享关系,保证要求的协议操作和底层共享资源提供的共享策略一致。还要考虑记帐和支付的问题,协议可能还需要支持监测操作的状态和控制(例如终止)这个操作的功能。 能够设想很多这样的协议时,资源(和连接)协议就形成了我们沙漏模型的瓶颈部分,因此这个集合要小,而且尽量标准化。这些协议要能够抓住涵盖不同资源类型的基本共享机制,但是又不能够对高层协议的类型和性能有约束。 Globus工具包:采用了一个小的和基本上标准化的协

29、议集: l 网格资源信息协议(Grid Resource Information Protocol,基于目录访问协议Lightweight Directory Access Protocol),用来定义一个标准的资源信息协议和相关联的信息模型。 l 网格资源注册协议(GRRP),用网格索引信息服务器来注册资源,在下一节里面讨论。网格资源存取和管理协议(GRAM)基于HTTP,用来分配计算资源,并且监视和控制利用这些资源进行的计算行为。 l 一个FTP的扩展版本,GridFTP ,是一个数据存取的管理协议扩展部分包括连接层通信和认证协议的使用。采用FTP作为一个基础的数据传输协议 是因为它支持了

30、第三方控制的数据传输, 部分的文件传输, 高速并行传输的管理。独立的控制和数据通路 使得对复杂服务的实现变得更加容易。l LDAP也是一个目录访问协议。 Globus工具包定义了客户端这些协议的C和Java的API和SDK。也同时提供了服务器端这些协议的SDK和服务,以实现把不同资源(计算力、存储、网络) 整合为网格。例如,网格信息资源信息服务(GRIS)的实现,使用了LDAP的功能。允许对公布的资源信息编号。一个在工具包中重要的服务器端组件是gatekeeper,它提供本质上讲是GRAM协议并能用于派发各种本地操作的GSI认可的“inetd”。一般的安全服务API被用于获取、转交,以及验证认

31、可信任书,并提供在这些SDK和服务器中的传输层基层性和私有性,使得能够在连通层置换候选的安全性服务协议。3.1.4 汇聚层:协调各种资源资源层着眼于和“单个”资源进行交互,体系的下一层包括了协议和服务(API和SDK),不仅仅和某种特定的资源交互,而是协调“多种”资源的共享。因为这个原因,我们将这个层命名为汇聚层(Collective layer)。因为汇聚层组件建立在资源层和连接层形成的协议瓶颈之上,它们能够在不对资源强加新的要求的情况下实现广泛的和多样化的共享行为。例如:目录服务允许虚拟组织的参与者发现存在的资源或者是存在资源的特性,允许用户根据名字和/或属性(例如类型、可靠性和负载)来查

32、询资源。资源层GRRP和GRIP协议用来建立目录、协同分配、调度以及代理服务,允许虚拟组织参加者申请分配一个或者更多的资源,并且在相应的资源上进行任务调度。监测和诊断服务支持监视虚拟组织资源的失败,侵入行动,(侵入探测),过载,等等。 数据复制服务支持虚拟组织的存储资源(也许包括网络和计算)管理,按照响应时间,可靠性,和开销等标准优化数据访问的性能。 网格支持下的编程系统可以在网格中提供熟悉的编程模型,使用不同的网格服务解决资源发现,安全,资源分配以及其他问题。例子包括MPI的实现等。工作量管理系统和合作框架也被称为问题解决环境,提供对多步骤、异步的、多节点的工作流的描述、使用和管理。 l 软

33、件发现服务基于求解问题的参数发现和选择最好的软件。例子包括NetSolve和Ninf。 l 公共统计和支付服务收集组织成员的资源使用信息 为了统计,付费和必要时限制资源的使用。 l 协作服务用于潜在较大的用户社团之间进行的协同交换信息,包括同步与异步两种方式。例子见CAVERNsoft,Access Grid ,commodity groupware systems。 这些例子阐明了实际上遭遇到的不同种类的集合层的协议。 注意到资源层的协议必须简明扼要而且易于扩展,汇聚层的协议跨越了从通用型到高端应用和特殊领域的需求,以后的发展也许只是针对虚拟组织的。 汇聚层的功能能够被作为永久的服务来实现,

34、包括相关的协议以及与应用相关联的API/SDK。在这两种情况,他们的实现能够建立在资源层或者其它的汇聚层协议之上。图3.2显示,汇聚层的协同分配API和SDK可以使用资源层的管理协议来操纵底层的资源。同时,在此功能之上,可以定义协同预留协议并实现一个协同预留服务,它可以调用底层的协同分配API来实现协同分配操作,还可能提供附加的功能,比如授权,容错以及日志等等。这样,在应用层就可以使用协同预留服务来实现端到端的网络预留功能。图3.2 汇聚和资源层协议、服务、API和SDK协同工作示例汇聚层组件可以通过裁剪来满足特定的用户社团,虚拟组织或者应用领域的需求,比如,一个汇聚层SDK可以用来实现特定应

35、用的协议,或者特定网络资源集合的协同预留服务而另外的汇聚层组件可以实现更通用的目的,跨国界多组织的存储系统的复制服务,或者用于发现虚拟组织的目录服务。一般的,用户社团的规模越大,基于标准化基础来建造汇聚层组件协议和API就越重要。 Golbus工具包: 除了前文列出的服务例子之外,有许多基于Globus的连接和资源协议,元目录服务MDS(Meta Directory Service),通过引入GIIS(Grid Information Index Servers)来支持对任意的资源子集的访问。LDAP信息协议用来访问特殊的资源,GRIS用来获得资源状态,GRRP用来注册资源。目录复制和复制管理

36、服务用于支持网格环境中的数据集复制管理。在线信任仓库为代理信任提供安全存储,DUROC协同分配库为资源协同分配提供SDK和API。 3.1.5 应用层应用层是在虚拟组织环境中存在的。图3.3说明从应用程序员的观点来看网格结构。应用是根据在任一层次上定义的服务来构造的。在每一层,都定义了协议,以提供对相关服务的访问,这些服务包括资源管理,数据存取,资源发现等。在每一层,都可以将API定义为与执行特定活动的服务交换协议信息的具体实现,这里的应用可以调用更高级的框架和库。这些框架自身可以定义协议,服务和API,这里只是提出网格中要求的基本服务与协议。 图3.3 从应用程序员角度看网格结构API利用S

37、DK来实现,它使用网格协议和网络服务交互,为最终用户提供服务。更上层的SDK提供的功能也许并不直接映射到一个特定的协议,而是联合许多协议,调用其它的API和孳生的功能来实现。实线代表直接的调用;虚线协议是交互的。强调标明为“applications”的部分,在图3.3中显示为单独的层,也许在实际上调用复杂的框架和库,内部特性也远远比图上显示的复杂。这些框架也许定义了自己的协议、服务和/或API。但是,这些问题超出了本文的范围,本文只讨论网格所要求的基本协议和服务。 3.2 应用与研究现状近几年关于网格技术的研究蓬勃发展,提出很多重要的体系结构,其中,五层沙漏体系结构和开放网格服务体系结构就是其

38、中两个主要的体系结构。五层沙漏架构为网格的技术体系打下了坚实的基础,下面将要介绍的开放网格服务体系结构就是以它为基础发展而来的。第4章 OGSA结构简介OGSA 具有下列目标: 跨分布式异构平台管理资源。 交付无缝的服务质量(Quality of Service,OoS)。网格的拓扑结构通常十分复杂,而且网格资源的交互往往是动态的。有一点很重要,即网格可以提供健壮的后台服务,比如授权、访问控制和委托。 为自治管理解决方案提供公共基础。网格可以包含许多资源,还有大量的配置组合、交互以及状态与故障模式的改变。对于这些资源来说,一些智能自动调节与自治管理方式是必不可少的。 定义开放的、已公布的接口。

39、OGSA 是一种由 GGF 标准团体进行管理的开放式标准。为了不同资源的互操作性,网格必须构建在标准接口及协议之上。 利用行业标准的集成技术。OGSA 的创始者很有远见地利用了现有解决方案。OGSA的基础是Web服务。 4.1 架构应用软件基于OGSA架构的服务开放网格服务的基础架构Web服务安全性工作流数据库文件系统目 录消 息服 务 器存 储 设 备网 络图 4.2.1 OGSA 的主要架构OGSA 架构由四个主要的层构成:参见图4.2.1。从下到上依次为:资源(物理资源和逻辑资源)、Web 服务,以及定义网格服务的OGSI扩展。基于OGSA架构的服务和网格应用程序。下面将逐一考察这些层。

40、 4.1.1 物理和逻辑资源层资源的概念是OGSA以及通常意义上的网格计算的中心部分。构成网格能力的资源并不仅限于处理器。物理资源包括服务器、存储器和网络。物理资源之上是逻辑资源。它们通过虚拟化和聚合物理层的资源来提供额外的功能。通用的中间件,比如文件系统、数据库管理员、目录和工作流管理人员,在物理网格之上提供这些抽象服务。4.1.2 Web 服务层OGSA架构中的第二层是Web服务。这里有一条重要的OGSA原则:所有网格资源(逻辑的与物理的)都被建模为服务。OGSI规范定义了网格服务并建立在标准Web服务技术之上。OGSI利用诸如XML与Web服务描述语言(Web Services Desc

41、ription Language,WSDL)这样的Web服务机制,为所有网格资源指定标准的接口、行为与交互。OGSI进一步扩展了Web服务的定义,提供了动态的、有状态的和可管理的Web服务的能力,这在对网格资源进行建模时都是必需的。本文稍后将讨论这些扩展。 4.1.3 基于 OGSA 架构的网格服务层Web服务层及其 OGSI 扩展为下一层提供了基础设施:基于架构的网格服务。GGF目前正在致力于在诸如程序执行、数据服务和核心服务等领域中定义基于网格架构的服务。随着这些新架构的服务开始出现,OGSA将变成更加有用的面向服务的架构(SOA)。4.1.4 网格应用程序层随着时间的推移,一组丰富的基于

42、网格架构的服务不断被开发出来,使用一个或多个基于网格架构的服务的新网格应用程序亦将出现。这些应用程序构成了 OGSA 架构的第四个主要的层。4.1.5 扩展网格的Web服务OGSA架构服务基于web服务的OGSI扩展结构Web服务图 4.2.2 OGSA 的结构仔细考察OGSA的两个主要逻辑组件:Web服务加OGSI层和基于OGSA架构的服务层。参见图4.2.2。为什么它们看起来像是相互独立的呢?因为OGSA工作小组相信,通过增加核心Web服务功能来满足网格服务需求是非常必要的。OGSI通过在以下两个领域引入接口和约定来扩展Web服务。 第一,网格中服务具有动态及可能瞬变的特性。在网格中,特殊

43、的服务实例会随着工作的分派、资源的配置与供给以及系统状态的变化而不断地产生和销毁。因此,网格服务需要接口来管理它们的创建、销毁以及生命周期管理。 第二,就是状态。网格服务可以拥有与自身相关的属性和数据。这在概念上类似于面向对象编程中对象的传统结构。对象有其行为和数据。同样地,Web服务需要得到扩展,从而支持与网格服务相关的状态数据。4.1.6 Web 服务的交互模型 开放网格服务的基础架构生命周期 状态管理 服务组 工厂 通知 HandleMap生命周期服务组状态管理工厂通知HandleMapWEB服务图4.2.3 OGSI 组件OGSI引入了一种网格服务的交互模型。通过提供发现、生命周期、状

44、态管理、创建与销毁、事件通知以及引用管理的接口,OGSI为软件开发人员提供了一种统一的建模和与网格服务进行交互的方式。图4.2.3描述了这些接口。不论开发人员正在开发的是网格服务还是应用程序,OGSI编程模型都会为网格软件提供一种一致的交互方式。让我们来进一步考察OGSI引入的接口和约定。 工厂:实现此接口的网格服务提供了一种创建新网格服务的方式。工厂可以创建有限功能的临时实例,比如创建服务以表示执行特殊任务的调度程序,或者它们可能创建生存时间更长的服务,比如一个常用数据集的本地拷贝。并不是所有网格服务都是动态创建的。其中有些可能是作为网格中物理资源的实例被创建的,比如处理器、存储器或者网络设

45、备。 生命周期:因为网格服务可能是瞬变的,所以网格服务实例是使用指定的生命周期来创建的。您可以根据依赖或管理该服务的组件的需要,确定和扩展任何特殊服务实例的生命周期。生命周期机制是以这样一种方式构架的,即在不需要大规模分布式垃圾收集清理程序的情况下,防止网格服务无限地消耗资源。 状态管理:网格服务可以具有状态。OGSI规定了一个用于表示这种状态的名为Service Data的框架,以及一个用于检查或修改该状态的名为 Find/SetServiceData机制。此外,OGSI要求每个网格服务都必须支持的Service Data Elements中要有最低数量的状态,并要求所有服务都要实现 Fin

46、d/SetServiceData portType。 服务组:服务组是网格服务的集合,它们使用 Service Data 来建立索引以用于特定目的。例如,您可能使用它们来收集所有这样的服务,它们在网格内特定群集节点中代表资源。 通知:被建模用于网格服务的状态信息(Service Data)会随着系统的运行而变化。网格服务之间的许多交互要求动态地监控状态变化。通知把一种传统的发布和订阅范式应用于这种监控。网格服务支持一个接口(NotificationSource),以允许其他网格服务(NotificationSink)订阅进行变更。 HandleMap:当工厂创建网格服务的一个新实例时,工厂会返

47、回新实例化的服务标识。这个标识由两部分组成:一个网格服务句柄(Grid Service Handle,GSH)和一个网格服务引用(Grid Service Reference,GSR)。GSH 保证无限期地引用该网格服务,而 GSR 可以在该网格服务的生命周期内发生改变。HandleMap 接口提供一种在给定GSH的情况下获得 GSR 的途径。 4.1.7 关于OGSI和Web服务的更多信息基于OGSA架构的服务扩展的Web服务寻址编码属性信任安全图 4.4.4 OGSI 和 Web 服务OGSA架构增强了Web服务以适应网格的需求。在OGSI中已规定了这些增强。随着OGSI规范的定稿,以及相关实现的开始出现,一些标准组织开始对如下事情感兴趣:在相应的Web服务标准中整合OGSA拟定的大多数功能。这样做是很有意义的。从某些方面看,OGSI处理的大量内容不是网格计算所特有的,但是,是构建面向服务的健壮架构所必需的。随着时间的推移,许多OGSI功能或许会整合进Web服务标准中。图4.4.4列出了几种可能整合OGSI的新兴Web

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

当前位置:首页 > 学术论文 > 毕业论文

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922