LAZenoh (Location-Aware Zenoh) is the implementation of an architectural idea to route messages in topic-based protocol using location data as an additional input in source selection.

The main idea is the insertion of encoded location data in a single topic level using a recognizable prefix. This let us to decouple the topic matching process delegating, by means of a boolean interface, location data matching to a custom and external component, injecting the result back into the protocol’s core to produce the final topic matching result.

Our architecture do not modify routing function or data structures but it relies on a real time match with a black-box approach form the protocol’s point of view.

In our architecture multiple location-data encoding methodologies can be implemented and to study different tradeoffs we provide three location-data encoding methods:

  • JSON Object encoded in BASE64

  • MGRS Coordinates

  • Binary probabilistic Bloom filter data structure

We build this release by incorporating our location-library in Zenoh 0.7.2-rc version and building an API wrapper around the original Python API of the same protocol’s version.