File tree Expand file tree Collapse file tree 4 files changed +36
-1
lines changed Expand file tree Collapse file tree 4 files changed +36
-1
lines changed Original file line number Diff line number Diff line change @@ -881,7 +881,7 @@ void dds_domain_examples()
881
881
" true" );
882
882
// !--
883
883
}
884
-
884
+
885
885
{
886
886
// MAX_MESSAGE_SIZE_PROPERTY_PARTICIPANT
887
887
DomainParticipantQos pqos;
@@ -4176,6 +4176,8 @@ void dds_qos_examples()
4176
4176
WireProtocolConfigQos wire_protocol;
4177
4177
// Set the guid prefix
4178
4178
std::istringstream (" 72.61.73.70.66.61.72.6d.74.65.73.74" ) >> wire_protocol.prefix ;
4179
+ // Manually set the participantId
4180
+ wire_protocol.participant_id = 11 ;
4179
4181
// Configure Builtin Attributes
4180
4182
wire_protocol.builtin .discovery_config .discoveryProtocol =
4181
4183
eprosima::fastrtps::rtps::DiscoveryProtocol_t::SERVER;
@@ -4208,6 +4210,8 @@ void dds_qos_examples()
4208
4210
wire_protocol.default_external_unicast_locators [1 ][0 ].push_back (external_locator);
4209
4211
// Drop non matching locators
4210
4212
wire_protocol.ignore_non_matching_locators = true ;
4213
+ // Increase mutation tries
4214
+ wire_protocol.builtin .mutation_tries = 300u ;
4211
4215
// !--
4212
4216
}
4213
4217
Original file line number Diff line number Diff line change 3347
3347
<participant profile_name =" UDP SERVER WP" is_default_profile =" true" >
3348
3348
<rtps >
3349
3349
<prefix >72.61.73.70.66.61.72.6d.74.65.73.74</prefix >
3350
+ <participantID >11</participantID >
3350
3351
<builtin >
3351
3352
<discovery_config >
3352
3353
<discoveryProtocol >SERVER</discoveryProtocol >
3365
3366
<port >34567</port >
3366
3367
</udpv4 >
3367
3368
</metatraffic_external_unicast_locators >
3369
+ <mutation_tries >300</mutation_tries >
3368
3370
</builtin >
3369
3371
<defaultUnicastLocatorList >
3370
3372
<locator >
Original file line number Diff line number Diff line change @@ -1066,6 +1066,16 @@ List of QoS Policy data members:
1066
1066
|BuiltinAttributes::discovery_config-api | within |WireProtocolConfigQos::builtin-api | (see
1067
1067
:ref: `DS_modify_server_list `).
1068
1068
1069
+ .. note ::
1070
+ Deployments where multiple DomainParticipants are created within the same host can lead into denying
1071
+ available ports for them if the amount of DomainParticipants created reaches the value of
1072
+ :cpp:var: `BuiltinAttributes::mutation_tries<eprosima::fastdds::rtps::BuiltinAttributes::mutation_tries> `
1073
+ (100 by default).
1074
+ When that happens, the DomainParticipants will not be able to create the listening ports (this is notified
1075
+ with a log warning) and will be created without unicast locators configured.
1076
+
1077
+ .. _wireprotocolconfigqos_example :
1078
+
1069
1079
Example
1070
1080
"""""""
1071
1081
@@ -1125,3 +1135,7 @@ XML
1125
1135
:language: xml
1126
1136
:start-after: <!-->XML_WRITER_RESOURCE_LIMITS_QOS<-->
1127
1137
:end-before: <!--><-->
1138
+
1139
+ .. note ::
1140
+ For extended XML information, refer to :ref: `domainparticipantconfig ` and :ref: `builtin ` XML sections.
1141
+
Original file line number Diff line number Diff line change @@ -177,6 +177,10 @@ further configuring the :ref:`comm-transports-configuration`.
177
177
(neither *unicast * nor *multicast *), *Fast DDS * enables one *unicast * Locator
178
178
that will be used for peer-to-peer communication of :ref: `dds_layer_topic_topic ` data.
179
179
180
+ * If the application does not define any **participantId **, *Fast DDS * will use the value given by the
181
+ :ref: `dds_layer_domainParticipantFactory `, which will try always to provide the lowest available value per
182
+ DomainParticipantFactory (per process).
183
+
180
184
For example, it is possible to prevent *multicast * traffic adding a single *metatraffic unicast * Locator
181
185
as described in :ref: `transport_disableMulticast `.
182
186
@@ -212,6 +216,17 @@ The values used in these rules are explained on the following table.
212
216
The default values can be modified using the |WireProtocolConfigQos::port-api | member of the
213
217
:ref: `wireprotocolconfigqos ` on the :ref: `dds_layer_domainParticipantQos `.
214
218
219
+ .. note ::
220
+
221
+ Deployments where multiple DomainParticipants are created within the same host can lead into denying
222
+ available ports for them if the amount of DomainParticipants created reaches the value of
223
+ :cpp:var: `BuiltinAttributes::mutation_tries<eprosima::fastdds::rtps::BuiltinAttributes::mutation_tries> `
224
+ (100 by default).
225
+ When that happens, the DomainParticipants will not be able to create the listening ports (this is notified
226
+ with a log warning) and will be created without unicast locators configured.
227
+
228
+ Refer to :ref: `this example <wireprotocolconfigqos_example >` for configuring both the *mutation_tries * values.
229
+
215
230
.. list-table :: Values used in the rules to calculate well-known ports
216
231
:header-rows: 1
217
232
You can’t perform that action at this time.
0 commit comments