欢迎来到天天文库
浏览记录
ID:5275445
大小:218.18 KB
页数:7页
时间:2017-12-07
《基于dds的实时数据分发系统的研究与实现》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、http://www.paper.edu.cn基于DDS的实时数据分发系统的研究与实现刘芳明北京邮电大学电信工程学院,北京(100876)E-mail:fantacylfm@gmail.com摘要:在重点分析对象管理组织(OMG)颁布的数据分布服务(DataDistributionService,DDS)采用的以数据为中心的发布/订阅(DCPS)模型基础上,设计实现了一个采用发布/订阅机制,基于主题和QoS控制策略的实时数据分发系统。关键词:数据分发服务;发布/订阅;实时数据分发;CORBA中图分类号:TP3
2、191.引言随着Internet技术的广泛应用和计算机技术的飞速发展,各种应用系统的体系结构呈现出以网络为中心的趋势,这便对通信的实时性、动态灵活性提出了更高的要求,同时要求分布式系统各参与者之间采用一种具有松散耦合特性和QoS支持的灵活通信模型和交互机制。而现有的发布/订阅系统虽然提供了良好的开发平台和通信支持,却缺乏合适的系统控制接口和应用级QoS的有效支持,并不能很好地解决通信的实时性、快捷性和灵活性问题。如当[1]前较为流行的实时CORBA技术,由于它是以对象和服务为中心,采用了C/S通信模式,通信机
3、制较为复杂,数据收发需要建立连接的过程,不能完全满足系统对实时性能的需要,并[2]且它没有QoS支持,不能满足通信灵活性要求。JAVA消息服务JMS包含点对点和发布/订阅两种消息模型,提供可靠消息传输、事务和消息过滤等机制,适合大规模以数据为中心的网络,但是它缺乏应用级QoS策略,仍然不适合实时性要求高和紧急任务系统,例如:医疗系统、舰船控制系统和遥感勘测系统等领域。因此急需一种能为实时系统应用开发者提供高级抽象接口的同时还能有效合理地控制部署实时系统所需的QoS参数的系统来满足分布式实时应用需求。OMG在实
4、时CORBA的基础上,根据以数据为中心的发布/订阅(DCPS)模型制定了[3]DDS数据分发服务规范。DDS信息分发中间件是一种轻便的、能够提供实时信息传送的中间件技术。目前,信息分发中间件产品已经在发达国家中的舰船控制、数字电视系统、飞行[4]模拟器和军队网络系统中广泛使用。网络信息分发服务NDDS是RTI公司的信息分发中间件产品,完全符合OMG组织的DDS标准。RTI公司的NDDS中间件已经和DDSAPI相融合,可以提供差错避免,减少风险和系统开发费用。但是NDDS只是有限考虑了应用级QoS的设置,但并未
5、有效使用应用级的QoS控制发布/订阅信息。在保持性能和扩展性的前提下,本文基于DDS规范实现了一个以数据为中心的实时数据分发系统,实现了基于主题的数据发布/订阅功能,并能通过QoS分级和分类来控制通信质量。2.DDS数据分发服务概述DDS规范标准化了分布式实时系统中数据发布、传递和接收的接口和行为,定义了以数据为中心的发布/订阅(Data-CentricPublishSubscribe)机制,提供了一个与平台无关的数据模型,该模型能够映射到各种具体的平台和编程语言。DDS规范的目的是简化分布式系统中数据的有效
6、发布,它主要应用在要求高性能、可预见性和对资源有效使用的关键任务领域。-1-http://www.paper.edu.cnDDS规范描述了两个层次的接口:低层DCPS(Data-CentricPublish-Subscribe):将数据发布者发布的信息高效准确地传送给数据订阅者。可选的高层DLRL(DataLocalReconstructionLayer):允许将服务简单的集成到应用层。DCPS层是DDS规范的核心,它提供了数据发布的基础架构。DLRL层建立在DCPS基础之上,主要是规定了应用层和DCPS层之
7、间的接口,该接口将接收到的数据进行融合并传送给应用层,通过底层的DCPS提供服务,简化了编程工作。本文实现了DCPS层的数据分发服务。3.DCPS层基本机制DCPS是建立在“全局数据空间”(GlobalDataSpace)概念基础上的,这个全局数据空间是可以为感兴趣的应用程序所访问的。DCPS模型又分为平台独立模型PIM和平台专门模型PSM,PSM是以PIM为基础的OMGIDL平台。PIM平台总体框架结构如图1所示。图1:PIM平台框架结构PIM平台主要由域、发布者、订阅者、数据写入者、数据读取者和数据对象几
8、个实体对象组成。域(Domain)是DCPS中的基本分割单位。任意其它实体都属于某个域并且只能与位于相同域的其它实体相互作用。应用程序通过属于相应域的实体可以作用于某个域。一个域中的每个过程叫做域参与者。提供数据的应用者通过一定的规则发布信息,中间件(middleware)中发布信息的单元称之为发布者;需要接收指定数据的单元称为订阅者。当发布者将数据发布到全局数据空间后,中间件负责将这些信息传播给所
此文档下载收益归作者所有