MQTTlibreria principale - Gratuito RTOS

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

MQTTlibreria principale

Nota

Il contenuto di questa pagina potrebbe non esserlo up-to-date. Consulta la pagina della libreria RTOS Free.org per l'ultimo aggiornamento.

Introduzione

La MQTT libreria principale è un'implementazione client dello standard MQTT(Message Queue Telemetry Transport). Lo MQTT standard fornisce un protocollo di messaggistica di pubblicazione/sottoscrizione (o PubSub) leggero che viene eseguito su TCP /IP e viene spesso utilizzato nei casi d'uso Machine to Machine (M2M) e Internet of Things (IoT).

La MQTT libreria principale è conforme allo standard del protocollo 3.1.1. MQTT Questa libreria è stata ottimizzata per un basso ingombro di memoria. Il design di questa libreria abbraccia diversi casi d'uso, che vanno da piattaforme con risorse limitate che utilizzano solo messaggi QoS MQTT PUBLISH 0 a piattaforme ricche di risorse che utilizzano connessioni QoS 2 over (Transport Layer Security). MQTT PUBLISH TLS La libreria offre un menu di funzioni componibili, che possono essere scelte e combinate per adattarsi con precisione alle esigenze di un particolare caso d'uso.

La libreria è scritta in C e progettata per essere conforme a C90 e C:2012. ISO MISRA Questa MQTT libreria non ha dipendenze da alcuna libreria aggiuntiva ad eccezione delle seguenti:

  • La libreria C standard

  • Un'interfaccia di trasporto di rete implementata dal cliente

  • (Opzionale) Una funzione temporale della piattaforma implementata dall'utente

La libreria è disaccoppiata dai driver di rete sottostanti mediante la fornitura di una semplice specifica dell'interfaccia di trasporto di invio e ricezione. L'autore dell'applicazione può selezionare un'interfaccia di trasporto esistente o implementarne una propria in base alle esigenze dell'applicazione.

La libreria offre uno strumento di alto livello API per connettersi a un MQTT broker, iscriversi/annullare l'iscrizione a un argomento, pubblicare un messaggio su un argomento e ricevere messaggi in arrivo. Questo utilizza API l'interfaccia di trasporto sopra descritta come parametro e la utilizza per inviare e ricevere messaggi da e verso il broker. MQTT

La libreria espone anche un API serializzatore/deserializzatore di basso livello. Questo API può essere usato per creare una semplice applicazione IoT composta solo dal sottoinsieme di MQTT funzionalità richiesto, senza alcun altro sovraccarico. Il serializzatore/deserializzatore API può essere utilizzato insieme a qualsiasi livello di trasporto disponibile, come i socketAPI, per inviare e ricevere messaggi da e verso il broker.

Quando si utilizzano MQTT connessioni in applicazioni IoT, si consiglia di utilizzare un'interfaccia di trasporto sicura, ad esempio un'interfaccia che utilizza il TLS protocollo.

Questa MQTT libreria non ha dipendenze dalla piattaforma, come il threading o la sincronizzazione. Questa libreria dispone di prove che dimostrano l'uso sicuro della memoria e l'assenza di allocazione di heap, il che la rende adatta ai microcontrollori IoT, ma anche completamente portabile su altre piattaforme. Può essere utilizzata liberamente ed è distribuita con licenza open source. MIT

Dimensione del codice del core MQTT (esempio generato con GCC ARM Cortex-M)
File Con ottimizzazione -O1 Con ottimizzazione -Os
core_mqtt.c 4,0K 3,4K
core_mqtt_state.c 1,7 K 1,3 K
core_mqtt_serializer.c 2,8K 2,2 K
Stime totali 8,5 K 6,9K