RTI Connext Traditional C++ API  Version 6.1.0
DDS_TransportMulticastQosPolicy Struct Reference

Specifies the multicast address on which a DDSDataReader wants to receive its data. It can also specify a port number as well as a subset of the available (at the DDSDomainParticipant level) transports with which to receive the multicast data. More...

Public Attributes

struct DDS_TransportMulticastSettingsSeq value
 A sequence of multicast communications settings. More...
 
DDS_TransportMulticastQosPolicyKind kind
 A value that specifies a way to determine how to obtain the multicast address. More...
 

Detailed Description

Specifies the multicast address on which a DDSDataReader wants to receive its data. It can also specify a port number as well as a subset of the available (at the DDSDomainParticipant level) transports with which to receive the multicast data.

By default, a DDSDataWriter will send individually addressed packets for each DDSDataReader that subscribes to the topic of the DataWriter – this is known as unicast delivery. Thus, as many copies of the data will be sent over the network as there are DataReaders for the data. The network bandwidth used by a DataWriter will thus increase linearly with the number of DataReaders.

Multicast addressing (on UDP/IP transports) allows multiple DataReaders to receive the same network packet. By using multicast, a DDSDataWriter can send a single network packet that is received by all subscribing applications. Thus the network bandwidth usage will be constant, independent of the number of DataReaders.

Coordinating the multicast address specified by DataReaders can help optimize network bandwidth usage in systems where there are multiple DataReaders for the same DDSTopic.

Entity:
DDSDataReader
Properties:
RxO = N/A
Changeable = NO

Member Data Documentation

◆ value

struct DDS_TransportMulticastSettingsSeq DDS_TransportMulticastQosPolicy::value

A sequence of multicast communications settings.

An empty sequence means that multicast is not used by the entity.

The RTPS wire protocol currently limits the maximum number of multicast locators to 16. Note that this is a hard limit that cannot be increased. However, this limit can be decreased by configuring the 'dds.domain_participant.max_announced_locator_list_size' property in the DDS_PropertyQosPolicy associated with the DDS_DomainParticipantQos.

[default] Empty sequence.

◆ kind

DDS_TransportMulticastQosPolicyKind DDS_TransportMulticastQosPolicy::kind

A value that specifies a way to determine how to obtain the multicast address.

This field can be set to one of the following two values: DDS_AUTOMATIC_TRANSPORT_MULTICAST_QOS or DDS_UNICAST_ONLY_TRANSPORT_MULTICAST_QOS.

[default] DDS_AUTOMATIC_TRANSPORT_MULTICAST_QOS