Protocolli per dati strutturati e IoT: CoAP e Protocol Buffer (Protobuf)

Pubblicato il : 01/09/2021 14:30:00

L'Internet delle cose, soprattutto in ambito industriale, necessita di protocolli, librerie e modalità di serializzazione dei dati specifici per garantire affidabilità garantendo la durata dei dispositivi che compongono l'IIoT. Le tecnologie e i protocolli utilizzati sono molteplici e vengono scelti in base agli obiettivi che si vogliono raggiungere; l'esperienza di Digimax e dei partner industriali ha per esempio individuato nel protocollo LoRa una soluzione ottimale per coprire distanze inferiori rispetto a NB-IoT. I vantaggi dello standard LoRa sono i costi certi, la scalabilità e la possibilità di dispiegare un network proprietario; NB-IoT garantisce invece autonomia a ciascun nodo della rete e usabilità immediata, sfruttando la rete cellulare ha infatti l’enorme vantaggio di essere praticamente plug and play.

Il protocollo MQTT infine è diventato lo standard di comunicazione per gestire le connessioni tra device (machine to machine).

Il mondo dell'Internet of Things è in continuo sviluppo e miliardi di dispositivi verranno implementati nel prossimo futuro; per questo motivo è importante rimanere aggiornati sulle nuove tecnologie che permettono di ridurre al minimo le dimensioni dei frame di dati da inviare. Vediamo insieme perché CoAP e Protobuf stanno diventati sempre più popolari nelle soluzioni IoT.



Protocolli per dati strutturati e IoT CoAP e Protocol Buffer (Protobuf)



Cos'è CoAP (Constrained Application Protocol) e come viene utilizzato



CoAP è un protocollo aperto e leggero per dispositivi IoT; è simile al linguaggio HTTP ma è stato riprogettato per soddisfare i requisiti dei dispositivi alimentati a batteria con risorse CPU e RAM limitate. CoAP utilizza pacchetti di dati molto piccoli, risulta più semplice rispetto a HTTP e ha un footprint più piccolo (il messaggio CoAP più piccolo è di 4 byte rispetto ai 26 byte del messaggio HTTP). CoAP è progettato per essere facilmente convertito in HTTP per un'integrazione semplificata con il Web, entrambi si basano infatti su un modello client/server: il client invia una richiesta al server e il server restituisce una risposta. CoAP non può utilizzare SSL/TLS per garantire la sicurezza della comunicazione (questo richiede il livello di trasporto TCP). La sicurezza delle comunicazioni è fornita dallo standard Datagram Transport Layer Security (DTLS), che funziona su UDP e fornisce un alto livello di sicurezza.



METTITI IN CONTATTO CON DIGIMAX



Protobuf (Protocol Buffers) libreria multipiattaforma per gestire dati strutturati



I buffer di protocollo (o Protobuf) sono un metodo di serializzazione dei dati che possono essere trasmessi tra microservizi, applicazioni o utilizzati nella comunicazione tra dispositivi IoT e server. I buffer di protocollo hanno la stessa funzione di JSON e XML, ben noti e ampiamente utilizzati, e come quest'ultimi risultano indipendenti dalla lingua e dalla piattaforma. Le differenze chiave tra i tre metodi di serializzazione dei dati risiedono nel fatto che Protobuf è ottimizzato per essere veloce e utilizzare la minor larghezza di banda possibile, riducendo al minimo le dimensioni dei dati trasmessi. I protobuf sono da 3 a 10 volte più piccoli e da 20 a 100 volte più veloci di XML. Ciò rende Protobuf una scelta perfetta per la serializzazione dei dati inviati dai dispositivi IoT alimentati a batteria.

Il formato Protobuf è stato creato da Google nel 2001 e da allora è utilizzato in quasi tutte le comunicazioni machine-machine di Google, oltre che per archiviare e scambiare tutti i tipi di informazioni strutturate. Il formato binario aumenta la velocità di trasmissione dei dati perché il messaggio richiede meno spazio e larghezza di banda della rete, l'unico svantaggio di questo approccio, rispetto a JSON o XML, è che i dati serializzati con Protobuf non sono leggibili direttamente. I dati e il contesto sono infatti separati: il contesto è definito nei file di configurazione chiamati file proto e contengono i nomi dei campi insieme ai loro tipi e identificatori mentre i dati contengono identificatore di campo, tipo di campo, lunghezza del valore e valore.

Sensori industriali IoT e protocolli di comunicazione



In che modo Efento utilizza CoAP e Protobuf?



I sensori industriali Efento NB-IoT e LTE-M inviano i dati in formato Protobuf utilizzando il protocollo CoAP. Ciò garantisce trasmissioni veloci e dimensioni ridotte dei dati, il che si traduce in una durata della batteria fino a 10 anni. Inoltre, poiché CoAP e Protobuf sono standard diffusi, è facile integrare i sensori wireless Efento con qualsiasi piattaforma cloud o applicazione personalizzata, sviluppando così il proprio progetto di industria smart.



METTITI IN CONTATTO CON DIGIMAX



Ti è piaciuto questo articolo? Condividilo nei tuoi profili social..