Using IoT Protocols in Real-Time Systems: Protocol Analysis and Evaluation of Data Transmission Characteristics - Gavrilov, Andrei; Bergaliyev, Marlen; Tinyakov, Sergey; Krinkin, Kirill; Popov, Pavel (Journal of Computer Networks and Communications, 2022)
In the Internet of things, many data transfer protocols are used for various tasks. In this article, we consider the application layer protocols that are the main ones for transmitting messages in the IoT. The main problems are unpredictability, lack of stability of data transmission delays, and non-determinism, which are also important for real-time systems. The purpose of this study is to determine the most appropriate middleware and data transfer protocol for systems with high data transfer requirements, including real-time systems. Therefore, MQTT, RTPS, JMS, and AMQP protocols were analyzed in order to find out what tasks these protocols should be used for and whether they can be used in robotic and autonomous systems where high data transmission requirements are imposed. To evaluate the protocols, the standards were analyzed to determine the pros and cons, and the software implementations of each of them were selected. To assess the characteristics of data transmission, we have developed our own test scenarios that simulate complex situations. The behavior of software solutions is analyzed and a comparative analysis is made based on the obtained data. Together, the theoretical analysis of protocols and the study of software solutions allow us to conclude on the applicability of a particular protocol in real-time systems. As a result of the study, we can conclude that RTPS is the best solution for real-time systems with different traffic and MQTT performs well when transmitting short messages. But none of the protocols under consideration guarantees the determinism of data transmission, so it is better to use specialized link-layer protocols to obtain guarantees.