RTI Connext Micro C API  2.4.14.2
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
DPDE_DiscoveryPluginProperty Struct Reference

<<eXtension>> Properties for the Dynamic Participant/Dynamic Endpoint (DPDE) discovery plugin. This includes all discovery timing properties for participant discovery. More...

Data Fields

struct DDS_Duration_t participant_liveliness_assert_period
 The period to assert liveliness for the participant.
struct DDS_Duration_t participant_liveliness_lease_duration
 The liveliness lease duration for the participant.
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 initial_participant_announcement_period
 The period between initial announcements when a participant is first enabled or when a remote participant is newly discovered.
DDS_Boolean cache_serialized_samples
 Cache serialized discovery samples for locally created data readers and data writers.
DDS_Long max_participant_locators
 The maximum number of locators the RTI Connext Micro can send to to discover other participants in the same domain.
DDS_Long max_locators_per_discovered_participant
 The maximum number of locators the RTI Connext Micro can keep track of per discovered participant.
DDS_Long max_samples_per_builtin_endpoint_reader
 The maximum number of samples allocated per builtin endpoint DataReader.
DDS_Long max_samples_per_remote_builtin_endpoint_writer
 The maximum number of samples allocated per remote builtin writer.
DDS_Long builtin_writer_max_heartbeat_retries
 Maximum number of heartbeat retries for built-in endpoints.
struct DDS_Duration_t builtin_writer_heartbeat_period
 Heartbeat period for built-in endpoints.
DDS_Long builtin_writer_heartbeats_per_max_samples
 Number of heartbeats per max_samples built-in endpoints.
struct DDS_Duration_t builtin_endpoint_reader_nack_period
 The period at which NACKs are sent for the builtin endpoint readers.

Detailed Description

<<eXtension>> Properties for the Dynamic Participant/Dynamic Endpoint (DPDE) discovery plugin. This includes all discovery timing properties for participant discovery.


Field Documentation

struct DDS_Duration_t DPDE_DiscoveryPluginProperty::participant_liveliness_assert_period

The period to assert liveliness for the participant.

Specifies how often the DomainParticipant's discovery DataWriter will assert the liveliness of the DomainParticipant to its peers.

Should be strictly less than participant_liveliness_lease_duration.

[default] 30 seconds

[range] [1 nanosec, 1 year], < participant_liveliness_lease_duration

struct DDS_Duration_t DPDE_DiscoveryPluginProperty::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 participant_liveliness_assert_period.

[default] 100 seconds

[range] [1 nanosec, 1 year], > participant_liveliness_assert_period

DDS_Long DPDE_DiscoveryPluginProperty::initial_participant_announcements

The number of initial announcements sent when a participant is first enabled or when a remote participant is newly discovered.

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 will announce itself to the peers a number of times controlled by this parameter.

[default] 5

struct DDS_Duration_t DPDE_DiscoveryPluginProperty::initial_participant_announcement_period

The period between initial announcements when a participant is first enabled or when a remote participant is newly discovered.

[default] 1 second

DDS_Boolean DPDE_DiscoveryPluginProperty::cache_serialized_samples

Cache serialized discovery samples for locally created data readers and data writers.

When a data reader or data writer is enabled locally, the discovery plugin announces this to other participants in its domain. When this value is set to DDS_BOOLEAN_TRUE the serialized sample is stored in case a new particpant is discovered and the information must be sent again. This may improve discovery performance, but increases memory usage. The default value is DDS_BOOLEAN_FALSE which uses less memory.

[default] DDS_BOOLEAN_FALSE

DDS_Long DPDE_DiscoveryPluginProperty::max_participant_locators

The maximum number of locators the RTI Connext Micro can send to to discover other participants in the same domain.

The discovery plugin sends participant annoucements to a number of locators as specified in the initial peer list. The maximum number of locators to send too is specified here.

The value DDS_LENGTH_AUTO calculates the maximum number of locators as DomainParticipantQos.resource_limits.remote_participant_allocation + (DPDE_MAX_ANON_PARTICIPANT * (initial_peers length + 1))

