eprintid: 4743 rev_number: 8 eprint_status: archive userid: 408 dir: disk0/00/00/47/43 datestamp: 2022-08-22 03:57:22 lastmod: 2022-08-22 03:57:22 status_changed: 2022-08-22 03:57:22 type: article metadata_visibility: show creators_name: Pham, Manh Linh creators_name: Le, Nguyen Tuan Thanh creators_name: Nguyen, Xuan Truong creators_id: linhmp@vnu.edu.vn creators_id: thanhlnt@tlu.edu.vn creators_id: nguyenxuantruong@hpu2.edu.vn title: Multi-level just-enough elasticity for MQTT brokers of Internet of Things applications ispublished: pub subjects: IT subjects: Scopus subjects: isi divisions: FIMO divisions: fac_fit keywords: Elasticity MQTT broker Internet of Things Cloud computing Smart homes abstract: Applications for the Internet of Things (IoT) are rapidly having an impact on all areas of daily life. Every day, its embedded devices generate loads of data that requires efficient network infrastructure. The integration of lightweight communication protocols such as Message Queuing Telemetry Transport (MQTT) is to send millions of IoT messages back and forth with as few errors as possible. In practice, IoT big data analytic systems are often deployed with highly regarded MQTT solutions to handle huge amounts of dynamic data and achieve scalability. However, these solutions do not adapt well to fluctuations in workload, so they are not elastic yet. This article introduces a novel framework that provides just-enough elasticity for MQTT brokers with multiple levels of virtualization and its implementation using EMQX MQTT broker, Kubernetes container-orchestration system and OpenStack cloud environment. Various experiments based on a real life IoT application are conducted to validate our proposed framework and its elastic functionality. date: 2022-06-06 date_type: published publisher: Springer Nature official_url: https://link.springer.com/article/10.1007/s10586-022-03636-w id_number: 10.1007/s10586-022-03636-w contact_email: linhmp@vnu.edu.vn full_text_status: public publication: Cluster Computing refereed: TRUE issn: 1573-7543 referencetext: Sharma, N., Panwar, D.: 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, pp. 1127–1132 (2020) Turner, V., Reinsel, D., Gantz, J.F., Minton, S.: The Digital Universe of Opportunities: Rich Data and the Increasing Value of the Internet of Things. IDC Report (2014) Message Queuing Telemetry Transport. http://mqtt.org. Accessed 30 April 2021 Mell, P., Grance, T.: The NIST definition of cloud computing. In: NIST special publication, vol. 800, pp. 145 (2011) Eugster, P.Th., Felber, P.A., Guerraoui, R., Kermarrec, A.: The many faces of publish/subscribe. In: ACM Computing. Survey. 35, 2, 114-131 (2003) EMQX Broker. https://docs.emqx.io/broker/latest/en/. Accessed 30 April 2021 Kawaguchi, R., Bandai, M.: Edge Based MQTT Broker Architecture for Geographical IoT Applications. In: International Conference on Information Networking (ICOIN), Barcelona, Spain, pp. 232-235 (2020) Gupta, V., Khera, S., Turk, N.: MQTT protocol employing IOT based home safety system with ABE encryption. In: Multimedia Tools and Applications (2020) Mukambikeshwari, A. Poojary: Smart Watering System Using MQTT Protocol in IoT. In: Advances in Artificial Intelligence and Data Engineering. Advances in Intelligent Systems and Computing, Vol. 1133. Springer, Singapore (2020) See, Y.C., Ho, E.X.: IoT-Based Fire Safety System Using MQTT Communication Protocol. In: IJIE, Vol. 12(6), pp. 207–215 (2020) Nazir, S., Kaleem, M.: Reliable Image Notifications for Smart Home Security with MQTT. In: International Conference on Information Science and Communication Technology (ICISCT), Karachi, Pakistan, pp. 1–5 (2019) Alqinsi, P., Edward, I.J.M., Ismail, N., Darmalaksana, W.: IoT-Based UPS Monitoring System Using MQTT Protocols. In: 4th International Conference on Wireless and Telematics (ICWT), Nusa Dua, pp. 1–5 (2018) Comparison of MQTT Brokers. https://tewarid.github.io/2019/03/21/comparison-of-mqtt-brokers.html. Accessed 30 April 2021 Schmitt, A., Carlier, F., Renault, V.: Data Exchange with the MQTT Protocol: Dynamic Bridge Approach. In: IEEE 89th Vehicular Technology Conference (VTC2019-Spring), Kuala Lumpur, Malaysia, pp. 1–5 (2019) Zambrano A.M.V., Zambrano M.V., Mejía, E.L.O., Calderón X.H.: SIGPRO: A Real-Time Progressive Notification System Using MQTT Bridges and Topic Hierarchy for Rapid Location of Missing Persons. In: IEEE Access, Vol. 8, pp. 149190–149198 (2020) The features that various MQTT servers (brokers) support. https://github.com/mqtt/mqtt.github.io/wiki/server-support. Accessed 30 April 2021 Jutadhamakorn, P., Pillavas, T., Visoottiviseth, V., Takano, R., Haga, J., Kobayashi, D.: A scalable and low-cost MQTT broker clustering system. In: 2nd International Conference on Information Technology (INCIT), Nakhonpathom, pp. 1-5 (2017) Thean, Z. Y., Voon Yap, V., Teh, P. C.: Container-based MQTT Broker Cluster for Edge Computing. In: 4th International Conference and Workshops on Recent Advances and Innovations in Engineering (ICRAIE), Kedah, Malaysia, pp. 1–6 (2019) Detti, A., Funari, L., Blefari-Melazzi, N.: Sub-linear scalability of MQTT clusters in topic-based publish-subscribe applications. IEEE Trans. Network Serv. Manag. 17(3), 1954–1968 (2020) Article Google Scholar Ullah, A., Li, J., Hussain, A.: Design and evaluation of a biologically-inspired cloud elasticity framework. Clust. Comput. 23(4), 3095–3117 (2020) Article Google Scholar Righi, R.R., Correa, E., Gomes, M.M., Costa, C.A.: Enhancing performance of IoT applications with load prediction and cloud elasticity. Future Gener. Comput. Syst. 109, 689–701 (2020) Article Google Scholar Fourati, M. H., Marzouk, S., Drira, K., Jmaiel, M.: DOCKERANALYZER : Towards Fine Grained Resource Elasticity for Microservices-Based Applications Deployed with Docker. In: 20th International Conference on Parallel and Distributed Computing, Applications and Technologies (PDCAT), Gold Coast, Australia, pp. 220–225 (2019) Nardelli, M., Cardellini, V., Casalicchio, E.: Multi-Level Elastic Deployment of Containerized Applications in Geo-Distributed Environments. In: IEEE 6th International Conference on Future Internet of Things and Cloud (FiCloud), Barcelona, pp. 1–8 (2018) Rodrigues, V.F., Wendt, I.G., Righi, R.R., Costa, C.A., Barbosa, J.L.V., Alberti, A.M.: Brokel: Towards enabling multi-level cloud elasticity on publish/subscribe brokers. Int. J. Distrib. Sens. Networks (2017). https://doi.org/10.1177/1550147717728863 Article Google Scholar Vavassori, S., Soriano, J., Fernández, R.: Enabling large-scale IoT-based services through elastic publish/subscribe. Sensors 17, 2148 (2017) Article Google Scholar Yadav, M.P., Yadav, D.K.: Maintaining container sustainability through machine learning. Clust. Comput. 24(4), 3725–3750 (2021) Article Google Scholar Dawoud W., Takouna I., Meinel C.: Elastic Virtual Machine for Fine-Grained Cloud Resource Provisioning. In: Krishna P.V., Babu M.R., Ariwa E. (eds) Global Trends in Computing and Communication Systems. ObCom 2011. Communications in Computer and Information Science, vol 269. Springer, Berlin (2012) Nardelli M., Russo Russo G., Cardellini V., Lo Presti F.: A multi-level elasticity framework for distributed data stream processing. In: Mencagli, G., et al. (Eds.), Euro-Par 2018: Parallel Processing Workshops. Euro-Par 2018. Lecture Notes in Computer Science, Vol. 11339. Springer, Cham (2019) Russo Russo, G., Nardelli, M., Cardellini, V., Lo Presti, F.: Multi-level elasticity for wide-area data streaming systems: a reinforcement learning approach. Algorithms 11(9), 134 (2018) Article Google Scholar Linh Manh Pham, Truong-Thang Nguyen, Tien-Quang Hoang, “Towards an Elastic Fog-Computing Framework for IoT Big Data Analytics Applications”, Wireless Communications and Mobile Computing, vol. 2021, Article ID 3833644, 16 pages, 2021 Roure, D., Goble, C.: Software design for empowering scientists. IEEE Softw. 26(01), 88–95 (2009) Article Google Scholar A distributed, reliable key-value store. https://etcd.io/docs/v3.4.0/. Accessed 30 April 2021 Kubernetes. https://kubernetes.io/. Accessed 30 April 2021 HAProxy. https://www.haproxy.com/solutions/load-balancing/. Accessed 30 April 2021 OpenStack: Open Source Cloud Computing Infrastructure. https://www.openstack.org/. Accessed 30 April 2021 OpenStack Heat. https://docs.openstack.org/heat/latest/. Accessed 30 April 2021 OpenStack Ceilometer. https://docs.openstack.org/ceilo-meter/latest/. Accessed 30 April 2021 OpenStack Aodh. https://docs.openstack.org/aodh/latest/. Accessed 30 April 2021 Gnocchi - Metric as a Service. https://gnocchi.xyz/. Accessed 30 April 2021 RabbitMQ. https://www.rabbitmq.com/. Accessed 30 April 2021 Apache Jmeter. https://jmeter.apache.org/. Accessed 30 April 2021 Pham, L.M., Nguyen, T.T., Tran, M.D.: A benchmarking tool for elastic MQTT brokers in IoT applications. Int. J. Inf. Commun. Sci. 4(4), 59–67 (2019) Google Scholar Prometheus. https://prometheus.io/. Accessed 30 April 2021 Grafana. https://grafana.com/. Accessed 30 April 2021 citation: Pham, Manh Linh and Le, Nguyen Tuan Thanh and Nguyen, Xuan Truong (2022) Multi-level just-enough elasticity for MQTT brokers of Internet of Things applications. Cluster Computing . ISSN 1573-7543 document_url: https://eprints.uet.vnu.edu.vn/eprints/id/eprint/4743/1/clustercomputing2022.pdf