数字家庭的服务计算中间件系统的制作方法

文档序号:6341226阅读:165来源:国知局
专利名称:数字家庭的服务计算中间件系统的制作方法
技术领域
本发明涉及一种中间件系统,尤其涉及一种数字家庭的服务计算中间件系统。
背景技术
中间件出现于20世纪80年代,当时是指网络连接的管理软件,一直到20世纪90 年代网络技术取得巨大成功之后才被广泛应用。90年代初期,中间件主要应用于商业关系数据库,随后逐渐演化为具有多种范型和服务,用于简化分布式应用程序开发的系统平台。 目前,中间件已经被应用于互联网和各种私有网络,随着电子商务的兴起,中间件扮演着越来越重要的角色。中间件通过将应用程序从协议处理、数据复制、网络故障、并行机制等问题中独立出来,屏蔽了底层网络环境的复杂性,使应用程序可以专注于功能实现。中间件还进一步屏蔽计算体系结构、操作系统、编程语言、网络技术的异构性,使得分散在不同网络中的计算资源统一起来,让用户和应用程序可以在不同的平台和通信协议下彼此相连,同时也使得不同的应用程序可以无缝地整合在一起,极大方便了遗留系统地整合,以及应用程序地编写、管理和使用。随着家庭组网方式的发展,Upnp, DLNA, IGRS, OSGI等一系列标准和规范作为中间件广泛应用于家庭智能设备的互联互通,这些标准和协议主要针对3C产品的即插即用功能扩展,一定程度上简化了家庭智能设备的联网和信息交换过程。目前,此类规范主要面向家庭内部网络的高速多媒体设备,对低速控制网络部分涉及甚少,标准之间的兼容性和通讯方式也存在差异,未完全解决数字家庭中存在的信息孤岛问题。此外,应用范围也仅限于家庭局域网内部,难以接入hternet并集成ffeb Service等计算和信息服务资源。随着研究的深入和开发方式的不断进步,众多研究者和工业界人士一致认为,软件应该作为服务来提供和传播。也就是说,要发展一种新的软件架构体系和软件范型,在这种范型中,关注的重点从提供软件转向了描述和传送服务,这使得关注点不再是传统软件的构建、使用和所有权模型。

发明内容
本发明的技术效果能够克服上述缺陷,提供一种数字家庭的服务计算中间件系统,其存在于操作系统等系统软件(包括基本的通信协议)和通过网络进行交互的分布式应用程序之间的一个模块软件层,用于支持分布式软件的交互与协同。为实现上述目的,本发明采用如下技术方案其系统包括五个相互通信的工作模块,即计算负载模块、通信模块、上下文表达模块、编程抽象模块、应用环境模块。服务计算中间件是软件中间件技术在服务计算环境中的应用,用于屏蔽服务计算环境的异构性和动态多变性,作为系统软件与服务计算应用程序之间的一个软件层,为应用程序提供一组软件服务,使得这些应用程序可以在服务计算环境下方便有效地进行交互与协同,使用户感觉不到计算的存在。不同的商业发展趋势对中间件提出了网络通信、协调性、可靠性、伸缩性、异构性等不同方面的非功能性需求,衍生出针对不同领域的不同种类中间件,可从不同角度对中间件进行分类。计算负载模块包括重量级模式模块和轻量级模式模块。中间件的计算负载取决于系统的非功能性需求,如通信、可靠性、数据复制等。如果中间件系统需要大量资源(如 CPU、内存、代码量等)来提供上层应用程序所需要的服务,则被认为是重量级的;相反,如果仅需要少量的资源,则被认为是轻量级的。为了满足各类需求,目前主流的中间件系统 (如C0RBA、贝EE、DC0M等)一般都是重量级的,为了适应资源有限的小型计算设备,尤其是移动设备,研究资源受限系统的中间件成为热点。传统分布式计算中间件采用单块结构,缺乏灵活性,且多数是重量级的,对网络带宽和连接性等要求较高,一般无法适应移动设备。服务计算环境复杂多样,终端设备可能是资源丰富的工作站或个人电脑,但更多的是资源非常有限的微小型可移动计算设备,比如移动智能电话、PDA、智能手表等,这些设备无法提供大量的计算时间和存储资源来运行重量级中间件架构,这就要求普适计算中间件架构本身必须是轻量级的,资源要求较高的服务只能由运行于富资源终端上的中间件节点(指运行中间件的网络计算设备,如PDA、服务器、个人电脑、移动智能手机等)提供,而资源有限的中间件节点可以包含数量有限的轻量级服务,并通过与其他节点协作来完成资源要求较高的计算任务。通信模块包括同步模式模块和异步模式模块。同步方式要求客户端连接到服务端,客户端和服务端之间消息的发送和接收同步进行,发送和接收进程都将阻塞以等待下一个消息。异步方式则不要求发送与接收同步进行,发送进程在消息发送后并不阻塞而是继续运行,接收消息时可以是阻塞的,也可以是不阻塞的。除消息中间件外,传统分布式计算中间件均采用同步模式,而应用于移动计算或普适计算环境中的中间件系统则均须支持异步通信。除这两种模式外,中间件系统采用的其他通信模式还包括单向和延迟同步等。服务计算中间件必须支持异步通信,这是因为服务计算环境充满着不确定性,尤其是无线网络的大量存在使得连接可靠性无法保障,如果服务计算中间件只采用同步通信模式,很可能因为连接中断而使中间件节点陷入无限等待,导致计算资源浪费甚至任务死锁。同时,服务计算中间件仍需兼容同步通信模式,比如在可靠网络中进行大量数据传输时使用同步通信更为高效。上下文表达模块包括上下文感知模式模块和上下文透明模式模块。中间件系统的执行上下文可以暴露给上层的应用程序,也可以隐藏在自身内部对外不可见,采用前一种方式的中间件被称为是上下文感知的(context aware),后一种则被称为是上下文透明的 (contextt ransparent)。中间件与底层网络操作系统进行交互,能够收集到设备位置、网络带宽、网络延迟、可获取的远程服务等相关信息,如果中间件是上下文透明的,这些信息就只是在中间件内部使用,而不对上层应用程序暴露。相反,如果中间件是上下文感知的, 这些信息就可以被传递给上层应用程序,由应用程序来进行决策,以减轻中间件系统的负担。上下文感知要求服务计算中间件对应用程序暴露其实现细节,但是为了对各种应用提供公共支持,中间件又需要尽可能地隐藏其实现细节,这是服务计算中间件要处理的一个根本矛盾。要在感知与透明性之间保持平衡,就要求中间件能提供通用方法来进行上下文表达、感知和推理,以恰当的方式为应用程序提供上下文信息,同时提供各类公共服务隐藏应用程序不需要了解的实现细节。上下文感知技术是服务计算技术发展的动力之一,而上下文建模方式是上下文感知技术的关键。服务计算环境对上下文建模方式有着很高的要求,要求其支持信息的分布式合成和部分验证、能够表达信息质量和丰富性、能够应用于现存环境等。编程抽象模块包括分布式元组空间模式模块、远程过程调用模式模块、面向消息模式模块、分布式对象模式模块和事务模式模块。这些编程抽象方式不同程度地整合了底层物理资源(通信、处理、存储等)。1.元组空间是用于进程通信的全局共享的联合寻址内存空间,支持离线操作。大多数元组空间系统同时支持阻塞和非阻塞的元组检索操作。分布式关系数据库是分布式元组空间的典型应用,也是目前中间件应用最为广泛的领域。2.远程过程调用在中间件中的应用始于Sun的Open Network ComputingArehitecture0远程过程调用是经典的过程调用思想在网络环境下的自然拓广, 它使得一个客户端程序可以通过网络调用远程服务端程序中的过程,而在客户端源程序中的写法与普通过程调用相同。采用远程过程调用的系统通信模式通常是同步的,在异常处理、易剪裁性和容错性方面能力较为有限。3.面向消息中间件基于消息队列或消息传递,通过消息交换支持分布式系统构件间的通信,提供同步或异步的交互机制。采用无连接的通信模式,可以供网络内所有节点访问,并不强制要求消息接受方一定可用。消息传递是一种直接通信模型,其消息被直接发给感兴趣的实体,发送方式可以是点对点的,也可以采用发布/订阅模式。消息中间件可以提供持久化、数据复制和实时性支持,而且还可以像元组空间那样实现空间和时间分离,具有较好的可靠性、易用性和容错能力,但是访问透明性不好、配置和编写不方便等问题使得面向消息的中间件对伸缩性和异构性支持不够。4.分布式对象由RPC演化而来,是面向对象模型在分布异构环境下的自然拓广, 其基本想法是将面向对象原则引入分布式系统开发当中。在分布式对象中间件中,远程对象中的方法可以与本地对象一样的方式被调用,分布式应用程序开发者因而可以享受所有面向对象技术带来的好处封装、继承、多态。分布式对象中间件标准化好、功能较强,非常适合用于整合遗留系统,具有良好的异构支持能力。5.事务中间件通过分布式主机上运行的构件支持分布式事务处理,支持不同主机间的同步或异步通信。事务中间件通常采用两阶段提交协议,其主要功能是提供联机事务处理所需要的通信、并发访问控制、事务控制、资源管理、安全管理和其他必要的服务。应用环境模块包括移动计算模式模块、游牧计算模式模块、普适计算模式模块。以往中间件主要应用于传统的分布式计算环境,但随着移动计算(MobileComputing)、游牧计算(Nomadic Computing)、普适计算(pervasive computing)等新型计算环境的出现,中间件的应用范围愈加广泛。这些不同的计算环境对中间件有不同需求,也使得应用于这些环境的中间件有着不同特点。传统分布式中间件大多以黑盒方式构建,分布式细节对用户和软件工程师隐藏, 虽然这能够方便中间件系统使用,却并不适合服务计算中复杂多变的环境。因为在这类环境下隐藏实现细节是非常困难且没有什么意义的。为了适应服务计算环境的高度动态变化,应用程序必须具有较好的弹性;而为了减少分散用户注意力,与用户融洽地结合在一
5起,服务计算环境中的应用程序又必须具有较好的自治性。这就要求服务计算中间件是上下文感知的,为应用程序收集、提供各种上下文信息以便其进行调整或更好地做出决策。本发明的系统对服务计算环境相关要求的支持度较好,支持服务发现是指中间件系统能够发现环境中已经存在的设备和服务,并使之能够相互发现、配置和通信。服务发现可以减少网络设备的控制开销,同时提高其可用行。服务发现还能够减轻普适计算系统设计者的工作量,让他们不必努力地尝试预见和编写设备与程序间所有可能的交互方式与状态。通过引入一个间接层次,服务发现简化了普适计算系统的设计。要将各种网络计算设备融洽地整合在服务计算环境的当中,服务发现支持必不可少。服务计算中间件与底层网络操作系统进行交互,能够收集到设备位置、网络带宽、 网络延迟、远程服务等多种上下文信息,而目前对上下文信息地感知更多停留在地理位置地感知上,相关中间件实例包括Oracle iASWE、Nexus、SignalSoft等。上下文感知绝不仅仅是地理位置感知,上下文信息的重要方面包括在哪、与谁交互以及周围资源状况等,如何简洁地表达各种上下文信息和提供应用程序交互接口、自动对上下文信息进行重配置都是有待深入研究的问题。近些年来,许多组织设计开发了服务发现协议,如Sun的Jini、MicrOSOft的UPnP、 IETF的SLP等。这些协议专注于对网络拓扑结构和定位的研究,分别解决了一些不同种类的问题,占据一定市场。但这些协议通常无法进行交互协作、共享服务信息,不利于提高资源的利用率。多服务发现协议支持是实现不同协议间的互操作以及在异构网络环境中实现高效服务发现的有效手段。通过修改所有客户端与服务端软件来支持多种服务发现协议显然不现实,目前,协议间的互操作性通常通过加入互操作层进行转换,具体有两种方式透明转换和显式转换。在透明转换方式中,互操作层位于网络层之上,负责对从各协议接收到的或是发往各协议的消息进行格式转换,转换过程对客户端或服务端透明;而在显式转换方式中,互操作层位于协议层之上,为客户端提供显式的统一的服务发现接口,方便对已有的服务发现协议进行扩展。为了减少分散用户注意力,尽可能有效地满足用户对各种资源的不同方式的需求,使得用户可以在不同网络环境中使用同一服务,服务迁移成为服务计算中间件必须考虑的功能之一。服务迁移需求本质上可以分为两类一类是为了整合现有资源,实现服务重用;一类是为了屏蔽网络环境的各种变化为用户提供持续有效的资源服务。服务计算中间件在提供移动服务的过程中,同时移动与该服务相关的历史状态、 上下文等信息,相关中间件节点也需要进行动态调整,并将资源损耗降低到一定程度以下, 使用户感觉不到服务迁移过程的存在,自然地完成服务的无缝迁移(kamless Roaming/ Migration),以实现与用户的无缝融洽结合。目前,支持无缝迁移有主从、联邦制、统一管理模式等三种方式,相关技术包括Agent、桥接、自适应数据路径调整、代理等。


