MQTT versus Coap – and the winner is ….

Keiner von beiden. Beide Protokolle haben Vor – und Nachteile und man muss den jeweiligen Anwendungsfall mit einbeziehen. Ergänzend sind in manchen Netz-Strukturen aus sicherheitsgründen auch nicht alle Protokolle erlaubt. Was unbestritten ist und auch die Grafik zu den Beiträgen vermitteln darf: das MQTT Protokoll hat eine wesentlich größere Verbreitung als Coap.

Aus Sicht der Knoten Übertragungs- und Energie Effizienz spricht einiges für Coap.

Die Unterschiede als Erinnerung im Vergleich im Vergleich:

MQTT:

Quelle: https://www.pickdata.net/news/mqtt-vs-coap-best-iot-protocol

Coap:

und im Vergleich und nach einigen Tests und Simulationen im Rahmen einer Master Thesis an der FH OST:

Bei einem JSON Format sieht man nur geringe Unterschiede zwischen den beiden Protokollen, speziell wenn man die umgerechnet Transferrate betrachtet. Wichtig dabei ist die max. Füllung der JSON Payload: 

Auszug aus der Master Thesis Arbeit von Simon Fink, mit freundlicher Genehmigung.

Wenn eine weitere Optimierung zu Gunsten der „Lesbarkeit“ vorgenommen wird, also auf Binär-Kodierung umgestellt wird, ergibt sich noch einmal eine bessere Übertragungsrate. Die Datenrate Effizienz wird hier noch einmal deutlich erhöht.

Auszug aus der Master Thesis Arbeit von Simon Fink, mit freundlicher Genehmigung.

Die Untersuchungen die angestellt wurden ergeben ein differenziertes Bild:

  • reine Protokoll Betrachtungen ergeben hier keinen klaren Gewinner
  • Beide Protokolle sind aber im Vergleich zu anderen gängigen Protokollen deutlich effizienter
  • Viel ausschlaggebender als die reine Protokoll Betrachtung (bei diesen beiden Vertretern) sind folgende Mechanismen:
    • Payload Optimierung durch auffüllen auf Min. Frame Load, also dem auffüllen auf einen (fast) vollen Transfer Frame (z.B. Ethernet MTU: 1500 Byte)
    • Zusätzlich Kodierung umstellen auf Binär und eventuell Compressed

Bevor aber hier der ganze Aufwand betrieben wird sollte man sich ausführlich mit dern Anwendung auseinandersetzen und hier im Vorfeld Min. / Max. Notwendigkeiten analysieren.

Diesen Beitrag teilen

Share on facebook
Share on twitter
Share on linkedin

Weitere Beiträge

LoRaWAN Modul LT22222

Universlles Ein- / Ausgabe Modul mit einem sehr vielfältigen Einsatzspektrum. Durch die LoRaWAN® Funkschnittstelle werden sehr große Funk-Reichweiten erzielt. Die SW Integrationsmöglichkeiten sind vielfältig und müssen jeweils vorab geklärt werden.

RISC-V – mit Open Source gegen Arm & Co?

Über viele Jahrzehnte und da im Besonderen in den Anfangsjahren des Prozessor Design gab es die klassische Unterscheidung in CISC und RISC CPUs. CISC steht für Complex Instruction Set Computer,

Kontakt aufnehmen