FastDDS、OpenDDS、ConnextDDS三者之间是能够实现通信的
一、Connext DDS 与 FastDDS
1.1 FastDDS发布数据,ConnextDDS订阅数据
1.2 ConnextDDS发布数据,FastDDS订阅数据
二、FastDDS 与 OpenDDS
变换一下收发启动的顺序:
32G内存好吧,还是显示没内存了(翻车现场)。看现象应该是序列化使用的buffer出错了,内存溢出,问题的解释一句话:他是个bug。姑且算Fast DDS节点与OpenDDS 进行交互是行得通的吧。
三、ConnextDDS与 OpenDDS
其实吧有一个问题,接下来看,当我先开启opendds的发布节点时会提示错误,但是并不影响通信
确实哎,RTPS header for SPDP, 那这是啥呀?
答:SPDP全称是 Simple Participant Discovery Protocol(SPDP),这是DDS节点发现过程中的第一个阶段,这个阶段完成之后进入下一个阶段Simple Endpoint Discovery Protocol (SEDP) 。只有这两个阶段全部完成之后才会进入真正的数据交互。这应该是OpenDDS的版本问题,是一个bug。
只要不同厂家实现的DDS是符合OMG的标准的,那么相互通信就没有什么问题。
原文链接:https://blog.csdn.net/Tom942067059/article/details/113382934