图1为本发明的模块结构示意图。
具体实施例方式本发明的系统包括五个相互通信的工作模块,即计算负载模块、通信模块、上下文表达模块、编程抽象模块、应用环境模块。 计算负载模块包括重量级模式模块和轻量级模式模块。通信模块包括同步模式模块和异步模式模块。上下文表达模块包括上下文感知模式模块和上下文透明模式模块。编程抽象模块包括分布式元组空间模式模块、远程过程调用模式模块、面向消息模式模块、分布式对象模式模块和事务模式模块。应用环境模块包括移动计算模式模块、游牧计算模式模块、普适计算模式模块。
权利要求
1.一种数字家庭的服务计算中间件系统,其特征在于,系统包括相互通信的五个工作模块,即计算负载模块、通信模块、上下文表达模块、编程抽象模块、应用环境模块。
2.根据权利要求1所述的数字家庭的服务计算中间件系统,其特征在于,计算负载模块包括重量级模式模块和轻量级模式模块。
3.根据权利要求1所述的数字家庭的服务计算中间件系统,其特征在于,通信模块包括同步模式模块和异步模式模块。
4.根据权利要求1所述的数字家庭的服务计算中间件系统,其特征在于,上下文表达模块包括上下文感知模式模块和上下文透明模式模块。
5.根据权利要求1所述的数字家庭的服务计算中间件系统,其特征在于,编程抽象模块包括分布式元组空间模式模块、远程过程调用模式模块、面向消息模式模块、分布式对象模式模块和事务模式模块。
6.根据权利要求1所述的数字家庭的服务计算中间件系统,其特征在于,应用环境模块包括移动计算模式模块、游牧计算模式模块、普适计算模式模块。
全文摘要
本发明涉及一种中间件系统,尤其涉及一种数字家庭的服务计算中间件系统。本发明的数字家庭的服务计算中间件系统,系统包括相互通信的五个工作模块,即计算负载模块、通信模块、上下文表达模块、编程抽象模块、应用环境模块。服务计算中间件在提供移动服务的过程中,同时移动与该服务相关的历史状态、上下文等信息,相关中间件节点也需要进行动态调整,并将资源损耗降低到一定程度以下,使用户感觉不到服务迁移过程的存在,自然地完成服务的无缝迁移,以实现与用户的无缝融洽结合。
文档编号G06F9/46GK102541627SQ20101062174
公开日2012年7月4日 申请日期2010年12月31日 优先权日2010年12月31日
发明者于忠清, 富饶, 李桂丽, 王兵, 翟伟伟, 蔡宇玉, 陶冶 申请人:青岛海尔软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1