At the heart of an IoT distributed infrastructure lie communication protocols. Literature presents various communication models and message patterns tailored to different use cases. Among these, the Publish/Subscribe (Pub/Sub) message model stands out as widely utilized, with several publicly available protocols. Zenoh, a recently emerged protocol, adopts a Pub/Sub topic-based paradigm unifying also the Request/Response model. It employs a fully decentralized architecture, ensuring fault tolerance and eliminating the necessity for a central broker. It also supports geo-distributed storage and query capabilities, harmonizing data in motion, in use, and at rest, but it currently lacks location-awareness capabilities. Zenoh is not able to perform subscriptions based on both the data and the location where these data originate. To address the challenge of associating sensed data with their respective sensing locations for both stationary and moving sources, ensuring independence between the two aspects, we design and implement a location-aware variant of Zenoh. This involves introducing a unique key within the topic structure for conveying geographic encoded data. We introduce a location matching component decoupling the matching process and managing location data externally. This lets us just inject location-based matching results in Zenoh’s core and we do not need to make changes in the protocol logic nor in the routing process, guaranteeing performance and functionality of the original version. This solution allows us to pilot message routing managing complex geographical shapes and coordinates, defining location matching rules independently of the rest of the topic. Our approach enables the implementation of three encoding techniques, each of them with a distinct tradeoff between performance and expressiveness in describing geographical data. Our location-aware version of Zenoh demonstrates to create a logical partition of the network according to geographical zones, filtering unnecessary messages, enhancing performance, and reducing latency by more than 50%. In addition, we provide an encoding technique that performs 40% better than the others, making it suitable for congested, slow, and resource-constrained networks.

Al centro di un’infrastruttura IoT si trovano i protocolli di comunicazione. Tra i vari proposti in letteratura, il modello Publish/Subscribe (Pub/Sub) è il più diffuso, con diverse implementazioni documentate. Zenoh, un protocollo recentemente emerso, adotta il paradigma Pub/Sub implementando anche il modello Request/Response, supportando architetture decentralizzate, assicurando la tolleranza agli errori e eliminando la necessità di un broker o server. Inoltre, offre il supporto a storage distribuiti e la capacità di eseguire query, integrando la produzione, la memorizzazione, l’utilizzo e la richiesta dei dati, ma attualmente non implementa meccanismi location-aware, ovvero non è in grado di effettuare sottoscrizioni basate sia sui dati che sulla posizione di origine degli stessi. Per affrontare il problema di associare i dati rilevati da sensori alle rispettive posizioni di rilevamento sia per le fonti stazionarie che in movimento, garantendo l’indipendenza tra i due aspetti, abbiamo progettato e implementato una variante location-aware di Zenoh. Abbiamo introdotto una chiave all’interno del topic contenente i dati geografici codificati. Abbiamo introdotto un componente di match per i dati geografici che disaccoppia il processo di matching gestendoli esternamente. Ciò ci consente di iniettare solo i risultati del match geografico nel core di Zenoh senza apportare modifiche alla logica del protocollo né al processo di routing, garantendo le prestazioni e le funzionalità della versione originale. Questa soluzione ci permette di manipolare il routing dei messaggi gestendo coordinate geografiche e forme geografiche complesse, definendo regole di matching della posizione indipendentemente dal resto del topic. Il nostro approccio ci ha consentito l’implementazione di tre tecniche di codifica, ciascuna un compromesso tra prestazioni ed espressività nella descrizione dei dati geografici. La soluzione è efficace nel suddividere logicamente la rete in base alle zone geografiche, filtrando i messaggi, migliorando le prestazioni e riducendo la latenza di oltre il 50%. Inoltre, forniamo una tecnica di codifica che, rispetto alle altre, dimostra prestazioni superiori del 40%, rendendola adatta per reti congestionate, lente e con risorse limitate.

Enabling location-aware operation in decentralized IoT communications

Visotto, Matteo
2022/2023

Abstract

