在线工博会

网格技术漫谈
庞亚红 王彬
为节省流量,手机版未显示文章中的图片,请点击此处浏览网页版
网络的出现,改变了人们使用计算机的方式,而Internet的出现,又改变了人们使用网络的方式。纵观互联网的发展历程,Internet技术和Web技术的主要成就是实现了计算机和网页的连通,提供收发邮件、浏览和下载网页信息等相关服务,它所关注的问题是如何使信息传输流量更大、传输速度更快、传输更加安全。而网格技术则关注如何有效安全地管理和共享连接到Internet上的各种资源,并提供相应的服务,网格所关注的问题无论从范围、程度还是本质上都已经与互联网所关心的互连问题有了很大的不同。网格在连通计算机和网页的基础上,还将各种信息资源,例如数据库、软件以及各种信息获取设备都连接成一个整体,整个网络如同一台巨大无比的计算机,向每个用户提供包括计算能力、数据存储能力以及各种应用工具等一体化的透明服务。它强调的是全面地共享资源、全面地应用服务。目前的技术还没有实现资源层面的全面共享,只是信息的传输,所以属于网络技术,而非网格技术。互联网新一次浪潮的实质,就是要将万维网(World Wide Web)升华为网格(Great Global Grid),即实现WWW到GGG的变革。
网格作为一个集成的计算与资源环境,能够吸收各种计算资源,将它们转化成一种随处可得的、可靠的、标准的且相对经济的计算能力,其吸收的计算资源包括各种类型的计算机、网络通信能力、数据资料、仪器设备甚至有操作能力的人等各种相关资源。 
网格是借鉴电力网的概念提出的,网格的最终目的是希望用户在使用网格计算能力解决问题时像使用电力一样方便,用户不用去考虑得到的服务来自于哪个地理位置,由什么样的计算设施提供。也就是说,网格给最终的使用者提供的是一种通用的计算能力。
电力网中需要有大量的变电站等设施对电网进行调控,相应的网格中也需要大量的管理站点来维护网格的正常运行。网格的结构及资源的调控将更复杂,需要解决的问题也更多。因为网格所关心的问题不再是文件交换,而是直接访问计算机、软件、数据和其他资源。这就要求网格具备解决资源与任务的分配和调度、安全传输与通信实时性保障、人与系统以及人与人之间的交互等能力。网格提供的资源是随时间动态变化的,原来拥有的资源或者功能,在下一时刻可能就会出现故障或者拒绝被使用,而原来没有的资源,可能随着时间的进展会不断加入进来。
一、网络的典型体系结构
网格技术不断地发展使人们逐渐地意识到了网格体系结构的重要性。网格体系结构用来划分系统的基本组件,指定系统组件的目的和功能,说明组件之间如何相互作用,规定了网格各部分相互的关系与集成的方法。可以说,网格体系结构是网格的骨架和灵魂,是网格技术中最核心的部分。
1.五层沙漏结构
五层沙漏结构是一种早期的抽象层次结构,以“协议”为中心,强调协议在网格的资源共享和互操作中的地位。通过协议实现一种机制,使得虚拟组织的用户与资源之间可以进行资源使用的协商、建立共享关系,并且可以进一步管理和开发新的共享关系。这一标准化的开放结构对网格的扩展性、互操作性、一致性以及代码共享都很有好处。图1为五层沙漏结构的典型结构图。

(图片)

