Fast DDS作为一种数据分发服务(DDS)实现,提供了发现机制,允许跨域参与者自动查找和匹配DataWriter和DataReader,以便他们可以开始共享数据。对于所有机制,此发现分两个阶段执行。
发现阶段
- Participant Discovery Phase参与者发现阶段(PDP):在此阶段,域参与者确认彼此的存在。为此,每个DomainParticipant都会定期发送通知消息,其中指定了DomainParticipate侦听传入元和用户数据流量的单播地址(IP和端口)。当两个给定的DomainParticipant存在于同一DDS域中时,它们将匹配。默认情况下,使用已知的多播地址和端口(使用DomainId计算)发送通知消息。此外,还可以指定使用单播发送通知的地址列表(请参阅初始对等体中的)。此外,还可以配置此类通知的周期性(请参阅发现配置)。
- Endpoint Discovery Phase端点发现阶段(EDP):在此阶段,DataWriter和DataReader相互确认。为此,DomainParticipants使用PDP期间建立的通信信道,彼此共享有关其DataWriter和DataReader的信息。除其他外,此信息还包含主题和数据类型(请参阅主题)。要使两个端点匹配,其主题和数据类型必须一致。一旦DataWriter和DataReader匹配,它们就可以发送/接收用户数据流量了。
可以使用PDP阶段传输有关运行DomainParticipant的主机、用户和进程&#x