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
4 changes: 1 addition & 3 deletions docs/resources/examples/change_domain_allowlist.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
########################################
# CHANGE DOMAIN WITH ALLOWLIST EXAMPLE #
######################################## # 0
########################################

##################################
# ALLOWED TOPICS
Expand Down Expand Up @@ -37,8 +37,6 @@ participants:
# This configuration example configures a DDS Router to listen to every message published in two different domains
# and transmit those messages through the other domain.

# 0: Use YAML configuration version v5.0

# 1: Allow DDS Topic Name <HelloWorldTopic> with type <HelloWorld>.

# 2: Insert new topics in order to route to them.
Expand Down
2 changes: 0 additions & 2 deletions docs/resources/examples/echo.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,6 @@ participants:
# HelloWorldTopic (from Fast DDS HelloWorld) and rt/chatter from ROS2 demo_nodes, and to print the received
# messages in stdout. Information regarding discovery events is also printed to stdout.

# 0: Use YAML configuration version v5.0

# 1: Allow DDS Topic Name <HelloWorldTopic> with type <HelloWorld>.

# 2: Insert new topics in order to route them.
Expand Down
4 changes: 1 addition & 3 deletions docs/resources/examples/forwarding_routes.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
######################
# FORWARDING ROUTES #
###################### # 0
######################

##############
# PARTICIPANTS
Expand Down Expand Up @@ -72,8 +72,6 @@ topic-routes: # 11
# to DDS Domain 1.
# The communication is in both directions.

# 0: Use YAML configuration version v5.0

# 1: List the internal participants of the router.

# 2: New Participant with name <SimpleParticipant_0>.
Expand Down
6 changes: 0 additions & 6 deletions docs/resources/examples/repeater_client.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,6 @@
# REPEATER CLIENT EXAMPLE #
###########################

##################################
# CONFIGURATION VERSION
version: v5.0 # 0

##################################
# ALLOWED TOPICS
# Allowing ROS2 HelloWorld demo_nodes
Expand Down Expand Up @@ -46,8 +42,6 @@ participants:
# The other direction of communication is also possible; receive messages at the WAN Participant and locally
# publish them in domain 0.

# 0: Use YAML configuration version v5.0

# 1: Allow ROS 2 specific Topic Name <rt/chatter> with type <std_msgs::msg::dds_::String_>.
# Insert new topics in order to route them.

Expand Down
9 changes: 2 additions & 7 deletions docs/resources/examples/repeater_server.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,14 @@
# REPEATER SERVER EXAMPLE #
###########################

##################################
# CONFIGURATION VERSION
version: v5.0 # 0

##################################
# ALLOWED TOPICS
# Allowing FastDDS and ROS2 HelloWorld demo examples topics

allowlist:
- name: HelloWorldTopic # 1
- name: HelloWorldTopic # 1
- name: rt/chatter # 2

##################################
# PARTICIPANTS
participants:
Expand Down Expand Up @@ -40,8 +37,6 @@ participants:
# Server specifies which DDS Router starts the communication with the other, and after communication has been
# established, both routers behave in the same way.

# 0: Use YAML configuration version v5.0

# 1: Allow DDS Topic Name <HelloWorldTopic> with type <HelloWorld>.

# 2: Insert new topics in order to route them.
Expand Down
4 changes: 1 addition & 3 deletions docs/resources/examples/ros_discovery_client.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#######################################
# ROS DISCOVERY SERVER CLIENT EXAMPLE #
####################################### # 0
#######################################

##################################
# ALLOWED TOPICS
Expand Down Expand Up @@ -42,8 +42,6 @@ participants:
# The other direction of communication is also possible; receive messages at the Discovery Server and locally
# publish them in domain 0.

# 0: Use YAML configuration version v5.0

# 1: Allow ROS 2 specific Topic Name <rt/chatter> with type <std_msgs::msg::dds_::String_>.
# Insert new topics in order to route them.

Expand Down
2 changes: 0 additions & 2 deletions docs/resources/examples/ros_discovery_server.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,6 @@ participants:
# The other direction of communication is also possible; receive messages at the Discovery Server and locally
# publish them in domain 0.

# 0: Use YAML configuration version v5.0

# 1: Allow DDS ROS 2 specific Topic Name <rt/chatter> with type <std_msgs::msg::dds_::String_>.
# Insert new topics in order to route them.

Expand Down
4 changes: 1 addition & 3 deletions docs/resources/examples/wan_client.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
######################
# WAN CLIENT EXAMPLE #
###################### # 0
######################

##################################
# ALLOWED TOPICS
Expand Down Expand Up @@ -47,8 +47,6 @@ participants:
# Client specifies which DDS Router starts the communication with the other, and after communication has been
# established, both routers behave in the same way.

# 0: Use YAML configuration version v5.0

# 1: Allow DDS Topic Name <HelloWorldTopic> with type <HelloWorld>.

# 2: Insert new topics in order to route them.
Expand Down
4 changes: 1 addition & 3 deletions docs/resources/examples/wan_ds_client.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#######################################
# WAN DISCOVERY SERVER CLIENT EXAMPLE #
####################################### # 0
#######################################

##################################
# ALLOWED TOPICS
Expand Down Expand Up @@ -47,8 +47,6 @@ participants:
# Client specifies which DDS Router starts the communication with the other, and after communication has been
# established, both routers behave in the same way.

# 0: Use YAML configuration version v5.0

# 1: Allow DDS Topic Name <HelloWorldTopic> with type <HelloWorld>.

# 2: Insert new topics in order to route them.
Expand Down
4 changes: 1 addition & 3 deletions docs/resources/examples/wan_ds_server.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#######################################
# WAN DISCOVERY SERVER SERVER EXAMPLE #
####################################### # 0
#######################################

##################################
# ALLOWED TOPICS
Expand Down Expand Up @@ -44,8 +44,6 @@ participants:
# Server specifies which DDS Router starts the communication with the other, and after communication has been
# established, both routers behave in the same way.

# 0: Use YAML configuration version v5.0

# 1: Allow DDS Topic Name <HelloWorldTopic> with type <HelloWorld>.

# 2: Insert new topics in order to route them.
Expand Down
4 changes: 1 addition & 3 deletions docs/resources/examples/wan_server.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
######################
# WAN SERVER EXAMPLE #
###################### # 0
######################

##################################
# ALLOWED TOPICS
Expand Down Expand Up @@ -44,8 +44,6 @@ participants:
# Server specifies which DDS Router starts the communication with the other, and after communication has been
# established, both routers behave in the same way.

# 0: Use YAML configuration version v5.0

# 1: Allow DDS Topic Name <HelloWorldTopic> with type <HelloWorld>.

# 2: Insert new topics in order to route them.
Expand Down
6 changes: 2 additions & 4 deletions docs/resources/examples/xml.yaml
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
######################
# XML EXAMPLE #
###################### # 0
######################

##################################
# CONFIGURATION VERSION
# XML CONFIGURATION
xml: # 1
files:
- "./xml_configuration.xml" # 2
Expand Down Expand Up @@ -44,8 +44,6 @@ participants:
# to DDS Domain 1.
# The communication is in both directions.

# 0: Use YAML configuration version v5.0

# 1: Configure how to load XML configurations.

# 2: Load profiles from every xml file in list.
Expand Down
6 changes: 0 additions & 6 deletions docs/rst/appendixes/glossary.rst
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,6 @@ Glossary
TCP
**Transmission Control Protocol**

TURN
**Traversal Using Relays around NAT**
A TURN server is a network element that supports a common point of redirection of messages.
It redirect messages between N nodes connected to it.
This is a very common technique in order to traverse a NAT or an unreachable network.

UDP
**User Datagram Protocol**

Expand Down
22 changes: 7 additions & 15 deletions docs/rst/examples/repeater_example.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,22 +6,13 @@
Repeater Example
################

A |ddsrouter| could work as a :term:`TURN` **Repeater** to forward messages by the same Participant.
A |ddsrouter| could work as a **Repeater** to forward messages by the same Participant.
If you are interested in understanding the use case of a Repeater please refer to the following
section :ref:`use_case_repeater`.

Configuration
=============

Version
-------

The version attribute is required, as the :code:`repeater` tag is only supported from v4.0 configuration version.

.. literalinclude:: ../../resources/examples/repeater_server.yaml
:language: yaml
:lines: 7-7

Allowed Topics
--------------

Expand All @@ -32,19 +23,20 @@ one domain to the other, allowing different DDS domains to interact with each ot

.. literalinclude:: ../../resources/examples/repeater_server.yaml
:language: yaml
:lines: 13-17
:lines: 9-11


Repeater Participant
--------------------

The **Repeater Participant** is the one that will be used to forward messages by the same Participant.
It must be a :code:`WAN` Participant and be configured as so with
:ref:`WAN configuration <user_manual_wan_configuration>`.
It must be a :ref:`WAN <user_manual_participants_wan>` Participant,
configured with :ref:`WAN configuration <user_manual_wan_configuration>`,
or an :ref:`XML <user_manual_participants_xml>` Participant.

.. literalinclude:: ../../resources/examples/repeater_server.yaml
:language: yaml
:lines: 27-33
:lines: 21-27


Client Participants
Expand All @@ -56,7 +48,7 @@ or similar configuration to communicate across it.

.. literalinclude:: ../../resources/examples/repeater_client.yaml
:language: yaml
:lines: 33-38
:lines: 29-34


Execute example
Expand Down
4 changes: 2 additions & 2 deletions docs/rst/getting_started/usage_example.rst
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ Let us first add only the ``Square`` topic:

.. literalinclude:: ../../resources/getting_started/client-ddsrouter.yaml
:language: yaml
:lines: 5-6
:lines: 3-4

Apart from selecting on which topics we wish to send/receive data, we must configure as well the participants that will
ultimately perform communication. Each router instance will contain a :ref:`simple <user_manual_participants_simple>`
Expand All @@ -69,7 +69,7 @@ The only configuration required for simple participants is the DDS ``domain`` id

.. literalinclude:: ../../resources/getting_started/client-ddsrouter.yaml
:language: yaml
:lines: 10-12
:lines: 8-10

If launching the two routers in the same LAN, set a different ``domain`` id in one of the two configuration files (same
as the one previously set for ShapesDemo).
Expand Down
5 changes: 5 additions & 0 deletions docs/rst/notes/forthcoming_version.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,8 @@
###################
Forthcoming Version
###################

Next release will include the following **features**:

* Support :ref:`repeater <use_case_repeater>` feature in :ref:`XML <user_manual_participants_xml>` participants.
* Support writer-side `SQL-like <https://fast-dds.docs.eprosima.com/en/latest/fastdds/dds_layer/topic/contentFilteredTopic/defaultFilter.html#the-default-sql-like-filter>`_ content filtering in :ref:`XML <user_manual_participants_xml>` participants.
2 changes: 1 addition & 1 deletion docs/rst/notes/previous_versions/v1.0.0.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ This release includes the following **major features**:

This release includes the following **features**:

* New :ref:`Repeater behaviour <use_case_repeater>`, a new configuration to create :term:`TURN` servers.
* New :ref:`Repeater behaviour <use_case_repeater>`, a new configuration to create Repeater servers.
* Add RPC support (compatibility with *ROS 2* services).
* Timeout argument ``--timeout`` to close the application after the time set has passed.
Check section :ref:`user_manual_user_interface_timeout_argument` for more information.
Expand Down
12 changes: 6 additions & 6 deletions docs/rst/use_cases/repeater.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@
Repeater DDS Router
###################

A |ddsrouter| could work as a :term:`TURN` **Repeater**.
A |ddsrouter| could work as a **Repeater** Server.
This means that a |ddsrouter| can be used to repeat messages between networks.

Use case
========

The use of a :term:`TURN` Server is very useful in the following scenarios:
The use of a Repeater Server is very useful in the following scenarios:

- **NAT Traversal**: If the edge devices are under different NATs, they cannot access each other if no
ports are opened in their respective internet access points.
Expand All @@ -29,10 +29,10 @@ and make the communication possible.
How to configure
================

This |ddsrouter| configuration is very simple, as all it needs is a :ref:`user_manual_participants_wan` and
adding to its configuration the tag `repeater: true`.
This |ddsrouter| configuration is very simple, as all it needs is a :ref:`WAN <user_manual_participants_wan>` or
:ref:`XML <user_manual_participants_xml>` Participant with the extra configuration tag `repeater: true`.
There could be more Participants in this |ddsrouter| and topic filtering is also available.
The Repeater Participant only works as other normal Participant,
with the particularity that resend forward the data that receives.
The Repeater Participant works as any other Participant,
with the particularity that it is able to resend the data it receives.

In order to see an example of this configuration, access to the following example :ref:`example_repeater`.
2 changes: 1 addition & 1 deletion docs/rst/user_manual/configuration.rst
Original file line number Diff line number Diff line change
Expand Up @@ -683,7 +683,7 @@ See `Interface Whitelist <https://fast-dds.docs.eprosima.com/en/latest/fastdds/t
Repeater Participant
--------------------

The optional tag ``repeater`` configures a :ref:`WAN Participant <user_manual_participants_wan>` as a *Repeater* point.
The optional tag ``repeater`` configures a :ref:`WAN <user_manual_participants_wan>` or :ref:`XML <user_manual_participants_xml>` Participant as a *Repeater* point.
This means that this Participant will forward all the information received from its Readers to its Writers.

Check the :ref:`use_case_repeater` use case to see how the ``repeater`` Participant attribute is used.
Expand Down
2 changes: 1 addition & 1 deletion docs/rst/user_manual/participants/wan.rst
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ be located by other remote Participants):
Repeater
--------

This Participant allows a tag ``repeater`` to be used as a :term:`TURN` server.
This Participant allows a tag ``repeater`` to be used as a Repeater server.
Please refer to section :ref:`use_case_repeater` for more information.

WAN Configuration
Expand Down
13 changes: 8 additions & 5 deletions docs/rst/user_manual/participants/xml.rst
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,8 @@ Use case
========

Use this Participant to fully configure a DomainParticipant, its discovery methods, transport options, DDS QoS, etc.
The main use case for this Participant is using **DDS Security**, which requires XML configuration from the user's side.

.. TODO

Add link to security documentation
The main use case for this Participant is using **DDS Security** (see `Security <https://fast-dds.docs.eprosima.com/en/stable/fastdds/security/security.html>`_),
which requires XML configuration from the user's side.

.. warning::

Expand Down Expand Up @@ -77,6 +74,12 @@ Notice that not setting such QoS will not affect the correct functionality of th
</participant>


Repeater
--------

This Participant allows a tag ``repeater`` to be used as a Repeater server.
Please refer to section :ref:`use_case_repeater` for more information.

Configuration Example
=====================

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,6 @@ participants:
# This configuration example configures a DDS Router to listen to every message published in two different domains
# and transmit those messages through the other domain.

# 0: Use YAML configuration version v5.0

# 1: Allow DDS Topic Name <HelloWorldTopic> with type <HelloWorld>.

# 2: Insert new topics in order to route to them.
Expand Down
Loading