IoT/M2M development can be complex due to large number of communication protocols used in today’s industries. There are too many protocols to master for building an end-to-end IoT/M2M solution. MQTT, CoAP and OMA LWM2M (Lightweight M2M) protocols are well adopted in recent development inn M2M fields. These protocols cover the data transportation, application and device management layers requirements.
MQ Telemetry Transport (MQTT) is a lightweight broker-based publish/subscribe messaging protocol designed for low bandwidth or is unreliable network to connect with embedded device with limited processor or memory resources.
CoAP is the Constrained Application Protocol from the CoRE (Constrained Resource Environments) IETF group. Similar to HTTP, CoAP is a document transfer protocol (caop://).
OMA LightweightM2M (LWM2M) is an industry standard for device management of M2M/IoT devices. It heavily relies on CoAP and therefore is optimized for communications over sensor or cellular networks. OMA LWM2M provides an extensible object model that allows to enable application data exchanges in addition to the core device management features (firmware upgrade, connectivity monitoring)