Linh Manh Pham, Xuan Tung Hoang

Main Article Content

Abstract

Internet of Things (IoT) applications are increasingly making impact in all areas of humanlife. Day by day, its chatty embedded devices have been generating tons of data requiring effectivenetwork infrastructure. To deliver millions of IoT messages back and fort with as few faults aspossible, participation of communication protocols like MQTT is a must. Lightweight blueprintand friendly battery are just two of many advantages of this protocol making it become a dominantin IoT world. In real application scenarios, distributed MQTT solutions are usually required sincecentralized MQTT approach is incapable of dealing with huge amount of data. Although distributedMQTT solutions are scalable, they do not adapt to fluctuations of traffic workload. This might costIoT service provider because of redundant computation resources. This leads to the need of a novelapproach that can adapt its size changes in workload. This article proposes such an elastic solutionby proposing a flexible MQTT framework. Our MQTT framework uses off-the-shelf componentsto obtain server’s elasticity while keeping IoT applications intact. Experiments are conducted tovalidate elasticity function provided by an implementation of our framework.


Keywords


MQTT broker, Elasticity, Internet of Things, Cloud computing


References


[1] Sharma, D. Panwar, Green IoT: Advancements and Sustainability with Environment by 2050, In: 8th International Conference on Reliability, Infocom Technologies and Optimization (Trends and Future Directions) (ICRITO), Noida, India, 2020, pp. 1127-1132.


[2] Turner, D. Reinsel, J. F. Gantz, S. Minton, The Digital Universe of Opportunities: Rich Data and the Increasing Value of the Internet of Things, IDC Report Apr, 2014.


[3] MQ Telemetry Transport, http://mqtt.org/, 2020 (accessed on: October 30th, 2020).


[4] Mell, T. Grance, The NIST Definition of Cloud Computing (Draft), NIST Special Publication, Vol. 800, No. 145, 2011, pp. 1-3.


[5] T. Eugster, P. A. Felber, R. Guerraoui, A. Kermarrec, The many Faces of Publish/subscribe, ACM Comput, Surv, Vol. 35, No. 2, 2003, pp. 114-131.


[6] Kawaguchi, M. Bandai, Edge Based MQTT Broker Architecture for Geographical IoT Applications, 2020 International Conference on Information Networking (ICOIN), Barcelona, Spain, 2020, pp. 232-235.


[7] Gupta, S. Khera, N. Turk, MQTT Protocol Employing IOT Based Home Safety System with ABE Encryption, Multimed Tools Appl, 2020.


[8] Mukambikeshwari, Poojary, Smart Watering System Using MQTT Protocol in IoT, Advances in Artificial Intelligence and Data Engineering, Advances in Intelligent Systems and Computing, Springer, Singapore, 2020.


[9] C. See, E. X. Ho, IoT-Based Fire Safety System Using MQTT Communication Protocol, International Journal of Integrated Engineering, Vol. 12, No. 6, 2020, pp. 207-215.


[10] Nazir, M. Kaleem, Reliable Image Notifications for Smart Home Security with MQTT, International Conference on Information Science and Communication Technology (ICISCT), Karachi, Pakistan, 2019, pp. 1-5.


[11] Alqinsi, I. J. M. Edward, N. Ismail, W. Darmalaksana, IoT-Based UPS Monitoring System Using MQTT Protocols, 4th International Conference on Wireless and Telematics (ICWT), Nusa Dua, 2018, pp. 1-5.


[12] Comparison of MQTT Brokers, https://tewarid.github.io/2019/03/21/comparison-of-mqtt-brokers.html”/, 2020 (accessed on: October 30th, 2020).


[13] Collina, G. E. Corazza, A. Vanelli-Coralli, Introducing the QEST Broker: Scaling the IoT by Bridging MQTT and REST, 2012 IEEE 23rd International Symposium on Personal, Indoor and Mobile Radio Communications-(PIMRC), Sydney, NSW, 2012, pp. 36-41.


[14] Schmitt, F. Carlier, V. Renault, Data Exchange with the MQTT Protocol: Dynamic Bridge Approach, 2019 IEEE 89th Vehicular Technology Conference (VTC2019-Spring), Kuala Lumpur, Malaysia, 2019, pp. 1-5.


[15] M. V. Zambrano, M. V. Zambrano, E. L. O. Mej´ıa, X. H. Calderon, SIGPRO: A Real-Time Progressive Notification System Using MQTT Bridges and Topic Hierarchy for Rapid Location of Missing Persons, in IEEE Access, Vol. 8, 2020, pp. 149190-149198.