At the heart of an IoT distributed infrastructure lie communication protocols. Literature presents various communication models and message patterns tailored to different use cases. Among these, the Publish/Subscribe (Pub/Sub) message model stands out as widely utilized, with several publicly available protocols. Zenoh, a recently emerged protocol, adopts a Pub/Sub topic-based paradigm unifying also the Request/Response model. It employs a fully decentralized architecture, ensuring fault tolerance and eliminating the necessity for a central broker. It also supports geo-distributed storage and query capabilities, harmonizing data in motion, in use, and at rest, but it currently lacks location-awareness capabilities. Zenoh is not able to perform subscriptions based on both the data and the location where these data originate. To address the challenge of associating sensed data with their respective sensing locations for both stationary and moving sources, ensuring independence between the two aspects, we design and implement a location-aware variant of Zenoh. This involves introducing a unique key within the topic structure for conveying geographic encoded data. We introduce a location matching component decoupling the matching process and managing location data externally. This lets us just inject location-based matching results in Zenoh’s core and we do not need to make changes in the protocol logic nor in the routing process, guaranteeing performance and functionality of the original version. This solution allows us to pilot message routing managing complex geographical shapes and coordinates, defining location matching rules independently of the rest of the topic. Our approach enables the implementation of three encoding techniques, each of them with a distinct tradeoff between performance and expressiveness in describing geographical data. Our location-aware version of Zenoh demonstrates to create a logical partition of the network according to geographical zones, filtering unnecessary messages, enhancing performance, and reducing latency by more than 50%. In addition, we provide an encoding technique that performs 40% better than the others, making it suitable for congested, slow, and resource-constrained networks.
ING - Scuola di Ingegneria Industriale e dell'Informazione
9-apr-2024
2022/2023
Al centro di un’infrastruttura IoT si trovano i protocolli di comunicazione. Tra i vari proposti in letteratura, il modello Publish/Subscribe (Pub/Sub) è il più diffuso, con diverse implementazioni documentate. Zenoh, un protocollo recentemente emerso, adotta il paradigma Pub/Sub implementando anche il modello Request/Response, supportando architetture decentralizzate, assicurando la tolleranza agli errori e eliminando la necessità di un broker o server. Inoltre, offre il supporto a storage distribuiti e la capacità di eseguire query, integrando la produzione, la memorizzazione, l’utilizzo e la richiesta dei dati, ma attualmente non implementa meccanismi location-aware, ovvero non è in grado di effettuare sottoscrizioni basate sia sui dati che sulla posizione di origine degli stessi. Per affrontare il problema di associare i dati rilevati da sensori alle rispettive posizioni di rilevamento sia per le fonti stazionarie che in movimento, garantendo l’indipendenza tra i due aspetti, abbiamo progettato e implementato una variante location-aware di Zenoh. Abbiamo introdotto una chiave all’interno del topic contenente i dati geografici codificati. Abbiamo introdotto un componente di match per i dati geografici che disaccoppia il processo di matching gestendoli esternamente. Ciò ci consente di iniettare solo i risultati del match geografico nel core di Zenoh senza apportare modifiche alla logica del protocollo né al processo di routing, garantendo le prestazioni e le funzionalità della versione originale. Questa soluzione ci permette di manipolare il routing dei messaggi gestendo coordinate geografiche e forme geografiche complesse, definendo regole di matching della posizione indipendentemente dal resto del topic. Il nostro approccio ci ha consentito l’implementazione di tre tecniche di codifica, ciascuna un compromesso tra prestazioni ed espressività nella descrizione dei dati geografici. La soluzione è efficace nel suddividere logicamente la rete in base alle zone geografiche, filtrando i messaggi, migliorando le prestazioni e riducendo la latenza di oltre il 50%. Inoltre, forniamo una tecnica di codifica che, rispetto alle altre, dimostra prestazioni superiori del 40%, rendendola adatta per reti congestionate, lente e con risorse limitate.
File allegati
File Dimensione Formato  
2024_04_Visotto_ExecutiveSummary.pdf

accessibile in internet per tutti

Descrizione: Executive Summary
Dimensione 531.64 kB
Formato Adobe PDF
531.64 kB Adobe PDF Visualizza/Apri
2024_04_Visotto.pdf

accessibile in internet per tutti

Descrizione: Manoscritto principale
Dimensione 2.12 MB
Formato Adobe PDF
2.12 MB Adobe PDF Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/217695