| Peer-Reviewed

A Benchmarking Tool for Elastic MQTT Brokers in IoT Applications

Received: 16 October 2019     Accepted: 13 November 2019     Published: 22 November 2019
Views:       Downloads:
Abstract

Cloud computing is an evolution in IT consumption and delivery which makes available self-management on the Internet with a flexible, pay-as-you-go business model. Within the context of Internet of Things, the MQTT (Message Queuing Telemetry Transport) protocol that is implemented broadly by the applications of “Publish-Subscribe” paradigm has a vital role. However, MQTT brokers are saturated easily if they have to cope with huge and speedy data generated by IoT “chatty” devices. With capability of provisioning/deprovisioning granular virtual resources, Cloud computing empowered MQTT brokers by enabling its elasticity feature. Elasticity helps the brokers deal with a very large variety of data integrated into the IoT every single day. However, there was lack of sturdy benchmarking tools that judge all the aspects of MQTT brokers in order to advocate correct elastic decision-making. This article focuses on the work of benchmarking MQTT by introducing a new developed tool called MQTTBrokerBench. With this tool, users not only can benchmark MQTT brokers but also can specify saturation points where the IoT load makes the brokers be saturated. Those saturation points can be used to set thresholds for elastic decision-making. Furthermore, the article also demonstrates the results acquired by this tool through the experiments on Windows Azure Cloud Platform.

Published in International Journal of Information and Communication Sciences (Volume 4, Issue 4)
DOI 10.11648/j.ijics.20190404.11
Page(s) 59-67
Creative Commons

This is an Open Access article, distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution and reproduction in any medium or format, provided the original work is properly cited.

Copyright

Copyright © The Author(s), 2019. Published by Science Publishing Group

Keywords

Benchmarking, MQTT, Cloud Computing, Internet of Things

