首页

网络计算的四种形式

专题报道-1 字数 5000 责编 龚杰

20世纪90年代,Internet 蔓延到世界各地,成为人们沟通信息和协同工作的有效工具, 更为重要的是,Internet 上汇集的成千上万的计算资源、数据资源、软件资源、各种数字化设备和控制系统共同构成了生产、传播和使用知识的重要载体。人们开始思考如何将物理上互连的众多资源汇聚起来,联合提供服务,这就是网络计算技术的实质。

网络计算的四种形式

国防科技大学计算机学院 肖侬 卢锡城 王怀民

在目前,网络计算正处于发展阶段,人们对它的定一还没有形成共识,但一个相对可以接受的理解是:‚网络计算‛是把网络连接起来的各种自治资源和系统组合起来,以实现资源共享、协同工作和联合计算,为各种用户提供基于网络的各类综合性服务。基于此,人们把企业计算、网格计算、对等计算和普及计算归类为网络计算。

企业计算:以中间件为核心

企业计算是‚以实现大型组织内部和组织之间的信息共享和协同工作为主要需求而形成的网络计算技术‛,其核心是Client/Server计算模型和相关的中间件技术。

早在20世纪80年,人们就提出在互连的计算机硬件上部署新型的分布式操作系统,全面彻底地管理整个系统,给用户单一的系统视图。尽管这一努力产生了许多技术成果和实验系统,但一直没有形成可用的产品,人们直觉地感到在不断扩展的局部自治异构系统上实现资源的集中管理几乎是不可能的,于是开始采用中间件平台技术,以屏蔽系统的异构性,支持局部自治系统的信息交互和协同。经过十几年的发展,中间件取得了令人瞩目的发展,出现了远程数据库访问、远程过程调用、消息传递和交易管理等各类中间件。

90年代末,面向对象的中间件技术成为中间件平台的主流技术,出现了以SUN 公司的EJB/J2EE 、Microsoft 的COM +/DNA和OMG 的CORBA/OMA为代表的三个技术分支。其研究热点是建立标准化的对象请求代理,屏蔽网络环境下计算平台、操作系统、编程语言、网络协议的异构性和复杂性,使分布在网络上的应用系统能够协同工作,为网络应用提供通用的高级网络管理服务以及与应用领域相关的增值服务。

进入新世纪,随着电子商务需求的发展,企业计算面临企业间的信息共享和协同工作问题,面向Web 的企业计算解决方案成为热点,W3C 提出了Web Service 技术体系、Microsoft 推出了.Net 技术、SUN 推出SUN ONE架构,企业计算技术全面进入Internet 时代。

网格计算:让计算能力‚公用化‛

网格计算(Grid Computing )是网络计算的另一个具有重要创新思想和巨大发展潜力的分支。最初,网格计算研究的目标是希望能够将超级计算机连接成为一个可远程控制的元计算机系统(MetaComputers );现在,这一目标已经深化为建立大规模计算和数据处理的通用基础支撑结构,将网络上的各种高性能计算机、服务器、PC 、信息系统、海量数据存储和处理系统、应用模拟系统、虚拟现

实系统、仪器设备和信息获取设备(例如传感器)集成在一起,为各种应用开发提供底层技术支撑,将Internet 变为一个功能强大、无处不在的计算设施。

Grid 计算可以从三个方面来理解。

第一,从概念上,网格计算的目标是资源共享和分布协同工作;网格的这种概念可以清晰地指导行业和企业中各个部门的资源进行行业或企业整体上的统一规划、部署、整合和共享,而不仅仅是行业或大企业中的各个部门自己规划、占有和使用资源,这种思想的沟通和认同对行业和企业是至关重要的,将提升或改变整个行业或企业信息系统的规划部署、运行和管理机制。

第二,网格是一种技术;为了达到多种类型的分布资源共享和协作,网格计算技术必须解决多个层次的资源共享和合作技术,制定网格的标准,将Internet 从通讯和信息交互的平台提升到资源共享的平台。

第三,网格是基础设施,是通过各种网络综合计算机、数据、设备和服务等资源的基础设施;随着网格技术逐步成熟,建立地理分布的遍布全国或世界的大型资源节点,集成网络上的多个资源,联合向全社会按需提供全方位的信息服务。这种设施的建立,将使用户如同今天我们按需使用电力一样,无需在用户端配套大量的全套计算机系统和复杂软件,就可以简便地得到网格提供的各种服务,这种设备、软件投资和维护开销将大大减少。

如同电力系统一样,网格设施作为一个国家战略信息基础设施来规划、建设和运行管理,其复杂度和难度是相当大的,这里面有思想和观念上的变化,技术上的难点,以及国家法律和政策上的问题等等,需要经过多年的艰苦努力。但是作为大型企业、行业和国防等一些部门实施网格基础设施战略是现在就可以开始做的事情,而且在需求、策略和技术上都是切实可行的。

