(通信与信息系统专业论文)corba多协议网关的研究与实现.pdf_第1页
(通信与信息系统专业论文)corba多协议网关的研究与实现.pdf_第2页
(通信与信息系统专业论文)corba多协议网关的研究与实现.pdf_第3页
(通信与信息系统专业论文)corba多协议网关的研究与实现.pdf_第4页
(通信与信息系统专业论文)corba多协议网关的研究与实现.pdf_第5页
已阅读5页,还剩57页未读 继续免费阅读

(通信与信息系统专业论文)corba多协议网关的研究与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 随着通信技术的飞速发展,通信网络的复杂性、异构性和分布性的特点日益突 出,这给网络管理提出了前所未有的挑战。c o r b a 技术由于其分布式、面向对象 和集成异构网络等优点,在网络管理中已经开始得到广泛的应用。目前的通信网 络中。支持s n m p 和c m i p 协议标准的网络设备占有相当大的比例,除此之外还 有相当一部分遵循厂商私有网管协议的设备,因此将c o r b a 应用到网络管理系 统中时,必须考虑以c o i m a 为中心开发出来的网管系统与基于现有网管标准建 立的管理系统之间如何交互的问题。为此本文在研究j i d m 规范的基础上设计并实 现了一个c o r b a 多协议网关,解决了不同网络管理域之间的互操作问题。作为 一个网管服务器组件,该网关为上层管理应用提供了一套统一的用户接口,使网 管开发人员不再需要了解各种网管协议标准的细节,从而大大降低了开发网管系 统的复杂度。 关键字:网络管理c o r b a 多协议网关 a b s t r a c t r e c e n tg r o w t hi nc o m m u n i c a t i o nt e c h n o l o g i e sh a sc r e a t e dm u c hm o r ec o m p l e x , h e t e r o g e n e o u sa n dd i s t r i b u t e dn e t w o r ke n v i r o n m e n t s :t h i sh a sm a d ea nu n p r e c e d e n t e d c h a l l e n g et on e t w o r km a n a g e m e n t w i 也t h ec h a r a c t e r so fo b j e c to r i e n t d i s t r i b u t e da n d t h ea b i l i t yt oi n t e g r a t et h eh e t e r o g e n e o u sn e t w o r k s ,c o r b at e c h n o l o g yh a sb e e n w i d e l yu s e di nn e t w o r km a n a g e m e n t b e s i d e st h em o s t e q u i p m e n t ss u p p o r t i n gs n m po rc m i pp r o t o c o l ,t h e r ea r es o m e e q u i p m e n t ss u p p o r t i n gp r i v a t e n e t w o r km a n a g e m e n t p r o t o c o l i nt h e p r e s e n t c o m m u n i c a t i o nn e t w o r k w h e nc o r b ai su s e di nt h en e t w o r km a n a g e m e n ts y s t e m , t h ep r o b l e mt h a th o wt h en e t w o r km a n a g e m e n ts y s t e mb a s e dc o r b aa n dt h en e t w o r k m a n a g e m e n ts y s t e mb a s e dt h ep r e s e n tp r o t o c o l si n t e r a c t i v em u s tb ec o n s i d e r e d b a s e d o nt h e s t u d y o nt h ej i d m s p e c i f i c a t i o n ,t h i sp a p e rd e s i g n s a n dr e a l i z e sa c o r b a m u l t i - p r o t o c o l sg a t e w a y ,w h i c hh a sr e s o l v e dt h ei n t e r a c t i v ep r o b l e mb e t w e e n d i f f e r e n tn e t w o r km a n a g e m e n td o m a i n s a san e t w o r km a n a g e m e n ts e r v e rc o m p o n e n t , t h i sg a t e w a yp r o v i d e sas e to fg e n e r i ci n t e r f a c e sf o rt h eu p p e rm a n a g e m e n ta p p l i c a t i o n s w i t ht h i sg a t e w a y ,t h en e t w o r km a n a g e m e n td e v e l o p e rn e e d sn o tt ok n o wa b o u tt h e d e t a i l so f d i f f e r e n tn e t w o r km a n a g e m e n tp r o t o c o l s ,w h i c hr e d u c e st h ec o m p l e x i t yo f t h e n e t w o r km a n a g e m e n ts y s t e md e v e l o p m e n t k e yw o r d :n e t w o r km a n a g e m e n t c o r b am u l t i - p r o t o c o l s g a t e w a y 创新性声明 y1 0 0 6 0 s 7 本人声明所呈交的论文是我个人在导师的指导下进行的研究工作及所取得的 研究成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文 中不包含其它人已经发表或撰写过的研究成果;也不包含为获得西安电子科技大 学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志所做的任 何贡献均已在论文中做了明确的况明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:日期:兰堡竺三r ! 三:! ! 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。本人保证毕 业离校后,发表论文或使用论文工作成果时署名单位仍然为诬安电子科技大学。 学校有权保留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全 部或部分内容,可以允许采用影印、缩印、或其它复制手段保存论文。( 保密的论 文在解密后遵守此规定) 本学位论文属于保密,在兰皇! 年解密后适用本授权书。 本人签名 导师签名: 受害 l 日期: dd 忙、7 第一章绪论 第一章绪论 1 1 网络管理的发展现状 目前,我国各大电信运营商的电信网络都是由许多独立管理的专业网( 如i p 网、a t m 网、s d h 网、w d m 网、信令网和同步网) 互联组成的,运营商为每个 专业网都建立起了各自的专业网网络管理系统。然而,由于不同的开发商采用了 不同的开发技术且大多采用各自管理协议,不可避免地带来了网络协议互不兼容、 管理信息不能互通、缺乏对整个网络的综合管理、管理内容庞杂、操作界面多样 等问题。 针对上述电信网络管理的现状,各电信运营商都希望能够在目前网络管理的基 础上建立综合网管系统,以实现全网的综合管理。这就产生了综合网络管理系统 的需求,即把现有的独立存在的各专业网络系统综合成个功能齐全、面向未来 的综合网络管理系统。综合网管系统通过一个网管工作站就能够对互连的不同网 络实施各种管理和控制,从而实现对全网的综合管理,包括全网故障分析和故障 定位、全网性能综合分析等功能。这样既便于维护、使用,也可以提高该系统的 利用率。而且更重要的是,以后新的网管需求将可以直接纳入该综合网络管理系 统之中。 1 2 传统的网络管理技术 传统的网络管理技术包括三种,国际标准化组织( i s o ) 提出的o s i c m i p 管 理技术、国际电联( i t u t ) 提出的t m n 管理模型和i e t f 提出的i n t e m e t s n m p 管理技术。 o s i c m i p 的管理模型主要有三个贡献:第一,提出了配景管理、性能管理、 故障管理、计费管理和安全管理5 个管理功能域;第二,提出了3 种交换管理信 息的方式:系统管理、应用管理和层管理:第三,提出了被管对象、管理信息和 管理信息库的概念以及“管理者一代理”模型。o s i c m i p 管理体系结构以更通用、 更全面的观点来组织一个网络管理系统,但其复杂性导致了它在实际应用中并不 成功,但它的设计思想对后来的网络管理发展产生了巨大的影响,t m n 和s n m p 的体系结构都源于此。 t m n 管理模型是面向电信网络的,为电信网和电信服务提供管理功能,它在 概念上是独立的网络,只是在接口点上与电信网相连。它采纳了很多o s i 的管理 c o r b a 多协议网关的研究与实现 思想,主要有“管理者一代理”模式、信息模型的面向对象描述等。与o s i 不同 的是它实现的是带外管理,管理网络和被管网络是分开的。t m n 体系结构以其定 义的一组标准接口和其提出的分层管理概念而著称。它定义了一组标准的接口, 包括运营管理系统问的接口和管理系统与被管设备间的接口,从而使网络操作、 维护和管理变得相对简单。其分层结构把管理功能分为网元管理层、网络管理层、 业务管理层和事务管理层。 s n m p 则在i p 网络的网络管理上取得了很大的商业成功,绝大多数设备厂商 都支持s n m p 。s n m p 框架下的接口包括通信协议栈和信息模型。通信协议栈主 要为u d p ,信息模型主要有两类;s m i 和m i b 。s m i 定义如何描述被管对象以 及被管对象如何被管理协议存取的规则;m i b 则是根据不同的管理需求按照s m i 的规范定义。s n m p 也是经历了一个不断发展的过程。为了取得对网络更好的监 视和性能统计,1 9 9 1 年远程网络监视( r m o n ) m i b 发布,增强了s n m p v l 的管 理功能。1 9 9 9 年发布的s n m p v 3 ,通过使用认证和加密技术,确保了管理信息传 输的安全性,从而使利用s n m p 管理协议对网络设备进行安全的写操作成为可能。 传统网管技术在电信网和i p 网的网管系统中得到了广泛的应用,并取得了巨 大的成功,但随着网络技术的迅速发展,网络规模的不断扩大,网络的异构性和 分布性特点的逐渐突出,基于传统网管技术的网管系统已经不能适应复杂网络管 理的各种需要。这些传统的网络管理技术都采用的是集中式的“管理者一代理” 的网络管理模式。一般在一个网络中,设置一个网络管理系统( 作为管理者的角 色) ,由驻留在网络设备中的代理提供该网络设备的信息,该管理系统负责收集网 络中的各种信息,负责监视网络的运行状况,负责控制( 修改) 网络运行的行为。 这样一种模式在网络规模相对较小的时候是可行的,随着网络规模的增大,复杂 性的增加,管理系统的负载也将急剧增加。由于“管理者一代理”管理模式比较 简单,因此获得了广泛的采用,但同时也存在许多缺陷:系统缺乏可集成性; 系统缺乏可扩展性;网管应用编程的复杂和软件可重用性低;由于网络管 理规模增大而引入的通信开销也大大增加。除此之外,最重要的是这种网络管理 模式缺乏分布式管理的方便快捷,缺乏基于策略的管理的简便灵活,缺乏基于w e b 的统一规范的图型用户界面,而且在异构平台互操作等方面都存在着很多缺陷, 使得传统网络管理技术已经难以满足新一代网络管理系统的要求。 1 3 基于c o r b a 的网络管理技术 c o r b a 1 ( c o m m o no b j e c tr e q u e s tb r o k e ra r c h i t e c t u r e ) 是对象管理组织 ( o m g ) 为解决分布式处理环境( d c e ) 中,硬件和软件系统的互连而提出的一 种解决方案。它提供了面向对象应用的互操作标准,是一种标准的面向对象应用 第一章绪论 程序体系规范,是一种被广泛承认的、具有良好应用前景的系统集成标准。 c o r b a 提供了在异构分布环境下不同机器上的不同应用的互操作的能力和将多 个对象系统无缝连接的能力。 c o r b a 的“软总线”结构可以被称为通信中间件,它可以看成是把应用程序 和通信核,t l , 的细节分离的软件。中间件是处于应用程序及应用程序所在系统的内 部工作方式之间的软件,中恻件把应用程序与系统所依附软件的较低层细节和复 杂性隔离开来,使应用程序开发者只处理某种类型的单个a p i ,其他细节则可以由 中间件来处理。c o r b a 分布式对象技术正逐渐成为分布式计算环境发展的主流方 向,使用分布对象技术开发的系统具有机构灵活性、软硬件平台无关性、系统可 扩展性等优点,特别适用于网络环境下的分布系统开发;能够有效的解决异构环 境下的应用互操作和系统集成。 基于c o r b a 的网络管理可以有效地解决传统网络管理技术所面临的问题,提 供了更灵活、更有效的网络管理手段。基于c o i m a 的网络管理具有如下优点: 良好的系统可集成性,为异构平台及遗留系统提供良好的集成:可扩展性, c o r b a 软件总线为系统的扩展和升级提供扩展空间:面向对象的编程;分布 计算特性,支持大规模网络管理任务的灵活分布和自动化执行:高效性,提高 网络管理效率,提供网络的可伸缩性等。 基于c o r b a 技术的网络管理近年来已经成为网络管理领域研究的热点和难 点,i t u ts 0 4 已经完成了c o r b a 技术应用于网络管理中的基础性标准的制定工 作。与c o r b a 有关的基础标准分别是x 7 8 0 、x 7 8 0 1 、q 8 1 6 、q 8 1 6 i 、m 3 1 2 0 、 q 8 2 1 1 、q 8 2 1 1 和x 7 8 1 ,与这些标准有关的标准分别是m 3 0 1 0 、m 3 0 1 3 、m 3 1 0 0 、 m 3 0 2 0 、x 7 2 1 、q 8 2 2 、x 7 3 9 和q 8 2 1 1 2 1 : 2 0 0 0 年版的m 3 0 1 0 和m3 0 1 3 为c o r b a 技术引入到以t m n 为基础的网络 管理框架中铺平了道路;x ,7 8 0 和q 8 1 6 分别规定了采用细粒度方法的基于 c o r b a 技术的网络管理接口定义指南和所需c o r b a 服务;x 7 8 0l 和q 8 1 6 1 分别规定了采用粗粒度方法的基于c o r b a 技术的网络管理接口定义指南和 所需c o r b a 服务。 在x 7 8 0 、x 7 8 0 1 、q 8 1 6 和q 8 1 6 1 标准的基础之上,已有的m 3 l o o 和x 7 2 1 规定的信息模型被映射为基于c o r b a 的通用信息模型m 3 1 2 0 ,m 3 1 2 0 中既 包括基于细粒度方式的c o r b a 接口信息模型,也包括基于粗粒度方式的 c o r b a 接口信息模型。 基于x 7 8 0 、x 7 8 0 1 、q 8 1 6 、q 8 1 6 1 和m 3 1 2 0 标准的基础之上,q 8 2 1 中 规定的关于告警管理的信息模型被映射为基于c o r b a 的管理信息模型 q 8 2 1 1 :q 8 2 2 和x 7 3 9 中规定的关于性能管理的信息模型被映射为基于 c o r b a 的管理信息模型q 8 2 2 1 。 c o r b a 多协议网关的研究与实现 除了i t u t 外,其他的研究组织也分别对c o r b a 技术在网管中的应用进行了 深入的研究:电信管理论坛t m f ( t e l e m a n a g e m e n tf o i l l m ) 的多技术网络管理组 m t n m ( m u l t i t e c h n o l o g y n e t w o r km a n a g e m e n t ) 研究了由多厂商、多技术网元 构成的下一代多技术网的网管,提出了网络管理层和网元管理层之间的通用管理 接口”。j ;而t m f 、t h eo p e n g r o u p 和o m g 联合制定的j i d m 规范】贝0 研究了基 于o s i 和s n m p 的网管系统与基于c o r b a 的网管系统的互操作技术。 1 4 课题研究的背景和意义 目前的通信网络中,遵循s n m p 和c m i p 协议标准的网络设备占有相当大的比 例,除此之外还有相当一部分遵循厂商私有网管协议的设备,因此将c o r b a 应用 到网络管理系统中时,必须考虑以c o r b a 为中心开发出来的网管系统的框架与基 于现有网管标准建立的管理系统之间的交互问题。以c o r b a 为中心的网管系统要 管理传统网管标准的网络资源,必须通过某种网关进行通讯协议的转换工作,以 解决不同管理域之间的互操作问题。 为此本文根据j i d m 规范提出了一个基于c o r b a 多协议网关的综合网管体系 结构,如图1 1 所示: 幽1 1 基于c o r b a 多协议网关的综合网管体系结构 基于该体系结构的网管系统的管理对象,包括c m i p 网元、s n m p 网元以及提 供其它接口的网元,从而实现了多个网管协议的统一管理。该体系结构中,c o r b a 多协议网关( c o r b a s n m p 网关和c o r b a 私有协议网关等) 是一个最重要的组 件,它主要负责完成基于c m i p 协议或s n m p 协议的被管设备与基于c o r b a 的 管理程序之问的通信。对于支持其他网管协议的私有网元,可以使用c o r b a 私 有协议网关进行非c o r b a 接口与c o r b a 接口的适配。 第一章绪论 本论文的课题来源于“十五”国防预先研究项目分布式网络管理系统实现技 术( 4 1 0 0 1 0 2 0 5 ) 。本课题研究的意义在于:利用c o r b a 分布式对象技术解决 分布式的网络管理,可以提高网络管理的性能和效率,同时提高网管软件开发的 组件化、重用性、可维护性和可扩展性:c o r b a 多协议网关屏蔽了底层协议和设 备的异构特性,解决了网络管理中的异构问题,为上层网管应用提供了一套通用 的接口,使网管应用开发人员不需要了解各种网管协议的技术细节,从而大大降 低了开发网管应用的复杂度。 论文的研究成果已经在总参通信部的9 1 6 综合网管工程、广东移动和上海电信 w l a n 两管系统以及广州阿尔刨公司直放站网管系统中得到了成功的应用。 1 5 本文研究的主要内容 本文主要研究了c o r b a 多协议网关所涉及的关键技术及理论模型,并在此基 础上,设计并实现了c o r b a s n m p 网关和c o r b a 私有协议网关,解决了网络管 理中不同网络管理协议之间的互操作问题。 第一章首先介绍了网络管理发展现状,然后分析了传统网络管理技术的特点和 缺点,接着介绍了基于c o r b a 的网络管理技术。最后介绍了该课题研究的背景 和意义。 第二章介绍c o r b a 多协议网关所用到的c o r b a 技术、c o r b a 服务的基本 原理。 第三章首先研究了c o r b a 多协议网关的理论模型,然后以此为基础设计了 c o r b a 多协议网关的通用接口部分,并提出了实现c o r b a 多协议网关的抽象模 型。 第四章根据不同的应用环境和用户需求,设计并实现了一个多c o r b a 平台、 多编程语言的c o r b a s n m p 网关。并且根据其商用化过程中遇到的一些实际问 题,对网关基本功能进行了改进和扩展,解决了诸如多厂商m i b 异构等实际问题。 目前该网关已经成功地应用在上海电信、北京移动和广东移动等多家运营商的网 管系统中。 第五章根据某直放站厂商的私有网管协议设计并实现了一个c o r b a 私有协 议网关,实现了对浚厂商支持不同网管协议的直放站设备的综合网管。 第六章总结本文所做的主要工作,并对需要继续深入研究的内容进行了展望。 c o r b a 多协议| 碗| 关的研究与实现 第二章c o r b a 概述 网络环境中的计算机在硬件体系结构、操作系统软件以及用于实现对象的编 程语言等方面或多或少总存在一些差异,这就是所谓的异构分布式环境 ( h e t e r o g e n e o u sd i s t r i b u t e de n v i r o n m e n t ) 。要使在这种环境中的对象之间得以相互 通信就需要一个中间件平台( m i d d l e w a r ep l a t f o r m ) 。中间件平台是驻留在应用程序 和操作系统之间的软件,用于隐藏底层的复杂性并且在每一个网络节点上提供相 同的应用程序接口( a p i ) 。 c o r b a 1 1 ( c o m m o no b j e c tr e q u e s tb r o k e ra r c h i t e c t u r e ,公用对象请求代理体 系) 是由o m g ( o b j e c t m a n a g e m e n t g r o u p ,对象管理组织) 制定的中间件技术规 范,其核心是一套标准的语言、接口和协议,以支持异构分布式应用程序间的互 操作及独立于平台和编程语言的对象重用。编程人员可以使用c o r b a 进行面向 对象编程:而不必考虑用以实现系统各部分的平台和技术有多么大的差异。 2 1c o r b a 的特点 c o r b a 规范充分利用了现今软件技术发展的最新成果,在基于删络明分布式 应用环境下实现了应用软件的集成,使得面向对象的软件在异构分布式环境下实 现了可重用性、可移植性和互操作性。其特点可以总结为如下几方面: 1 ) 引入中间件( m i d d l ew a r e ) :c o r b a 规范引入中间件作为事务代理,完成客 户机( c l i e n t ) n i i e 务器( s e r v e r ) 提出的业务请求,如图2 1 所示。 图2 ,1 引入中间件后的客户机与服务器的关系 2 ) 客户与服务对象的分离:实现客户与服务对象完全分开,客户不需要了解服务 对象的实现过程以及具体位置。 3 ) 软总线机制:c o r b a 提供软总线机制,使得在任何环境下、采用任何语言开 发的软件只要符合接口规范的定义,就能够集成到分布式系统中。 4 ) 面向对象:采用面向对象的实现方法来开发应用系统,以实现对象内部细节的 完整封装,保留对象方法的对夕 接口定义。 第二章c o r b a 概述 7 在以上特点中,最突出的是中间件的引入,在c o r b a 中称为对象请求代理 ( o r b ,o b j e c tr e q u e s tb r o k e r ) 和采用面向对象的开发模式。对象模型是应用开 发人员对客观事物属性和功能的具体抽象。由于c o r b a 使用了对象模型,将 c o r b a 系统中所有的应用看成是对象及相关操作的集合,因此通过对象请求代理 ( o r b ) ,使c o r b a 系统中分布在网络中应用对象的获取,只取决于网络的畅通 性和服务对象特征获取的准确程度,而与对象的位置以及对象所处的设备环境无 关。 2 2c o r b a 体系结构 垂至 c o r b a 组成部分固运行在顶部的应用程序 图2 2c o r b a ( 公共对象请求代理体系) c o r b a 体系结构的组成情况及工作原理如图2 2 所示,下面我们详细介绍 c o 砌j a 中的一些重要概念。 2 2 1 对象请求代理 c o r b a 这一体系结构的核心部分是对象请求代理( o b j e c tr e q u e s tb r o k e r , o r b ) ,它作为一个“软件总线”来连接网络上的不同对象。客户只要遵循服务对 象的对外接口标准向服务对象提出业务请求,由o r b 在分布式对象间建立客户一 服务器关系。在客户端,o r b 提供一个发送操作调用的接口;而在服务器端,o r b 提供一个将操作调用传送到一个合适的服务器对象实现。 图2 1 3 说明了客户程序的请求调用过程。 c o r b a 多协议网关的研究与实现 图2 3 客户程序请求凋过程 2 - 2 2 对象适配器 o r b 是通过一个对象适配器( o b j e c ta d a p t e r ,o a ) 将操作调用传送给服务器 对象的。对象适配器是o r b 的部分,它介于o r b 核心和对象实现之间,负责 服务对象的注册、对象引用的创建和释放、服务进程的激活和挂起、服务对象的 激活和挂起以及客户请求的分发等任务。 由于对象适配器的存在,使得o r b 核心尽可能地简单,从而提高了o r b 核心 的稳定性和效率。老版本的c o r b a 规范包含了个基本对象适配器( b a s i co b j e c t a d a p t e r ,b o a ) ,b o a 十分简单,它实现了对象适配器的一些核心功能,但是它 禁止c o r b a 对象的可移植性。在c o r b a 的2 2 版本中b o a 已经被可移植对象 适配器( p o r t a b l eo b j e c t a d a p t e r ,p o a ) 所取代,p o a 使对象实现在可以不同厂商 o r b 之间使用,最新的o r b 产品一般都支持p o a 。 2 2 3 i d l 语言 i d l 是c o r b a 体系中的另一个重要概念,它提供了一组类似于c + + 的语法, 供c o r b a 应用的开发者描述服务对象的接口。i d l 的好处是使高层的设计人员不 必考虑具体的实现细节而只需关心接1 3 功能的描述。由于i d l 语言只具有描述性, 而不具有可执行性,因此c o r b a 规范中定义了i d l 语言到具体编程语言的映射, 目前的映射包括了c 、c + + 、s m a l l t a l k 、a d a 9 5 和j a v a 等。i d l 的引入使c o r b a 做到了与编程语言无关,比如,在服务器端我们可以用c + + 来实现i d l 接口,而 在客户端我们可以用j a v a 来调用该接口。 2 2 4 静态调用接口和静态框架接口 在客户端,客户与o r b 之间的静态接口被称为静态调用接口( s t a t i ci n v o c a t i o n i n t e r f a c e ,s i i ) ;在服务器端,这个接1 3 被称为静态框架接口( s t a t i cs k e l e t o n i n t e r f a c e ,s s i ) 。在静态调用方式下,一个i d l 编译器将用户的i d l 描述文件生成 第二章c o r b a 概述 9 对应编程语言的一个存根程序( s t u b ) 和一个框架程序( s k e l e t o n ) 。存根程序负责 把用户的请求进行编码,发送到对象实现端,并对接收到的处理结果进行解码, 把结果或异常信息返回给用户,其功能类似一个客户代理。框架负责发送一个操 作调用给一个真正提供此操作的实现程序,它对用户请求进行解码,定位所要求 的对象的方法,执行该方法并把执行结果或异常信息编码后发送回客户。 2 2 ,5 动态调用接口和动态框架接口 与静态调用方式相对应,c o r b a 还提供了动态调用方式。在动态调用方式下, 客户往往预先不知道服务对象的接口信息。在客户端,o r b 提供一个一般的a p i , 它是一个动态调用接口( d y n a m i ci n v o c a t i o ni m e r f a c e ,d i d ,用来发送操作调用。 客户端首先通过查询或者其它手段获得服务对象的接口描述信息,然后自行调用 o r b 的方法来构造用户请求并发送到服务器。在服务器端也有一种相类似的动态 分发用户请求的机制,称为动态框架接口( d y n a m i cs k e l e t o n i n t e r f a c e ,d s i ) ,o a 通过d s i 来传输一个操作调用,它为服务器端镜像d i i 的行为。动态方式一般是 在开发不确定信息较多的应用时使用。另外,使用动态方式比静态方式更加灵活, 譬如,在动态方式下,用户可以选择使用异步的调用方式。 2 3 6 接口仓库和实现仓库 c o r b a 也定义了两个运行时的数据库:接口仓库和实现仓库。接口仓库( i r , i n t e r f a c er e p o s i t o r y ) 包含运行时所需要的i d l 规范。在动态方式下,用户需要查 询相应的服务对象的接口描述信息( 在静态的方式下,这些信息是由i d l 文件来描 述的) 。这些信息就是由i r 提供的,接口仓库通常是以i d l 描述文件为输入,将 接口描述信息进行处理后存放在文件、数据库或者其它形式的存储部件中,并提 供一组标准的调用接口供用户查询使用。实现仓库( i m p l e m e n t a t i o nr e p o s i t o r y , i m r ) 包含服务器的详细信息。即哪一个执行程序要被放置到哪一个服务器上, o a 需要这个信息来自动激活服务器。 2 2 7g i o p 和i i o p g i o p ( g e n e r a li n t e r - o r bp r o t o c o l ,通用o r b 间协议) 定义了不周o r b 之闻 的通信协议,使一种通用协议,不能直接使用,在不同的网络上需要有不同的实 现。目前最广泛使用的便是i n t e r n e t 上g i o p ,称为i i o p ( i n t e r n e t i n t e r - o r bp r o t o c o l , 因特网o r b 间协议) ,它基于t c p i p 协议。 c o r b a 多协议网芙的研究与实现 2 3c o r b a 服务 c o r b a 服务规范是对c o r b a 核心规范的扩充,它定义了一系列大多数分 布式对象处理所需的公共服务,如名字服务、生命周期服务、事件服务、通知服 务、交易服务以及安全服务等。本文所研究的c o r b a 多协议网关主要用到了 c o r b a 名字服务1 7 1 、事件服务【8 和通知服务f 9 1 。 2 3 1 名字服务 在c o r b a 系统中,当被管对象作为一个c o r b a 对象时,o r b 为每个对象 赋予一个唯的对象引用。之后,当o r b 收到客户端的请求时,便可以使用该对 象引用以定位服务对象,并将客户端的请求调度到相应的c o r b a 对象。使用对 象引用可以使对被管对象的操作更加的方便、快捷,但是,对象引用的格式冗长 而又不能很好的体现对象之间的关系,从而限制了被管对象位置的移动。 c o r b a 名字服务通过为每个对象分配一个唯一名称,来管理从名字到对象引 用的映射关系。名字服务相当于一个目录服务,给定个名称,该服务返回一个 存储在该名称下的对象引用,之后便可利用该对象引用进行相应的操作。 在网管系统中,被管对象由对象工厂创建。如图2 , 4 ,对象工厂创建对象后, 触发名字服务的绑定操作,登记名称到对象引用的映射关系。之后其它对象就可 以根据名字向名字服务解析以获得对象引用。 定 图2 4 使用名字服务定位对象 2 3 2 事件服务 事件服务( e v e n ts e r v i c e ) 通过对事件( 由对象产生并且传送给其他对象) 进 行封装,提供了基本的消息传递功能,在相互不很了解的对象之间建立起一条宽 松耦合的通信信道。 在c o r b a 事件服务中,提供者( s u p p l i e r ) 生成事件( e v e n t ) ,使用者 第二章c o r b a 概述 ( c o n s u m e r ) 接收事件,提供者和使用者都连接在一个事件通道上。在事件产生之 后,事件通道提供一种将事件从提供者传送到使用者的机制,而且不需要提供者 和使用者事先了解对方的情况。事件通道同时还负责提供者和使用者的动态注册, 可靠地将事件发送给对该事件感兴趣的使用者,并且负责处理那些由于没有使用 者响应而引发的错误。 事件通道是一个标准的c o r b a 对象,它驻留在o r b 之上,断开了提供者和 使用者的通信。提供者和使用者不是直接交互作用,而是从事件通道那里获得代 理( p r o x y ) 对象,让代理对象在将来的事件交换中代表自己。提供者获得一个使 用者代理,而使用者获得一个提供者代理。事件通道通过这些代理对象代理事件 的交换。代理对象造成了提供者和使用者的错觉,以为它们是与实际的提供者和 使用者交互。图2 5 显示了这种模型。 p r o x ys u p p l i e rp r o x yc o n s u m e r 圈2 , 5 事件通道基本模型 o m g 为事件服务提供两种事件发送模型:推模型( p u s hm o d e l ) 芹1 :1 拉模型( p u l l m o d e l ) 。对于推模型,提供者将事件推给事件通道,而事件通道又将事件推给使 用者。图2 6 显示了推模型的事件发送。( 箭头指向表明从客户机到服务器) 。对于 拉模型,事件的流动方向与推模型相反:提供者从事件通道拉回事件,而事件通 道又将事件从使用者处拉回。图2 7 显示了拉模型的事件发送。 ( 服务器)( 客户机) ( 服务器)( 客户机) 事件流的方向 图2 6 推模型 ( 客户机)( 服务器)( 客户机) ( 服务器) 事什流的方向 幽2 7 拉模型 c o r b a 多协议网关的研究与实现 2 3 3 通知服务 针对事件服务的缺陷,c o r b a 通知提供了过滤事件、维护关于事件通道的更 高级信息和规定服务质量的标准方法,它也是事件服务的自然扩展。在通知服务 中定义的每个接口都继承了事件服务中的对应接口,并提供了与使用事件服务的 应用程序的后向兼容性。 有了通知服务,每个用户都可以把一个限制列表和一个事件通道相关联。如果 一个用户注册到一个事件通道上,并且指定了一个或多个限制,那么事件通道就 会把这些限制应用到每个收到的事件中,以允许事件通道来决定是否把事件转送 到每个用户,这就防止了对本该丢弃的事件的传递。 通知服务的另个特点是关联服务质量方面的能力。服务质量可以在不同的粒 度层次上规定每个事件、每个使用者提供者或每个事件通道。服务质量包括传递 保证,超时和优先权等。应用程序可以把服务质量需求应用到各种服务元素上, 如事件通道和代理对象,甚至是单个事件中。 图2 8 通知服务模型 第三章c o r b a 多协议网关理论模型 第三章0 0 r b a 多协议网关理论模型 在理想情况下,用来支持和不同网络环境相连的c o r b a 服务和接口应该以 一种通用的方式来定义。也就是说,必须独立于具体的网络管理模型,不管它是 o s i 的网络管理模型还是s n m p 的网络管理模型。然而,因为不同模型的差异复 杂性问题,总有一些特性是与参考模型紧密相关而无法抽象出来的。于是,我们 采用的方法是采用面向对象的多继承的方式:先定义一个通用的网关模型,这个 模型以一套基本的c o r b a i d l 接口的形式出现( 或者称为一套基本的服务,实现 了即为服务,不实现则为接口) ,即j i d m 模块,这些接口可以运用于任何网络管 理参考模型;然后在特定的参考模型下,我们扩展出特定的c o p , b a 管理应用接 口,来适应特定管理系统的特殊要求。 3 1c o r b a 多协议网关的参考模型 为了实现基于不同技术的网管系统之间的互操作,必须要具备相关对象模型间 进行映射的能力,同时还必须能够提供在管理域边界上进行管理信息和管理行为 的转换机制。为了能够在不同的管理模型上进行互操作,有两个方面是一定要考 虑的: 规范翻译( s p e c i f i c a t i o nt r a l l s l a t i o n ) :完成对不同的管理协议下不同对象模型 之间一对一的映射,这是一种静态的映射。1 9 9 8 年,国际组织n m f 和t h e o p e n g r o u p 联合制定了“i n t e r - d o m a i nm a n a g e m e n t :s p e c i f i c a t i o nt r a n s l a t i o n ”, 简称x o j i d m 。它给出了由a s n 1 到i d l 、由g d m o 到i d l 、由i d l 到a s n 1 和g d m o 以及s n m ps m i 到i d l 的翻译语法,使在任意一个管理协议中定义 的管理信息对象都可以采用另一个管理协议的管理对象进行表示。 交互翻译( i n t e r a c t i o nt r a n s l a t i o n ) :简称j i d m i ,由j i d m 组织2 0 0 0 年8 月制定的 “i n t e r w o r k i n gb e t w e e nc o r b a a n dt m n s y s t e m ss p e c i f i c a t i o n ”规范i o 来完 成。它定义了一系列的接口以支持不同管理域之间的互操作。这些接口主要分 为三个层次,如图3 1 所示: 1 ) 独立于管理协议的通用接口:在该层次提供一个管理者访问被管域的通用 框架,该框架的主要目标是掩盖不同被管系统管理协议之间的差异,支持 管理者以c o r b a 技术惯用的方式与被管系统建立互操作会话。o m g 在 该层次提出了标准,用j i d m 模块描述,包括一系列i d l 接口。 2 ) 依赖于管理协议的管理接口:在该层只考虑了两个传统管理协议,s n m p c o r b a 多协议网关的研究与实现 和c m 口。o m g 在该层提出了规范,c o r b a s n m p 网关采用c o r b a 与 s n m p 的互操作规范,即s n m p m g m t 模块规定的一系列i d l 接口: c o r b a c m i p 网关采用c o r b a 与c m i p 的互操作规范,即o s i m g m t 模 块规定的一系列i d l 接口。对于厂商自定义的私有网管协议与c o r b a 的 互操作问题,该规范则没有涉及。 3 ) 特制接口,既依赖于特定的信息模型,也依赖于具体管理协议。该层次接 口特定于不同的m i b ,具有不同的管理目标,具有按需求特性化的潜质, 在外观上也更有可能具有完全的c o r b a 特性。但在该层次,o m g 未进 行标准化工作。 图3 1j i d m 管理模型 本文所研究的c o r b a 多协议网关主要研究的是前两个层次接口,先定义了一 个j i d m 模块以实现独立于管理协议的通用接口,也就是第一个层次的接口:然后 分别在特定的网管协议( s n m p 协议和一个厂商私有的直放站网管协议) 下,我 们扩展出特定的c o r b a 管理应用接口,来适应特定管理协议的特殊要求。本章 主要研究独立于具体管理协议的通用接口的设计,而依赖于具体管理协议的管理 接口则在后续的章节中介绍。 3 2c o r b a 多协议网关解决的主要问题 在任何管理协议的参考模型下,我们都会碰到两个问题,那就是:调用被管 对象上的操作和事件报告,这两个问题几乎构成了所有网络管理活动的全部。 1 ) 调用被管对象上的操作:给定被管对象域的名字,我们设计的网关应该能够使 c o r b a 管理者连接被管对象域,不仅如此,还应该能够: 在该域中创建新的被管对象并赋予名字; 给定被管对象域中的一个成员的名字,得到它的对象引用: 指定一定的筛选标准,对该域中符合标准的成员进行集合操作。 2 ) 事件报告:任何一个c o r b a 管理者都必须有一个头衔( t i t l e ) 与之关联,这 第三章c o r b a 多协议网关理论模型 个头衔允许它作为某一个事件报告的终点,也就是事件的接收者。于是,网关 必须具有以下能力: c o r b a 被管对象能够根据c o r b a 管理者的头衔发送事件报告。 c o r b a 管理者能够从远程被管域收到事件报告。 另外还有一个基本的要求,那就是用来报告事件的协议对于c o r b a 管理者和 c o r b a 被管对象来说是透明的。 3 3c o r b a 多协议网关的设计原则 3 3 1 主要的设计原则 在本文中所研究的c o r b a 多协议网关中,不同管理域之间的互操作是通过 一个作为公菇框架的j i d m 模块来实现的,这个公共框架提供了所有网管协议参考 模型( 比如c m i p 、s n m p 和厂商私有网管协议) 所共有的管理接口和管理设施。 然后分别在特定的网管协议( s n m p 协议和一个厂商私有的直放站网管协议) 下, 扩展出特定的c o r b a

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论