References
[1] P. T. Eugster, P. A. Felber, R. Guerraoui and A. M. Kermarrec, The many faces of publish/subscribe, ACM Computing Survey, vol. 35, no. 2, pp. 114-131, Jun. 2003.
[2] MQTT, http://mqtt.org/, visited on June 2019.
[3] I. M. Llorente, Key challenges in Cloud Computing to Enable Future Internet of Things, Keynote speech, Jan 2012. [Online]. Available: http://fr.slideshare.net/llorente/challenges-incloud-computing-to-enable-future-internet-of-things-v03.
[4] Smarter Planet, http://www.ibm.com/smarterplanet/us/en/, visited on June 2019.
[5] Y. Zhao, K. Kim and N. Venkatasubramanian, DYNATOPS: a dynamic topic-based publish/subscribe architecture, ACM DEBS 2013, pp. 75-86.
[6] L. M. Pham and T. T. Nguyen, Flexible deployment of component-based distributed applications on the Cloud and beyond, KSII Transactions on Internet and Information Systems, 13, 3, (2019), 1141-1163.
[7] MQTTBrokerBench, https://github.com/fimocode/mqttbench, visited on June 2019.
[8] Apache JMeter, http://jmeter.apache.org/, visited on June 2019.
[9] CLIF Server, http://clif.ow2.org, visited on June 2019.
[10] Gatling, http://gatling.io, visited on June 2019.
[11] E. Cecchet, V. Udayabhanu, T. Wood and P. Shenoy, BenchLab: An Open Testbed for Realistic Benchmarking of Web Applications, in usENIX WebApps, 2011, pp. 4-4.
[12] MQTT FuseSource, https://github.com/fusesource/mqtt-client, visited on June 2019.
[13] Sysstat, http://sebastien.godard.pagesperso-orange.fr/, visited on June 2019.
[14] Mosquitto, http://mosquitto.org/, visited on June 2019.
[15] L. Durkop, B. Czybik and J. Jasperneite, Performance evaluation of M2M protocols over cellular networks in a lab environment, ICIN, pp. 70, 75, 17-19 Feb. 2015.
[16] D. Thangavel, X. Ma, A. Valera, H. Tan and C.K.-Y. Tan, Performance evaluation of MQTT and CoAP via a common middleware, IEEE ISSNIP, pp. 1, 6, 21-24 April 2014.
[17] A. Giuliani, MQTT benchmarks with RabbitMQ & ActiveMQ, June 2014. [Online]. Available: http://www.ekito.fr/people/mqtt-benchmarks-rabbitmq-activemq/.
[18] Scalagent, Benchmark of MQTT servers, Jan 2015. [Online]. Available: http://www.scalagent.com/IMG/pdf/Benchmark MQTT servers-v1-1.pdf.
[19] SmartBear, MQTT Test Steps, [Online]. Available: https://smartbear.com/plugins/mqtt-teststeps-page/, visited on June 2019.
Cite This Article
  • APA Style

    Linh Manh Pham, Truong-Thang Nguyen, Manh-Dong Tran. (2019). A Benchmarking Tool for Elastic MQTT Brokers in IoT Applications. International Journal of Information and Communication Sciences, 4(4), 59-67. https://doi.org/10.11648/j.ijics.20190404.11

    Copy | Download

    ACS Style

    Linh Manh Pham; Truong-Thang Nguyen; Manh-Dong Tran. A Benchmarking Tool for Elastic MQTT Brokers in IoT Applications. Int. J. Inf. Commun. Sci. 2019, 4(4), 59-67. doi: 10.11648/j.ijics.20190404.11

    Copy | Download

    AMA Style

    Linh Manh Pham, Truong-Thang Nguyen, Manh-Dong Tran. A Benchmarking Tool for Elastic MQTT Brokers in IoT Applications. Int J Inf Commun Sci. 2019;4(4):59-67. doi: 10.11648/j.ijics.20190404.11

    Copy | Download

  • @article{10.11648/j.ijics.20190404.11,
      author = {Linh Manh Pham and Truong-Thang Nguyen and Manh-Dong Tran},
      title = {A Benchmarking Tool for Elastic MQTT Brokers in IoT Applications},
      journal = {International Journal of Information and Communication Sciences},
      volume = {4},
      number = {4},
      pages = {59-67},
      doi = {10.11648/j.ijics.20190404.11},
      url = {https://doi.org/10.11648/j.ijics.20190404.11},
      eprint = {https://article.sciencepublishinggroup.com/pdf/10.11648.j.ijics.20190404.11},
      abstract = {Cloud computing is an evolution in IT consumption and delivery which makes available self-management on the Internet with a flexible, pay-as-you-go business model. Within the context of Internet of Things, the MQTT (Message Queuing Telemetry Transport) protocol that is implemented broadly by the applications of “Publish-Subscribe” paradigm has a vital role. However, MQTT brokers are saturated easily if they have to cope with huge and speedy data generated by IoT “chatty” devices. With capability of provisioning/deprovisioning granular virtual resources, Cloud computing empowered MQTT brokers by enabling its elasticity feature. Elasticity helps the brokers deal with a very large variety of data integrated into the IoT every single day. However, there was lack of sturdy benchmarking tools that judge all the aspects of MQTT brokers in order to advocate correct elastic decision-making. This article focuses on the work of benchmarking MQTT by introducing a new developed tool called MQTTBrokerBench. With this tool, users not only can benchmark MQTT brokers but also can specify saturation points where the IoT load makes the brokers be saturated. Those saturation points can be used to set thresholds for elastic decision-making. Furthermore, the article also demonstrates the results acquired by this tool through the experiments on Windows Azure Cloud Platform.},
     year = {2019}
    }
    

    Copy | Download

  • TY  - JOUR
    T1  - A Benchmarking Tool for Elastic MQTT Brokers in IoT Applications
    AU  - Linh Manh Pham
    AU  - Truong-Thang Nguyen
    AU  - Manh-Dong Tran
    Y1  - 2019/11/22
    PY  - 2019
    N1  - https://doi.org/10.11648/j.ijics.20190404.11
    DO  - 10.11648/j.ijics.20190404.11
    T2  - International Journal of Information and Communication Sciences
    JF  - International Journal of Information and Communication Sciences
    JO  - International Journal of Information and Communication Sciences
    SP  - 59
    EP  - 67
    PB  - Science Publishing Group
    SN  - 2575-1719
    UR  - https://doi.org/10.11648/j.ijics.20190404.11
    AB  - Cloud computing is an evolution in IT consumption and delivery which makes available self-management on the Internet with a flexible, pay-as-you-go business model. Within the context of Internet of Things, the MQTT (Message Queuing Telemetry Transport) protocol that is implemented broadly by the applications of “Publish-Subscribe” paradigm has a vital role. However, MQTT brokers are saturated easily if they have to cope with huge and speedy data generated by IoT “chatty” devices. With capability of provisioning/deprovisioning granular virtual resources, Cloud computing empowered MQTT brokers by enabling its elasticity feature. Elasticity helps the brokers deal with a very large variety of data integrated into the IoT every single day. However, there was lack of sturdy benchmarking tools that judge all the aspects of MQTT brokers in order to advocate correct elastic decision-making. This article focuses on the work of benchmarking MQTT by introducing a new developed tool called MQTTBrokerBench. With this tool, users not only can benchmark MQTT brokers but also can specify saturation points where the IoT load makes the brokers be saturated. Those saturation points can be used to set thresholds for elastic decision-making. Furthermore, the article also demonstrates the results acquired by this tool through the experiments on Windows Azure Cloud Platform.
    VL  - 4
    IS  - 4
    ER  - 

    Copy | Download

Author Information
  • Faculty of Information Technology, VNU University of Engineering and Technology, Vietnam National University, Hanoi, Vietnam

  • Institute of Information Technology, Vietnam Academy of Science and Technology, Hanoi, Vietnam

  • Institute of Information Technology, Vietnam Academy of Science and Technology, Hanoi, Vietnam

  • Sections