网格计算的重要战略意义及其广阔应用前景,使其成为当今吸引众多研究人员和巨大资金投入的研究热点,一些大型网格计算研究项目相继启动。截止到目前,最著名的网格计算研究项目包括以下一些:

● 美国自然科学基金于1997年底开始实施‚分布式网格‛研究项目,其

目标是在美国建立遍及全国的计算网格,支持重大科学与工程计算,为用户提供到桌面上的虚拟高性能计算环境。

● 美国国家航空和宇宙航行局(NASA )的IPG (Information Power 网格)

项目。这是一个20年的研究计划,目的是让人们使用计算资源和信息资源就象使用电力网提供的电力资源一样方便快捷。

● 美国能源部开发的ASCI 网格已经投入生产性使用,其主要用途是核武

器研究。

● 美国国防部的全球信息网格(GIG )项目是最庞大的网格计划,用于美

军新世纪作战支撑,预计2020年完成。

● 欧洲共同体的Euro 网格和Data 网格。主要用于包括高能物理、生物计

算、气候模拟等多个领域的应用。

● 2001年8月,美NSF 宣布了一个重大科研项目,研制称为‚分布式万亿

级设施‛(Distributed Terascale Facility)的网格系统,简称Tera 网格,它是世界上第一个从设计开始就面向网格的广域超级计算平台,也是第一个无处不在的计算机基础设施(Cyber-infrastructure )。

● 我国科技部在‚九五‛开展了国家高性能计算环境(网格)的建设和关

键技术的研究。‚十五‛期间科技部加大了对网格技术研究和推广的力度,目标是突破网格关键技术、建立网格计算技术标准,将网格计算技术应用到行业和企业应用中,建立行业和企业应用网格,进一步加强全社会共享的国家高性能网格计算环境的建设,推动我国网格产业的形成和发展。

目前,大的网格项目研究和实施有一个显著的特点,即各个项目是直接面向应用,和应用领域紧密相关。目前,IBM 、HP 、Sun 、LSF 、Boeing 等公司都已经进入网格计算领域,加紧研究相关的技术和产品。

在这里需要强调的是‚网格计算‛与‚高性能计算机‛的关系。高性能计算机是网格计算环境结构的结点和重要组成部分;网格计算技术是高性能计算技术的发展方向之一,它并不能替代超高性能计算机系统。但是未来的超高性能计算机系统必须支持网格计算环境, 能够很容易地融入到网格计算环境中, 将其强大的计算和数据存储处理能力提供给众多的用户使用。网格计算技术的目的是结合高性能计算技术和网络计算技术将高性能计算机的能力释放出去,构造一个公共的高性能处理和海量信息存储的计算基础设施,使各类用户和应用能够共享资源。因此,网格计算将会促进高性能计算机应用的发展,促进高性能计算机服务市场的发展,刺激市场对高性能计算机和海量存储系统的需求。

对等计算:倡导‚平等‛共享

对等计算(Peer-to-Peer ,简称P2P )是在Internet 上实施网络计算的新模式。在这种模式下,服务器与客户端的界限消失了,网络上的所有节点都可以‚平等‛共享其他节点的计算资源。

IBM 为P2P 下了如下定义:P2P 系统由若干互联协作的计算机构成,且至少具有如下特征之一:系统依存于边缘化(非中央式服务器)设备的主动协作,每个成员直接从其他成员而不是从服务器的参与中受益;系统中成员同时扮演服务器与客户机的角色;系统应用的用户能够意识到彼此的存在,构成一个虚拟或实际的群体。

不难看出,P2P 把网络计算模式从集中式引向分布式,也就是说,网络应用的核心从中央服务器向网络边缘的终端设备扩散:服务器到服务器、服务器到PC 机、PC 机到PC 机,PC 机到WAP 手机,所有网络节点上的设备都可以建立P2P 对话。

P2P 给互联网的分布、共享精神带来了无限的遐想。有观点认为,至少有几百种应用能被开发出来,但从目前的应用看,P2P 的威力还主要体现在大范围的共享和搜索的优势上,诸如对等计算、协同工作、搜索引擎、文件交换等。

普及计算:计算无所不在

普及计算(ubiquitous computing or pervasive computing)强调人与计算环境的紧密联系,使计算机和网络更有效地融入人们的生活, 让人们在任何时间、任何地点都能方便快捷地获得网络计算提供的各种服务。

普及计算研究的内容主要包括两个方面:自然的人机交互和网络计算。美国排名前10位的大学无一例外地投巨资设立了以‚普及计算‛为主要方向的研究计划。目前有4个研究计划最具影响力,这些计划的目标是提出全新的体系结构、应用模式、编程模型等基础理论模型和方法:

● MIT 的Oxygen 研究计划

