The Use of MQTT in M2M and IoT Systems: A Survey

Nowadays billions of smart devices or things are present in Internet of Things (IoT) environments, such as homes, hospitals, factories, and vehicles, all around the world. As a result, the number of interconnected devices is continuously and rapidly growing. These devices communicate with each other and with other services using various communication protocols for the transportation of sensor or event data. These protocols enable applications to collect, store, process, describe, and analyze data to solve a variety of problems. IoT also aims to provide secure, bi-directional communication between interconnected devices, such as sensors, actuators, microcontrollers or smart appliances, and corresponding cloud services. In this paper we analyze the growth of M2M protocol research (MQTT, AMQP, and CoAP) over the past 20 years, and show how the growth in MQTT research stands out from the rest. We also gather relevant application areas of MQTT, as the most widespread M2M/IoT protocol, by performing a detailed literature search in major digital research archives. Our quantitative evaluation presents some of the important MQTT-related studies published in the past five years, which we compare to discuss the main features, advantages, and limitations of the MQTT protocol. We also propose a taxonomy to compare the properties and features of various MQTT implementations, i.e. brokers and libraries currently available in the public domain to help researchers and end-users to efficiently choose a broker or client library based on their requirements. Finally, we discuss the relevant findings of our comparison and highlight open issues that need further research and attention.

[1]  Jianqing Zhang,et al.  Performance evaluation of Attribute-Based Encryption: Toward data privacy in the IoT , 2014, 2014 IEEE International Conference on Communications (ICC).

[2]  Xavier Masip-Bruin,et al.  A Survey of Communication Protocols for Internet of Things and Related Challenges of Fog and Cloud Computing Integration , 2018, ACM Comput. Surv..

[3]  Antonio Morán,et al.  Communication with resource-constrained devices through MQTT for control education , 2016 .

[4]  Kannan Govindan,et al.  End-to-end service assurance in IoT MQTT-SN , 2015, 2015 12th Annual IEEE Consumer Communications and Networking Conference (CCNC).

[5]  Ngoc-Son Han Semantic service provisioning for 6LoWPAN : powering internet of things applications on Web. (La provision de services sémantiques pour 6LoWPAN : faciliter le développement des applications IoT sur le Web) , 2015 .

[6]  Peter Priller,et al.  Securing smart maintenance services: Hardware-security and TLS for MQTT , 2015, 2015 IEEE 13th International Conference on Industrial Informatics (INDIN).

[7]  P. Balamuralidhar,et al.  Secure MQTT for Internet of Things (IoT) , 2015, 2015 Fifth International Conference on Communication Systems and Network Technologies.

[8]  Ioannis G. Askoxylakis,et al.  Lightweight & secure industrial IoT communications via the MQ telemetry transport protocol , 2017, 2017 IEEE Symposium on Computers and Communications (ISCC).

[9]  Weisong Shi,et al.  Edge Computing: Vision and Challenges , 2016, IEEE Internet of Things Journal.

[10]  Sridhar Radhakrishnan,et al.  Towards SDN-based fog computing: MQTT broker virtualization for effective and reliable delivery , 2016, 2016 8th International Conference on Communication Systems and Networks (COMSNETS).

[11]  Jesus Alonso-Zarate,et al.  A Survey on Application Layer Protocols for the Internet of Things , 2015 .

[12]  Nitin Naik,et al.  Choice of effective messaging protocols for IoT systems: MQTT, CoAP, AMQP and HTTP , 2017, 2017 IEEE International Systems Engineering Symposium (ISSE).

[13]  Gianluca Reali,et al.  Comparison of two lightweight protocols for smartphone-based sensing , 2013, 2013 IEEE 20th Symposium on Communications and Vehicular Technology in the Benelux (SCVT).

[14]  Soma Bandyopadhyay,et al.  Lightweight Internet protocols for web enablement of sensors using constrained gateway devices , 2013, 2013 International Conference on Computing, Networking and Communications (ICNC).

[15]  Kenneth G. Paterson,et al.  Lucky Thirteen: Breaking the TLS and DTLS Record Protocols , 2013, 2013 IEEE Symposium on Security and Privacy.

[16]  Xiaoping Ma,et al.  Performance evaluation of MQTT and CoAP via a common middleware , 2014, 2014 IEEE Ninth International Conference on Intelligent Sensors, Sensor Networks and Information Processing (ISSNIP).

[17]  SucciGiancarlo,et al.  An Empirical Study of Open-Source and Closed-Source Software Products , 2004 .

[18]  S. Narravula,et al.  Design and evaluation of benchmarks for financial applications using Advanced Message Queuing Protocol (AMQP) over InfiniBand , 2008, 2008 Workshop on High Performance Computational Finance.

[19]  Xiaochun Cheng,et al.  Vulnerabilities and Limitations of MQTT Protocol Used between IoT Devices , 2019, Applied Sciences.

[20]  Rajkumar Buyya,et al.  Cloud Computing Principles and Paradigms , 2011 .

[21]  Feng Xia,et al.  Social-Oriented Adaptive Transmission in Opportunistic Internet of Smartphones , 2017, IEEE Transactions on Industrial Informatics.

[22]  Dengguo Feng,et al.  Multiple Handshakes Security of TLS 1.3 Candidates , 2016, 2016 IEEE Symposium on Security and Privacy (SP).

[23]  Satyavrat Wagle,et al.  Semantic data extraction over MQTT for IoTcentric wireless sensor networks , 2016, 2016 International Conference on Internet of Things and Applications (IOTA).

[24]  Tetsuya Yokotani,et al.  Comparison with HTTP and MQTT on required network resources for IoT , 2016, 2016 International Conference on Control, Electronics, Renewable Energy and Communications (ICCEREC).

[25]  Marimuthu Palaniswami,et al.  Internet of Things (IoT): A vision, architectural elements, and future directions , 2012, Future Gener. Comput. Syst..

[26]  Hakima Chaouchi,et al.  Introduction to the Internet of Things , 2013 .

[27]  Juan-Carlos Cano,et al.  A comparative evaluation of AMQP and MQTT protocols over unstable and mobile networks , 2015, 2015 12th Annual IEEE Consumer Communications and Networking Conference (CCNC).