五层结构之所以形如沙漏,是由各部分协议数量的分布不均匀引起的。考虑到核心的移植、升级的方便性,核心部分的协议数量相对比较少 (例如Internet上的TCP和HTTP),对于其最核心的部分,要实现上层协议(沙漏的顶层)向核心协议的映射,同时实现核心协议向下层协议(沙漏的底层)的映射。按照定义,核心协议的数量不能太多,这样核心协议就成了一个协议层次结构的瓶颈。在五层结构中,资源层和连接层共同组成这一核心的瓶颈部分,它促进了单独的资源共享。
2. 开放网格服务结构
开放网格服务结构OGSA是Global Grid Forum4的重要标准建议,是目前最新也最有影响力的一种网格体系结构,被称为是下一代的网格结构。OGSA的目的就是要将Grid的一些功能,更确切的说是Globus的一些功能融合到Web Service这个框架中。与前期网格不同的是,OGSA是面向服务的结构,将所有事务都表示成一个Grid服务,计算资源、存储资源、网络、程序、数据等都是服务,所有的服务都联系对应的接口,所以,OGSA被称为是以服务为中心的“服务结构”,通过标准的接口和协议支持创建、终止、管理和开发透明的服务,其发展象征着Web Service的一个进步,结合目前的Web Service技术,支持透明安全的服务实例,OGSA有效地扩展了Web Service架构的功能。五层模型与OGSA都相当重视互操作性,但OGSA更强调服务的观点,将互操作性问题转化为定义服务的接口和识别激活特定接口的协议。这一面向服务模型具有很多优点,环境中的所有组件都是虚拟化的,通过提供一个所有Grid服务实现基础的一致接口的核心集,可以使得分级的、更高级别的服务的构建能够跨多个抽象层以一种统一的方式进行处理。虚拟化还促使从多个逻辑资源实例到同一物理资源的映射,不考虑实现的服务组合,以及一个VO内的基于低级资源组合的资源管理。正是Grid服务的虚拟化加强了通用服务语义行为无缝地映射到本地平台设施的能力。
二、网格协议Globus工具包
由于现在的互联网结构并不是针对网格计算设计的,为了使网格计算和现有的结构兼容,一个可扩展的中间件是必需的,也就是基于操作系统之上的网格管理软件。在网络化应用成为主流的时代,单机操作系统如NT、Windows等的地位已经降低,网格管理软件实际上是更高层次的网格操作系统,其核心技术主要是一体化的信息平台、语义网站、智能代理和知识本体技术等。建立网格服务的协议与标准是网格发展的重点和难点。Globus项目是目前国际上最有影响力的与网格计算相关的项目之一,是来自世界各地关注网格技术的研究人员和开发人员共同努力的成果。它是围绕四种主要活动来组织的:研究、软件工具、实验台和应用程序。Globus对资源管理安全、信息服务及数据管理等网格计算的关键技术进行研究,开发能在各种平台上运行的网格计算工具软件,帮助规划和组建大型的网格实验平台,开发适合大型网格系统运行的大型应用程序。Globus工具包是Globus最重要的实践成果,它是一个开放源码的关键Grid协议的参考实现,支持大量的主要的电子科学项目。该工具包基于开放结构、开放服务资源和软件库并支持网格和网格应用,致力于安全、信息发现、资源管理、数据管理、通信错误诊断等问题。Globus的网格计算协议是建立在互联网协议之上的,以互联网协议中的通信、路由、名字解析等功能为基础。Globus的协议分为5层:构造层、连接层、资源层、汇聚层和应用层。上层协议可调用下层协议的服务。
网格内的全局应用都通过协议提供的服务来调用操作系统。Globus工具包包括网格安全、网格信息获取与分布、网格资源管理及网格远程传输等内容,这些都是网格开发中的关键技术和必须解决的重要问题。
三、网格核心技术
为解决不同领域复杂科学计算与海量数据服务问题,人们以网络互连为基础构造了不同的网格,有代表性的如计算网格、拾遗网格、数据网格等,它们在体系结构和需要解决的问题类型等方面不尽相同,但都需要共同的关键技术,主要有如下几种:
高性能调度技术 在网格系统中,大量的应用共享网格的各种资源,如何使得这些应用获得最大的性能,这就是调度所要解决的问题。网格调度技术比传统高性能计算中的调度技术更复杂,这主要是因为网格具有一些独有的特征,例如,网格资源的动态变化性、资源的类型异构性和多样性、调度器的局部管理性等。所以网格的调度需要建立随时间变化的性能预测模型,充分利用网格的动态信息来表示网格性能的波动。在网格调度中,还需要考虑移植性、扩展性、效率、可重复性以及网格调度和本地调度的结合等一系列问题。
资源管理技术 资源管理的关键问题是为用户有效地分配资源。高效分配涉及到资源分配和调度两个问题,一般通过一个包含系统模型的调度模型来体现,而系统模型则是潜在资源的一个抽象,系统模型为分配器及时地提供所有节点上可见的资源信息,分配器获得信息后将资源合理地分配给任务,从而优化系统性能。
网格安全技术 网格计算环境对安全的要求比 Internet的安全要求更为复杂。网格计算环境中的用户数量、资源数量都很大且动态可变,一个计算过程中的多个进程间存在不同的通信机制,资源支持不同的认证和授权机制且可以属于多个组织。正是由于这些网格独有的特征,使得它的安全要求性更高,具体包括支持在网格计算环境中主体之间的安全通信,防止主体假冒和数据泄密;支持跨虚拟组织的安全;支持网格计算环境中用户的单点登录,包括跨多个资源和地点的信任委托和信任转移等。
网格研究最初的目标是希望能够将超级计算机连接成为一个可远程控制的元计算机系统(MetaComputers),现在,这一目标已经深化为建立大规模计算和数据处理的通用基础支撑结构,将网络上的各种高性能计算机、服务器、PC、信息系统、海量数据存储和处理系统、应用模拟系统、虚拟现实系统、仪器设备和信息获取设备(例如传感器)集成在一起,为各种应用开发提供底层技术支撑,将Internet变为一个功能强大、无处不在的计算设施,最终实现资源共享和分布协同工作。网格的这种概念可以清晰地指导行业和企业中各个部门的资源进行行业或企业整体上的统一规划、部署、整合和共享,而不仅仅是行业或大企业中的各个部门自己规划、占有和使用资源。这种思想的沟通和认同对行业和企业是至关重要的,将提升或改变整个行业或企业信息系统的规划部署、运行和管理机制。 12/23/2004


电脑版 客户端 关于我们
佳工机电网 - 机电行业首选网站