RTI Connext C API
Version 5.2.0
|
Settings for discovery configuration. More...
Data Fields | |
struct DDS_Duration_t | participant_liveliness_lease_duration |
The liveliness lease duration for the participant. | |
struct DDS_Duration_t | participant_liveliness_assert_period |
The period to assert liveliness for the participant. | |
DDS_RemoteParticipantPurgeKind | remote_participant_purge_kind |
The participant's behavior for maintaining knowledge of remote participants (and their contained entities) with which discovery communication has been lost. | |
struct DDS_Duration_t | max_liveliness_loss_detection_period |
The maximum amount of time between when a remote entity stops maintaining its liveliness and when the matched local entity realizes that fact. | |
DDS_Long | initial_participant_announcements |
The number of initial announcements sent when a participant is first enabled or when a remote participant is newly discovered. | |
struct DDS_Duration_t | min_initial_participant_announcement_period |
The minimum period between initial announcements when a participant is first enabled or when a remote participant is newly discovered. | |
struct DDS_Duration_t | max_initial_participant_announcement_period |
The maximum period between initial announcements when a participant is first enabled or when a remote participant is newly discovered. | |
struct DDS_BuiltinTopicReaderResourceLimits_t | participant_reader_resource_limits |
Resource limits. | |
struct DDS_RtpsReliableReaderProtocol_t | publication_reader |
RTPS protocol-related configuration settings for the RTPS reliable reader associated to a built-in publication reader. | |
struct DDS_BuiltinTopicReaderResourceLimits_t | publication_reader_resource_limits |
Resource limits. | |
struct DDS_RtpsReliableReaderProtocol_t | subscription_reader |
RTPS protocol-related configuration settings for the RTPS reliable reader associated to a built-in subscription reader. | |
struct DDS_BuiltinTopicReaderResourceLimits_t | subscription_reader_resource_limits |
Resource limits. | |
struct DDS_RtpsReliableWriterProtocol_t | publication_writer |
RTPS protocol-related configuration settings for the RTPS reliable writer associated to a built-in publication writer. | |
struct DDS_WriterDataLifecycleQosPolicy | publication_writer_data_lifecycle |
Writer data lifecycle settings for a built-in publication writer. | |
struct DDS_RtpsReliableWriterProtocol_t | subscription_writer |
RTPS protocol-related configuration settings for the RTPS reliable writer associated to a built-in subscription writer. | |
struct DDS_WriterDataLifecycleQosPolicy | subscription_writer_data_lifecycle |
Writer data lifecycle settings for a built-in subscription writer. | |
DDS_DiscoveryConfigBuiltinPluginKindMask | builtin_discovery_plugins |
The kind mask for built-in discovery plugins. | |
DDS_ReliabilityQosPolicyKind | participant_message_reader_reliability_kind |
Reliability policy for a built-in participant message reader. | |
struct DDS_RtpsReliableReaderProtocol_t | participant_message_reader |
RTPS reliable reader protocol-related configuration settings for a built-in participant message reader. This parameter only has effect if DDS_DiscoveryConfigQosPolicy::participant_message_reader_reliability_kind is set to DDS_RELIABLE_RELIABILITY_QOS. | |
struct DDS_RtpsReliableWriterProtocol_t | participant_message_writer |
RTPS protocol-related configuration settings for the RTPS reliable writer associated to the built-in participant message writer. This parameter only has effect if the matching participant message reader is configured with DDS_RELIABLE_RELIABILITY_QOS DDS_ReliabilityQosPolicyKind. | |
struct DDS_PublishModeQosPolicy | publication_writer_publish_mode |
Publish mode policy for the built-in publication writer. | |
struct DDS_PublishModeQosPolicy | subscription_writer_publish_mode |
Publish mode policy for the built-in subscription writer. | |
struct DDS_AsynchronousPublisherQosPolicy | asynchronous_publisher |
Asynchronous publishing settings for the discovery DDS_Publisher and all entities that are created by it. | |
struct DDS_Duration_t | default_domain_announcement_period |
The period to announce a participant to the default domain 0. | |
DDS_Boolean | ignore_default_domain_announcements |
Used to ignore the announcements received by a participant on the default domain 0 corresponding to participants running on domains IDs other than 0. | |
Settings for discovery configuration.
<<extension>> This QoS policy controls the amount of delay in discovering entities in the system and the amount of discovery traffic in the network.
The amount of network traffic required by the discovery process can vary widely, based on how your application has chosen to configure the middleware's network addressing (e.g., unicast vs. multicast, multicast TTL, etc.), the size of the system, whether all applications are started at the same time or whether start times are staggered, and other factors. Your application can use this policy to make tradeoffs between discovery completion time and network bandwidth utilization. In addition, you can introduce random back-off periods into the discovery process to decrease the probability of network contention when many applications start simultaneously.
struct DDS_Duration_t DDS_DiscoveryConfigQosPolicy::participant_liveliness_lease_duration |
The liveliness lease duration for the participant.
This is the same as the expiration time of the DomainParticipant as defined in the RTPS protocol.
If the participant has not refreshed its own liveliness to other participants at least once within this period, it may be considered as stale by other participants in the network.
Should be strictly greater than DDS_DiscoveryConfigQosPolicy::participant_liveliness_assert_period.
[default] 100 seconds
[range] [1 nanosec,1 year], > participant_liveliness_assert_period
struct DDS_Duration_t DDS_DiscoveryConfigQosPolicy::participant_liveliness_assert_period |
The period to assert liveliness for the participant.
The period at which the participant will refresh its liveliness to all the peers.
Should be strictly less than DDS_DiscoveryConfigQosPolicy::participant_liveliness_lease_duration.
[default] 30 seconds
[range] [1 nanosec,1 year), < participant_liveliness_lease_duration
DDS_RemoteParticipantPurgeKind DDS_DiscoveryConfigQosPolicy::remote_participant_purge_kind |
The participant's behavior for maintaining knowledge of remote participants (and their contained entities) with which discovery communication has been lost.
Most users will not need to change this value from its default, DDS_LIVELINESS_BASED_REMOTE_PARTICIPANT_PURGE. However, DDS_NO_REMOTE_PARTICIPANT_PURGE may be a good choice if the following conditions apply:
struct DDS_Duration_t DDS_DiscoveryConfigQosPolicy::max_liveliness_loss_detection_period |
The maximum amount of time between when a remote entity stops maintaining its liveliness and when the matched local entity realizes that fact.
Notification of the loss of liveliness of a remote entity may come more quickly that this duration, depending on the liveliness contract between the local and remote entities and the capabilities of the discovery mechanism in use. For example, a DDS_DataReader will learn of the loss of liveliness of a matched DDS_DataWriter within the reader's offered liveliness lease duration.
Shortening this duration will increase the responsiveness of entities to communication failures. However, it will also increase the CPU usage of the application, as the liveliness of remote entities will be examined more frequently.
[default] 60 seconds
[range] [0, 1 year]
DDS_Long DDS_DiscoveryConfigQosPolicy::initial_participant_announcements |
The number of initial announcements sent when a participant is first enabled or when a remote participant is newly discovered.
Also, when a new remote participant appears, the local participant can announce itself to the peers multiple times controlled by this parameter.
[default] 5
[range] [0,1 million]
struct DDS_Duration_t DDS_DiscoveryConfigQosPolicy::min_initial_participant_announcement_period |
The minimum period between initial announcements when a participant is first enabled or when a remote participant is newly discovered.
A random delay between this and DDS_DiscoveryConfigQosPolicy::max_initial_participant_announcement_period is introduced in between initial announcements when a new remote participant is discovered.
The setting of DDS_DiscoveryConfigQosPolicy::min_initial_participant_announcement_period must be consistent with DDS_DiscoveryConfigQosPolicy::max_initial_participant_announcement_period. For these two values to be consistent, they must verify that:
DDS_DiscoveryConfigQosPolicy::min_initial_participant_announcement_period <= DDS_DiscoveryConfigQosPolicy::max_initial_participant_announcement_period.
[default] 1 second
[range] [1 nanosec,1 year]
struct DDS_Duration_t DDS_DiscoveryConfigQosPolicy::max_initial_participant_announcement_period |
The maximum period between initial announcements when a participant is first enabled or when a remote participant is newly discovered.
A random delay between DDS_DiscoveryConfigQosPolicy::min_initial_participant_announcement_period and this is introduced in between initial announcements when a new remote participant is discovered.
The setting of DDS_DiscoveryConfigQosPolicy::max_initial_participant_announcement_period must be consistent with DDS_DiscoveryConfigQosPolicy::min_initial_participant_announcement_period. For these two values to be consistent, they must verify that:
DDS_DiscoveryConfigQosPolicy::min_initial_participant_announcement_period <= DDS_DiscoveryConfigQosPolicy::max_initial_participant_announcement_period.
[default] 1 second
[range] [1 nanosec,1 year]
struct DDS_BuiltinTopicReaderResourceLimits_t DDS_DiscoveryConfigQosPolicy::participant_reader_resource_limits |
Resource limits.
Resource limit of the built-in topic participant reader. For details, see DDS_BuiltinTopicReaderResourceLimits_t.
struct DDS_RtpsReliableReaderProtocol_t DDS_DiscoveryConfigQosPolicy::publication_reader |
RTPS protocol-related configuration settings for the RTPS reliable reader associated to a built-in publication reader.
For details, refer to the DDS_RtpsReliableReaderProtocol_t
[default]
min_heartbeat_response_delay 0.0 seconds;
max_heartbeat_response_delay 0.0 seconds;
heartbeat_suppression_duration 0.0625 seconds;
nack_period 5.0 seconds;
receive_window_size 256;
round_trip_time 0.0 seconds;
app_ack_period 5.0 seconds;
samples_per_app_ack 1;
struct DDS_BuiltinTopicReaderResourceLimits_t DDS_DiscoveryConfigQosPolicy::publication_reader_resource_limits |
Resource limits.
Resource limit of the built-in topic publication reader. For details, see DDS_BuiltinTopicReaderResourceLimits_t.
struct DDS_RtpsReliableReaderProtocol_t DDS_DiscoveryConfigQosPolicy::subscription_reader |
RTPS protocol-related configuration settings for the RTPS reliable reader associated to a built-in subscription reader.
For details, refer to the DDS_RtpsReliableReaderProtocol_t
[default]
min_heartbeat_response_delay 0.0 seconds;
max_heartbeat_response_delay 0.0 seconds;
heartbeat_suppression_duration 0.0625 seconds;
nack_period 5.0 seconds;
receive_window_size 256;
round_trip_time 0.0 seconds;
app_ack_period 5.0 seconds;
samples_per_app_ack 1;
struct DDS_BuiltinTopicReaderResourceLimits_t DDS_DiscoveryConfigQosPolicy::subscription_reader_resource_limits |
Resource limits.
Resource limit of the built-in topic subscription reader. For details, see DDS_BuiltinTopicReaderResourceLimits_t.
struct DDS_RtpsReliableWriterProtocol_t DDS_DiscoveryConfigQosPolicy::publication_writer |
RTPS protocol-related configuration settings for the RTPS reliable writer associated to a built-in publication writer.
For details, refer to the DDS_RtpsReliableWriterProtocol_t
[default]
low_watermark 0;
high_watermark 1;
heartbeat_period 3.0 seconds;
fast_heartbeat_period 3.0 seconds;
late_joiner_heartbeat_period 3.0 seconds;
virtual_heartbeat_period DDS_DURATION_INFINITE;
samples_per_virtual_heartbeat DDS_LENGTH_UNLIMITED;
max_heartbeat_retries 10;
inactivate_nonprogressing_readers DDS_BOOLEAN_FALSE;
heartbeats_per_max_samples 8;
min_nack_response_delay 0.0 seconds;
max_nack_response_delay 0.0 seconds;
nack_suppression_duration 0.0 seconds;
max_bytes_per_nack_response 131072 bytes;
disable_positive_acks_min_sample_keep_duration 1.0 milliseconds;
disable_positive_acks_max_sample_keep_duration 1.0 seconds;
disable_positive_acks_enable_adaptive_sample_keep_duration DDS_BOOLEAN_TRUE;
disable_positive_acks_decrease_sample_keep_duration_factor 95;
disable_positive_acks_increase_sample_keep_duration_factor 150;
min_send_window_size DDS_LENGTH_UNLIMITED;
max_send_window_size DDS_LENGTH_UNLIMITED;
send_window_update_period 3s;
send_window_increase_factor 105;
send_window_decrease_factor 50;
enable_multicast_periodic_heartbeat DDS_BOOLEAN_FALSE;
multicast_resend_threshold 2 readers;
struct DDS_WriterDataLifecycleQosPolicy DDS_DiscoveryConfigQosPolicy::publication_writer_data_lifecycle |
Writer data lifecycle settings for a built-in publication writer.
For details, refer to the DDS_WriterDataLifecycleQosPolicy. DDS_WriterDataLifecycleQosPolicy::autodispose_unregistered_instances will always be forced to DDS_BOOLEAN_TRUE.
struct DDS_RtpsReliableWriterProtocol_t DDS_DiscoveryConfigQosPolicy::subscription_writer |
RTPS protocol-related configuration settings for the RTPS reliable writer associated to a built-in subscription writer.
For details, refer to the DDS_RtpsReliableWriterProtocol_t
[default]
low_watermark 0;
high_watermark 1;
heartbeat_period 3.0 seconds;
fast_heartbeat_period 3.0 seconds;
late_joiner_heartbeat_period 3.0 seconds;
virtual_heartbeat_period DDS_DURATION_INFINITE;
samples_per_virtual_heartbeat DDS_LENGTH_UNLIMITED;
max_heartbeat_retries 10;
inactivate_nonprogressing_readers DDS_BOOLEAN_FALSE;
heartbeats_per_max_samples 8;
min_nack_response_delay 0.0 seconds;
max_nack_response_delay 0.0 seconds;
nack_suppression_duration 0.0 seconds;
max_bytes_per_nack_response 131072 bytes;
disable_positive_acks_min_sample_keep_duration 1.0 milliseconds;
disable_positive_acks_max_sample_keep_duration 1.0 seconds;
disable_positive_acks_enable_adaptive_sample_keep_duration DDS_BOOLEAN_TRUE;
disable_positive_acks_decrease_sample_keep_duration_factor 95;
disable_positive_acks_increase_sample_keep_duration_factor 150;
min_send_window_size DDS_LENGTH_UNLIMITED;
max_send_window_size DDS_LENGTH_UNLIMITED;
send_window_update_period 3s;
send_window_increase_factor 105;
send_window_decrease_factor 50;
enable_multicast_periodic_heartbeat DDS_BOOLEAN_FALSE;
multicast_resend_threshold 2 readers;
struct DDS_WriterDataLifecycleQosPolicy DDS_DiscoveryConfigQosPolicy::subscription_writer_data_lifecycle |
Writer data lifecycle settings for a built-in subscription writer.
For details, refer to the DDS_WriterDataLifecycleQosPolicy. DDS_WriterDataLifecycleQosPolicy::autodispose_unregistered_instances will always be forced to DDS_BOOLEAN_TRUE.
DDS_DiscoveryConfigBuiltinPluginKindMask DDS_DiscoveryConfigQosPolicy::builtin_discovery_plugins |
The kind mask for built-in discovery plugins.
There are several built-in discovery plugin. This mask enables the different plugins. Any plugin not enabled will not be created.
[default] DDS_DISCOVERYCONFIG_BUILTIN_SDP
DDS_ReliabilityQosPolicyKind DDS_DiscoveryConfigQosPolicy::participant_message_reader_reliability_kind |
Reliability policy for a built-in participant message reader.
For details, refer to the DDS_ReliabilityQosPolicyKind.
[default] DDS_BEST_EFFORT_RELIABILITY_QOS
struct DDS_RtpsReliableReaderProtocol_t DDS_DiscoveryConfigQosPolicy::participant_message_reader |
RTPS reliable reader protocol-related configuration settings for a built-in participant message reader. This parameter only has effect if DDS_DiscoveryConfigQosPolicy::participant_message_reader_reliability_kind is set to DDS_RELIABLE_RELIABILITY_QOS.
For details, refer to the DDS_RtpsReliableReaderProtocol_t
[default]
min_heartbeat_response_delay 0.0 seconds;
max_heartbeat_response_delay 0.0 seconds;
heartbeat_suppression_duration 0.0625 seconds;
nack_period 5.0 seconds;
receive_window_size 256;
round_trip_time 0.0 seconds;
app_ack_period 5.0 seconds;
samples_per_app_ack 1;
struct DDS_RtpsReliableWriterProtocol_t DDS_DiscoveryConfigQosPolicy::participant_message_writer |
RTPS protocol-related configuration settings for the RTPS reliable writer associated to the built-in participant message writer. This parameter only has effect if the matching participant message reader is configured with DDS_RELIABLE_RELIABILITY_QOS DDS_ReliabilityQosPolicyKind.
For details, refer to the DDS_RtpsReliableWriterProtocol_t
[default]
low_watermark 0;
high_watermark 1;
heartbeat_period 1.0 seconds;
fast_heartbeat_period 1.0 seconds;
late_joiner_heartbeat_period 1.0 seconds;
virtual_heartbeat_period DDS_DURATION_INFINITE;
samples_per_virtual_heartbeat DDS_LENGTH_UNLIMITED;
max_heartbeat_retries 10;
inactivate_nonprogressing_readers DDS_BOOLEAN_FALSE;
heartbeats_per_max_samples 1;
min_nack_response_delay 0.0 seconds;
max_nack_response_delay 0.0 seconds;
nack_suppression_duration 0.0 seconds;
max_bytes_per_nack_response 9216 bytes;
disable_positive_acks_min_sample_keep_duration 1.0 milliseconds;
disable_positive_acks_max_sample_keep_duration 1.0 seconds;
disable_positive_acks_enable_adaptive_sample_keep_duration DDS_BOOLEAN_TRUE;
disable_positive_acks_decrease_sample_keep_duration_factor 95;
disable_positive_acks_increase_sample_keep_duration_factor 150;
min_send_window_size DDS_LENGTH_UNLIMITED;
max_send_window_size DDS_LENGTH_UNLIMITED;
send_window_update_period 1s;
send_window_increase_factor 105;
send_window_decrease_factor 50;
enable_multicast_periodic_heartbeat DDS_BOOLEAN_FALSE;
multicast_resend_threshold 2 readers;
struct DDS_PublishModeQosPolicy DDS_DiscoveryConfigQosPolicy::publication_writer_publish_mode |
Publish mode policy for the built-in publication writer.
Determines whether the Discovery built-in publication DDS_DataWriter publishes data synchronously or asynchronously and how.
struct DDS_PublishModeQosPolicy DDS_DiscoveryConfigQosPolicy::subscription_writer_publish_mode |
Publish mode policy for the built-in subscription writer.
Determines whether the Discovery built-in subscription DDS_DataWriter publishes data synchronously or asynchronously and how.
struct DDS_AsynchronousPublisherQosPolicy DDS_DiscoveryConfigQosPolicy::asynchronous_publisher |
Asynchronous publishing settings for the discovery DDS_Publisher and all entities that are created by it.
struct DDS_Duration_t DDS_DiscoveryConfigQosPolicy::default_domain_announcement_period |
The period to announce a participant to the default domain 0.
The period at which a participant will announce itself to the default domain 0 using the default UDPv4 multicast group address for discovery traffic on that domain.
For domain 0, the default discovery multicast address is 239.255.0.1:7400.
To disable announcement to the default domain, set this period to DDS_DURATION_INFINITE.
When this period is set to a value other than DDS_DURATION_INFINITE and DDS_DiscoveryConfigQosPolicy::ignore_default_domain_announcements is set to DDS_BOOLEAN_FALSE, you can get information about participants running in different domains by creating a participant in domain 0 and implementing the on_data_available callback in the DDS_ParticipantBuiltinTopicData built-in DataReader's listener.
You can learn the domain ID associated with a participant by looking at the field DDS_ParticipantBuiltinTopicData::domain_id.
[default] 30 seconds
[range] [1 nanosec,1 year] or DDS_DURATION_INFINITE
DDS_Boolean DDS_DiscoveryConfigQosPolicy::ignore_default_domain_announcements |
Used to ignore the announcements received by a participant on the default domain 0 corresponding to participants running on domains IDs other than 0.
This setting only applies to participants running on the default domain 0 and using the default port mapping.
When this setting is set to DDS_BOOLEAN_TRUE, a participant running on the default domain 0 will ignore announcements from participants running on different domain IDs.
When this setting is set to DDS_BOOLEAN_FALSE, a participant running on the default domain 0 will provide announcements from participants running on different domain IDs to the application via the DDS_ParticipantBuiltinTopicData built-in DataReader.
[default] DDS_BOOLEAN_TRUE