The DPDE builtin participant topic DDS_DataWriter allocates max_participant_locators to send participant announcements to. The default value DDS_LENGTH_AUTO calculates max_participant_locators as remote_participant_allocation + (DPDE_MAX_ANON_PARTICIPANT * (peer_length + 1)) where the constant DPDE_MAX_ANON_PARTICIPANT = 6.

A participant locator is defined as a unique index@address to send to where index is an integer >= 0 and only applies to unicast addresses. For multicast address the index is 0. This index is the highest participant_id that will receive participant announcements at the address.

The maximum number of addresses to send to is defined by the peer list (either specified in DDS_DiscoveryQosPolicy::initial_peers or by calling DDS_DomainParticipant_add_peer. The maximum number of addresses needed is determined by adding all indices for all unicast addresses and adding one for each multicast address.

If memory is limited it is advised to set this value as low as possible.

[default] DDS_LENGTH_AUTO

DDS_Long DPDE_DiscoveryPluginProperty::max_locators_per_discovered_participant

The maximum number of locators the RTI Connext Micro can keep track of per discovered participant.

When a participant discover another participant, it must keep track of which addresses to respond to for each participant. NOTE: If two participants respond with the same addresses, for example multicast, only one address is saved.

[default] 4

DDS_Long DPDE_DiscoveryPluginProperty::max_samples_per_builtin_endpoint_reader

The maximum number of samples allocated per builtin endpoint DataReader.

The builtin endpoint datareaders are reliable and may cache samples received out-of-order to improve discovery performance. This resource limit determines the maximum number of outstanding samples at any given time.

[default] 8

[range] [1, 100000000]

DDS_Long DPDE_DiscoveryPluginProperty::max_samples_per_remote_builtin_endpoint_writer

The maximum number of samples allocated per remote builtin writer.

The builtin endpoint datareaders are reliable and may cache samples received out-of-order to improve discovery performance. This resource limit determines the maximum number of outstanding samples at any given time per remote builtin endpoint DataWriter. Note that this limit is per builtin endpoint DataReader.

The default value DDS_MAX_UNLIMITED allows a remote builtin endpoint DataWriter to potentially use all samples while missing samples are being resent. This may cause samples received by other remote builtin endpoint datawriters to be rejected until the remote builtin endpoint DataWriter using all the samples frees up resources.

The following values are supported for this member:

Note that the value of DPDE_DiscoveryPluginProperty::max_samples_per_builtin_endpoint_reader is still limited to [1, 100000000] and a run-time error will occur if the value is exceeded.

[default] DDS_MAX_UNLIMITED

[range] DDS_MAX_UNLIMITED, [1, 256]

DDS_Long DPDE_DiscoveryPluginProperty::builtin_writer_max_heartbeat_retries

Maximum number of heartbeat retries for built-in endpoints.

[default] DDS_LENGTH_UNLIMITED

[range] [1, 100000000] or DDS_LENGTH_UNLIMITED.

struct DDS_Duration_t DPDE_DiscoveryPluginProperty::builtin_writer_heartbeat_period

Heartbeat period for built-in endpoints.

[default] 100 ms.

[range] [1 nanosec,1 year]

DDS_Long DPDE_DiscoveryPluginProperty::builtin_writer_heartbeats_per_max_samples

Number of heartbeats per max_samples built-in endpoints.

[default] DDS_LENGTH_UNLIMITED

[range] [1, local_writer_allocation] or DDS_LENGTH_UNLIMITED.

struct DDS_Duration_t DPDE_DiscoveryPluginProperty::builtin_endpoint_reader_nack_period

The period at which NACKs are sent for the builtin endpoint readers.

Please refer to DDS_RtpsReliableReaderProtocol_t::nack_period for a detailed description.


RTI Connext Micro C API 2.4.14.2 Copyright © Tue May 28 2024 Real-Time Innovations, Inc