A Reliable Publish–Subscribe Mechanism for Internet of Things-Enabled Smart Greenhouses
Abstract
:1. Introduction
- Standardize the topic and pub-sub system to minimize server processing.
- Reduce complexity and cost while providing optimal extensibility and flexibility to meet the demands of greenhouse systems.
- Demonstrate the efficacy of the proposed strategy even in challenging conditions, enabling reliable information transmission during significant events.
- Compare the number of transferred messages between traditional and proposed architectures in a greenhouse environment.
- Conduct an extensive evaluation of topic categorization and pub-sub systems (scalable and non-scalable MQTT) regarding message processing time and subscription throughput.
2. Related Approaches
3. Research Methodology
3.1. Architecture and Protocol Description
Improvements and Advantages over Traditional MQTT
- Standardized Protocol for Resource Optimization: The protocol optimizes resource utilization by eliminating redundant processing stages.
- High Responsiveness: The system ensures high responsiveness, especially essential for real-time monitoring, by reducing the processing burden on the server.
- Scalability: The protocol facilitates scalability by effectively managing an array of publishers, subscribers, and messages.
- Reduced Complexity: The structured approach simplifies the overall system, making it easier to manage and maintain.
- Cost Efficiency: The system becomes more cost-effective by reducing the number of messages and processing time.
- Enhanced Accuracy: The categorization system ensures that only relevant data are transmitted, improving the accuracy of the server’s processing.
3.2. Message Standardization
- Status: The client sends a CONNECT message to the broker to establish a connection. A CONNACK message and a status code are delivered by the broker. Once the connection is established, the broker maintains it until the client sends a disconnect message or the connection is terminated. Therefore, the STATUS topic notifies the server about the device’s connectivity status in the greenhouse.
- Info: This topic permits the server to be continually kept informed of all modifications in the greenhouse.
- Digital Output: This topic obtains all commands for managing the entire components inside the greenhouse, including controlling various sorts of pump devices, fans, and actuators, and even turning the devices on and off. As a result, the greenhouse’s controller devices can make a decision relying on this topic. For example, if the controller device is commanded to turn off the heating via this topic, it does so.
- Digital Input: As feedback from the tools in the greenhouse. Take turning on the heater as an example, whose command is conveyed to the digital output; the command is performed in the first action, and we only see the message of turning on, even if the heater is burned in the greenhouse. It is worth noting that receiving feedback after executing the order to switch on the heater is critical because it demonstrates the correct execution of the command, allowing us to ensure that the heater is in good working condition, as shown in Figure 3.
- Analog Input: This topic can load data from the system’s analog sensors, which may also declare the sensing level of the analog sensor by upgrading the analog sensor’s capabilities.
- Configuration: When the device in the greenhouse is upgraded or the data sending time is modified, the server will be notified through this topic.
- Registration: This topic stores procedures for establishing and adding extra gateways to the broker, as well as withdrawing gateways from the broker.
- Alert: Since agricultural products are of particular importance in human consumption, and industry, considering the worst-case situation plays a critical role in preserving crops, and this topic has the task of informing the server in emergencies of the greenhouse. For instance, whenever a device becomes malfunctioning, if there is no Alert topic, the server is not notified of this circumstance.
- Wired communication response: Since some sensors support wired protocols such as Modbus and RS485, this topic receives and transmits information from these protocols to the main server or broker.
- Local wireless response: Since wireless sensors have found the most use such as ZigBee and Wi-Fi, the data related to the sensors mentioned in this topic are received and transmitted by this topic, which shows a wide range, including the , humidity, soil moisture, and temperature sensors, and so on.
3.2.1. Handling Variations in Network Conditions
3.2.2. Scalability Considerations
- Hierarchical Categorization Mechanism: The proposed MQTT broker employs a hierarchical categorization mechanism for messages, which enhances the routing and processing of messages on both the broker and server sides. This system entails the specification of topics and payloads, where the subscriber receives updates on specific topics, and the publisher disseminates information accordingly. Our approach implements a uniform communication protocol that decreases the intricacy and processing duration on the server end. The categorization system optimizes the routing of messages to their intended recipients, reducing the quantity of extraneous data and improving the accuracy of the primary server’s processing.
- Dynamic Topic Management: The system can dynamically manage topics based on the number of connected devices and their data types. This dynamic management allows the system to efficiently allocate resources and prioritize critical messages, ensuring timely delivery and processing even as the number of subscribers increases.
- Scalable Architecture: The architecture intends to be modular and scalable, enabling the incorporation of additional brokers and servers as required through the registration topic. This flexibility ensures that the system can grow to accommodate a wide range of subscribers and increased message volumes without requiring significant redesign.
3.3. Proposed Anatomy of SGP MQTT Topic
4. Performance Evaluation
- Pub-sub message size: About the topic matter, it is noteworthy that the SGP MQTT message arrangement necessitates the utilization of 20 bytes for transmitting each message about alterations in the greenhouse environment to a single server. In contrast, the traditional MQTT protocol consumes 100 bytes for the same purpose, as shown in Figure 4.
- The number of messages: This describes the overall capacity of a broker to effectively handle a particular number of messages during a given period. The significance of this measure is of utmost relevance within the realm of intelligent greenhouses, where the interchange and management of real-time data represent an important role in improving climate circumstances and efficiently using resources to enhance plant development [36,37,40].
- Message processing time: This refers to the amount of time it takes for the primary server to receive incoming messages, which has a direct influence on the system’s capacity to stay synchronized with events taking place in the surrounding environment. The system’s capacity to promptly and effectively address real-world occurrences is immediately impacted. By closely monitoring and strategically optimizing the processing times of messages, it is possible to guarantee that applications using the MQTT protocol can efficiently adapt to the ever-changing circumstances of the environment [34,41,42].
- Subscription throughput: The assessment of MQTT protocol performance is heavily reliant on the analysis of subscription throughput, as shown by previous studies conducted by various academics [16,28,43]. The term “message delivery rate” pertains to the speed at which a broker can transmit messages to its subscribers. The significance of this statistic lies in its direct influence on the responsiveness and efficiency of communication inside a system that utilizes the MQTT protocol. A high rate of subscription throughput signifies the MQTT broker’s ability to effectively manage a large volume of subscribers and swiftly distribute messages to them [43,44]. Real-time transmission is of utmost importance in greenhouse applications [16].
4.1. Evaluation Assumptions
- The MQTT brokers examined in this study are Mosquitto 1.4.15, Bevywise MQTT Route 2.0 (known for scalability), ActiveMQ 5.15.8, and EMQ X 4.0.8 (known for non-scalability). The performance of our suggested system was evaluated by using the values of messages in three different QoS zones of the MQTT protocol. This evaluation was conducted based on the analysis presented in the paper by [25].
- In one second, a process comprising four payloads is transmitted from the greenhouse gateway to the MQTT broker.
- In the conventional MQTT protocol, the structure of every payload is defined by five topic levels. Each topic level is allocated a data volume of 20 bytes, resulting in a total data volume consumption of 100 bytes for each payload. In contrast, the proposed structure of each MQTT payload designates its allocation to a distinct topic level, with a fixed data size of 20 bytes.
- The design proposal in our study receives environmental parameters and events from sensors located throughout the greenhouse. These data are relayed to an MQTT broker, which acts as a gateway for our greenhouse structure.
4.2. Evaluation Model
- The first “M” denotes that the arrival process follows a Poisson distribution, indicating that the time intervals between the arrival of messages are exponentially distributed.
- The second “M” signifies that the service process follows an exponential distribution, indicating that the time required for the broker to process a message is exponentially distributed.
- The numeral “1” in the system signifies the existence of a solitary server, namely the MQTT broker, according to [46].
- Message Arrival Rate (): This represents the rate at which messages arrive at the MQTT broker. This rate varies depending on the QoS levels and the payload size. For different brokers and QoS levels, will differ.
- Message Size (): Unlike the standard model, which may not account for varying message sizes, our modified model incorporates the fixed size of messages () for both the original and proposed MQTT brokers, measured in bytes.
- Service Rate (): The broker’s capacity to handle incoming messages determines the service rate. It reflects the processing capabilities of different MQTT brokers under various configurations.
- represents the anticipated number of messages that are published in each topic.
- refers to the rate at which messages arrive, measured in messages per second.
- represents the fixed size of messages for both the original and proposed MQTT brokers, measured in bytes.
- Optimized Topic Categorization: As detailed in Section 3.2, we propose a standardized message structure with unique topics for each data point and event within the greenhouse environment. This approach reduces topic overlap and ensures efficient routing and processing of messages.
- Payload Reduction: According to Section 3.3, the payload of the proposed model is optimized to reduce the transmission of extra and irrelevant data by approximately 80 bytes compared to the traditional MQTT broker’s payload framework. This significant reduction in payload size decreases network congestion and improves message processing efficiency.
- Message Processing Time Optimization: Leveraging the optimized queuing model, we focus on optimizing the message processing time (), which has a direct impact on system capacity. The is calculated by two factors: the number of events () and the arrival rate (). According to our assumption (four payloads are transmitted from greenhouse gateway to broker in one second), the optimizes using the following formula:By adjusting the arrival rate depending on the payload size and ensuring efficient processing per event, we enhance the broker’s capability to handle higher loads.
- Dynamic Adjustment of Arrival and Service Rates: The modified model allows for dynamic adjustments of the message arrival rate () and service rate () based on real-time data. This adaptability ensures the broker can maintain optimal performance under varying load conditions.
- Efficient Message Handling: Through the organization of messages into specific topics and the reduction of payload size, we optimize the efficiency of the message-handling process. This scenario enhances the broker’s processing efficiency and boosts its capacity to handle larger volumes of transactions, especially in situations with heavy traffic.
4.3. Result
- The rate at which messages are sent from the client to the broker per second is compared between the original and suggested broker systems.
- The measurement of the aggregate number of bytes sent during a given message exchange serves as a metric for evaluating the size of the message.
- The calculation of message processing time in four events occurring between the client and the brokers serves as an indication of the extent to which events are covered inside the greenhouse environment.
- The estimation of subscription throughput in MQTT brokers is a crucial indicator utilized to determine the efficiency of message transmission to subscribers.
4.3.1. Message Processing Time Evaluation Results with the Number of Messages and Message Size
- Enhanced coverage and management of events, ensuring more events are processed promptly.
- Increased capability of the broker to manage a larger volume of concurrent events or messages.
- Improved responsiveness of the system to high event volumes, which is critical for real-time monitoring and control applications.
4.3.2. Subscription Throughput Evaluation Results with the Number of Messages
4.4. Comparison with Existing Solutions
5. Conclusions and Future Work
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- Maraveas, C.; Piromalis, D.; Arvanitis, K.; Bartzanas, T.; Loukatos, D. Applications of IoT for optimized greenhouse environment and resources management. Comput. Electron. Agric. 2022, 198, 106993. [Google Scholar] [CrossRef]
- Bersani, C.; Ruggiero, C.; Sacile, R.; Soussi, A.; Zero, E. Internet of things approaches for monitoring and control of smart greenhouses in industry 4.0. Energies 2022, 15, 3834. [Google Scholar] [CrossRef]
- Li, R.a.; Sha, X.; Lin, K. Smart greenhouse: A real-time mobile intelligent monitoring system based on WSN. In Proceedings of the 2014 international wireless communications and mobile computing conference (IWCMC), Nicosia, Cyprus, 4–8 August 2014; pp. 1152–1156. [Google Scholar]
- Ferraz Junior, N.; Silva, A.A.; Guelfi, A.E.; Kofuji, S.T. Performance evaluation of publish-subscribe systems in IoT using energy-efficient and context-aware secure messages. J. Cloud Comput. 2022, 11, 1–17. [Google Scholar] [CrossRef] [PubMed]
- Li, X.; Deng, Y.; Ding, L. Study on precision agriculture monitoring framework based on WSN. In Proceedings of the 2008 2nd International Conference on Anti-counterfeiting, Security and Identification, Guiyang, China, 20–23 August 2008; pp. 182–185. [Google Scholar]
- Asghari, P.; Rahmani, A.M.; Javadi, H.H.S. Internet of Things applications: A systematic review. Comput. Netw. 2019, 148, 241–261. [Google Scholar] [CrossRef]
- Maraveas, C. Incorporating artificial intelligence technology in smart greenhouses: Current State of the Art. Appl. Sci. 2022, 13, 14. [Google Scholar] [CrossRef]
- Mohamed, N.; Al-Jaroodi, J.; Jawhar, I.; Lazarova-Molnar, S.; Mahmoud, S. SmartCityWare: A service-oriented middleware for cloud and fog enabled smart city services. IEEE Access 2017, 5, 17576–17588. [Google Scholar] [CrossRef]
- Anagnostopoulos, T.; Zaslavsky, A.; Kolomvatsos, K.; Medvedev, A.; Amirian, P.; Morley, J.; Hadjieftymiades, S. Challenges and opportunities of waste management in IoT-enabled smart cities: A survey. IEEE Trans. Sustain. Comput. 2017, 2, 275–289. [Google Scholar] [CrossRef]
- Lohitha, N.S.; Pounambal, M. Integrated publish/subscribe and push-pull method for cloud based IoT framework for real time data processing. Meas. Sens. 2023, 27, 100699. [Google Scholar] [CrossRef]
- Lazidis, A.; Tsakos, K.; Petrakis, E.G. Publish–Subscribe approaches for the IoT and the cloud: Functional and performance evaluation of open-source systems. Internet Things 2022, 19, 100538. [Google Scholar] [CrossRef]
- Uslu, B.Ç.; Okay, E.; Dursun, E. Analysis of factors affecting IoT-based smart hospital design. J. Cloud Comput. 2020, 9, 1–23. [Google Scholar]
- Lin, J.; Yu, W.; Zhang, N.; Yang, X.; Zhang, H.; Zhao, W. A survey on internet of things: Architecture, enabling technologies, security and privacy, and applications. IEEE Internet Things J. 2017, 4, 1125–1142. [Google Scholar] [CrossRef]
- Chakravarthy, R. An experimental study of IoT-Based topologies on MQTT protocol for agriculture intrusion detection. Meas. Sens. 2022, 24, 100470. [Google Scholar]
- Bacco, M.; Boero, L.; Cassará, P.; Colucci, M.; Gotta, A.; Marchese, M.; Patrone, F. IoT applications and services in space information networks. IEEE Wirel. Commun. 2019, 26, 31–37. [Google Scholar] [CrossRef]
- Glaroudis, D.; Iossifides, A.; Chatzimisios, P. Survey, comparison and research challenges of IoT application protocols for smart farming. Comput. Netw. 2020, 168, 107037. [Google Scholar] [CrossRef]
- Araujo, V.; Mitra, K.; Saguna, S.; Åhlund, C. Performance evaluation of FIWARE: A cloud-based IoT platform for smart cities. J. Parallel Distrib. Comput. 2019, 132, 250–261. [Google Scholar] [CrossRef]
- Du, X.; Zhou, Z.; Zhang, Y.; Rahman, T. Energy-efficient sensory data gathering based on compressed sensing in IoT networks. J. Cloud Comput. 2020, 9, 1–16. [Google Scholar] [CrossRef]
- Roy, D.G.; Mahato, B.; De, D.; Buyya, R. Application-aware end-to-end delay and message loss estimation in Internet of Things (IoT)—MQTT-SN protocols. Future Gener. Comput. Syst. 2018, 89, 300–316. [Google Scholar]
- Khaled, A.E.; Helal, A.; Lindquist, W.; Lee, C. IoT-DDL–device description language for the “T” in IoT. IEEE Access 2018, 6, 24048–24063. [Google Scholar] [CrossRef]
- Khaled, A.E.; Helal, S. Interoperable communication framework for bridging RESTful and topic-based communication in IoT. Future Gener. Comput. Syst. 2019, 92, 628–643. [Google Scholar] [CrossRef]
- Kim, G.; Kang, S.; Park, J.; Chung, K. An MQTT-based context-aware autonomous system in oneM2M architecture. IEEE Internet Things J. 2019, 6, 8519–8528. [Google Scholar] [CrossRef]
- Happ, D.; Wolisz, A. Limitations of the Pub/Sub pattern for cloud based IoT and their implications. In Proceedings of the 2016 Cloudification of the Internet of Things (CIoT), Paris, France, 23–25 November 2016; pp. 1–6. [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]
- Mishra, B.; Mishra, B.; Kertesz, A. Stress-testing MQTT brokers: A comparative analysis of performance measurements. Energies 2021, 14, 5817. [Google Scholar] [CrossRef]
- Uroz, D.; Rodríguez, R.J. Characterization and evaluation of IoT protocols for data exfiltration. IEEE Internet Things J. 2022, 9, 19062–19072. [Google Scholar] [CrossRef]
- 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]
- Longo, E.; Redondi, A.E.C.; Cesana, M.; Manzoni, P. BORDER: A benchmarking framework for distributed MQTT brokers. IEEE Internet Things J. 2022, 9, 17728–17740. [Google Scholar] [CrossRef]
- Azzedin, F.; Alhazmi, T. Secure data distribution architecture in IoT using MQTT. Appl. Sci. 2023, 13, 2515. [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. 2020, 17, 3815–3825. [Google Scholar] [CrossRef]
- Fawwaz, D.Z.; Chung, S.H.; Ahn, C.W.; Kim, W.S. Optimal distributed MQTT broker and services placement for SDN-edge based smart city architecture. Sensors 2022, 22, 3431. [Google Scholar] [CrossRef]
- Manzoni, P.; Maniezzo, V.; Boschetti, M.A. Modeling Distributed MQTT Systems Using Multicommodity Flow Analysis. Electronics 2022, 11, 1498. [Google Scholar] [CrossRef]
- Mishra, B.; Kertesz, A. The use of MQTT in M2M and IoT systems: A survey. IEEE Access 2020, 8, 201071–201086. [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]
- Bello, O.; Zeadally, S. Toward efficient smartification of the Internet of Things (IoT) services. Future Gener. Comput. Syst. 2019, 92, 663–673. [Google Scholar] [CrossRef]
- Fathy, C.; Ali, H.M. A secure IoT-based irrigation system for precision agriculture using the expeditious cipher. Sensors 2023, 23, 2091. [Google Scholar] [CrossRef] [PubMed]
- Tzerakis, K.; Psarras, G.; Kourgialas, N.N. Developing an Open-Source IoT Platform for Optimal Irrigation Scheduling and Decision-Making: Implementation at Olive Grove Parcels. Water 2023, 15, 1739. [Google Scholar] [CrossRef]
- Koroniotis, N.; Moustafa, N.; Sitnikova, E.; Turnbull, B. Towards the development of realistic botnet dataset in the internet of things for network forensic analytics: Bot-iot dataset. Future Gener. Comput. Syst. 2019, 100, 779–796. [Google Scholar] [CrossRef]
- Tantitharanukul, N.; Osathanunkul, K.; Hantrakul, K.; Pramokchon, P.; Khoenkaw, P. Mqtt-topic naming criteria of open data for smart cities. In Proceedings of the 2016 International Computer Science and Engineering Conference (ICSEC), Chiang Mai, Thailand, 14–17 December 2016; pp. 1–6. [Google Scholar]
- Donzia, S.K.Y.; Kim, H.k. Architecture Design of a smart farm system based on big data appliance machine learning. In Proceedings of the 2020 20th International Conference on Computational Science and Its Applications (ICCSA), Cagliari, Italy, 1–4 July 2020; pp. 45–52. [Google Scholar]
- Nam, J.; Jun, Y.; Choi, M. High Performance IoT Cloud Computing Framework Using Pub/Sub Techniques. Appl. Sci. 2022, 12, 11009. [Google Scholar] [CrossRef]
- Seoane, V.; Garcia-Rubio, C.; Almenares, F.; Campo, C. Performance evaluation of CoAP and MQTT with security support for IoT environments. Comput. Netw. 2021, 197, 108338. [Google Scholar] [CrossRef]
- Banno, R.; Ohsawa, K.; Kitagawa, Y.; Takada, T.; Yoshizawa, T. Measuring performance of MQTT v5. 0 brokers with MQTTLoader. In Proceedings of the 2021 IEEE 18th Annual Consumer Communications & Networking Conference (CCNC), Las Vegas, NV, USA, 9–12 January 2021; pp. 1–2. [Google Scholar]
- Tejashree, V.; Vidhyashree, N.; Anusha, S.; Anu, K.; Akshatha, P.; Kumar, S.D. Mqtt-sn based architecture for estimating delay and throughput in iot. In Proceedings of the Data Science and Computational Intelligence: Sixteenth International Conference on Information Processing (ICInPro 2021), Bengaluru, India, 22–24 October 2021; Proceedings 16. Springer: Berlin/Heidelberg, Germany, 2021; pp. 481–490. [Google Scholar]
- Bouloukakis, G.; Moscholios, I.; Georgantas, N.; Issarny, V. Performance analysis of internet of things interactions via simulation-based queueing models. Future Internet 2021, 13, 87. [Google Scholar] [CrossRef]
- Hmissi, F.; Ouni, S. TD-MQTT: Transparent Distributed MQTT Brokers for Horizontal IoT Applications. In Proceedings of the 2022 IEEE 9th International Conference on Sciences of Electronics, Technologies of Information and Telecommunications (SETIT), Hammamet, Tunisia, 28–30 May 2022; pp. 479–486. [Google Scholar]
- Vrettos, G.; Logaras, E.; Kalligeros, E. Towards standardization of MQTT-alert-based sensor networks: Protocol structures formalization and low-end node security. In Proceedings of the 2018 IEEE 13th International Symposium on Industrial Embedded Systems (SIES), Graz, Austria, 6–8 June 2018; pp. 1–4. [Google Scholar]
The Number of Events = 4, QoS0 | ||||||||
---|---|---|---|---|---|---|---|---|
MQTT Brokers | Original Mosquitto 1.4.15 | Proposed Mosquitto 1.4.15 | Original Bevywise MQTT Route 2.0 | Proposed Bevywise MQTT Route 2.0 | Original ActiveMQ 5.15.8 | Proposed ActiveMQ 5.15.8 | Original EMQX 4.0.8 | Proposed EMQX 4.0.8 |
Message arrival rate (msgs/s) | 32,016.00 | 32,016.00 | 32,839.00 | 32,839.00 | 39,479.00 | 39,479.00 | 18,034.00 | 18,034.00 |
Message size (bytes) | 100 | 20 | 100 | 20 | 100 | 20 | 100 | 20 |
The number of messages | 320.16 | 1600.8 | 328.39 | 1641.95 | 394.79 | 1973.95 | 180.34 | 901.7 |
Message processing time (s) | 80.04 | 400.2 | 82.0975 | 365.4875 | 98.6975 | 493.4875 | 45.085 | 225.425 |
Average latency (in ms) | 1.65 | 1.65 | 1.13 | 1.13 | 2.33 | 2.33 | 1.34 | 1.34 |
Subscription throughput (msgs/s) | 194.036 | 970.181 | 290.610 | 1453.053 | 169.437 | 847.188 | 134.582 | 677.388 |
The Number of Events = 4, QoS1 | ||||||||
---|---|---|---|---|---|---|---|---|
MQTT Brokers | Original Mosquitto 1.4.15 | Proposed Mosquitto 1.4.15 | Original Bevywise MQTT Route 2.0 | Proposed Bevywise MQTT Route 2.0 | Original ActiveMQ 5.15.8 | Proposed ActiveMQ 5.15.8 | Original EMQX 4.0.8 | Proposed EMQX 4.0.8 |
Message arrival rate (msgs/s) | 9488.00 | 9488.00 | 3542.49 | 3542.49 | 12,873.00 | 12,873.00 | 4633.41 | 4633.41 |
Message size (bytes) | 100 | 20 | 100 | 20 | 100 | 20 | 100 | 20 |
The number of messages | 94.88 | 474.4 | 35.4249 | 177.1245 | 128.73 | 643.65 | 46.3341 | 231.6705 |
Message processing time (s) | 23.72 | 118.6 | 8.856225 | 44.281125 | 32.1825 | 160.9125 | 11.583 | 57.917 |
Average latency (in ms) | 0.74 | 0.74 | 0.96 | 0.96 | 1.38 | 1.38 | 0.87 | 0.87 |
Subscription throughput (msgs/s) | 128.216 | 641.081 | 36.900 | 184.504 | 93.282 | 466.413 | 53.257 | 266.287 |
The Number of Events = 4, QoS2 | ||||||||
---|---|---|---|---|---|---|---|---|
MQTT Brokers | Original Mosquitto 1.4.15 | Proposed Mosquitto 1.4.15 | Original Bevywise MQTT Route 2.0 | Proposed Bevywise MQTT Route 2.0 | Original ActiveMQ 5.15.8 | Proposed ActiveMQ 5.15.8 | Original EMQ X 4.0.8 | Proposed EMQX 4.0.8 |
Message arrival rate (msgs/s) | 6585.00 | 6585.00 | 2649.00 | 2649.00 | 10,585.00 | 10,585.00 | 2627.31 | 2627.31 |
Message size (bytes) | 100 | 20 | 100 | 20 | 100 | 20 | 100 | 20 |
The number of messages | 65.85 | 329.25 | 26.49 | 132.45 | 105.85 | 529.25 | 26.2731 | 131.3655 |
Message processing time (s) | 16.4625 | 82.3125 | 6.6225 | 33.1125 | 26.4625 | 132.3125 | 6.568 | 32.841 |
Average latency (in ms) | 1.38 | 1.38 | 1.53 | 1.53 | 2.14 | 2.14 | 3.68 | 3.68 |
Subscription throughput (msgs/s) | 47.717 | 238.58 | 17.313 | 86.568 | 49.462 | 247.313 | 7.1394 | 35.6971 |
Solution | Topic Hierarchy/Broker | Pub-Sub Mechanism | Message Size | Distribution |
---|---|---|---|---|
Our proposal | 9 topics/1 broker | Simple | Low | Very high scalability, very low complexity, very high reliability, low server processing, suitable for smart greenhouse |
[4] | 3 topics/1 broker | Medium complex | Medium | Medium scalability, high complexity, medium reliability, heavy server processing, suitable for smart greenhouse |
[27] | 3 topics/1 broker | Medium complex | Medium | Medium scalability, high complexity, medium reliability, heavy server processing, suitable for smart greenhouse |
[28] | None/5 brokers | High complex | High | Non-scalable, very high complexity, very low reliability, very high server processing |
[30] | 1 topic/M-brokers | High complex | High | Very low scalability, high complexity, very low reliability, very high server processing |
[34] | None/5 brokers | High complex | High | Non-scalable, high complexity, very low reliability, heavy server processing |
[36] | None/1 broker | Complex | Very High | Non-scalable, very high complexity, very low reliability, very heavy server processing |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 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
Motamedi, B.; Villányi, B. A Reliable Publish–Subscribe Mechanism for Internet of Things-Enabled Smart Greenhouses. Appl. Sci. 2024, 14, 6407. https://doi.org/10.3390/app14156407
Motamedi B, Villányi B. A Reliable Publish–Subscribe Mechanism for Internet of Things-Enabled Smart Greenhouses. Applied Sciences. 2024; 14(15):6407. https://doi.org/10.3390/app14156407
Chicago/Turabian StyleMotamedi, Behnaz, and Balázs Villányi. 2024. "A Reliable Publish–Subscribe Mechanism for Internet of Things-Enabled Smart Greenhouses" Applied Sciences 14, no. 15: 6407. https://doi.org/10.3390/app14156407
APA StyleMotamedi, B., & Villányi, B. (2024). A Reliable Publish–Subscribe Mechanism for Internet of Things-Enabled Smart Greenhouses. Applied Sciences, 14(15), 6407. https://doi.org/10.3390/app14156407