File tree Expand file tree Collapse file tree 4 files changed +35
-0
lines changed Expand file tree Collapse file tree 4 files changed +35
-0
lines changed Original file line number Diff line number Diff line change @@ -4240,6 +4240,8 @@ void dds_qos_examples()
4240
4240
WireProtocolConfigQos wire_protocol;
4241
4241
// Set the guid prefix
4242
4242
std::istringstream (" 72.61.73.70.66.61.72.6d.74.65.73.74" ) >> wire_protocol.prefix ;
4243
+ // Manually set the participantId
4244
+ wire_protocol.participant_id = 11 ;
4243
4245
// Configure Builtin Attributes
4244
4246
wire_protocol.builtin .discovery_config .discoveryProtocol =
4245
4247
eprosima::fastrtps::rtps::DiscoveryProtocol_t::SERVER;
@@ -4272,6 +4274,8 @@ void dds_qos_examples()
4272
4274
wire_protocol.default_external_unicast_locators [1 ][0 ].push_back (external_locator);
4273
4275
// Drop non matching locators
4274
4276
wire_protocol.ignore_non_matching_locators = true ;
4277
+ // Increase mutation tries
4278
+ wire_protocol.builtin .mutation_tries = 300u ;
4275
4279
// !--
4276
4280
}
4277
4281
Original file line number Diff line number Diff line change 3827
3827
<participant profile_name =" UDP SERVER WP" is_default_profile =" true" >
3828
3828
<rtps >
3829
3829
<prefix >72.61.73.70.66.61.72.6d.74.65.73.74</prefix >
3830
+ <participantID >11</participantID >
3830
3831
<builtin >
3831
3832
<discovery_config >
3832
3833
<discoveryProtocol >SERVER</discoveryProtocol >
3845
3846
<port >34567</port >
3846
3847
</udpv4 >
3847
3848
</metatraffic_external_unicast_locators >
3849
+ <mutation_tries >300</mutation_tries >
3848
3850
</builtin >
3849
3851
<defaultUnicastLocatorList >
3850
3852
<locator >
Original file line number Diff line number Diff line change @@ -1204,6 +1204,16 @@ List of QoS Policy data members:
1204
1204
|BuiltinAttributes::discovery_config-api | within |WireProtocolConfigQos::builtin-api | (see
1205
1205
:ref: `DS_modify_server_list `).
1206
1206
1207
+ .. note ::
1208
+ Deployments where multiple DomainParticipants are created within the same host can lead into denying
1209
+ available ports for them if the amount of DomainParticipants created reaches the value of
1210
+ :cpp:var: `BuiltinAttributes::mutation_tries<eprosima::fastdds::rtps::BuiltinAttributes::mutation_tries> `
1211
+ (100 by default).
1212
+ When that happens, the DomainParticipants will not be able to create the listening ports (this is notified
1213
+ with a log warning) and will be created without unicast locators configured.
1214
+
1215
+ .. _wireprotocolconfigqos_example :
1216
+
1207
1217
Example
1208
1218
"""""""
1209
1219
@@ -1263,3 +1273,7 @@ XML
1263
1273
:language: xml
1264
1274
:start-after: <!-->XML_WRITER_RESOURCE_LIMITS_QOS<-->
1265
1275
:end-before: <!--><-->
1276
+
1277
+ .. note ::
1278
+ For extended XML information, refer to :ref: `domainparticipantconfig ` and :ref: `builtin ` XML sections.
1279
+
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