EMMA: Distributed QoS-Aware MQTT Middleware for Edge Computing Applications

Publish–subscribe middleware is a popular technology for facilitating device-to-device communication in large-scale distributed Internet of Things (IoT) scenarios. However, the stringent quality of service (QoS) requirements imposed by many applications cannot be met by cloud-based solutions alone. Edge computing is considered a key enabler for such applications. Client mobility and dynamic resource availability are prominent challenges in edge computing architectures. In this paper, we present EMMA, an edge-enabled publish–subscribe middleware that addresses these challenges. EMMA continuously monitors network QoS and orchestrates a network of MQTT protocol brokers. It transparently migrates MQTT clients to brokers in close proximity to optimize QoS. Experiments in a real-world testbed show that EMMA can significantly reduce end-to-end latencies that incur from network link usage, even in the face of client mobility and unpredictable resource availability.

[1]  Luís E. T. Rodrigues,et al.  Scalable QoS-Based Event Routing in Publish-Subscribe Systems , 2005, Fourth IEEE International Symposium on Network Computing and Applications.

[2]  Mahadev Satyanarayanan,et al.  The Emergence of Edge Computing , 2017, Computer.

[3]  Paolo Bellavista,et al.  Quality of Service in Wide Scale Publish—Subscribe Systems , 2014, IEEE Communications Surveys & Tutorials.

[4]  Jörg Kienzle,et al.  Dynamoth: A Scalable Pub/Sub Middleware for Latency-Constrained Applications in the Cloud , 2015, 2015 IEEE 35th International Conference on Distributed Computing Systems.

[5]  Anne-Marie Kermarrec,et al.  The many faces of publish/subscribe , 2003, CSUR.

[6]  Kyoungho An,et al.  An Autonomous and Dynamic Coordination and Discovery Service for Wide-Area Peer-to-peer Publish/Subscribe: Experience Paper , 2017, DEBS.

[7]  Vlado Handziski,et al.  Meeting IoT platform requirements with open pub/sub solutions , 2016, Annals of Telecommunications.

[8]  Schahram Dustdar,et al.  A Serverless Real-Time Data Analytics Platform for Edge Computing , 2017, IEEE Internet Computing.

[9]  Pietro Manzoni,et al.  Handling mobility in IoT applications using the MQTT protocol , 2015, 2015 Internet Technologies and Applications (ITA).

[10]  Volker Turau,et al.  Scalable Routing for Topic-Based Publish/Subscribe Systems Under Fluctuations , 2017, 2017 IEEE 37th International Conference on Distributed Computing Systems (ICDCS).

[11]  Bechir Hamdaoui,et al.  FogMQ: A Message Broker System for Enabling Distributed, Internet-Scale IoT Applications over Heterogeneous Cloud Platforms , 2016, ArXiv.

[12]  Soumya Simanta,et al.  Tactical Cloudlets: Moving Cloud Computing to the Edge , 2014, 2014 IEEE Military Communications Conference.

[13]  Weisong Shi,et al.  The Promise of Edge Computing , 2016, Computer.

[14]  Mohsen Guizani,et al.  Internet of Things: A Survey on Enabling Technologies, Protocols, and Applications , 2015, IEEE Communications Surveys & Tutorials.

[15]  Karsten Schwan,et al.  Opportunistic Overlays: Efficient Content Delivery in Mobile Ad Hoc Networks , 2005, Middleware.

[16]  Volker Turau,et al.  A self-stabilizing publish/subscribe middleware for wireless sensor networks , 2015, 2015 International Conference and Workshops on Networked Systems (NetSys).

[17]  Teruo Higashino,et al.  Edge-centric Computing: Vision and Challenges , 2015, CCRV.

[18]  Fan Ye,et al.  Efficacy of techniques for responsiveness in a wide-area publish/subscribe system , 2010, Middleware Industrial Track '10.

[19]  Guoliang Xue,et al.  An Approach to QoS-based Task Distribution in Edge Computing Networks for IoT Applications , 2017, 2017 IEEE International Conference on Edge Computing (EDGE).