Internet of Things: quali protocolli usare

Il mondo dell'Internet of Things è dominato dalle comunicazioni wireless che offrono diverse strategie per instaurare un dialogo fra gli oggetti. Più che strategie, è più giusto dire protocolli: in questo articolo ho il piacere di guidarti in questa scelta, ovvero quali protocolli è più opportuno usare all'interno dell'Internet of Things.

Il mondo dell'IoT l'abbiamo capito: offre non poche soluzioni per mettere in comunicazione gli oggetti fra loro.

E capisco anche che tu possa sentirti spaesato nel capire quale sia il protocollo più opportuno da usare.

Ma prima di cominciare, permettimi di presentarmi: sono Lorenzo Neri: chief education officer di Elettronica Open Source, mi occupo di realizzare contenuti educativi per aiutare persone come te a comprendere meglio questo mondo!

Devo essere sincero però, perché non c'è una risposta: ci sono LE risposte.

Anziché orientarsi al problema, trovo più saggio orientarsi al protocollo: ognuno ha i suoi pro e i suoi contro.

HTTP: il protocollo per la comunicazione client server, ma "pesa"

L'HTTP te la faccio breve: è quel protocollo che ti sta permettendo di leggere questo articolo! 🙂

Ebbene sì: l'HTTP permette di instaurare connessioni client-server come avviene con siti web come questo.

E oltre a farti leggere articoli come questo, ti permette anche di guardare video: ad esempio in uno di questi sul nostro canale YouTube parlo proprio dei protocolli da usare nell'IoT se desideri approfondire!

Questo protocollo, ovvero l'HTTP, è perfetto se il tuo obiettivo è quello per esempio di inviare dati ad un server web dove ad esempio hai un database, una dashboard dove gestire i tuoi dispositivi connessi oppure vuoi integrare un sistema di mailing.

Ma non solo: se si devono coprire distanze lunghe va benissimo.

Per intenderci, se i tuoi oggetti sono a casa tua, ma il server è dall'altra parte del mondo beh diciamo che se ti stai chiedendo quale protocollo usare, l'HTTP è la risposta... C'è un "però".

Come ho detto prima, l'HTTP "pesa". Per come è strutturato, prevede parecchi dati obbligatori che vanno a rendere pesante la richiesta (perché il meccanismo dell'HTTP si basa sulle richieste).

Metodo, header, payload, codici, encoding: potrei andare avanti fino a domani, ma sulla documentazione ufficiale trovi tutto.

 

Se l'HTTP va bene per comunicare con i server, è fin troppo eccessivo per eseguire comunicazioni "locali", o comunque machine to machine.

 

Infatti, cerchiamo di capire quali altri protocolli possiamo sfruttare.

MQTT: fra i protocolli da usare è il meno "esoso"

L'MQTT è il meno esoso di tutti per alcuni motivi che possono essere inaspettati.

Il "Message Queue Telemetry Transport" è un protocollo leggero poiché i suoi messaggi a differenza di quanto succede con l'HTTP, richiedono poche informazioni: il topic e il contenuto del messaggio stesso.

Come spiegato in un video dove approfondisco questo protocollo l'MQTT ha tre attori: il publisher, il subscriber e il broker.

Ma i messaggi scambiati fra di essi contengono molto banalmente il topic e il messaggio stesso che è stato inviato nella rete.

Fine.

Niente di più niente di meno: se ti stai chiedendo quale fra i tanti protocolli a disposizione usare, l'MQTT è molto leggero e come spiego in Making IoT è anche "alquanto open source" 😉

 

... Ma ovviamente ha i suoi contro:

 

L'MQTT funziona se hai a disposizione una rete Wi-Fi: non è necessaria connessione ad internet ma senza indirizzi IP non s'ha da fare.

 

Cerchiamo di capire cosa ci resta allora.

Bluetooth Low Energy: lui è il top se le distanze sono "ridotte"

Il Bluetooth Low Energynoto meglio come BLE, è il "top" per alcuni punti interessanti.

Il primo di tutti: rispetto al Bluetooth tradizionale, seppur le connessioni sono più "complicate" da instaurare del Bluetooth tradizionale, consuma veramente POCO.

Il BLE è ottimo se vuoi offrire un'autonomia parecchio lunga ai tuoi dispositivi.

Rispetto agli altri due protocolli di comunicazione è molto, ma molto meno esoso in termini di consumi energetici.

Tuttavia, un piccolo grande contro ce l'ha.

 

Il BLE non richiede accessi a reti basate su TCP/IP, consuma molto meno rispetto ai suoi due avversari, ma non va bene su distanze lunghe: oltre il centinaio di metri.

 

... Sì purtroppo le connessioni BLE per quanto certi dispositivi abbiano antenne potenti, non sono affatto stabili per distanze lunghe.

... Ma concludiamo assieme con il più discutibile fra i protocolli di comunicazione da usare per l'IoT.

Esistono protocolli da usare nell'IoT con i cavi? Certamente, ma...

Abbiamo a disposizione pressoché tutti i protocolli di comunicazione via cavo esistenti: possiamo fare ciò che ci pare.

Ethernet, coassiale, il qualunque... Ma se i tuoi progetti richiedono mobilità, miniaturizzazione, possibilità di trasferire gli oggetti stessi...

 

Avere dei cavi per instaurare la comunicazione fra oggetti connessi, in generale in un progetto IoT è più una complicazione che una vantaggio.

 

Certo, il vantaggio è avere comunicazioni più sicure, stabili e rapide, ma avere dei cavi intralcia parecchio.

Scarica subito una copia gratis

Scrivi un commento

Seguici anche sul tuo Social Network preferito!

Send this to a friend