A Multi-Tier MQTT Architecture with Multiple Brokers Based on Fog Computing for Securing Industrial IoT
Abstract
:1. Introduction
- 1.
- Propose a scalable MQTT architecture with multi-tier brokers that are based on fog computing.
- 2.
- Present a lightweight mutual authentication scheme that is based on hash function and XOR operation.
- 3.
- Build an authentication manager associated with each broker to conduct the authentication process for that broker and its connected group of clients/brokers independently.
- 1.
- The proposed architecture contributes to handling the massive amount of M2M communication in IIoT by clustering the clients into groups that connect to a single local broker. Further, the architecture will reduce latency, network congestion, and bottlenecks.
- 2.
- The proposed architecture is designed in a hierarchical structure to enable delivering the requested data to the MQTT client from other brokers that the client is not connected to.
- 3.
- Implementing a lightweight mutual authentication scheme using hash function and XOR operation is more feasible for resource-constrained IoT devices to mitigate computation costs and communication overhead.
- 4.
- Deploying an authentication manager in each broker will allow the management of security independently for the broker and its group of connected clients/brokers. This will reduce the possibility of security threats and decrease the complexity of security management.
2. Background and Related Works
2.1. Message Queue Telemetry Transport (MQTT)
2.2. Related Works
3. The Proposed Fog-Based MQTT Architecture with an Authentication Scheme
3.1. Multi-Tier MQTT Broker Based on Fog Computing (Mu-TiMB)
3.1.1. Broker Bridging
3.1.2. Communication Scenarios
- After successfully connecting to LB1 by P1 and S1, P1 publishes a topic name (TN1) “CB/AB1/LB1/temperature” to LB1.
- To publish the topic TN1 to the corresponding upper-layer brokers, LB1 acts as an MQTT client, connects to AB1, and publishes TN1 to AB1.
- Then, AB1 acts as an MQTT client, connects to CB, and publishes TN1 to CB.
- S1 sends the SUBSCRIBE message asking to subscribe to TN1 “CB/AB1/LB1/temperature” from LB1.
- In this case, LB1, which received the subscribe request, matches with LB1, which is involved in TN1 because TN1 was published by P1 to the same LB1 where S1 is connected. Thus, LB1 publishes TN1 to S1.
- After a successful connection from P1 to LB1 and from S2 to LB2, P1 publishes the topic name (TN1) “CB/AB1/LB1/temperature” to LB1.
- To publish the topic TN1 to the corresponding upper-layer brokers, LB1 acts as an MQTT client, connects to AB1, and publishes TN1 to AB1.
- Then, AB1 acts as an MQTT client, connects to CB, and publishes TN1 to CB.
- S2 sends the SUBSCRIBE message to LB2 asking to subscribe to the topic TN1 “CB/AB1/LB1/temperature”. Since TN1 is published to LB1 by P1, the requested topic TN1 is not found in LB2 because the identifier of LB1 involved in TN1 is not identical to the identifier of the LB2 that received the SUBSCRIBE request.
- To subscribe to TN1 from AB1, LB2 acts as an MQTT client, connects to AB1, and send the SUBSCRIBE request to AB1.
- In this case, the identifier of AB1 who received the request is identical to the AB1 that is involved in TN1. Thus, AB1 publishes TN1 to LB2 where S2 is connected.
- LB2 publishes TN1 to S2.
- After the successful connection from P1 to LB1 and from S5 to LB4, P1 publishes the topic name (TN1) “CB/AB1/LB1/temperature” to LB1.
- To publish the topic TN1 to the corresponding upper-layer brokers, LB1 acts as an MQTT client, connects to AB1, and publishes TN1 to AB1.
- Then, AB1 acts as an MQTT client, connects to CB, and publishes TN1 to CB.
- When S5 sends the SUBSCRIBE message to LB4 asking to subscribe to the topic (TN1) “CB/AB1/LB1/temperature”, the requested topic is not found in LB4 because it is published to LB1 by P1. In this case, the identifier of LB1 involved in TN1 is not matched with the identifier of LB4, which received the SUBSCRIBE request.
- Therefore, LB4 acts as an MQTT client, connects to AB2, and sends the SUBSCRIBE request asking to subscribe to TN1 from AB2. In this case, the broker AB2, which received the request, is not identical to AB1, which is involved in TN1.
- As a result, AB2 acts as an MQTT client, connects to CB, and subscribes to the topic TN1 from CB.
- CB publishes the topic TN1 to AB2.
- Then, TN1 is published from AB2 to LB4.
- Finally, LB4 delivers TN1 to S5.
3.2. Authentication System
3.2.1. Authentication Architecture
3.2.2. Lightweight Authentication Scheme
- Registration Phase
- Authentication Phase
- Session key generation
4. Analysis and Results
4.1. Informal Security Analysis
4.1.1. Resistance to Impersonation Attacks
4.1.2. Resistance to Replay Attacks
4.1.3. Resistance to Eavesdropping Attacks
4.1.4. Secure Session Key
4.1.5. Mutual Authentication
4.2. Performance Results
4.2.1. Computation Cost
4.2.2. Storage Overhead
4.2.3. Communication Overhead
5. Discussion
6. Conclusions and Future Work
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- State of IoT 2021: Number of Connected IoT Devices Growing 9% to 12.3 B. Available online: https://iot-analytics.com/number-connected-iot-devices/ (accessed on 31 March 2022).
- Statista. Global IoT and Non-IoT Connections 2010–2025. Available online: https://www.statista.com/statistics/1101442/iot-number-of-connected-devices-worldwide/ (accessed on 31 March 2022).
- Basir, R.; Qaisar, S.; Ali, M.; Aldwairi, M.; Ashraf, M.I.; Mahmood, A.; Gidlund, M. Fog Computing Enabling Industrial Internet of Things: State-of-the-Art and Research Challenges. Sensors 2019, 19, 4807. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Sittón-Candanedo, I.; Alonso, R.S.; Rodríguez-González, S.; García Coria, J.A.; De La Prieta, F. Edge Computing Architectures in Industry 4.0: A General Survey and Comparison. In Proceedings of the 14th International Conference on Soft Computing Models in Industrial and Environmental Applications (SOCO 2019), Seville, Spain, 13–15 May 2019; Springer: Cham, Switzerland, 2020; Volume 950, pp. 121–131. [Google Scholar]
- Kahvazadeh, S.; Souza, V.B.; Masip-Bruin, X.; Marn-Tordera, E.; Garcia, J.; DIaz, R. Securing Combined Fog-to-Cloud System through SDN Approach. In Proceedings of the CrossCloud 2017 4th Workshop on CrossCloud Infrastructures and Platforms, Colocated with EuroSys 2017, Belgrade, Serbia, 23 April 2017; Association for Computing Machinery Inc.: New York, NY, USA, 2017. [Google Scholar]
- Haripriya, A.P.; Kulothungan, K. Secure-MQTT: An Efficient Fuzzy Logic-Based Approach to Detect DoS Attack in MQTT Protocol for Internet of Things. EURASIP J. Wirel. Commun. Netw. 2019, 2019, 90. [Google Scholar]
- Calabretta, M.; Pecori, R.; Vecchio, M.; Veltri, L. MQTT-AUTH: A Token-Based Solution to Endow MQTT with Authentication and Authorization Capabilities. J. Commun. Softw. Syst. 2018, 14, 320–331. [Google Scholar] [CrossRef]
- Park, C.S.; Nam, H.M. Security Architecture and Protocols for Secure MQTT-SN. IEEE Access 2020, 8, 226422–226436. [Google Scholar] [CrossRef]
- Bhawiyuga, A.; Data, M.; Warda, A. Architectural Design of Token Based Authentication of MQTT Protocol in Constrained IoT Device. In Proceedings of the 2017 11th International Conference on Telecommunication Systems Services and Applications (TSSA), Lombok, Indonesia, 26–27 October 2017; pp. 1–4. [Google Scholar] [CrossRef]
- Bali, R.S.; Jaafar, F.; Zavarasky, P. Lightweight Authentication for MQTT to Improve the Security of IoT Communication. In Proceedings of the ACM International Conference Proceeding Series, Kuala Lumpur, Malaysia, 19–21 January 2019; Association for Computing Machinery: New York, NY, USA, 19 January, 2019; pp. 6–12. [Google Scholar]
- Rizzardi, A.; Sicari, S.; Miorandi, D.; Coen-Porisini, A. AUPS: An Open Source AUthenticated Publish/Subscribe System for the Internet of Things. Inf. Syst. 2016, 62, 29–41. [Google Scholar] [CrossRef]
- Erlikaya, O.Y.; Dalkiltc, G. Authentication and Authorization Mechanism on Message Queue Telemetry Transport Protocol. In Proceedings of the 2018 3rd International conference on computer science and engineering (UBMK), Sarajevo, Bosnia and Herzegovina, 20–23 September 2018; pp. 145–150. [Google Scholar] [CrossRef]
- Rahman, A.; Roy, S.; Kaiser, M.S.; Islam, M.S. A Lightweight Multi-Tier S-MQTT Framework to Secure Communication between Low-End IoT Nodes. In Proceedings of the 2018 5th International Conference on Networking, Systems and Security (NSysS), Dhaka, Bangladesh, 18–20 December 2018; p. 1. [Google Scholar] [CrossRef]
- Shilpa, V.; Vidya, A.; Pattar, S. MQTT Based Secure Transport Layer Communication for Mutual Authentication in IoT Network. Glob. Transit. Proc. 2022, 3, 60–66. [Google Scholar] [CrossRef]
- Diro, A.A.; Chilamkurti, N.; Veeraraghavan, P. Elliptic Curve Based Cybersecurity Schemes for Publish-Subscribe Internet of Things. In Proceedings of the International Conference on Heterogeneous Networking for Quality, Reliability, Security and Robustness, online, 9 August 2017; Springer: Cham, Switzerland, 2017; Volume 199, pp. 258–268. [Google Scholar]
- Anantharaman, P.; Palani, K.; Smith, S. Scalable Identity and Key Management for Publish-Subscribe Protocols in the Internet-of-Things. In Proceedings of the ACM International Conference Proceeding Series, Bilbao, Spain, 22–25 October 2019; Association for Computing Machinery: New York, NY, USA, 2019. [Google Scholar]
- Lohachab, A.; Karambir. ECC Based Inter-Device Authentication and Authorization Scheme Using MQTT for IoT Networks. J. Inf. Secur. Appl. 2019, 46, 1–12. [Google Scholar] [CrossRef]
- Khalid, U.; Asim, M.; Baker, T.; Hung, P.C.K.; Tariq, M.A.; Rafferty, L. A Decentralized Lightweight Blockchain-Based Authentication Mechanism for IoT Systems. Cluster Comput. 2020, 23, 2067–2087. [Google Scholar] [CrossRef]
- Veeramanikandan, M.; Sankaranarayanan, S. Publish/Subscribe Based Multi-Tier Edge Computational Model in Internet of Things for Latency Reduction. J. Parallel Distrib. Comput. 2019, 127, 18–27. [Google Scholar] [CrossRef]
- Park, J.H.; Kim, H.S.; Kim, W.T. DM-MQTT: An Efficient MQTT Based on SDN Multicast for Massive IoT Communications. Sensors 2018, 18, 3071. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Banno, R.; Sun, J.; Fujita, M.; Takeuchi, S.; Shudo, K. Dissemination of Edge-Heavy Data on Heterogeneous MQTT Brokers. In Proceedings of the 2017 IEEE 6th International Conference on Cloud Networking (CloudNet), Prague, Czech Republic, 25–27 September 2017. [Google Scholar] [CrossRef]
- Pham, V.N.; Nguyen, V.D.; Nguyen, T.D.T.; Huh, E.N. Efficient Edge-Cloud Publish/Subscribe Broker Overlay Networks to Support Latency-Sensitive Wide-Scale Iot Applications. Symmetry 2020, 12, 3. [Google Scholar] [CrossRef] [Green Version]
- Amanlou, S.; Hasan, M.K.; Bakar, K.A.A. Lightweight and Secure Authentication Scheme for IoT Network Based on Publish–Subscribe Fog Computing Model. Comput. Netw. 2021, 199, 108465. [Google Scholar] [CrossRef]
- Amoretti, M.; Pecori, R.; Protskaya, Y.; Veltri, L.; Zanichelli, F. A Scalable and Secure Publish/Subscribe-Based Framework for Industrial IoT. IEEE Trans. Ind. Inform. 2021, 17, 3815–3825. [Google Scholar] [CrossRef]
- Ashrafi, T.H.; Hossain, M.A.; Arefin, S.E.; Das, K.D.J.; Chakrabarty, A. IoT Infrastructure: Fog Computing Surpasses Cloud Computing. In Intelligent Communication and Computational Technologies; Lecture Notes in Networks and Systems; Springer: Singapore, 2018; Volume 19, pp. 43–55. [Google Scholar] [CrossRef]
- Seitz, A.; Buchinger, D.; Bruegge, B. The Conjunction of Fog Computing and the Industrial Internet of Things—An Applied Approach. In Proceedings of the 2018 IEEE International Conference on Pervasive Computing and Communications Workshops, Athens, Greece, 19–23 March 2018; pp. 812–817. [Google Scholar] [CrossRef]
- Bouzarkouna, I.; Sahnoun, M.; Sghaier, N.; Baudry, D.; Gout, C. Challenges Facing the Industrial Implementation of Fog Computing. In Proceedings of the 2018 IEEE 6th international conference on future internet of things and cloud (FiCloud), Barcelona, Spain, 6–8 August 2018; pp. 341–348. [Google Scholar] [CrossRef]
- Adeel, A.; Ali, M.; Khan, A.N.; Khalid, T.; Rehman, F.; Jararweh, Y.; Shuja, J. A Multi-attack Resilient Lightweight IoT Authentication Scheme. Trans. Emerg. Telecommun. Technol. 2022, 33, e3676. [Google Scholar] [CrossRef]
- Esfahani, A.; Mantas, G.; Matischek, R.; Saghezchi, F.B.; Rodriguez, J.; Bicaku, A.; Maksuti, S.; Tauber, M.G.; Schmittner, C.; Bastos, J. A Lightweight Authentication Mechanism for M2M Communications in Industrial IoT Environment. IEEE Internet Things J. 2019, 6, 288–296. [Google Scholar] [CrossRef]
- Amin, R.; Kumar, N.; Biswas, G.P.; Iqbal, R.; Chang, V. A Light Weight Authentication Protocol for IoT-Enabled Devices in Distributed Cloud Computing Environment. Future Gener. Comput. Systems 2018, 78, 1005–1019. [Google Scholar] [CrossRef]
- Alshahrani, M.; Traore, I.; Woungang, I. Design and Implementation of a Lightweight Authentication Framework for the Internet of Things (IoT). In Proceedings of the 2019 Sixth International Conference on Internet of Things: Systems, Management and Security (IOTSMS), Granada, Spain, 22–25 October 2019; pp. 185–194. [Google Scholar] [CrossRef]
- Roma, C.A.; Tai, C.E.A.; Anwar Hasan, M. Energy Efficiency Analysis of Post-Quantum Cryptographic Algorithms. IEEE Access 2021, 9, 71295–71317. [Google Scholar] [CrossRef]
Message Type | Value | Flow | Description |
---|---|---|---|
CONNECT | 1 | Client to broker | Request to connect |
CONNACK | 2 | Broker to client | Connect acknowledgement |
PUBLISH | 3 | Publisher to broker Broker to subscriber | Publish message |
PUBACK | 4 | Broker to publisher Subscriber to broker | Publish acknowledgement (used in QoS 1) |
PUBREC | 5 | Broker to publisher Subscriber to broker | Publish received (used in QoS 2) |
PUBREL | 6 | Publisher to broker Broker to subscriber | Publish release (used in QoS 2) |
PUBCOMP | 7 | Broker to publisher Subscriber to broker | Publish complete (used in QoS 2) |
SUBSCRIBE | 8 | Subscriber to broker | Subscribe request |
SUBACK | 9 | Broker to subscriber | Subscribe acknowledgement |
UNSUBSCRIBE | 10 | Subscriber to broker | Unsubscribe request |
UNSUBACK | 11 | Broker to subscriber | Unsubscribe acknowledgement |
PINGREQ | 12 | Client to broker | Ping (keep alive) request |
PINGRES | 13 | Broker to client | Ping (keep alive) response |
DISCONNECT | 14 | Client to broker | Client disconnecting |
Symbols | Meaning |
---|---|
Pi | Publisher |
Si | Subscriber |
LBi | Local Broker |
ABi | Aggregation Broker |
CBi | Cloud Broker |
Ti | Topic |
Symbol | Description |
---|---|
C | Client (publisher, subscriber, or broker acting as a client) |
B | Broker |
AM | Authentication manager |
IDC | Identity of client |
IDB | Identity of broker |
AIDC | Alias ID of client |
AIDB | Alias ID of broker |
SN | Secret number |
Na | Nonce |
R1, R2, R3, R4 | Random number |
MK1 | Master key 1 |
MK2 | Master key 2 |
MIDC | Master identity of client |
MIDB | Master identity of broker |
SKAM_C | Secret key between AM and C |
SKAM_B | Secret key between AM and B |
K-SC_B | Session key between C and B |
H(.) | One-way hash function |
⊕ | XOR operator |
|| | Concatenation |
Ci, Verifier | Ciphers |
Entity | Computation Cost |
---|---|
Client | 11 Th |
LB | 18 Th |
AB | 18 Th |
CB | 7 Th |
Entity | Storage Overhead |
---|---|
Client | 512 bits |
LB | 784 bits |
AB | 784 bits |
CB | 272 bits |
Entity | Storage Overhead |
---|---|
Client → LB + AM | 1136 bits |
LB +AM → Client | 640 bits |
LB → AB + AM | 1136 bits |
AB + AM → LB | 640 bits |
AB → CB + AM | 1136 bits |
CB + AM → LB | 640 bits |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Kurdi, H.; Thayananthan, V. A Multi-Tier MQTT Architecture with Multiple Brokers Based on Fog Computing for Securing Industrial IoT. Appl. Sci. 2022, 12, 7173. https://doi.org/10.3390/app12147173
Kurdi H, Thayananthan V. A Multi-Tier MQTT Architecture with Multiple Brokers Based on Fog Computing for Securing Industrial IoT. Applied Sciences. 2022; 12(14):7173. https://doi.org/10.3390/app12147173
Chicago/Turabian StyleKurdi, Hassan, and Vijey Thayananthan. 2022. "A Multi-Tier MQTT Architecture with Multiple Brokers Based on Fog Computing for Securing Industrial IoT" Applied Sciences 12, no. 14: 7173. https://doi.org/10.3390/app12147173
APA StyleKurdi, H., & Thayananthan, V. (2022). A Multi-Tier MQTT Architecture with Multiple Brokers Based on Fog Computing for Securing Industrial IoT. Applied Sciences, 12(14), 7173. https://doi.org/10.3390/app12147173