DDS概述消息中间件包括点到点、消息队列和发布/订阅三种工作模式。点到点摸式具有很强的时间和空间耦合性,使得通信灵活性受到很大限制。消息队列模式通过一个消息队列来传递消息,解决了通信双方时间和空间松耦合的问题,但不能实现消息消费者通信的异步,并且还存在服务器瓶颈和单点失效的问题,可靠性得不到保障。发布/订阅模型中发布者和订阅者通过主题相关联,双方不必知道对方在何处。也不必同时在线,实现了通信双方时间、空间和数据通信的多维松耦合。DDS规范DDS(DataDistributionService数据分发服务)是对象管理组织OMG的有关分布式实时系统中数据发布的一个较新的规范(2004年12月发布1.0版,2007年1月发布1.2版)。DDS规范采用了发布/订阅体系结构,对实时性要求提供更好的支持。DDS是以数据为中心的发布/订阅通信模型,针对强实时系统进行了优化,提供低延迟、高吞吐量、对实时性能的控制级别,从而使DDS能够广泛应用于航空、国防、分布仿真、工业自动化、分布控制、机器人、电及网络化的消费电器等多个领域。DDS标准规范了实时分布式系统中数据发布、传递和接收的接口和行为,定义了以数据为中心的发布/订阅机制。DDS规范使用UML语言描述服务,提供了一个与平台无关的数据模型(这个模型能够映射到各种具体的平台和编程语言),使得实时分布式系统中数据能够高效、可靠地发布,它主要应用在要求高性能、可预见性和对资源有效使用的关键任务领域。DDS规范列举并正式定义了一整套全面的QoS策略,能利用QoS进行系统控制。每一个DCPS实体都有自身的QoS策略,而且在每一对发布者和订阅者之间又都可以建立独立的QoS协定。这使得DDS可以很好地配置和利用系统资源,协调可预言性与执行效率间的平衡,并能支持复杂多变的数据流需求。DDS的通信模型应用程序在处理以数据为中心的分布式系统时,DDS标准中间件可以帮助用户使用更加简单的编程模型,不需要开发特定的事件/消息机制或手动创建封装的CORBA对象来获取远程数据。应用程序可以使用一个简单的主题(Topic)名称来指定它想要读或写的数据,使用以数据为中心的API来直接读写数据。DDS中以数据为中心的发布/订阅(DCPS)模型构建了一个共享的"全局数据空间"的概念,所有的数据对象都存在于此空间中,分布式节点通过简单的读、写操作便可以访问这些数据对象。实际上,数据并非存在于所有计算机的地址空间中,它仅存在于那些对它感兴趣的应用程序的本地缓存中,而这一点正是发布/订阅模型的关键所在。DDS的QoS策略较好的QoS控制策略可能是DDS标准最重要的特征。QoS在DDS规范中得到了普遍而深入的使用,用于配置系统以及在每对发布者/订阅者之间建立起独立的QoS协定,而QoS协定能够提供实时系统所要求的性能、可预测性和资源可控性,并且能够保证发布/订阅模型的模块性、可量测性和鲁棒性等。因此,DDS能够满足非常复杂和灵活的数据流要求。DDS特点?DDS是针对网络编程的一个公开标准?是一套支持出版/订阅设计思想的应用程序接口(API)?体现了以数据为中心进行结构设计的方法学?专为高性能的实时系统设计?可以大大降低用户成本?用户可专注于自己的设计,不需要自己设计系统中所有的组件?降低集成成本,减少首次设计时间和后继测试等时间开销?采用公开标准,减少了被供应商特定技术禁锢的风险?RTI公司实现的商业版本DDS应用范围和典型用户全球已经有500多个项目和案例成功采用了RTI公司的DDS方案,网络中间的市场占有率高达80%左右。包括航空、航天、船舶、国防、金融、通信、汽车等领域。美国海上战争中心(NSWC)高性能分布式计算系统(HiPer-D)o高性能分布式计算(HiPer-D)程序跟踪成千上万个目标、多首船的几百个计算机之间协同通信o满足系统实时性要求(微秒级)并具有100%时间确定性oRTI提供成熟的技术和产品满足分布式计算环境中HiPer-D对实时性和确定性的严格要求美国海军LPD-17舰内广域网络o美国海军LPD-17舰内广域网络(SWAN)包括以下通信系统:?船、机械、检测和掌舵之间的控制系统(shipboard,machinery,damageandsteeringcontrols)?使命控制、导航和通信系统(Missioncontrol,navigationandcommunicationsystems)?其它很多部件...