透明计算:概念、结构和示例

  • 来源:信息化文摘
  • 关键字:透明计算,概念,结构
  • 发布时间:2015-03-09 08:41

  本文提出一种新的普适计算模式:透明计算.它的硬件环境由客户机/服务器构成.其中客户机可以是可按透明计算模式设计的台式机、PDA、数字家电等各种固定的或移动的计算设备;服务器可以是普通PC机或其他带有存储装置的普通电脑.透明计算中的客户机上没有操作系统及运行于其上的支持工具与应用程序,这些资源都存储于服务器中,由客户机在执行时从服务器上动态调入.用户可以通过客户机和网络,从服务器中任意选择可在客户机上运行的操作系统和应用程序,从而提高系统的安全性、降低管理的复杂性、提高软件的共享程度和降低成本.本文介绍透明计算的概念、体系结构和一种基于透明计算的系统示例———可管理多媒体网络计算机MMNC(Manageable Multi-media Network Computer)系统.MMNC已被成功应用并商业化,证明了透明计算的可行性和有效性.

  1、引言

  自世界上第一台计算机ENIAC出现以来,计算技术的发展经历了由大型机为主的主机计算到桌面机为主的网络计算阶段.当前,以桌面机为主的网络计算又正朝着包括各种移动设备(例如手机、笔记本电脑、PDA等)和数字家电在内的无所不在的网络计算,也就是普适计算方向发展.普适计算是一种在任何时间和地点都可以为人们提供网络连接和计算的新模式,自20世纪末被提出以来,一直是国际学术界和产业界研究的热点.

  但是,迄今为止的普适计算以及在普适计算之前的网络计算等计算模式都是基于如下的重要事实进行讨论和研究的:无论何种计算机,必须从一开始就要为它研制和安装相应的操作系统、支撑工具和应用软件,否则,该机器就不能进行相应的应用计算或运转相应的软件系统.这造成了现在的对PC机指标(例如内存、硬盘、CPU频率和速度等)要求越来越高、软件操作系统越来越复杂和庞大的局面.那些只能安装小型嵌入式操作系统的移动设备(如PDA、手机等)以及数字家电设备(如ISDN电话等)虽然能够运转较小的软件,但它们却面临着很难和通用的计算机网络系统,例如Internet进行互连和互通的问题.硬件系统和软件系统的一一对应关系以及硬件系统的不断升级使得软件系统越来越复杂,用户的使用和维护成本越来越高.同时,不断淘汰的旧的电脑设备又形成许多新的垃圾和造成新的环境污染.

  本文提出透明计算的新计算模式.这种模式由服务器和客户机组成,在硬件系统上与传统的客户机/服务器相似.所不同的是,在透明计算模式中,其客户机可以是多种不同的终端设备,例如台式PC机、网络计算机NC、PDA等.透明计算模式的硬件环境如图1所示.

  与传统客户机服务器等计算模式的另一个重要不同是,在其他任何计算模式中,每个不同的计算设备都与一个特定的操作系统对应,这不仅是硬件设备的底层接口和操作系统内核匹配的需要,也是迄今为止的传统模式;透明计算则使得用户可以透过一个设备去选择和使用用户需要和喜欢的多个操作系统和应用程序,而且,这些操作系统和应用程序都不是固定在该设备中,而是透过各种通信网络从存储有这些操作系统、工具和应用程序等的服务器中下载得到.只要设备的硬件接口是支持这些操作系统的,用户就可根据需要动态下载和动态安装这些操作系统、工具和应用程序等,并覆盖客户机中已有的系统和程序,从而大量节省客户机的存储空间和计算时间.

  透明计算的另一个长处是,它的服务器只用于各种资源的存储,而不从事应用计算.这减少了服务器的负载,提高了用户的响应速度.

  形象地说,透明计算模式就像电视发送和接收系统.其中,服务器就像电视系统中的电视台,负责制作和发射节目.而客户机则像用户使用的电视接收机,用户可以通过遥控机选择接收不同频道的电视节目而不必关心这些节目从何而来,或什么人制作.

  下面,我们进一步介绍透明计算的概念,实现透明计算的系统结构和相关示例.

  2、透明计算的概念

  什么是透明计算?本文定义透明计算是一种用户无需感知计算机操作系统、支撑工具以及应用程序的所在,并能根据自己的需求,从所使用的各种设备(包括固定和移动以及家庭的各类设备)中找到相关计算服务,而这些服务又是存储于位于分布式网络的服务器中的计算模式.用户使用的设备(统称为客户机)与服务器之间的连接依靠内部的通信协议完成.

  透明计算有下述4个特点:

  (1)客户机上不预置任何操作系统、支撑工具或应用程序.用户透过客户机所提供的界面提交所需要的计算或服务之后,客户机上预置的通信协议和任务管理程序将自动地从服务器上下载所需要的系统、工具和应用程序到客户机环境下执行.

  (2)用户可以在客户机上选择任何可在客户机硬件上运转的操作系统,以及其上的工具和应用程序,且不必对应用程序进行任何本质上的改动.从而保证应用程序的可操作性和兼容性.例如,用户可在同一客户机上选择Windows98、Win-dows2000、WindowsXP等Windows系列的操作系统及其应用程序,如Photoshop、PowerPoint、IE等;也可选择Linux系列的各种操作系统和其上的应用程序,只要与客户机连接的服务器中预置有这样的操作系统和应用程序.

  (3)所有的应用计算都在客户机端完成,而不是在服务器端.在透明计算模式中,服务器端的作用就像制造工厂里存放零部件的仓库及其管理系统.服务器负责响应来自于客户机端的请求,并把客户机端所需要的系统、工具和应用程序动态地交换传输给客户机端.客户机的作用则相当于制造工厂中的生产车间,它负责执行应用程序,并为用户提供所需要的服务.服务器相当于它所连接的客户机的巨大的虚拟存储系统,服务器中存储的操作系统、支持工具和应用程序越多,则用户可选择的计算服务就越多.

  (4)透明计算的第4个特点是用户可以任意选择在客户机硬件平台上运行的多个操作系统及其上的应用.这改变了传统的软件厂商用一个操作系统去适应不同硬件设备的状况,从而使得用户可在一个端系统设备上任意选择操作系统机器上运行的各种软件.传统计算模式和透明计算模式中操作系统与客户机硬件的关系分别如图2与图3所示.

  透明计算模式与传统的客户机/服务器模式的区别可用图4简单描述.

  如图4所示,传统客户机/服务器计算模式中,无论是服务器端还是客户端都有自己的操作系统,而且,它们的应用计算也主要是在服务器端完成.传统客户/服务器计算模式中的服务器要完成存储、客户端请求以及系统等的管理和应用计算等任务,而该计算模式中的客户机要主要完成和服务器交互,提交用户计算任务与显示计算结果,以及进行网络通信等任务.传统客户机/服务器计算模式一般采用三层结构来实现.由于服务器要完成和管理来自于所有与该服务器连接的用户计算,因此,一般要求服务器具强大的软硬件功能,这就是所谓的瘦客户机胖服务器.

  透明计算模式中的服务不再负责用户请求的应用计算工作,它只进行数据和程序等信息资源的存储和管理.同时,它根据用户的调用请求,把用户所需要的操作系统、支持工具和应用程序中需要执行的部分按给定的页面长度传输到客户机的内存中执行.因此,我们在透明计算模式中增加了透明计算层,负责相应客户机来的用户请求,管理、调度和传输用户请求所需要的各种资源.由于服务器不再完成用户应用计算工作,因此,透明计算不需要软硬件功能都非常强大的服务器,相反,它只需要功能较小的瘦服务器.另外透明计算模式中的客户机上没有操作系统及其上的支持工具和应用程序,它只是由用于通信传输的相关硬件驱动程序和用于服务器端透明计算层进行交互的透明计算实体.客户机的透明计算层完成对服务器端的资源请求和调用,包括请求不同的操作系统资源和应用程序、管理它们的执行过程以及往服务器中回送应用程序执行结果等.由于透明计算的客户机不需要硬盘等存储器,且由于在执行时不用考虑由庞大的操作系统以及相关支持工具等带来的巨大边效应,因此,客户机可以设计成对硬件要求很低的系统,从而成为瘦客户机/瘦服务器型.

  3、透明计算的体系结构

  图5给出了透明计算的体系结构.

  如图5所示,透明计算中的服务器端和客户机端的功能层次是不对称的.这就是因为所有的应用计算和各种操作系统与支持工具都在服务器端的缘故.

  下面解释透明计算体系结构中各层的基本功能.

  (1)物理驱动层

  物理驱动层提供服务器和客户机之间的网络连接,它由相应的硬件驱动卡和驱动程序、以及其上的网络连接程序组成.例如,以太网、包括高速以太网、无线以太网802.11等就是在局域网上构成透明计算的物理驱动层.除了以太网之外,IEEE1394、红外、蓝牙、有线电视网等都可用作透明计算的物理驱动层.透明计算的物理驱动层对应于无所不在的通信,从而使得透明计算模式可用于各种有线、无线和移动环境.由于使用通用的通信网络来支持透明计算,因此,透明计算模式下可以容易地和Internet、电视网等连接.

  (2)透明计算层

  透明计算层是透明计算的核心,它包括以下几个部分:多操作系统启动连接协议,应用程序调度与管理模块,用户请求管理模块、用户管理模块、服务器资源管理模块等.

  多操作系统启动协议MRBP(Multi-OS Remote BootingProtocol)

  多操作系统启动协议完成启动客户机,并从服务器下载用户所需操作系统内核镜像的功能.在透明计算模式中,客户机上没有预置操作系统代码,它没有存储操作系统代码的存储装置.客户机透过使用MRBP协议从服务器中下载一个可在客户机上运行的操作系统镜像.在客户机上运行的操作系统具有如下特点:首先,它是动态的,即一旦客户机断电或用户退出,则该操作系统在客户机上不复存在.其次,在客户机上运行的只是操作系统的一个镜像而不是整个操作系统.这使得客户机不需要有大的存储器(例如硬盘)去存储整个操作系统.

  多操作系统启动协议MRBP的一个示例如图6所示.

  在图6中,客户机的MRBP可以分为两大部分,即启动客户机和下载操作系统内核镜像部分以及切换系统控制权,把客户机的控制权交给下载的操作系统内核的部分.服务器则只需回应来自于客户机的请求,并把客户机选定的操作系统镜像按客户机的地址回送给客户机.

  应用程序调度与管理

  除了没有操作系统之外,客户机上也没有任何应用程序和支持工具.用于需要的任何计算服务都由客户机通过网络从服务器上调用相关程序来执行得到.然而,由于用于的应用繁多、客户机中又没有大的存储器存储应用程序,因此我们仍需使用动态执行和请求调用的方法从服务器的存储器中动态调用那些在客户机执行时所需要的程序.这就需要把原来操作系统中的缺页调度或交换技术扩展到客户机/服务器环境下,我们把这种从服务器中动态调用相关程序的技术称为虚拟网络交换与调度技术VNSS(Virtual Network Switch and Sched-ule).VNSS的基本概念模型如图7所示.

  用户请求管理

  由于服务器不再进行用户应用计算,而客户机上没有任何系统或应用信息,因此,服务器必须管理和处理所有来自于不同客户机的用户请求,并要在考虑用于请求的性质(例如多媒体实时响应或数据传输响应等)基础上,在用户可以接受的时间内响应,分类排队方法和根据优先级的调度方法可用于服务器端用户请求的IO管理.图8给出了一种用户请求队列的分类方法.

  如图8所示,我们把客户机来的IO请求划分为两段队列进行排列.第一级队列按客户机的序号和地址进行排列,便于服务器对每个用户的IO请求进行记录管理.第一级队列中的每个事件按请求的时间先后顺序进行排队.第二级队列则按IO请求的事件类型排队.我们把事件类型分为程序类、普通数据类,声频数据类和视频数据类等四类.每类事件都按给定的优先级进行管理.而且,由于客户机的IO请求所要求的是程序和数据的镜像,因此,对于不同客户机来的对同一数据区或程序区的请求,我们还可以将这些请求进行合并后由服务器按广播方式进行处理,以减少处理时间和提高响应速度.

  用户管理

  由于透明计算采用服务器管理所有用户信息资源的方式,用户在客户机上没有自己的存储空间,用于除了要从服务器上请求包括操作系统、支持工具和应用程序等在内的各种计算资源之后,其执行结果也要通过网络存储到服务器的硬盘中去.因此,透明计算必须包括一个较完备的用户管理模块.用户管理模块应包括以下功能:用户注册、用户存储区的分配,用户内部地址分配、用户安全、用户使用过程记录与计费等.

  服务器资源管理

  服务器资源管理解决服务器中资源访问的效率和有效存储问题.由于连接服务器的客户机较多,而且访问类型比较复杂,在传统客户机服务器模式中一般采用加大服务器的硬件性能或用代理服务器等方法解决.在透明计算模式中,尽管服务器不为用户应用进行计算,但响应用户请求和管理用户资源仍需要耗去较多的时间.而且,服务器在为用户存取磁盘数据时也要花去较多的处理时间.再者,由于用户数据量可能较大,服务器为面临着一个如何增加存储容量的问题.我们也可用并行计算技术来解决这一问题.

  4、基于透明计算的模式的多媒体网络计算机MMNC

  4.1 MMNC的系统构成

  基于透明计算模式,研制了新的可管理多媒体网络计算机MMNC系统.该系统由服务器和客户机以及连接它们两者的高速以太网络构成,其中我们用两台普通的P4PC机作为MMNC系统的服务器,分别预置Linux操作系统和Win-dows200098操作系统及其上的各种应用;客户机用466MHz威盛CPU,与湘计算机、联想等公司联合设计研制而成.基于透明计算模式的多媒体网络计算机MMNC的拓扑结构如图9所示

  图9所示系统中的客户机采用南北桥结构的整板设计,采用VIA Cyrix Ⅲ 466MHz(注:最新版已换成Celeron 1.8GHz),该芯片支持X86指令架构、支持多媒体指令和Windows和Linux等操作系统.同时,该系统的客户机还支持MPEG1、MPEG4等多媒体处理,2D 3D图形加速器,IEEE 1394数字家电网络,USB接口,TV-Out电视接口,FAX Modem接口,以及RS232串口与并口等.对于那些目前还不支持的外部接口,则只需对客户机的主板设计稍加修改就可完成.由于采用了同板整合设计以及减少了硬盘、风扇等部件,MMNC客户机系统的成本价仅在100美元左右.

  4.2 MMNC系统的基本功能

  我们在MMNC系统中成功应用了透明计算模式,并在服务器和端系统中设置了透明计算层,包括MRBP协议,VNSS虚拟网络交换与调度算法、用户请求管理算法与用户管理算法以及服务器资源管理算法等.这使得MMNC系统在瘦客户机瘦服务器时仍然具有强大的功能.

  首先,该系统使用户可以根据需要挑选Windows或Linux操作系统和相应的应用软件,包括各种多媒体软件,例如DVD播放,卡拉OK,Photoshop数码照片,3D 2D CAD设计,以及其他各种应用软件.表1是中国软件评测中心按4.1节所述配置构成1台服务器连接28台客户机时对系统的启动时间,功能等的测试报告.该报告显示的数据说明,MMNC系统的操作系统和应用软件的启动时间大都在几秒以内,和普通PC的正常启动时间基本相同.而MMNC系统的硬件成本要低于具有相同功能的PC系统的.

  其次,MMNC系统还能使多个用户同时共享单机版软件.用户只需从服务器上像阅读Web网页那样,动态地在客户机上执行服务器上的应用程序即可,从而打破传统的网络版软件在安装和共享人数上的限制.

  第三,MMNC系统具有比传统PC更好的安全性.在基于透明计算的MMNC系统中,所有的系统资源和用户数据都存储于服务器系统中,这一是便于对用户操作过程进行管理,二是可以防止数据和信息的不正当流失;三是可以集中精力对服务器加强安全措施保护,从而更容易提高整个系统的安全性.另外,由于透明计算层的许多协议和算法是在BIOS层下实现的,这也对许多病毒的传播起到了阻断作用.例如,深圳海关和常德工商银行等用户反映MMNC系统未受到蠕虫病毒和冲击波病毒的干扰.

  MMNC系统与其他类似系统的基本功能比较如表2.

  5、结语

  本文提出了一种新的计算模式,即透明计算模式是一种用户可以自由选择操作系统及其上的应用软件的计算模式.它解决了需要高性能计算设备才能运行大型操作系统和应用软件的问题,使得系统更加安全、成本更低、而用户不必安装和管理软件,以及可选择操作系统和软件.本文介绍了透明计算的概念、体系结构和透明计算的主要关键技术.同时,我们还介绍了基于透明计算模式研制而成的多媒体可管理网络计算机MMNC,证明了透明计算模式的可行性和有效性.

  许多课题需要进一步研究解决.例如,关于移动设备的透明计算,数字家电的透明计算,并行透明计算,以及如何把更多的操作系统和应用程序纳入到透明计算中来.

  摘自:《电子学报》2004年12月第12A期

  ■张尧学

……
关注读览天下微信, 100万篇深度好文, 等你来看……
阅读完整内容请先登录:
帐户:
密码: