zenoh-plugin-dds icon indicating copy to clipboard operation
zenoh-plugin-dds copied to clipboard

Membership status publication

Open JEnoch opened this issue 2 years ago • 2 comments

The zenoh-bridge-dds are discovering and supervising each other via a Group Management algorithm. This feature is configurable via:

  • --group-member-id <ID>: This option allows to set a custom identifier for the bridge, that will be used in group membership algorithm (if not specified, the zenoh UUID is used).
  • --group-lease <Duration>: The lease duration (in seconds) used in group membership algorithm

I would be useful for the user if the bridge publishes the group events:

  • when a remote bridge joins the group (i.e. it's discovered)
  • when a remote bridge explicitly leaves the group
  • when a remote bridge has its lease expired (i.e. connectivity loss or bridge crash)

JEnoch avatar Oct 14 '21 07:10 JEnoch

Such publication can be made on zenoh, on DDS or on both.

A publication on zenoh has almost no cost if there is no subscriber. I suggest to not make this configurable and to always do the publication on zenoh (key and value to be defined).

On the other hand, a publication on DDS has a cost: the declaration of a DDS Writer that implies discovery messages. Moreover, user might want to configure the DDS topic name to possibly match with the ROS2 design (topic name prefixed with rt/ and possibly an additional namespace). I suggest to make the this configurable via and option:

  • --group-dds-topic-pub <Topic_Name>: The name of the DDS topic on which membership events (join, leave, lease expired) are published. If not set, no publication on DDS is made.

JEnoch avatar Oct 14 '21 08:10 JEnoch

@JEnoch has there been any progress on this aspect?

Mallets avatar Apr 04 '22 08:04 Mallets