该计划的研究人员认为,未来世界将是一个到处充斥着嵌入式计算机的环境,它们已经融入人们的日常生活中。Oxygen 希望充分利用这些丰富计算资源,达到‚做更少,完成更多(to do more by doing less)‛的目的。 ● CMU 的Aura 研究计划

它致力于研究在普及计算时代,在用户和计算环境之间增加一层软件层(称为Aura ),由Aura 代理用户去管理、维护分布式计算环境中频繁变化、松散耦合的多个计算设备,以完成用户的目标任务。Aura 推崇的理念是:‚‘人的精力’(User Attention )是最宝贵的资源,应该让它集中在用户要完成的任务上,而不是管理、配臵硬件和软件资源上‛。

● UC Berkeley的Endeavour 计划

这是UC Berkeley 进行的旨在通过运用信息技术,提供全新的、全球规模的信息基础设施,从根本上方便人们与信息、设备和他人进行交互的计划。这些信息设施需要能够动态实时地协调世界上任何可用的资源来满足用户计算的需要,其创新点之一是‚流体软件‛(Fluid Software ),这种软件能够自适应地选择在何处执行、在何处存储,它通过协议获得可用资源并向其他实体提供服务。

● 华盛顿大学的Portolano 计划

该计划提出了‚数据为中心的网络‛以适应让计算本身变成不可见的(Invisible Computing)的要求。它认为目前计算机技术的发展仍然是技术驱动而不是用户需求驱动的,为了改变这一现状,该计划致力于研究根据用户的位臵变化而自适应地改变软件用户界面的机制、以数据为中心的网络以及新型的分布式服务模型。

各类网络计算之间的异同

以上四类网络计算虽然侧重点不同,但最终的目标是一致的:广泛共享、有效聚合、充分释放。

所谓广泛共享,是指通过各种方法、技术和策略将网络上的各种资源提供给网络上众多用户共享使用;所谓有效聚合,是指将网络上的巨大资源通过协同工作连接集成起来,产生巨大的综合效能,联合完成应用任务;所谓充分释放,是指为用户提供良好的开发手段和使用环境,将网络上的多种资源的聚合效能按照需求传递给用户,为用户提供个性化的信息服务、计算服务和决策支持服务。

但是面对众多的网络计算技术和应用,人们有时很难区分它们之间的技术差异,不知道谁将成为未来网络计算的主导。事实上,虽然最终目标一致,但各种网络计算技术的应用范围和研究对象的规模、层次各有不同。

面向对象的分布式计算技术强调的是分布系统的集成能力,以两层或多层Client/Server为主要计算模式,关心的是简化用户端的工作,强化多层服务器的功能,注重分布系统之间的协同工作和快速的应用开发和实现,强调应用服务之间的可交互、可操作性,代码的可移植性,通常关注一个组织内的资源共享。

P2P 技术弱化了集中服务器的功能,重视网络中所有个体的作用,强调的是个体之间、系统之间、计算机之间的直接通信和联系,每一个参与者既是客户又是服务方,这使人们在Internet 上的共享行为被提到了一个更广泛的层次,使人们以更主动的方式参与到网络中去。它与现行以中间件为主的分布式计算技术

所采用的Client/Server模式有本质区别。

网格计算是在Internet 基础上强调对计算、数据、设备等网络基本资源进行整合,力图将Internet 作为一个社会化的计算基础设施。在计算模型、技术路径和研究目标上,Grid 计算和目前分布计算中间件领域面向应用级别的交互、互操作和开发有很大的不同。它强调多机构之间大规模的资源共享和合作使用,提供了资源共享的基本方法,而分布计算技术没有提供多组织之间的资源共享通用框架,以Client/Server为主要的交互形式,传统企业计算技术集中在一个组织内的资源共享。显然,网格计算正在建立一种新的Internet 基础支撑结构(如同TCP/IP、WWW 协议和相应的软件系统奠定了现行Internet 的基础),是21世纪T erascale 规模的信息处理基础设施的先期实践。

普及计算模式则是要颠覆‚人使用计算机‛的传统方式,将人与计算机的关系改变为‚计算机为人服务‛,从某种意义上说,是让人与计算环境更好地融合在一起。

尽管各种网络计算技术有差异,但是它们之间并不是冲突的关系,而是一种正交关系,有时甚至是融合的,因此,各种网络计算技术可以共同存在。例如网格计算和CORBA 、SOAP 、XML 等技术结合可以访问多个机构组成的虚拟组织的资源。

信息技术的多变性使我们不能肯定10年之后的网络计算将会发展到何等程度,但是多种网络计算形式共存、相互结合和融合是肯定的。无论如何,从当今基于Internet 的各种网络计算实践和研究来看,实现网络资源的共享,提供大规模协同计算能力和对资源的有效访问,是网络计算未来发展的趋势,是下一代Internet 的技术基础。