[16] The features that Various MQTT Servers (Brokers) Support, https://github.com/mqtt/mqtt.github.io/wiki/server-support”/, 2020 (accessed on: October 30th, 2020).


[17] Jutadhamakorn, T. Pillavas, V. Visoottiviseth, R. Takano, J. Haga, D. Kobayashi, A scalable and Low-cost MQTT Broker Clustering System, 2017 2nd International Conference on Information Technology (INCIT), Nakhonpathom, 2017, pp. 1-5.


[18] Y. Thean, V. V. Yap, P. C. Teh, Container-Based MQTT Broker Cluster for Edge Computing, 2019 4th International Conference and Workshops on Recent Advances and Innovations in Engineering (ICRAIE), Kedah, Malaysia, 2019, pp. 1-6.


[19] Detti, L. Funari, N. Blefari-Melazzi, Sub-Linear Scalability of MQTT Clusters in Topic-Based Publish-Subscribe Applications, in IEEE Transactions on Network and Service Management, Vol. 17, No. 3, 2020, pp. 1954-1968.


[20] R. Righi, E, Correa, M. M. Gomes, C. A. Costa, Enhancing Performance of IoT Applications with Load Prediction and Cloud Elasticity, Future Generation Computer Systems, Vol. 109, 2020, pp. 689-701.


[21] H. Fourati, S. Marzouk, K. Drira, M. Jmaiel, Dockeranalyzer: Towards Fine Grained Resource Elasticity for Microservices-Based Applications Deployed with Docker, 20th International Conference on Parallel and Distributed Computing, Applications and Technologies (PDCAT), Gold Coast, Australia, 2019, pp. 220-225.


[22] Nardelli, V. Cardellini, E. Casalicchio, Multi-Level Elastic Deployment of Containerized Applications in Geo-Distributed Environments, 2018 IEEE 6th International Conference on Future Internet of Things and Cloud (FiCloud), Barcelona, 2018, pp. 1-8.


[23] M. Pham, A Big Data Analytics Framework for IoT Applications in the Cloud, VNU Journal of Science: Computer Science and Communication Engineering, Vol. 31, No. 2, 2015, pp. 44-55.


[24] F. Rodrigues, I. G. Wendt, R. R. Righi, C. A. Costa, J. L. V. Barbosa, A. M. Alberti, Brokel: Towards Enabling Multi-level Cloud Elasticity on Publish/subscribe Brokers, International Journal of Distributed Sensor Networks, Vol. 13, No. 8, 2017, pp. 1-20.


[25] Vavassori, J. Soriano, R. Fernandez, Enabling Large-Scale IoT-Based Services Through Elastic Publish/Subscribe, Sensors, 2017.


[26] A Distributed, Reliable Key-value Store, https://etcd.io/docs/v3.4.0/, 2020 (accessed on: October 30th, 2020).


[27] Roure, C. Goble, Software Design for Empowering Scientists, IEEE Software, Vol. 26, No. 1, 2009, pp. 88-95.


[28] EMQX Broker, https://docs.emqx.io/broker/latest/en/, 2020 (accessed on: October 30th, 2020).


[29] Kubernetes, https://kubernetes.io/, 2020 (accessed on: October 30th, 2020).


[30] HAProxy, https://www.haproxy.com/solutions/load-balancing/, 2020 (accessed on: October 30th, 2020).


[31] OpenStack: Open Source Cloud Computing Infrastructure, https://www.openstack.org/, 2020 (accessed on: October 30th, 2020).


[32] OpenStack Heat, https://docs.openstack.org/heat/latest/, 2020 (accessed on: October 30th, 2020).


[33] OpenStack Ceilometer, https://docs.openstack.org/ceilometer/latest/, 2020 (accessed on: October 30th, 2020).


[34] OpenStack Aodh, https://docs.openstack.org/aodh/latest/, 2020 (accessed on: October 30th, 2020).


[35] Gnocchi - Metric as a Service, https://gnocchi.xyz/, 2020 (accessed on: October 30th, 2020).


[36] RabbitMQ, https://www.rabbitmq.com/, 2020 (accessed on: October 30th, 2020).


[37] Apache Jmeter, https://jmeter.apache.org/, 2020 (accessed on: October 30th, 2020).


[38] M. Pham, T. T. Nguyen, M. D. Tran, A Benchmarking Tool for Elastic MQTT Brokers in IoT Applications, International Journal of Information and Communication Sciencesm, Vol. 4, No. 4, 2019, pp. 59-67.