Skip to content

Issues with using Zenoh_bridge_dds to route data between domains #2058

Closed as not planned
@stevemcnamaraultra

Description

@stevemcnamaraultra

In the FAQ in states:

Question: How to communicate between DDS-domains?
Answer: Cyclone DDS relies on Zenoh for that

We have a need to route data from our system between two instances over the Internet. Our expectation is that the bridge would perform this function for us.

Upon trying to use the bridge though we have hit across what appear to be limitations of it. Note I say appears here because it is not completely clear if this is issues with our setup or the bridge itself.

  1. The bridge does not route disposed or unregistered events. These are marked as not valid data in the data reader and the bridge ignores them. It only routes valid data. This causes issues with us trying to delete information within our system.
  2. The bridge does not appear to implement DDS liveliness handling. A participant disappearing at one end does not cause an equivalent liveliness lost event at the other end of the link. This breaks consistency in our system as one system has information that should have been removed.

We are using the latest versions of Zenoh_bridge_dds and CycloneDDS both built by ourselves, all running on the same Ubuntu 22.04 instance. Our test setup is:

  • DDS participants and Zenoh_bridge_dds in peer mode on domain 26
  • DDS participants and Zenoh_bridge_dds in peer mode on domain 30
  • Zenohd running

(Apologies for this information being a bit terse. I can add more detail if relevant)

I am hoping that we might be able to get some feedback around what the current limitations of the bridge are. Is what we are observing about its functionality correct or have we misunderstood something?

We would be happy to support extending the bridge if that would be useful though guidance about appropriate directions to go in could be useful so as to not disturb existing usages.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions