(计算机科学与技术专业论文)rti仿真平台的体系结构研究与实现.pdf_第1页
(计算机科学与技术专业论文)rti仿真平台的体系结构研究与实现.pdf_第2页
(计算机科学与技术专业论文)rti仿真平台的体系结构研究与实现.pdf_第3页
(计算机科学与技术专业论文)rti仿真平台的体系结构研究与实现.pdf_第4页
(计算机科学与技术专业论文)rti仿真平台的体系结构研究与实现.pdf_第5页
已阅读5页,还剩69页未读 继续免费阅读

(计算机科学与技术专业论文)rti仿真平台的体系结构研究与实现.pdf.pdf 免费下载

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

文档简介

北京邮电大学硕士研究生学位论文r t i 仿真平台的体系结构研究与实现 r t i 仿真平台的体系结构研究与实现 摘要 本文参照d m s o r t l l 3 n g 的规范,设计并实现了一个符合规范 的基于c o r b a 的r t i 仿真平台。论文的重点分析了通常实现r t i 平台的三种体系结构模型,通过对三种模型的分析,最后给出了自己 设计的结合三种模型优点的体系结构。 然后,论文集中讨论了r t i 平台的底层通信和联邦管理的设计和 实现。实现了一种简单、易替代的底层通信模式。联邦管理集中讨论 联邦管理服务的实现;重点讨论了分布式的联邦保存和恢复实现方 案。 论文还分析了传统r t i 平台在互操作和构建大规模仿真方面的 不足,结合下一代建模与仿真框架( x m s f ) 的大纲,详细论述了基 于w e b 的r t i 平台的优势,提出了一个自己设计的基于w e bs e r v i c e 的r t i 仿真平台架构。并给出了基于这种架构的一种解决方案。最后 本文对仿真发展方向进行了探索,提出了一种全新的仿真系统开发与 执行模式。 关键字 计算机仿真高层体系结构运行支撑环境联邦管理 w e b 服务 北京邮电大学硕士研究生学位论文r t i 仿真平台的体系结构研究与实现 r e s e a r c ha n di m p l e m e n t a t l 0 n0 fr t i s i m u l a :0 np i 。a r f o r ma r c h i t e c t u r e a b s t r a c t t h i st h e s i sd e s i g n sa n d i m p l e m e n t sar t ip l a t f o r mc o n f o r m i n gt od m s o - r t i 1 3 n gs p e c i f i c a t i o nb a s e do nc o r b a f i r s t l y , t h i st h e s i ss t u d i e st h r e ec o m m o n a r c h i t e c t u r e sa n da n a l y z e st h e i ra d v a n t a g e sa n dw e a k n e s s e s b a s e do i l t h i s ,an e w a r c h i t e c t u r ei sp r o p o s e dh e r e i t h es e c o n dp a r t ,t h et h e s i sm a i n l yf o c u s e so nt h ed e s i g na n di m p l e m e n t a t i o no ft h e m o d u l eo fu n d e r l y i n gc o m m u n i c a t i o na n df e d e r a t i o nm a n a g e m e n t i nu n d e r l y i n g c o m m u n i c a t i o nm o d u l e ,as i m p l ea n dr e p l a c e a b l em e c h a n i s mi sd e s i g n e da n di m p l e m e n t e d f e d e r a t i o nm a n a g e m e n tm o d u l em a i n l yd i s c u s s e st h ei m p l e m e n t a t i o no ff e d e r a t i o n m a n a g e m e n tf u n c t i o n s ,a n df o c u s e so nt h es o l u t i o no fd i s t r i b u t e df e d e r a t i o ns a v i n g a n df e s t o r a t i o n 。 t h et h e s i sa l s oa n a l y z e st h ed i s a d v a n t a g e so ft r a d i t i o n a lr t ip l a t f o r mw h i c hi s u s e dt ob u i l dl a r g es c a l es i m u l a t i o na n do i li n t e r o p e r a b i l i t y , a n da c c o r d i n gt ot h ep r o f i l e o fx m s f , t h et h e s i sd i s c u s s e st h ea d v a n t a g e so fr t ip l a t f o r mb a s e do nw e b ,a n d b r i n g sf o r w a r da na r c h i t e c t u r eo f r t ip l a t f o r mb a s e do nw e bs e r v i c e ,a n dm e a n t i m e p u t sf o r w a r das o l u t i o nb a s e do nt h ea r c h i t e c t u r e a tl a s t ,t h i st h e s i sr e s e a r c h e st h e d i r e c t i o no fs i m u l a t i o ne v o l u t i o n ,a n d b r i n g sf o r w a r d a ni n n o v a t i v em o d eo f s i m u l a t i o ns y s t e md e v e l o p m e n ta n dp e r f o r m i n g k e yw o r d s c o m p u t e rs i m u l a t i o n h l ar t i u n d e r l y i n gc o m m u n i c a t i o n f e d e r a t i o nm a n a g e m e n t w 曲s e r v i c e 北京邮电大学硕士研究生学位论文r t i 仿真平台的体系结构研究与实现 图表索弓 图2 - 1h l a 仿真的逻辑模型5 图2 - 2 联邦成员之间通过r t i 进行交互一7 图3 - 1c o r b a 的体系结构1 0 一 图3 - 2 将r t i 服务作为c o r b a 对象接口的实现方式一1 1 一 图3 - 3 将c o r b a 作为底层通信的r t i 实现方式一1 1 图4 1 集中式体系结构一1 4 一 表4 - 1 集中式模型的性能数据1 5 一 图4 - 2 分层式体系结构1 6 表4 2 分层式局部r t i 服务器性能数据1 8 一 表4 _ 3 分层式中央r t i 服务器性能数据2 0 图4 3 分布式体系结构2 1 表4 - 4 分布式结构r t l 服务器性能数据2 3 一 图4 - 4 本系统的体系结构一2 4 图4 5 分层分布式的体系结构2 6 表4 _ 5 分层分布式体系结构的性能数据,2 7 一 图4 - 6 消息总数量曲线1 2 8 图4 _ 7 消息总数量曲线2 一2 8 图4 8 消息总数量曲线一3 一2 9 一 图4 - 9 总匹配次数曲线1 2 9 图4 1 0 总匹配次数曲线2 3 0 图4 一1 1 总匹配次数曲线3 一3 0 , 图5 - 1 系统软件实体结构3 1 图5 - 2 底层通信模块图一3 3 图5 - 3 消息处理单元类设计3 5 一 图5 _ 4r t i e x e c 模块图3 6 图5 5l r c 模块图3 7 图5 - 6r t i 服务器模块图3 8 图5 7 联邦管理模块图3 8 图5 - 8 联邦成员句柄格式一3 9 图5 - 9 联邦成员管理时序图4 1 图5 1 0 同步点管理时序图4 2 图5 1 1 鞋邦保存消息发送路径示意图4 4 图5 1 2 联邦保存管理时序图一4 6 图5 1 3 联邦恢复管理时序图4 9 图5 1 4 系统异常处理模型图5 0 图5 1 5 联邦成员迁移示意图5 2 图5 1 6 仿真示例运行过程图5 4 一 图6 - iw e bs e r v i c e 协议栈6 0 图6 - 2 基于w e bs e r v i c e 的r t i 平台架构6 3 v 北京邮电大学硕士研究生学位论文r t i 仿真平台的体系结构研究与实现 v l 图6 - 3 系统模型图一6 4 独创性( 或创新性) 声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示了谢意。 申请学位论文与资料著有不实之处, 本人签名:京显曾二一一 本人承担一切相关责任。 日期:逊尘 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即: 研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权保 留并向国家有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅和借 阅;学校可以公布学位论文的全部或部分内容,可以允许采用影印、缩印或其它 复制手段保存、汇编学位论文。( 保密的学位论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密在一年解密后适用本授权书。非保密论 文注释:本学位论文不属于保密范围,适用本授权书。 本人签名:叠:塑:日期:丛堑:! :尘 导师签名:辱刍“芒一日期:参丑土予卜 北京邮电大学硕士研究生学位论文r t i 仿真平台的体系结构研究与实现 1 1 研究背景 第一章绪论 随着计算机技术的发展,信息化社会已经到来,我们可以在社会的方方面面 看到计算机技术的影响。其中,计算机仿真技术在社会生活中扮演着越来越重要 的角色。计算机仿真技术能够模拟现实中需要花费很大代价或还未曾发生的活动 以方便人们的研究和评估,如飞行器的飞行模拟,全球气候模拟等等。计算机仿 真技术是以计算机为工具,以相似原理,信息技术以及各种相关应用领域的基本 理论与技术为基础,根据系统试验的目的,建立( 实际或设想) 系统的模型,并 在不同的条件下,对模型进行动态运行的一门综合性技术。当前,计算机仿真已 经成为系统特别是复杂的大系统分析,研究,测试,评估,研制和技能训练的重 要手段,并且应用于国防,制造,能源交通等等各个行业的重要领域。 随着仿真应用领域的拓宽,计算机仿真需要解决的问题也越来越复杂,许多 问题单靠单个仿真系统已无法解决,必须依靠多个仿真系统联合协同仿真。因此, 进入九十年代后分布交互仿真成为仿真技术发展的重点。与单个仿真系统仿真相 比,分布式仿真的关键问题是多个仿真系统间的互操作问题。分布式仿真技术经 历了s i m n e t ,d i s a l s p 等阶段,到目前已经发展至扩高层体系结构( h l a ,h i g h l e v e la r c h i t e c t u r e ) 。 1 9 8 3 年美国国防部高级项目研究计划局( d a r p a ) 和美国陆军共同伟0 定了 一个合作研究计划即s i m n e t ( s i m u l a t i o nn e t w o r k i n g ) 研究计划,其研究的主 要目的是将分散在各地的多个地面车辆仿真器使用计算机网络连接起来,进行各 种复杂任务的训练,演示,并验证作战仿真和作战演习。从而形成了s i m n e t 分布仿真概念,第一次将多种仿真应用集中到同一个时空环境中。进而美国军方 和工业界在s i m n e t 的基础上,共同倡导并建立了异构网络互连的分布式交互 仿真( d i sd i s t r i b u t e di n t e r a c t i v es i m u l a t i o n ) 系统,其目的是将不同时期的仿真 技术,不同厂家的仿真产品和不同用途的仿真平台集成在一起,可以互相交互, 由一系列的应用协议与通信服务标准,推荐的演练策略和相关文档来确保互操作 能力。d i s 的基础是协议数据单元,用来通过网络发送和接收数据。d i s 标准具 有定义简洁明了,容错性能好等优点,缺点是使用固定的p d u 格式使得d i s 灵 活性比较差,网络中冗余数据比较多,并且针对军事领域,应用范围受到限制。 在d i s 发展的同时,d a r p a 发起了一个聚合式分布式作战仿真的实验,随 后m i t r e 提出了聚合级仿真协议( a l s p ,a g g r e s s i v e l e v e ls i m u l a t i o n p r o t o c o l l 。 北京邮电大学硕士研究生学位论文r t i 仿真平台的体系结构研究与实现 a l s p 的目标是使现有得多个聚合级作战仿真应用可以通过局域网或广域网相互 交互。在概念上,每个仿真控制其自身对象,并且共享有关自身与其它仿真的信 息。a l s p 吸取了s i m n e t 技术中些原则,比如没有中心节点,地理分布,自 主属性和基于消息的协议等,同时发展了系列聚合级仿真所需要的技术:时间管 理、数据管理和体系结构。 s i m n e t , d i s ,a l s p 都是同种功能仿真应用互联,只有有限的互操作性,不 能满足越来越复杂的作战仿真需求。为此,美国国防部9 5 年1 0 月发布的建模与 仿真主计划,决定在国防部范围内使用一个通用的仿真技术框架来保证国防部范 围内的各种仿真应用之间的互操作性,技术框架的核心是高层体系结构( h l ) , 其主要目的是促进仿真应用的互操作性和提高仿真资源的可重用性。1 9 9 6 年9 月,美国国防部建模和仿真办公室d m s o 正式颁布了h l a 标准1 0 ,并在随后 迅速推出了其后续修订版本,9 8 年,i e e e 通过了关于h l a 的标准草案:i e e e s t a n d a r d sp 1 5 1 6 d 1 h i g hl e v e la r c h i t e c t u r e ( d r a f t ) ,并在2 0 0 0 年9 月正式接纳为 标准。现在h l a r i a 系统的研究和应用已经不仅仅限于军事仿真领域,其他领 域也有着广泛的应用前景。 仿真和建模技术仍在在不断的发展中,为了进一步解决仿真技术的关键问题 即互操作性问题,美国海军研究生院提出了下一代的仿真与建模框架x m s f ( e x t e n s i b l em o d e l i n ga n ds i m u l a t i o nf r a m e w o r k ) 。x m s f 基于w e b 技术,规定 了在下一代仿真与建模中使用的一系列技术的集合,目前已结合了很多的技术, 包括三个子项目:w e b x m l ,i n t e r n e t n e t w o r k i n g ,仿真与建模( m & s ) 。目前已 经制定了一个大纲( p r o f i l e ) 即w e b e n a b l e dr t i 。它结合r t i 规范和w e b 技术 提供应用于i n t e r n e t 的大规模仿真。 1 2 当前的研究状况 h l a 规范制定以来已经开发出了很多符合规范的仿真平台。d m s o 开发了 f 0 ,1 0 ,1 3 到1 3 n g 等一系列运行支撑环境( r t i ,r u nt i m ei n f r a s t r u c t u r e ) 软件,其 他一些公司,比如m a k 公司,a e g i s 公司等也开发了各具特色的r t i 版本,其 他的国家比如法国英国和瑞典也开发了各自的r t i 。 从国内对h l a 的研究和发展状况来看,主要的研究单位有北京航空航天大 学,北京仿真中心,航天工业总公司二院,国防科大,空军导弹学院。 到目前为止,w e b e n a b l e dr t i 的仍然处于研究阶段,x m s f 只是把它作为 下一代建模与仿真的组件之一,并不制定标准的实现规范。现在只有s a i c 公司 为d m s o 提供了一个参考实现,还未有大规模的商业应用,所以现在基于w e b 的r t i 仍是方兴未艾,处于建模与仿真研究的前沿。 北京邮电大学硕士研究生学位论文r t i 仿真平台的体系结构研究与实现 1 3 工作内容和成果 本人在研究生期间工作包括两方面的内容:第一个是与实验室同学共同开发 的基于c o r b a 的r t i 仿真平台:第二个是基于w e bs e r v i c e 的r t i 仿真平台的 研究与设计,这部分是本人独立研究。 根据以上的工作,本论文将包括总结在与同学共同开发r t i 平台过程中的分 析与设计和本人对基于w e b s e r v i c e 的r t i 平台的研究。具体包括一下内容: 重点分析三种r t i 平台实现的体系结构模型,提出我们的体系结构。并 对比了三种模型与我们的模型的量化数据,证明了我们体系结构的优势。 r t i 平台中的底层通信模块,集中讨论了一种可替代的底层通信模块设 计模式。 r t i 平台中的联邦管理模块,讨论了联邦成员管理、同步点管理的实现, 重点论述了分布式联邦保存和恢复的解决方案。 分析完成的系统还需解决的问题,提出问题的解决方案。 分析传统r t i 平台的不足和w e bs e r v i c e 技术对构建分布式系统的优势。 提出自己的基于w e bs e r v i c e 的r t i 仿真平台的架构和基于这种架构的解 决方案。 对仿真技术发展方向的思考,提出一种创新的仿真开发和执行模式。 到目前为止,通过实验室所有参与人员的共同努力,基于c o r b a 的r t i 仿真平台已经实现h l a 规范中的大部分服务,并且已经实现了几个仿真应用的 例子。 基于w e bs e r v i c e 的r t i 平台目前已经给出了平台的架构和基于这种架构的 一个解决方案,实现了联邦管理的部分服务。 1 4 论文的章节安排 根据论文的内容,首先是h l a r t i 必要知识的介绍;然后对在开发中所使 用的技术c o r b a 的介绍;在第四章着重分析了开发r t i 仿真平台的几种体系结 构,最后给出我们设计的经过优化体系结构;第五章在基于上一章设计的体系结 构,讨论了各个模块的设计和实现,主要内容是本人在系统中的开发工作,在本 章最后,分析了系统还需要完善的地方;第六章分析传统r t i 仿真平台能力上的 不足和w e bs e r v i c e 对构建分布式系统的优点,提出了一个基于w e bs e r v i c e 的 r t i 仿真平台的架构,并给出了这种架构的一种解决方案,在最后论文分析了仿 真系统的发展方向,并提出了一种创新的仿真开发和执行模式;第七章基于目前 的工作状况,讨论了下一步的工作内容。 北京邮电大学硕士研究生学位论文r t i 仿真平台的体系结构研究与实现 第二章h l a r t i 系统介绍 h l a ( h i g hl e v e l a r c h i t e c t u r e ) 是一个开发分布式仿真系统的规范,它是一 个开放的、支持面向对象的体系结构。h l a 主要目的是促进仿真应用的互操作 性和提高仿真资源的可重用性。它最显著的特点就是通过提供通用的、相对独立 的支撑服务程序,将应用层同底层支撑环境分离,即将具体的仿真功能实现、仿 真运行管理和底层通信三者分开,屏蔽各自的实现细节。从而可以使各部分相对 独立地进行开发,最大程度的利用各自领域的最新技术来实现标准的功能和服 务,适应新技术的发展。同时,h l a 可实现应用系统的即插即用,易于实现仿 真系统的集成和管理,并能根据不同的用户需求和不同的应用目的,实现联邦的 快速组合和重新配置,保证了联邦范围内的互操作和重用。 2 1m a 系统概述 在基于h l a 的仿真系统中,联邦( f e d e r a t i o n ) 是指用于达到某一仿真目的 的分布仿真系统,它由若干相互作用的联邦成员( f e d e r a t e ) 构成。所有参与联 邦运行的应用程序都可以成为联邦成员,而且联邦可以作为联邦成员加入一个更 大的联邦中。 运行支撑环境( 姗,r u n t i m ei n f r a s t r u c t u r e ) 是h l a 仿真系统核心,它提供 了标准的服务使联邦成员之间能够交互。 一个典型的仿真联邦的逻辑模型如图2 - 1 所示。 圈rti圈rti圈r t i 1 :3 接口模块l接口模块i接模块j lj 联邦成员是真正实现仿真逻辑的实体,h l a 不关心它如何实现仿真。联邦 成员与其它联邦成员交互必须通过r t i 平台。r t i 接口模块是r t i 平台为联邦成 员开发者提供的标准服务库。 北京邮电大学硕士研究生学位论文 r t i 仿真平台的体系结构研究与实现 2 2h l a 规范的组成 h l a 是分布交互仿真的高层体系结构,它不关心仿真成员的具体实现细节 和仿真系统的逻辑,而是在假设已有成员的情况下考虑如何构建整个仿真系统, 如何提供成员之间的互操作。总之,m a 不关心仿真应用的实现,只关注如何 为仿真应用提供体系结构,这就是什么它叫做高层体系结构原因。 基于m a 的思想,h l a i 3 规范中主要由三个部分组成: 1 h l a 规则 “没有规矩,不成方圆”。为了保证在仿真系统运行阶段各联邦成员之间能 够正确交互,h l a 定义了联邦设计阶段必须遵守的规则。规则包括联邦规则和 联邦成员规则两个部分。可以简单地归纳如下: 联邦规则主要包括: 1 ) 每个联邦应该有一个h l a 联邦对象模型f o m ,它与h l a 的对象模型 o m t 里定义的兼容。f o m 将运行时联邦成员之间数据交换的协议和条件文档 化,它是定义一个联邦的基本元素。就是联邦对数据的一致性的理解。 2 ) 联邦中,所有与仿真相联系的对象实例应该在联邦成员中,而不是在 r t i 中。这是将具体的仿真功能与通用的支撑服务分离的基础。 3 ) 联邦执行过程中,所有联邦成员集的f o m 数据交换应该通过r t i 进行。 4 ) 联邦执行过程中,联邦成员和r t i 的交互应该遵循h l a 接口规范。 5 ) 联邦执行过程中,在任一时刻,一个实例属性至多只能被一个联邦成员 拥有。 联邦成员的规则有: 1 ) 联邦成员应有一个仿真对象模型s o m 。并与h l a o m t 中的定义一致。 2 ) 联邦成员应该能够更新反映任何属性,能发送接收任何交互。 3 ) 在联邦执行的过程中,联邦成员应该能动态转移或接受属性的所有权。 4 ) 每个联邦成员应能改变其s o m 中规定的更新实例属性值的条件。 5 ) 联邦成员应该能够按一种方法管理本地时间,使他们能和联邦的其它成 员办调数据交换。 2 对象模型模板( o m t , o b j e c tm o d e lt e m p l a t e ) 对象模型模板定义了一套描述h l a 对象模型的规范。h l a 是一个开放的体 系结构,其主要目的是促进仿真系统间的互操作,提高仿真系统及其部件的重用 能力。为了达到这一目的,h l a 必须用统一的方式描述联邦运行过程中需要交 换的数据和信息,o m t 为仿真系统提供了数据方面的互操作保证。 h l a 定义了两类对象模型,一类是描述仿真联邦的联邦对象模型( f o m , 北京邮电大学硕士研究生学位论文 r t i 仿真平台的体系结构研究与实现 f e d e r a t i o no b j e c tm o d e l ) ;另一类是描述联邦成员的成员对象模型( s o m , s i m u l a t i o no b j e c tm o d e l ) 。f o m 的主要目的是提供联邦成员之间用公共的、标准 化的格式进行数据交换的规范,它描述了在仿真运行过程中参与联邦成员信息交 换的对象类、对象类属性、交互类、交互参数的特性。f o m 建立了一个实现联 邦成员间互操作所必须的“信息模型协议”。s o m 是单一联邦成员的对象模型, 它描述了联邦成员可以对外公布或需要订购的对象类、对象类属性、交互类、交 互参数的特性,这些特性反映了成员在参与联邦运行时所具有的能力。 3 接口规范 接口规范时h l a 的核心部件,它定义了在仿真系统运行过程中,支持联邦 成员之间互操作的标准服务,接1 3 规范为仿真系统提供了接1 3 服务方面的互操作 保证。r t i 就是接口规范的具体实现,它是本文主要讨论的内容。 h l a 的接口规范主要由为六个服务部分组成: 1 ) 联邦管理。主要负责创建和删除联邦执行,联邦成员的加入和退出,同 步点,联邦保存、联邦恢复等等。 2 ) 声明管理。实现对象类和交互类的发布和订阅。 3 ) 对象管理。它是在声明管理的基础上进行的。包括对象实例的注册和发 现,对象实例属性值的更新与反射,交互实例的发送与接收等内容。 4 ) 所有权管理。在联邦成员间传输对象和其属性的所有权。 5 ) 时间管理。使仿真世界中事件发生顺序与真实世界中发生的顺序一致, 保证正确的因果关系。 6 ) 数据分发管理。在实例属性层次上进一步增强联邦成员精简数据需求的 能力,目的在于减少无用数据的传输的接收,减少网络中数据的通信量,提高仿 真运行的效率。 图2 - 2 联邦成员之间通过r t i 进行交互 2 3r t i 平台概述 北京邮电大学硕士研究生学位论文r t i 仿真平台的体系结构研究与实现 运行支撑环境( r t i ) 是h l a 接口规范的具体实现,是h l a 的核心部件。 本文的主要内容就是讨论r t i 平台的设计和实现。类似于其它分布式中间件, r t i 也包括两部分,服务器实现部分和客户端组件部分。客户端组件称之为本地 r t i 组件( l r c ,l o c a lr t ic o m p o n e n t ) ,它为联邦成员提供一个服务调用接口, 这个接口叫做r t i 大使( r t ia m b a s s a d o r ) ;同时r t i 需要保持一个联邦成员的 回调接口,称之为联邦成员大使( f e d e r a t ea m b a s s a d o r ) 。图2 2 描述了联邦成员 的构成以及联邦成员和r t i 之间的关系。 北京邮电大学硕士研究生学位论文 r t l 仿真平台的体系结构研究与实现 第三章c o r b a 概述 公共对象请求代理体系结构( c o r b a , c o m m o n0 b j e c tr e q u e s tb r o k e r a r c h i t e c t u r e ) 是由对象管理组织( o m g , o b j e c tm a n a g e m e n tg r o u 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 技术的面向对象和在分布式环境中可互操作的特点与h l a 的体系 结构及实现目标非常接近。所以在实际的r t i 平台中有很大一部分是基于 c o r b a 技术的。本文第一部分讨论的是实验室共同开发的基于c o r b a 的r t i 平台,所以按下来本章将简单介绍c o r b a 技术。 3 1c o r b a i j o 体系结构 c o r b a 建立在o m g 的对象模型基础之上,主要有三个关键部分:接口定 义语言( i d l ,i n t e r f a c ed e f i n i t i o nl a n g u a g e ) 、对象请求代理o r b 和标准通信协议 ( i i o p ,i n t e r n e ti n t e r - o r bp r o t o c 0 1 ) 。 对象请求代理( o r b ) 是c o r b a 的核心基础设施,c o r b a 规范规定了 o r b 的标准体系结构。o r b 负责完成查找请求的对象实现、让对象实现准备好 接收请求、传递构成请求的数据等任务所需的全部机制。客户程序所看到的对象 接1 3 完全独立于对象所处的位置、实现对象的程序设计语言以及对象接口中未反 映的其它特性。 北京邮电大学硕士研究生学位论文 r t i 仿真平台的体系结构研究与实现 为调用远程对象实现的一个实例,客户程序必须首先获取一个对象引用( 有 多种方式可获取对象引用) 。客户程序发出远程调用的方式与本地调用相似,只 不过调用的是远程对象实例的对象引用。o r b 检查对象引用,如果发现目标对 象是远程的,就将参数打包并通过网络传递给远程对象所在的o r b 。 o r b 提供的最基本功能是从客户程序向对象实现传递请求。在逻辑上o r b 可理解为一个由o r b 接口定义的服务集合,但在物理上o r b 通常不必实现为一 个单独的组件( 例如进程或程序库) 。o r b 核( o r bc o r e ) 是o r b 最关键的部 分,负责请求的通信设施,每一个o r b 产品供应商都有一个自己特有的o r b 内核。图3 1 展示了o r b 体系结构的主要组成部分以及它们之间的关系。 客户机服务器( 对象实现) ii 么lf 儿 王 上 动羽i 静驾晴i 广 陶叫i 销l | o r b 接t n sl 、 j 二= 造 g i o p i i o p i亡、o r b 棱 n e t w o r k 图3 - 1c o r b a 的体系结构 3 2c o r b a 在本系统中的作用 本系统中引入c o r b a 是为了利用c o r b a 的优势迅速的实现系统的开发。 在确定使用c o r b a 技术作为我们r t i 平台实现技术后,我们考虑两种实现r t i 平台的方式。 第一种方式是紧密结合r t i 与c o r b a 。r t i 提供的服务与c o r b a 对象的 方法很相似,所以可以考虑把r t i 服务封装在c o r b a 对象中。这种方式如图 3 2 所示( 图中c o r b a 部分为简略图) 。 第二种实现方式是仅仅把c o r b a 作为一个底层通信机制,实现一个封装 c o r b a 通信的接口,上层r t i 服务调用通过这个接口把服务请求消息发送的到 远端的r t i 服务器。这种模式用通信接口模块封装了c o r b a 的细节,上层无需 了解底层的通信方式。这样r t i 和c o r b a 是松散耦合的。这种模式如图3 3 所 示。 对比这两种结构可知,第一种实现方式简单,充分利用c o r b a 技术,但扩 展性差;第二种方式屏蔽c o r b a 细节,系统的松散耦合使之很容易改变底层的 北京邮电大学硕士研究生学位论文 r t i 仿真平台的体系结构研究与实现 通信机制,但系统实现稍微复杂些。 因为我们的目标是设计一个可充分扩展的r t i 平台,使系统可以非常方便的 改变底层通信机制,所以本系统采用第二种方式。关于底层通信部分的设计将在 第五章系统模块设计中给出。 图3 - - 9 将r t i 服务作为c o r b a 对象接口的实现方式 图3 - 3 将c o r b a 作为底层通信的r t i 实现方式 3 3 c o r b a 应用的开发过程 c o r b a 的核心思想是采用标准的接口定义语言( i d l ,i n t e r f a c ed e f i n i t i o n l a n g u a g e ) 将软件接口与软件实现向分离。i d l 是一种中性语言,使用i d l 的客 户可以根据1 d l 接口中的信息来决定如何发出请求和接收响应。大多数c o r b a 软件产品都提供工具把使用i d l 的接口描述映射为服务器端骨架和客户端存根, 存根代表客户创建并发出请求;骨架这把请求交给c o r b a 对象实现。骨架和存 北京邮电大学硕士研究生学位论文r t l 仿真平台的体系结掏研究与实现 根是自动生成的程序屏蔽底层o r b 的调用细节,加快应用程序的开发速度。 虽然目前市场上有很多的c o r b a 产品,但是使用它们来开发应用程序的过 程大体上是相同的,本系统使用i o n a 公司的o r b i x 实现。c o r b a 程序的基本 开发过程如下: 1 定义i d l 。对系统中需要利用o r b 进行交互的对象,首先将其对外呈现 的接口进行定义。 2 将i d l 映射为具体语言的客户端存根和服务器端骨架。 3 编写实现具体服务功能的代码。 4 编写实现客户端服务调用代码。 北京邮电大学硕士研究生学位论文r t i 仿真平台的体系结构研究与实现 第四章系统架构设计 本系统的设计目标是建立一个高效的、灵活的、可扩展和跨平台的仿真平台, 要实现这个目标就要设计一个好的系统架构,本章通过对现有的几种r t i 平台体 系结构分析的基础上提出我们自己的架构。 4 1 几种r t i 体系结构模型 r t i 作为联邦执行的底层支撑系统,其体系结构的优劣直接关系到仿真系统 的性能,从r t i 的逻辑结构看,有以下三种结构模型: 1 集中式结构模型 这种结构模型的特点是具有一个全功能的中心节点,在该中心节点上实现所 有的服务。联邦成员之间没有直接的通信关系,所有的成员之间都通过中心节点 提供的服务,来实现消息的转发与交换。其特点是结构简单,容易实现,但中心 节点负担大,将成为系统的瓶颈,不利于系统规模的扩展。 2 分布式结构模型 分布式结构不存在中间节点,但在每个仿真节点上都有自己的局部r t i 服务 器,联邦成员向本地r t i 服务进程提出请求,由本地r t i 做出响应。如果本地 r t i 不能完成响应,则请求外部的r t i 服务进程协同完成。分布式结构解决了系 统得瓶颈问题,有利于系统规模的扩展。但是这种结构缺乏集中式的全局管理, 对于需要与所有的局部r t i 进程协调完成的服务,比如时问管理等,协调算法复 杂,系统的运行效率低。 3 层次式结构模型 层次式结构模型结合分布式和集中式实现方法,以克服各自存在的问题,这 种结构模型有一个中心服务器,用于执行一些全局操作,如时问管理服务。在中 心服务器下设置一组子r t i 服务器,每个子服务器负责一组联邦成员的服务请 求,涉及全局操作的请求,由中心服务器协调各个r t i 子服务器共同完成。这种 结构可以减少全局操作的延迟,提供仿真系统运行的效率。对于一些局部操作, 由r t i 的子服务器分散执行,可降低计算的耦合度,从而提高执行效率。 4 2r t i 体系结构的性能分析 “工欲善其事,必先利其器”。为了确立我们的系统模型,我们对几种r t i 平台体系结构做了全面的分析。上一节我们已经在理论上分析了三种模型的优缺 北京邮电大学硕士研究生学位论文 r t i 仿真平台的体系结构研究与实现 点,本节将基于概率分析,统计各种模型的性能数据。基于数据,对比各种体系 结构的优劣。 理论和经验都表明,在h l a 系统中,联邦成员之间交互的信息大部分是对 象实例属性更新消息数据和交互实例数据,下面以对象实例属性更新数据为例分 析三种体系结构中r t i 服务器的性能。 一 我们假定:在各种体系结构中,每个联邦成员都向外发送一条对象实例属性 更新消息( 以下简称消息) ;对于每一条消息,如果某个联邦订购了这个对象实例 的已注册类或已注腮类的超类被更新的属性,则该联邦成员将收到这个消息( 为 了叙述的方便,我们称这个联邦成员为消息订购者) 。 我们假设每个联邦成员接收到每条消息的概率均等,用p 表示。分析的数据 为单个服务器数据。分析的性能指标有: 服务器发送消息的数量,用s c 表示; 收到消息的数量,用r c 表示: 总的消息数量,是发送消息数与接收消息数之和,用m c 表示; 对本地联邦成员发送的消息进行转发所需的匹配次数,用s m 表示; 将接收到的异地联邦成员消息向本地成员转发所需的匹配次数,用r m 表 刁i ; 总的匹配次数,是上述两个匹配数之和,用t m 表示。 消息的数量可以用做评价网络流量的指标,而匹配的次数用作服务器的计算 负载的评估。 4 2 1 集中式结构 集中式结构如图4 - 1 所示: 图4 - 1 集中式体系结构 假设联邦成员的数量用n 表示; 发送消息的数量为所有联邦成员发送的消息被r t i 服务器转发到其它联邦 成员的总和,即: 北京邮电大学硕士研究生学位论文r t i 仿真平台的体系结构研究与实现 s c = n x ( j 】v 一”尸; 收到消息的数量等于联邦成员的数量,即: r c = n : 集中式的结构没有本地成员和异地成员之分,所有消息均来自本地发向本 地,只有一个总的匹配次数,服务器将每条消息与其发送者之外的其它( n 一1 ) 联 邦成员匹配,所以匹配次数为( 一1 ) 次,则总的匹配次数为:+ t m = c 一1 ) x n 表4 - 1 显示了集中式结构的性能数据统计: 表4 - 1 集中式模型的性能数据 i 0 0 0 1 9 9 0i 0 01 0 9 09 9 0 0 i 0 0o 21 9 8 01 0 02 0 8 09 9 0 0 i 0 00 32 9 7 01 0 03 0 7 09 9 0 0 1 0 0 0 4 3 9 6 0 1 0 0 4 0 6 09 9 0 0 1 0 00 54 9 5 0i 0 05 0 5 09 9 0 0 i 0 0o 65 9 4 01 0 06 0 4 0 9 9 0 0 1 0 0o 76 9 3 01 0 07 0 3 09 9 0 0 1 0 00 87 9 2 0l o o8 0 2 09 9 0 0 i 0 00 98 9 1 01 0 09 0 1 09 9 0 0 3 0 12 572 0 50 2492 0 50 3651 l2 0 50 4851 3 2 0 5o ,51 051 5 2 0 _ 5o 61 2a1 72 0 5o 71 451 92

温馨提示

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

评论

0/150

提交评论