File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -881,7 +881,7 @@ void dds_domain_examples()
881881 " true" );
882882 // !--
883883 }
884-
884+
885885 {
886886 // MAX_MESSAGE_SIZE_PROPERTY_PARTICIPANT
887887 DomainParticipantQos pqos;
@@ -4176,6 +4176,8 @@ void dds_qos_examples()
41764176 WireProtocolConfigQos wire_protocol;
41774177 // Set the guid prefix
41784178 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 ;
41794181 // Configure Builtin Attributes
41804182 wire_protocol.builtin .discovery_config .discoveryProtocol =
41814183 eprosima::fastrtps::rtps::DiscoveryProtocol_t::SERVER ;
@@ -4208,6 +4210,8 @@ void dds_qos_examples()
42084210 wire_protocol.default_external_unicast_locators [1 ][0 ].push_back (external_locator);
42094211 // Drop non matching locators
42104212 wire_protocol.ignore_non_matching_locators = true ;
4213+ // Increase mutation tries
4214+ wire_protocol.builtin .mutation_tries = 300u ;
42114215 // !--
42124216 }
42134217
Original file line number Diff line number Diff line change 33473347<participant profile_name =" UDP SERVER WP" is_default_profile =" true" >
33483348 <rtps >
33493349 <prefix >72.61.73.70.66.61.72.6d.74.65.73.74</prefix >
3350+ <participantID >11</participantID >
33503351 <builtin >
33513352 <discovery_config >
33523353 <discoveryProtocol >SERVER</discoveryProtocol >
33653366 <port >34567</port >
33663367 </udpv4 >
33673368 </metatraffic_external_unicast_locators >
3369+ <mutation_tries >300</mutation_tries >
33683370 </builtin >
33693371 <defaultUnicastLocatorList >
33703372 <locator >
Original file line number Diff line number Diff line change @@ -1066,6 +1066,16 @@ List of QoS Policy data members:
10661066 |BuiltinAttributes::discovery_config-api | within |WireProtocolConfigQos::builtin-api | (see
10671067 :ref: `DS_modify_server_list `).
10681068
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+
10691079Example
10701080"""""""
10711081
@@ -1125,3 +1135,7 @@ XML
11251135 :language: xml
11261136 :start-after: <!-->XML_WRITER_RESOURCE_LIMITS_QOS<-->
11271137 :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`.
177177 (neither *unicast * nor *multicast *), *Fast DDS * enables one *unicast * Locator
178178 that will be used for peer-to-peer communication of :ref: `dds_layer_topic_topic ` data.
179179
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+
180184For example, it is possible to prevent *multicast * traffic adding a single *metatraffic unicast * Locator
181185as described in :ref: `transport_disableMulticast `.
182186
@@ -212,6 +216,17 @@ The values used in these rules are explained on the following table.
212216The default values can be modified using the |WireProtocolConfigQos::port-api | member of the
213217:ref: `wireprotocolconfigqos ` on the :ref: `dds_layer_domainParticipantQos `.
214218
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+
215230.. list-table :: Values used in the rules to calculate well-known ports
216231 :header-rows: 1
217232
You can’t perform that action at this time.
0 commit comments