Skip to content

Commit

Permalink
add FASTDDS_BUILTIN_TRANSPORTS env value doc. (#750)
Browse files Browse the repository at this point in the history
Signed-off-by: Tomoya.Fujita <[email protected]>
  • Loading branch information
fujitatomoya authored Mar 25, 2024
1 parent c48406a commit 829cde3
Showing 1 changed file with 21 additions and 0 deletions.
21 changes: 21 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ However, `rmw_fastrtps` offers the possibility to further configure Fast DDS:
* [Full QoS configuration](#full-qos-configuration)
* [Change participant discovery options](#change-participant-discovery-options)
* [Enable Zero Copy Data Sharing](#enable-zero-copy-data-sharing)
* [Large data transfer over lossy network](#large-data-transfer-over-lossy-network)

### Change publication mode

Expand Down Expand Up @@ -306,6 +307,26 @@ In order to achieve a Zero Copy message delivery, applications need to both enab
</profiles>
```

### Large data transfer over lossy network

Out of the box, Fast DDS uses UDPv4 for the data communication over the network.
Although UDP has its own merit for realtime communications, with many applications relying on UDP, depending on application requirements, a more reliable network transmission may be needed.
Such cases included but are not limited to sending large data samples over lossy networks, where TCP's builtin reliability and flow control tend to perform better.
Because of this reason, Fast DDS provides the possibility to modify its builtin transports via an environmental variable `FASTDDS_BUILTIN_TRANSPORTS`, allowing for easily changing the transport layer to TCP when needed:
```bash
export FASTDDS_BUILTIN_TRANSPORTS=LARGE_DATA
```
This `LARGE_DATA` mode adds a TCP transport for data communication, restricting the use of the UDP transport to the first part of the discovery process, thus achieving a reliable transmission with automatic discovery capabilities.
This will improve the transmission of large data samples over lossy networks.
> [!NOTE]
> The environmental variable needs to be set on both publisher and subscription side.
For more information, please refer to [FASTDDS_BUILTIN_TRANSPORTS](https://fast-dds.docs.eprosima.com/en/latest/fastdds/env_vars/env_vars.html#fastdds-builtin-transports).
## Quality Declaration files
Quality Declarations for each package in this repository:
Expand Down

0 comments on commit 829cde3

Please sign in to comment.