Fast-DDS 测试环境搭建

目录

测试环境的框架图

测试执行文件:

windows:

linux :

环境测试:

 测试执行:

测试数据抓取:

我们在编译完成Fast-DDS 的lib 之后需要测试dll 的使用方法和调试我们自己的应用程序,所以我们需要建立一个测试环境来完成这些任务。

测试环境的框架图

PC 是windows 64位的系统,树莓派是32位的 ARM 系统。

测试执行文件:

测试的执行文件使用的是编译dll 中的C++ 例子,路径如下:Fast-DDS\examples\cpp\hello_world。

我们在不同的平台下面编译出来执行文件

windows:

linux :

 

环境测试:

windows PC 和树莓派要在同一个局域网中,并且可以ping通,我这边PC 设置的IP是172.20.1.36,树莓派设置的IP是172.20.1.30

 测试执行:

树莓派下执行如下指令:./hello_world subscriber

 windows下执行如下指令:.\hello_world.exe publisher

 两边可以看到数据的之间的通信:

 

测试数据抓取:

我们可以在PC和树莓派上面安装好抓包工具wireshak,然后选择对应的网口查看两个执行文件之间的数据交互,先过滤出来rtps 消息,然后可以看到172.20.1.36 发出的数据被172.20.1.30接收。

从协议的解析中可以看到rtps写一些细节内容。

以上就是一个简单的DDS测试开发环境,基于这个环境可以自己调用fast-dds的库来做开发然后验证开发的结果。也可以通过wireshak 发的解析过程来学习相关的协议。 

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Fast-DDS是一个高性能的、基于数据发布-订阅模型的通信协议。它提供了丰富的QoS(服务质量)策略以及灵活的路由机制,以满足不同场景下的通信需求。 其中,QoS策略是指在数据传输的过程中,可以通过一定的配置方式来控制数据传输的质量、可靠性、延时等因素。Fast-DDS中提供了多种QoS策略,包括消息传输的可靠性、数据的存储方式、订阅者优先级等。 在Fast-DDS中,消息传输的可靠性可以通过以下几种QoS策略来控制: 1. RELIABILITY,即可靠性:用于控制消息的可靠性,包括发布者和订阅者之间的ack确认机制,以及网络连接中的重传机制。 2. DURABILITY,即持久性:用于控制消息的持久化方式,包括将消息写入本地磁盘或将消息存储在内存中。 3. HISTORY,即历史消息:用于控制订阅者在订阅之前是否可以获取历史消息,以及历史消息保存的方式(内存中、磁盘中、或通过文件传输)。 除了上述QoS策略,Fast-DDS还提供了很多其他的QoS选项,如数据传输的优先级、最大传输延迟、数据分发的方式等等,以满足不同的通信场景需求。 总体而言,Fast-DDS的QoS策略提供了丰富的选项和灵活的配置方式,能够帮助开发人员实现高性能、可靠的数据传输。 ### 回答2: Fast-DDS是一种高性能的DDS实现,可以用于构建实时和分布式系统。Fast-DDS支持多种QoS策略,这些策略允许用户在系统性能和资源利用率之间做出权衡。以下是Fast-DDS的QoS策略的几个关键点: 1. 可靠性:Fast-DDS支持可靠和非可靠的通信,通过配置可靠性参数,可以控制数据重传和丢失时间等方面的行为。 2. 带宽控制:Fast-DDS支持带宽限制,通过配置带宽参数,可以限制系统的带宽使用,从而避免因过度使用带宽导致的卡顿和延迟。 3. 时间同步:Fast-DDS支持时间同步,通过配置时间同步参数,可以在系统中确立一个统一的时间基准,从而避免因时间差异而导致的不一致性。 4. 优先级:Fast-DDS支持消息优先级,通过配置优先级参数,可以确保重要消息的优先传输,从而提高系统的响应能力。 5. QoS Inheritance: Fast-DDS支持QoS继承,它允许用户在不同级别的实体之间继承QoS属性。例如,可将主题级别的QoS继承到订阅者级别,从而确保所有订阅者都使用同一的QoS策略。 综上所述,Fast-DDS的QoS策略提供了一些非常有用的功能,可以帮助用户在不同的反应性和资源利用率需求之间做出权衡,从而优化系统的性能和可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值