Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions docs/docker/shm_docker.rst
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,12 @@ command, those are:
A more advanced user could set the flag to `shared`, thus sharing the shared memory mechanism of one of the container
with the others.

Starting with Fast DDS Pro 3.7.0, the participant property ``fastdds.shm.only_host_id_on_locators`` shall also be set
to ``true`` to force the SHM transport to not consider the machine ID on the locators, since the machine ID would
probably be different for each container, and therefore the SHM transport would not be able to find the other
participants.
See :ref:`property_policies_shm_host_id_only` for more information.

.. code-block:: bash

docker run -it --rm --network=host --ipc=host [OPTIONS] <docker-image>
24 changes: 24 additions & 0 deletions docs/fastdds/property_policies/non_consolidated_qos.rst
Original file line number Diff line number Diff line change
Expand Up @@ -348,6 +348,30 @@ The behavior regarding this can be configured using the property ``fastdds.shm.e
:start-after: <!-->XML-SHM-ENFORCE-META-TRAFFIC
:end-before: <!--><-->

.. _property_policies_shm_host_id_only:

SHM transport locators format |Pro|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Prior to version 3.7.0 of *Fast DDS*, the locators format for SHM transport included a two byte ID
based on the IP addresses of the host, which was used to identify the host in which the participant
was running.
Starting from version 3.7.0, the locators format for SHM transport has been changed to also include
a 13-byte ID based on the machine ID of the host.

When the machine ID part of the locator is set, it is used to identify the host in which a
participant is running, and the IP-based host ID part of the locator is ignored.
When the machine ID part of the locator is not set, the IP-based host ID part of the locator is
used to identify the host in which a participant is running.

In certain scenarios, where virtual machines are cloned or containers are created from the same
image, the machine ID of the host may be the same for different hosts, which may lead to
participants running in different hosts being considered to be running in the same host, and
therefore not being able to communicate.
In order to avoid this situation, the property ``fastdds.shm.only_host_id_on_locators`` can be set
to ``true`` to force the SHM transport to use only the IP-based host ID part of the locator, both
in the announced locators and when processing the locators of remote participants.

.. _property_max_message_size:

Maximum Message Size
Expand Down
Loading