基于DDS 的传输插件的性能比较和分析

时间:2013-07-22

  摘 要:为了向航空电子通信系统的节点之间的数据分发过程提供可靠的通信服务,采用了RTI公司的DDS 实时分布式网络中间件,通过在软件环境中添加相应的传输插件,扩展了DDS 中间件技术的适用范围,将DDS分别成功应用到了千兆以太网、RS232串行口广播网络以及串行RapidIO的网络环境中,在多个网络节点之间实现了不同数据类型的数据分发服务功能,得到了可靠的性能数据,并根据数据分析了DDS的应用特点和三种传输技术各自的优缺点及适用环境。

  0 引言

  数据分发服务(DDS,Data Distribution Service)是对象管理组织(OMG)发布的实时系统数据分发服务标准。RTI 公司的DDS 是分布式系统实时应用程序的网络中间件,在通信系统的可靠性、延迟、吞吐率等方面都做了很好的优化,是DDS标准中较可靠、灵活和高性能的实现。目前国内外DDS 在Windows平台下的应用较多,但在嵌入式平台下的研究和应用还很少。项目利用DDS 中间件技术在数据传输方面的特殊优势,实现了可靠高效的数据分发系统;还在系统的节点之间实现了异构网络的数据分发服务功能,并测试获得相关性能指标,对RTI-DDS在正式项目中的实际应用有一定的指导意义。

  1 DDS 技术特点

  1.1 DDS 基本规范

  RTI-DDS标准规范了实时分布式系统中数据发布、传递和接收的接口和行为,定义了以数据为中心的发布/订阅机制。它提供了与平台无关的数据模型,此模型能映射到各种具体的平台和编程语言上,使得实时分布式系统中的数据能够高效、可靠地发布和接受。其具有开放体系结构,具备共享数据能力,支持以数据为中心的、高效的订阅/发布模式等优点。

  1.2 RTI-DDS 传输插件

  RTI-DDS 的一个重要特性是支持可插拔的传输插件。RTI-DDS中间件独立于操作系统和编程语言,可支持不同的传输插件,极大地方便了不同系统之间的通讯,体现了以数据为中心进行结构设计的方法学。

  1.3 RTI-DDS QoS 策略

  RTI-DDS 提供的丰富的可调控的服务质量(QoS,Quality of Service)参数,QoS主要为用户业务提供端到端的服务质量保证。QoS策略从系统层次上定义了事务在发送端和接收端之间所需的服务等级,这使其在数据收发质量和收发控制方面有着明显的优势。可以方便地从事务的优先级、可靠性、性能等多方面进行配置以达到应用效果,其实现是完全透明的,与操作系统和编程环境无关。

  2 传输插件的支持

  2.1 以太网技术特点

  以太网是使用广泛的局域网互连技术,它也被扩展应用到嵌入式设备互连领域。由于千兆以太网具有相对较低的引脚数、低成本的交换器件,通过集成在嵌入式处理器上的以太网芯片及交换器件,可方便的组成低成本的适中速率的系统,但以太网需要很大软件开销,很难应用到更高速率的系统内部互连应用中。

  2.2 RS232 串口技术特点

  RS232 串口的协议实现简单,数据以字符传送,少只需一根传输线即可完成,成本低但传送速度慢,适用于对速率要求不高的场所。项目的每个处理器具备一路RS232 串口,波特率为115 200 b/s,由于RS232 通信距离短,不能直接组成多点通信网络,因此在硬件上加入了转换接口电路,使得各处理器的串口构成了一发多收的广播网络。

  2.3 RapidIO 技术特点

  RapidIO 是目前世界上个、也是惟一的嵌入式系统互连的国际标准。这一互连技术将主要作为系统内部互连,支持芯片之间和板级通          信,可以达到从1~10 Gb/s 的性能水平。

  RapidIO 支持的编程模型包括基本存储器映射I/O事务、基于端口的消息传递和基于硬件一致性的全局共享分布式存储器。RapidIO 也提供各种错误检测机制,还提供定义良好的硬件和基于软件的架构以并纠正传输错误。

  RapidlO 技术对软件透明,允许任何数据协议运行。它通过提供自建的纠错机制和点对点架构来排除单点故障,满足嵌入式设计的可靠性需求[10].每个处理器配备一路SRIO 接口,通过交换设备构成静态配置的网络,SRIO端口波特率为2.5 Gb/s.

  3 性能测试及分析

  系统将RTI-DDS成功地结合了三种底层传输插件,得到了在可靠和非可靠传输条件下各自的性能。

  主要从传输速率和丢包率方面测试了系统的性能,得到的结论和分析如下。

  3.1 DDS 结合千兆以太网

  在节点设备之间通过以太网交换机交换数据,测试了以下数据,分别是:

  1)未使用DDS中间件,通过UDP传输方式得到的传输速率。

  2)使用DDS 中间件,非可靠性传输得到的传输速率。

  3)使用DDS 中间件,可靠性传输得到的传输速率。

  测试结果如图1 所示,使用千兆以太网以UDP方式进行传输速率可达到19 MB 每秒;以太网结合DDS 的的传输速率约为15 MB 每秒;调整QoS参数使传输过程达到可靠传输要求,无丢包的环境中,速率为11 MB/s 左右。

  

  在非可靠传输方式下,数据包小于1000 字节时存在0.05%~3%左右的丢包率,数据包越小丢包率越高,数据包大于1000字节后丢包率为0.

  3.2 DDS 结合RS232 串口

  节点设备之间通过广播式串口交换数据,测试了以下数据,分别是:

  1)未使用DDS 中间件,通过串口驱动程序直接实现节点之间数据传输得到的传输速率;2)使用DDS中间件,结合RS232 串口得到的传输速率。

  测试结果如图2 所示,由于串口的速率较慢,在测试中未出现丢包现象。无DDS 的环境中,通过驱动程序直接测试的RS232传输速率为13 KB每秒左右;加入DDS 之后,非可靠传输方式下的传输速率为每秒10 KB 左右。

  

  3.3 DDS 结合RapidIO

  RapidIO 配置为1x 模式、波特率为2.5 Gb/s 的串行RapidIO,在节点设备之间通过TSI578 交换机交换数据包,测试了以下各项的数据,分别是:

  1)未使用DDS中间件,通过RapidIO 的DMA方式得到的传输速率。

  2)使用DDS 中间件,非可靠性传输得到的传输速率及丢包率。

  3)使用DDS中间件,可靠传输的传输速率。

  RapidIO的测试传输速率如图3示,在没有DDS中间件的情况下,单通道串行RapidIO 传输速率可以达到45 MB/s 左右;有DDS 且可靠传输方式下,能达到22 MB/s;有DDS且非可靠传输的条件下,得到了32 MB/s 的传输速率,但是此时会有丢包现象,实际测试丢包率在0.003 5%左右,且随着数据包的增大,丢包率呈现下降趋势。

  

  由于RapidIO 的内存直接读写是较快的操作,其传输速率受处理器的处理能力的影响,在加入了DDS 的环境中,为了保证传输的可靠性而损失了一部分性能,但是可以看到其实际传输能力还是高于千兆以太网的,如果采用RapidIO 多通道技术可以达到更好的效果,所以RapidIO还是有很大优势的,在实际运用中可以根据需要来灵活安排使用策略以达到应用效果。

  4 结语

  RTI-DDS 成功应用到了三种底层传输技术上,并测试了不同条件下的系统性能,得到了可靠的数据。分析可知,在加入了DDS中间件的情况下,会相应地损失一些性能,但也带来了一定的好处,应用程序的移植性得到了提高,也提升了软件系统的稳定性、可靠性和数据的可控制性。下一步可以根据实际工程的需要将DDS应用到具体项目中去,方便工程项目的开发。

上一篇:电动汽车用动力电池环境下的安全性能
下一篇:栅极导电层Au 迁移导致放大器失效原因分析

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料