Implementing A Middleware API for Facilitating Heterogeneous IoT Device Communication Protocols and Data Retrieval (2312.10294v1)
Abstract: Currently, there are over 14 billion IoT devices [7], and with many devices come many protocols, the main ones being MQTT and CoAP. We are interested in connecting the many diverse IoT devices to the cloud. To do so, we use the middleware architecture proposed by article [8] in which a device, called the middleware, acts as the middleman between the various IoT networks and the cloud. Since IoT devices typically operate in real-time, performance is of great concern. Therefore, we conducted a simulation to measure the data latency of using middleware and the overall fairness between different IoT networks. Our simulation had an MQTT and a CoAP network interacting with the middleware. The simulation results showed that CoAP always had a lower travel time than MQTT, mainly because CoAP is a more lightweight protocol. However, we also found that MQTT had slightly more throughput, which was unexpected since we initially thought that CoAP would have had higher throughput. We have shown that analyzing data via a middleware device is possible and that there are potential directions to explore, such as evaluating different Quality of Service Algorithms in the context of having a middleware device.
- K. R, “Mqtt vs. COAP: An in-depth look at two leading IOT protocols,” Intuz, https://www.intuz.com/blog/mqtt-vs-coap (accessed Sep. 12, 2023).
- R. Vahidnia and F. J. Dian, “Chapter 4: Data Communication Protocols for IoT,” in Cellular Internet of Things for Practitioners, Vancouver, Canada: British Columbia Institute of Technology, 2021
- M. A. A. da Cruz, J. J. P. C. Rodrigues, P. Lorenz, V. V. Korotaev, and V. H. C. de Albuquerque, “In.IoT—A New Middleware for Internet of Things,” IEEE Internet of Things Journal, vol. 8, no. 10, pp. 7902–7911, May 2021, doi: 10.1109/JIOT.2020.3041699.
- G. K. Behara, “Open Source IoT Middleware for the Integration of Enterprise Applications,” Oct. 14, 2019. https://www.opensourceforu.com/2019/10/a-primer-on-open-source-iot-middleware-for-the-integration-of-enterprise-applications/ (accessed Sep. 12, 2023).
- J. Howarth, “80+ Amazing IoT Statistics (2022-2030),” Exploding Topics, Dec. 22, 2021. https://explodingtopics.com/blog/iot-stats
- “What Is A RESTful API?,” Amazon Web Services, https://aws.amazon.com/what-is/restful-api/ (accessed Sep. 12, 2023).
- “Paho-Mqtt,” PyPI, https://pypi.org/project/paho-mqtt/ (accessed Sep. 12, 2023).
- Chrysn, “CHRYSN/aiocoap: The Python Coap Library,” GitHub, https://github.com/chrysn/aiocoap (accessed Sep. 12, 2023)
- “FASTAPI,” FastAPI, https://fastapi.tiangolo.com/ (accessed Sep. 12, 2023).
- F. Raschbichler, “MQTT 5: How the Payload Format Indicator and Content Type features work.” https://www.hivemq.com/blog/mqtt5-essentials-part8-payload-format-description/ (accessed Sep. 12, 2023).
- “When It Comes To IoT, Size Matters: Overcoming Scalability Challenges - Talking IoT,” May 18, 2023. https://talkingiot.io/when-it-comes-to-iot-size-matters-overcoming-scalability-challenges/ (accessed Sep. 12, 2023).
- H. Garg and M. Dave, “Securing User Access at IoT Middleware Using Attribute Based Access Control,” in 2019 10th International Conference on Computing, Communication and Networking Technologies (ICCCNT), Jul. 2019, pp. 1–6. doi: 10.1109/ICCCNT45670.2019.8944879.
- E. S. Pramukantoro, J. Ratna Wulandari, W. Yahya, and H. Nurwarsito, “A Cluster Message Broker in IoT Middleware using Ioredis,” in 2018 International Conference on Sustainable Information Engineering and Technology (SIET), Nov. 2018, pp. 247–251. doi: 10.1109/SIET.2018.8693178.
- E. Pramukantoro and H. Anwari, “An Event-based Middleware for Syntactical Interoperability in Internet of Things,” International Journal of Electrical and Computer Engineering (IJECE), vol. 8, p. 3784, Oct. 2018, doi: 10.11591/ijece.v8i5.pp3784-3792.
- “Is IoT Simulation the Test for Success? — insight.tech.” Accessed: Oct. 16, 2023. [Online]. Available: https://www.insight.tech/retail/iot-simulation-the-test-for-success
- R. Joncas, “MQTT and CoAP, IoT Protocols — The Eclipse Foundation.” Accessed: Oct. 16, 2023. [Online]. Available: https://www.eclipse.org/community/eclipse_newsletter/2014/february/article2.php
- “Simulator for CoAP, MQTT, MQTT-SN, HTTP/REST,Modbus, BacNET, LoRaWAN sensors and gateways. – SimpleSoft.” Accessed: Oct. 16, 2023. [Online]. Available: https://simplesoft.com/SimpleIoTSimulator.html
- “The Free Public MQTT Broker & MQTT Client by HiveMQ - Check out our MQTT Demo.” Accessed: Oct. 16, 2023. [Online]. Available: https://www.hivemq.com/mqtt/public-mqtt-broker/
- “Eclipse Mosquitto,” Eclipse Mosquitto. Accessed: Oct. 16, 2023. [Online]. Available: https://mosquitto.org/
- S. You, “Comparison of Python MQTT Clients,” www.emqx.com. Accessed: Oct. 16, 2023. [Online]. Available: https://www.emqx.com/en/blog/comparision-of-python-mqtt-client
- “OAuth2 with password (and hashing), bearer with JWT tokens,” FastAPI, https://fastapi.tiangolo.com/tutorial/security/oauth2-jwt/ (accessed Oct. 18, 2023).
- “What is openapi?,” OpenAPI Initiative, https://www.openapis.org/what-is-openapi (accessed Oct. 18, 2023).