内容发布更新时间 : 2024/11/10 6:14:43星期一 下面是文章的全部内容请认真阅读。
龙源期刊网 http://www.qikan.com.cn
基于消息中间件的多维QoS管理模型的设计与实现
作者:李 璐 王德鹏
来源:《电脑知识与技术》2009年第31期
摘要:目前大多数中间件产品主要关注于应用的功能性需求,对应用的服务质量(QoS)需求只提供“尽力而为”的服务,难以满足分布式交互在时间、空间、可靠性等方面的QoS需求。首先对消息中间件和QoS的概念进行了介绍,然后设计了一种基于消息中间件的多维QoS管理模型,介绍了该模型的体系结构,并对该模型的核心模块进行了详细分析。该模型以消息中间件为平台,对分布式交互的QoS进行管理,以满足分布式交互的QoS需求。 关键词:消息中间件;多维QoS;QoS管理
Design and realization of the Multi-QoS Management Model Based on Message-Oriented Middleware
LI Lu, WANG De-peng
(1.Department of Computer Engineering, Suzhou Vocational University, Suzhou 215104, China) Abstract: Currently, most middleware products pay attention to the functionality requirement of the application and only provide the best-effort service to the QoS requirement of the application. They can’t meet the QoS requirement of the distributed interaction at time, space and reliability. Firstly, the definition of message-oriented middleware and QoS is introduced. Then a multi-QoS
management model based on message-oriented middleware is designed. The architecture of the model is introduced and central modules of the model are analyzed in detail. The model uses message-oriented middleware as the platform to manage QoS of the distributed interaction and can meet the QoS requirement of the distributed interaction.
Key words: message-oriented middleware; multi-dimension QoS; QoS management
目前,分布式系统广泛应用于各行各业之中,发挥着重要作用。然而,分布式系统也存在着诸多问题:一方面,分布式系统中存在着多种硬件设备,而这些硬件设备上又运行着不同的操作系统和应用软件,实现这些异构系统间可靠、便捷地交互一直是一个难题;另一方面,分布式系统的广泛应用使得系统规模迅速扩大,导致网络带宽等资源严重不足,难以满足分布式环境下的用户需求。
龙源期刊网 http://www.qikan.com.cn
为了解决上述第一个问题,使分布式环境下的应用能够在一个统一的平台上进行交互,学者们提出了中间件的概念。中间件是一种位于系统软件和应用软件之间的分布式软件,为分布式系统中不同组件之间的交互提供了支持[1]。当前,中间件已广泛应用于分布式系统中,为分布式环境下的通信和互操作提供着便利[2]。
为了解决上述第二个问题,缓解日益增长的用户需求与严重短缺的网络、系统资源间的矛盾,CCITT提出了服务质量(Quality of Service, QoS)的概念,希望通过对应用的QoS进行管理来解决这一问题。
鉴于上述两点,以中间件为平台对分布式应用的QoS进行管理,可以有效地解决分布式系统中存在的问题。然而目前的中间件产品大多只关注应用在功能方面的需求,对以QoS为代表的非功能性需求只提供“尽力而为”的服务,难以满足分布式环境下的用户需求[3]。
本文首先对消息中间和QoS的相关知识进行了介绍,然后针对目前分布式交互中存在的问题,设计了一种基于消息中间件 (Message-Oriented Middleware, MOM)的多维QoS管理模型,对分布式交互的QoS进行管理,介绍了该模型的体系结构,详细介绍了其核心模块的设计与实现,最后对全文进行了总结。 1 消息中间件和QoS 1.1 消息中间件
消息中间件是一种用于消息传输的中间件,提供了与平台无关的可靠的数据传输机制,增加了C/S(Client/Server)模式的灵活性,实现了系统的松耦合[4]。目前进行消息中间件开发的厂商主要有IBM、BEA、Tibco、东方通科技等公司,产品主要有MQSeries、MessageQ、Rendezvous、TongLink/Q等。 1.2 QoS
QoS的定义最初由CCITT给出:QoS是一个综合指标,用于衡量使用一个服务的满意程度,描述关于一个服务的某些性能特点[5]。学术界普遍认为QoS有狭义和广义之分:狭义QoS指网络传输中的一些技术指标;广义QoS指端到端QoS,涉及网络层、系统层、中间件层、应用层,包括资源调配与利用、各层之间的协商等。 2 基于MOM的多维QoS管理模型设计
针对目前分布式交互中存在的问题,本文提出了一种基于MOM的多维QoS管理模型,以MOM为平台,采用多维QoS描述QoS需求,对分布式交互的QoS进行管理,能有效地满足分布式交互的QoS需求。
如图1所示,基于MOM的多维QoS管理模型分为三层:
龙源期刊网 http://www.qikan.com.cn
1) 用户层:描述用户的QoS需求,考虑到用户的实际情况,用户接口仅提供几个QoS等级供用户选择,然后由QoS映射模块将用户层的QoS等级映射成相应的应用层QoS参数。 2) 应用层:描述应用的QoS需求,其中,应用接口描述那些由用户层映射来的QoS参数,而应用配置模块则用于获得应用在运行时决定的QoS参数。然后,QoS映射模块将这两部分QoS参数映射为MOM层的QoS参数。
3) MOM层:MOM层屏蔽了底层环境的复杂性,将系统层和网络层的QoS管理集中到MOM层,根据用户的QoS需求和当前资源情况对QoS进行综合管理,包括资源管理、QoS评估、QoS协商、QoS降级、QoS预测等模块。 3 核心模块的设计与实现
在对基于MOM的多维QoS管理模型的体系结构进行深入研究的基础上,设计了该模型的核心模块,并用Java语言实现了这些模块。基于MOM的多维QoS管理模型的核心模块主要包括QoS规约模块、QoS映射模块和QoS执行模块。 3.1 QoS规约模块
QoS规约模块的主要功能是对模型中各层的QoS参数进行定义,可细分为三个子模块:用户层QoS规约、应用层QoS规约、MOM层QoS规约。
用户层是基于MOM的多维QoS管理模型的最上层,直接面向最终用户,针对用户往往难以准确描述应用QoS需求的实际情况,用户层QoS规约仅提供一个用户易于理解的QoS等级供用户选择。QoS等级分为以下三个级别:尽力而为、QoS协商、QoS保证。
应用层QoS规约对应用层的QoS参数进行定义,与具体应用领域相关,不同应用的QoS各不相同,本文所研究的基于MOM的多维QoS管理模型主要针对分布式交互领域,其应用层的QoS参数主要有周期、容量、可靠性、优先级。
MOM层对系统层和网络层的QoS进行统一管理,其QoS参数较为复杂,为了准确地描述MOM层的QoS参数,将MOM层的QoS看作由时间维、空间维、可靠维、策略维构成的一个四维QoS空间。时间维QoS描述与时间相关的QoS参数,包括开始时间、相对截止时间、绝对截止时间、传输周期、期望周期、最大周期,其中,相对截止时间为应用请求的传输截止时间,绝对截止时间为交互过程的截止时间。空间维QoS描述与空间相关的QoS参数,包括最大消息长度、处理空间容量。可靠维QoS描述与可靠性相关的QoS参数,可细分为消息可靠维和传输可靠维:消息可靠维描述消息本身的可靠性,包括持久性、持久存储空间容量;传输可靠维描述消息在传输过程中的可靠性,包括重发次数、发送方地址、接收方地址。策略维QoS描述与QoS管理策略相关的参数,包括QoS效益。