Abstract
As IoT devices become more powerful they can also become full participants of Internet architectures. For example, they can consume and provide RESTful services. However, the typical network infrastructures do not support the architecture and middleware solutions used in the cloud-based Internet. We show how systems designed with RESTful architecture can be implemented by using an IoT-specific technology called MQTT. Our example case is an application development and deployment system that can be used for remote management of IoT devices.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Ahmadighohandizi, F., Systä, K.: Application development and deployment for IoT devices. In: CLIoT 2016: The 4th Workshop on CLoud for IoT (2016)
Atachiants, R.: Stock explorer: using pub/sub for request/response (2016). https://www.codeproject.com/Articles/1159256/Stock-Explorer-Using-Pub-Sub-for-Request-Response. Accessed 03 Feb 2017
Bellavista, P., Zanni, A.: Towards better scalability for IoT-cloud interactions via combined exploitation of MQTT and COAP. In: 2016 IEEE 2nd International Forum on Research and Technologies for Society and Industry Leveraging a Better Tomorrow (RTSI), pp. 1–6. IEEE (2016)
Chen, H.W., Lin, F.J.: Converging MQTT resources in ETSI standards based M2M platform. In: 2014 IEEE International Conference on Internet of Things (iThings), and Green Computing and Communications (GreenCom) and IEEE Cyber, Physical and Social Computing (CPSCom), pp. 292–295. IEEE (2014)
Collina, M., Corazza, G.E., Vanelli-Coralli, A.: Introducing the QEST broker: scaling the IoT by bridging MQTT and REST. In: 2012 IEEE 23rd International Symposium on Personal, Indoor and Mobile Radio Communications (PIMRC), pp. 36–41. IEEE (2012)
Cugola, G., Migliavacca, M., Monguzzi, A.: On adding replies to publish-subscribe. In: Proceedings of the 2007 Inaugural International Conference on Distributed Event-Based Systems, pp. 128–138. ACM (2007)
Documentation for Eclipse Kura: MQTT namespace guidelines. https://eclipse.github.io/kura/ref/mqtt-namespace.html#mqtt-request/response-conversations. Accessed 05 Oct 2016
Espinosa-Aranda, J.L., Vallez, N., Sanchez-Bueno, C., Aguado-Araujo, D., Bueno, G., Deniz, O.: Pulga, a tiny open-source MQTT broker for flexible and secure IoT deployments. In: 2015 IEEE Conference on Communications and Network Security (CNS), pp. 690–694. IEEE (2015)
Fielding, R.T.: Architectural styles and the design of network-based software architectures. Ph.D. thesis, University of California, Irvine (2000)
Fremantle, P.: A reference architecture for the internet of things. WSO2 White Paper (2014)
Gunawan, L.A.: Request/response pattern over MQTT (2014). http://www.bitreactive.com/mqtt-request-response/. Accessed 05 Oct 2016
Hill, J.C., Knight, J.C., Crickenberger, A.M., Honhart, R.: Publish and subscribe with reply. Technical rep, DTIC Document (2002)
HIVEMQ: MQTT essentials part 5: MQTT topics & best practices. http://www.hivemq.com/blog/mqtt-essentials-part-5-mqtt-topics-best-practices. Accessed 05 Oct 2016
Hylli, O., Ruokonen, A., Mäkitalo, N., Systä, K.: Orchestrating the Internet of Things dynamically. In: First International Workshop on Mashups of Things and APIs (MoTA) Co-located with MIDDLEWARE 2016 (2016, to appear)
Jaffey, T.: MQTT and CoAP, IoT protocols (2014). https://eclipse.org/community/eclipse_newsletter/2014/february/article2.php. Accessed 03 Feb 2017
Karagiannis, V., Chatzimisios, P., Vazquez-Gallego, F., Alonso-Zarate, J.: A survey on application layer protocols for the Internet of Things. Trans. IoT Cloud Comput. 3(1), 11–17 (2015)
Kuuskeri, J., Turto, T.: On actors and the REST. In: Benatallah, B., Casati, F., Kappel, G., Rossi, G. (eds.) ICWE 2010. LNCS, vol. 6189, pp. 144–157. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-13911-6_10
Mosquitto: Mosquitto - an open source MQTT v3.1/v3.1.1 broker. https://mosquitto.org/. Accessed 05 Oct 2016
MQTT.js: The MQTT client for Node.js and the browser. https://www.npmjs.com/package/mqtt. Accessed 05 Oct 2016
MQTT.org: MQTT. http://mqtt.org/. Accessed 05 Oct 2016
Nicholas, S.: Power profiling: HTTPS long polling vs. MQTT with SSL, on Android (2012). http://stephendnicholas.com/archives/1217. Accessed 05 Oct 2016
Node.js: About node.js. https://nodejs.org/en/about. Accessed 08 Nov 2016
OASIS MQTT Technical Committee: Request/reply message exchange patterns and MQTT version 1.0 working draft 02 (2015). https://www.oasis-open.org/committees/download.php/56280/reqreply-v1%200-wd02.docx. Accessed 05 Oct 2016
Rao, S., Chendanda, D., Deshpande, C., Lakkundi, V.: Implementing LWM2M in constrained IoT devices. In: 2015 IEEE Conference on Wireless Sensors (ICWiSe), pp. 52–57. IEEE (2015)
RodrÃguez-DomÃnguez, C., Benghazi, K., Noguera, M., Garrido, J.L., RodrÃguez, M.L., Ruiz-López, T.: A communication model to integrate the request-response and the publish-subscribe paradigms into ubiquitous systems. Sensors 12(6), 7648–7668 (2012)
Solace Systems: Request/reply (MQTT). http://dev.solacesystems.com/get-started/mqtt-tutorials/request-reply_mqtt/. Accessed 05 Oct 2016
Uehara, M.: A case study on developing cloud of things devices. In: 2015 Ninth International Conference on Complex, Intelligent, and Software Intensive Systems (CISIS), pp. 44–49. IEEE (2015)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG
About this paper
Cite this paper
Luoto, A., Systä, K. (2018). IoT Application Deployment Using Request-Response Pattern with MQTT. In: Garrigós, I., Wimmer, M. (eds) Current Trends in Web Engineering. ICWE 2017. Lecture Notes in Computer Science(), vol 10544. Springer, Cham. https://doi.org/10.1007/978-3-319-74433-9_4
Download citation
DOI: https://doi.org/10.1007/978-3-319-74433-9_4
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-74432-2
Online ISBN: 978-3-319-74433-9
eBook Packages: Computer ScienceComputer Science (R0)