How Can We Help?
Guida per principianti al protocollo MQTT
Che cos’è MQTT?
MQTT è un protocollo di trasferimento dati Machine-to-Machine (M2M) che consente ai sistemi SCADA di accedere ai dati IIoT. È considerato uno dei principali protocolli di messaggistica per l’Industrial Internet of Things (IIoT).
MQTT è un protocollo di messaggistica, cioè è stato progettato per trasferire messaggi e utilizza un modello publish and subscribe.
Come funziona MQTT?
MQTT è un protocollo publish/subscribe che consente ai dispositivi edge-of-network di pubblicare a un broker. I client si collegano a questo broker, che media la comunicazione tra i due dispositivi. … Quando un altro client pubblica un messaggio su un argomento sottoscritto, il broker inoltra il messaggio a tutti i client che si sono iscritti.
Termine | Spiegazione |
Diagramma
|
---|---|---|
Cliente | Un programma o un dispositivo che utilizza MQTT. Cliente:
|
|
Server (Broker) | Un programma o un dispositivo che funge da intermediario tra i client che pubblicano i messaggi di applicazione e i client che hanno effettuato le sottoscrizioni. Server:
|
|
Connessione | Connette il client al server. Fornisce i mezzi per inviare un flusso di byte ordinato, senza perdite, in entrambe le direzioni. | |
Sessione | Un’interazione di stato tra un client e un server. Alcune sessioni durano solo quanto la connessione di rete, mentre altre possono estendersi su più connessioni di rete consecutive tra un client e un server. |
|
Sottoscrizione | La sottoscrizione comprende un filtro per argomenti e una QoS massima. Una sottoscrizione è associata a una singola sessione. Una sessione può contenere più di una sottoscrizione. Ogni Sottoscrizione all’interno di una Sessione ha un Filtro argomento diverso. | |
Filtro argomento | Espressione contenuta in una Sottoscrizione per indicare l’interesse per uno o più argomenti. Un filtro argomento può includere caratteri jolly. | |
Nome dell’argomento | L’etichetta allegata a un Messaggio applicativo che viene confrontata con le Sottoscrizioni note al Server. | |
Messaggio applicativo | I dati trasportati dal protocollo MQTT attraverso la rete per l’applicazione. Quando un Messaggio di applicazione viene trasportato da MQTT, contiene:
|
|
Messaggio di volontà | Un messaggio applicativo che viene pubblicato dal server dopo l’interruzione della connessione di rete. | |
QoS 0 | Consegna al massimo una volta Il messaggio viene consegnato in base alle capacità della rete sottostante. Il server non invia alcuna risposta e il client non esegue alcun tentativo. Il messaggio arriva al Server una sola volta o non arriva affatto. |
|
QoS 1 | Almeno una volta Un pacchetto PUBLISH QoS 1 inviato dal Client viene riconosciuto da un pacchetto PUBACK inviato dal Server. Il messaggio arriva al Server una o più volte. |
|
QoS 2 | Consegna esattamente una volta Il pacchetto PUBLISH del server conferma la ricezione con un processo di conferma in due fasi. Da utilizzare quando non sono accettabili né la perdita né la duplicazione dei messaggi. L’overhead associato a QoS 2 è maggiore. |