Distributed Agent-Based Orchestrator Model for Fog Computing
Abstract
:1. Introduction
Problem and Purpose of the Study
2. Related Work
2.1. Knowledge Gap
2.2. Aim and Principal Conclusions
3. Proposed Agent-Based Orchestrator Model
3.1. Design Goals and Architecture
- The fog node (task receiver) identifies the type of task and the resources needed for such task.
- The fog node checks the free resources left in each neighboring fog node (including itself) that can serve the request and calculates the best placement for the requested service, using the combinatorial placement algorithm presented in our previous work [37].
- The task is then placed on one of the fog nodes by activating the appropriate service needed for the user end-device. The service might be activated at the task receiver node itself or in one of the nearby nodes or the cloud. If the service is not yet installed at the selected fog node, then it is downloaded from the cloud.
- The resources of any fog node changed significantly. These can include changes in the battery level and the security level. In such a case, the fog node with depleted battery or lower than required security level (e.g., due to attack) initiates a new placement calculation procedure, and currently active services are relocated and distributed to the neighboring fog nodes to ensure system stability and resilience.
- The fog node unexpectedly fails and cannot provide any services it is currently running. This situation is detected by other fog nodes based on missing heartbeat messages from the failed node. The remaining fog nodes update their tables of available computational resources by removing resources of the failed fog node. When user end-devices will request unavailable services again (after predefined timeout), the healthy fog nodes will be aware of missing neighbor and will calculate the best placement using the remaining resources.
- The end-device moves between fog nodes, which results in disconnection from one fog node and connection to another fog node. If the end-device disconnects from the fog node, the latter detects this after some timeout, stops the unnecessary service(s), thereby freeing related resources, and informs other fog nodes about this. When the end-device requests services from the other nearby fog node on its movement path, this fog node already knows how many resources are left in the whole network and can find service placement for the new request.
- The service should be deployed on the neighboring node. The Decision Making Agent requests the Deployment Agent to install the service remotely. The local Deployment Agent notifies the destination fog node through the Synchronization Agent to install the service (steps 7, 8 and 9 in Figure 5) and the remote Deployment Agent does so on the remote node (steps 10 and 11 in Figure 5).
- The service cannot be deployed on any fog node due to lack of resources (steps 12 and 13 in Figure 5). In such a case, the service is deployed in the cloud (which is treated as a node with very high resource capacity).
- broadcast the changes in computational resource availability of the fog nodes;
- broadcast the heartbeat messages (when the node stops this broadcast, other Synchronization Agents remove the node from the Fog Network Resources list);
- send remote deployment requests when needed.
3.2. Properties That Affect Service Placement
3.3. Service Placement Optimization Method
- Generate random particles: , .
- Initialize Pareto set: .
- Assign the initial velocities , .
- Initialize the global best position and the global best score: , .
- Assign the initial best scores and best positions to all particles: , , .
- With each particle () do:
- a.
- Calculate the values of each objective function: .
- b.
- If dominates : , =, .
- c.
- If neither dominates nor is dominated by : with probability 0.5 do: , =, .
- d.
- If dominates : , =.
- e.
- If neither dominates nor is dominated by : with probability 0.5 do: , =.
- f.
- Calculate new velocity: .
- g.
- Update the position of the particle: .
- h.
- If the particle is out of the range: , .
- Analyze set and remove all the duplicated and dominated entries.
- If maximum number of iterations is not reached go to step 6.
- The set contains Pareto frontier solutions.
- Load a judgment matrix , with the application specific results of criteria () pairwise comparisons.
- With each criterion (objective function) , do:
- Construct the weight coefficient matrix : , , using all the alternatives from set .
- Use AHP decision-making method and get alternative priority vector , , : ), .
- Choose the best service distribution alternative , which corresponds to the highest priority  as the final solution of an optimization process.
4. Experimental Setup and Results
4.1. Experimental Setup
4.2. Results
- Agent communications within fog nodes and simple decisions made by them (marked as “Agent communications” in Figure 10 and Figure 11) do not add significant latency to the overall latency of the model. Figure 10b and Figure 11b show that the agent intercommunication component of the relative latency becomes significant (and takes up to 11% of the overall time) only when the fog node hardware is powerful and the service placement problem (i.e., the structure of the fog infrastructure) is relatively simple.
- The greatest impact on latency is caused by the service placement algorithm. This issue is more relevant when relatively weak hardware is used for fog nodes.
- The computational time of the service placement optimization method has a linear dependence on the initial number of particles and the number of epochs.
- The computational time of the service placement optimization method has a linear dependence on the complexity of the problem in terms of the number of fog nodes and services. The IMOPSO part of the optimization process is linear by design, and the experimental results confirm that the AHP part also scales linearly with the increase in the complexity of the problem. This trend was observed by finding the recommended parameters of the optimization process for each step of complexity of the problem (summarized in Table 1). These parameters are a good starting point for using the placement finding method in real-life scenarios, as it is impossible to formally evaluate the precision of the results achieved by the optimization process.
- The total time taken by the algorithm to find the placement of the service on potential fog node hardware of “average performance” (Raspberry Pi 4 in our case) shows that it is not feasible to use this method to solve problems with more than a few tens of services.
5. Discussion
6. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- IEEE Std 1934-2018: IEEE Standard for Adoption of OpenFog Reference Architecture for Fog Computing; IEEE: Piscataway, NJ, USA, 2018; ISBN 978-1-5044-5017-1.
- Costa, B.; Bachiega, J.; de Carvalho, L.R.; Araujo, A.P.F. Orchestration in Fog Computing: A Comprehensive Survey. ACM Comput. Surv. 2022, 55, 1–34. [Google Scholar] [CrossRef]
- Salaht, F.A.; Desprez, F.; Lebre, A. An Overview of Service Placement Problem in Fog and Edge Computing. ACM Comput. Surv. 2021, 53, 1–35. [Google Scholar] [CrossRef]
- Jain, J.K.; Chauhan, D.; Jain, P. An Energy Efficient and Bandwidth Aware Optimal Routing for IoT in Agriculture; Research Square. 2021. Available online: https://assets.researchsquare.com/files/rs-429148/v1_covered.pdf?c=1631865029 (accessed on 7 July 2022).
- Arcadius Tokognon, C.; Gao, B.; Tian, G.Y.; Yan, Y. Structural Health Monitoring Framework Based on Internet of Things: A Survey. IEEE Internet Things J. 2017, 4, 619–635. [Google Scholar] [CrossRef]
- Mutlag, A.A.; Ghani, M.K.A.; Arunkumar, N.; Mohamed, M.A.; Mohd, O. Enabling Technologies for Fog Computing in Healthcare IoT Systems. Future Gener. Comput. Syst. 2019, 90, 62–78. [Google Scholar] [CrossRef]
- Alreshidi, E.J. Introducing Fog Computing (FC) Technology to Internet of Things (IoT) Cloud-Based Anti-Theft Vehicles Solutions: Int. J. Syst. Dyn. Appl. 2022, 11, 1–21. [Google Scholar] [CrossRef]
- Mohamed, N.; Al-Jaroodi, J.; Lazarova-Molnar, S.; Jawhar, I. Applications of Integrated IoT-Fog-Cloud Systems to Smart Cities: A Survey. Electronics 2021, 10, 2918. [Google Scholar] [CrossRef]
- Verma, P.; Sood, S.K. Fog Assisted-IoT Enabled Patient Health Monitoring in Smart Homes. IEEE Internet Things J. 2018, 5, 1789–1796. [Google Scholar] [CrossRef]
- Iorga, M.; Feldman, L.; Barton, R.; Martin, M.J.; Goren, N.; Mahmoudi, C. Fog Computing Conceptual Model; National Institute of Standards and Technology: Gaithersburg, MD, USA, 2018. [Google Scholar]
- Brogi, A.; Forti, S.; Guerrero, C.; Lera, I. How to Place Your Apps in the Fog: State of the Art and Open Challenges. Softw. Pract. Exp. 2020, 50, 719–740. [Google Scholar] [CrossRef] [Green Version]
- Mahmud, R.; Ramamohanarao, K.; Buyya, R. Application Management in Fog Computing Environments: A Taxonomy, Review and Future Directions. ACM Comput. Surv. 2021, 53, 1–43. [Google Scholar] [CrossRef]
- Yousefpour, A.; Patil, A.; Ishigaki, G.; Kim, I.; Wang, X.; Cankaya, H.C.; Zhang, Q.; Xie, W.; Jue, J.P. QoS-Aware Dynamic Fog Service Provisioning. arXiv 2019, arXiv:1802.00800v2. [Google Scholar]
- Mahmud, R.; Ramamohanarao, K.; Buyya, R. Latency-Aware Application Module Management for Fog Computing Environments. ACM Trans. Internet Technol. 2019, 19, 1–21. [Google Scholar] [CrossRef]
- Velasquez, K.; Abreu, D.P.; Curado, M.; Monteiro, E. Service Placement for Latency Reduction in the Internet of Things. Ann. Telecommun. 2017, 72, 105–115. [Google Scholar] [CrossRef]
- Saurez, E.; Hong, K.; Lillethun, D.; Ramachandran, U.; Ottenwälder, B. Incremental Deployment and Migration of Geo-Distributed Situation Awareness Applications in the Fog. In Proceedings of the 10th ACM International Conference on Distributed and Event-Based Systems, Irvine, CA, USA, 13 June 2016; ACM: Irvine, CA, USA, 2016; pp. 258–269. [Google Scholar]
- Chen, M.; Li, W.; Fortino, G.; Hao, Y.; Hu, L.; Humar, I. A Dynamic Service Migration Mechanism in Edge Cognitive Computing. ACM Trans. Internet Technol. 2019, 19, 1–15. [Google Scholar] [CrossRef] [Green Version]
- Filiposka, S.; Mishev, A.; Gilly, K. Mobile-aware Dynamic Resource Management for Edge Computing. Trans. Emerg. Telecommun. Technol. 2019, 30, e3626. [Google Scholar] [CrossRef]
- Mseddi, A.; Jaafar, W.; Elbiaze, H.; Ajib, W. Joint Container Placement and Task Provisioning in Dynamic Fog Computing. IEEE Internet Things J. 2019, 6, 10028–10040. [Google Scholar] [CrossRef]
- Josilo, S.; Dan, G. Decentralized Algorithm for Randomized Task Allocation in Fog Computing Systems. IEEEACM Trans. Netw. 2019, 27, 85–97. [Google Scholar] [CrossRef] [Green Version]
- Wang, P.; Liu, S.; Ye, F.; Chen, X. A Fog-Based Architecture and Programming Model for IoT Applications in the Smart Grid. arXiv 2018, arXiv:1804.01239v1. [Google Scholar]
- Zhu, C.; Tao, J.; Pastor, G.; Xiao, Y.; Ji, Y.; Zhou, Q.; Li, Y.; Yla-Jaaski, A. Folo: Latency and Quality Optimized Task Allocation in Vehicular Fog Computing. IEEE Internet Things J. 2019, 6, 4150–4161. [Google Scholar] [CrossRef] [Green Version]
- Lee, G.; Saad, W.; Bennis, M. An Online Secretary Framework for Fog Network Formation with Minimal Latency. In Proceedings of the 2017 IEEE International Conference on Communications (ICC); IEEE: Paris, France, 2017; pp. 1–6. [Google Scholar]
- Aral, A.; Ovatman, T. A Decentralized Replica Placement Algorithm for Edge Computing. IEEE Trans. Netw. Serv. Manag. 2018, 15, 516–529. [Google Scholar] [CrossRef]
- Selimi, M.; Vega, D.; Freitag, F.; Veiga, L. Towards Network-Aware Service Placement in Community Network Micro-Clouds. In Euro-Par 2016: Parallel Processing; Dutot, P.-F., Trystram, D., Eds.; Lecture Notes in Computer Science; Springer International Publishing: Cham, Switzerland, 2016; Volume 9833, pp. 376–388. ISBN 978-3-319-43658-6. [Google Scholar]
- Lee, G.; Saad, W.; Bennis, M. An Online Optimization Framework for Distributed Fog Network Formation With Minimal Latency. IEEE Trans. Wirel. Commun. 2019, 18, 2244–2258. [Google Scholar] [CrossRef] [Green Version]
- Tocze, K.; Nadjm-Tehrani, S. ORCH: Distributed Orchestration Framework Using Mobile Edge Devices. In Proceedings of the 2019 IEEE 3rd International Conference on Fog and Edge Computing (ICFEC); IEEE: Larnaca, Cyprus, 2019; pp. 1–10. [Google Scholar]
- Castellano, G.; Esposito, F.; Risso, F. A Service-Defined Approach for Orchestration of Heterogeneous Applications in Cloud/Edge Platforms. IEEE Trans. Netw. Serv. Manag. 2019, 16, 1404–1418. [Google Scholar] [CrossRef]
- Liu, Z.; Yang, X.; Yang, Y.; Wang, K.; Mao, G. DATS: Dispersive Stable Task Scheduling in Heterogeneous Fog Networks. IEEE Internet Things J. 2019, 6, 3423–3436. [Google Scholar] [CrossRef]
- Alli, A.A.; Alam, M.M. SecOFF-FCIoT: Machine Learning Based Secure Offloading in Fog-Cloud of Things for Smart City Applications. Internet Things 2019, 7, 100070. [Google Scholar] [CrossRef]
- Al-khafajiy, M.; Baker, T.; Al-Libawy, H.; Maamar, Z.; Aloqaily, M.; Jararweh, Y. Improving Fog Computing Performance via F Og-2- F Og Collaboration. Future Gener. Comput. Syst. 2019, 100, 266–280. [Google Scholar] [CrossRef]
- Charântola, D.; Mestre, A.C.; Zane, R.; Bittencourt, L.F. Component-Based Scheduling for Fog Computing. In Proceedings of the 12th IEEE/ACM International Conference on Utility and Cloud Computing Companion—UCC ’19 Companion; ACM Press: Auckland, New Zealand, 2019; pp. 3–8. [Google Scholar]
- Zhang, G.; Shen, F.; Chen, N.; Zhu, P.; Dai, X.; Yang, Y. DOTS: Delay-Optimal Task Scheduling Among Voluntary Nodes in Fog Networks. IEEE Internet Things J. 2019, 6, 3533–3544. [Google Scholar] [CrossRef]
- Guerrero, C.; Lera, I.; Juiz, C. A Lightweight Decentralized Service Placement Policy for Performance Optimization in Fog Computing. J. Ambient Intell. Humaniz. Comput. 2019, 10, 2435–2452. [Google Scholar] [CrossRef]
- Casadei, R.; Viroli, M. Coordinating Computation at the Edge: A Decentralized, Self-Organizing, Spatial Approach. In Proceedings of the 2019 Fourth International Conference on Fog and Mobile Edge Computing (FMEC); IEEE: Rome, Italy, 2019; pp. 60–67. [Google Scholar]
- Jalali, F.; Lynar, T.; Smith, O.J.; Kolluri, R.R.; Hardgrove, C.V.; Waywood, N.; Suits, F. Dynamic Edge Fabric EnvironmenT: Seamless and Automatic Switching among Resources at the Edge of IoT Network and Cloud. In Proceedings of the 2019 IEEE International Conference on Edge Computing (EDGE); IEEE: Milan, Italy, 2019; pp. 77–86. [Google Scholar]
- Morkevicius, N.; Venčkauskas, A.; Šatkauskas, N.; Toldinas, J. Method for Dynamic Service Orchestration in Fog Computing. Electronics 2021, 10, 1796. [Google Scholar] [CrossRef]
- Pop, P.; Zarrin, B.; Barzegaran, M.; Schulte, S.; Punnekkat, S.; Ruh, J.; Steiner, W. The FORA Fog Computing Platform for Industrial IoT. Inf. Syst. 2021, 98, 101727. [Google Scholar] [CrossRef]
- Khaira, A.; Dwivedi, R.K. A State of the Art Review of Analytical Hierarchy Process. Mater. Today Proc. 2018, 5, 4029–4035. [Google Scholar] [CrossRef]
Fog Nodes | Services | Particles | Epochs |
---|---|---|---|
4 | 12 | 200 | 300 |
6 | 18 | 300 | 300 |
8 | 24 | 400 | 400 |
10 | 30 | 500 | 600 |
12 | 36 | 600 | 700 |
14 | 42 | 600 | 800 |
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
Liutkevičius, A.; Morkevičius, N.; Venčkauskas, A.; Toldinas, J. Distributed Agent-Based Orchestrator Model for Fog Computing. Sensors 2022, 22, 5894. https://doi.org/10.3390/s22155894
Liutkevičius A, Morkevičius N, Venčkauskas A, Toldinas J. Distributed Agent-Based Orchestrator Model for Fog Computing. Sensors. 2022; 22(15):5894. https://doi.org/10.3390/s22155894
Chicago/Turabian StyleLiutkevičius, Agnius, Nerijus Morkevičius, Algimantas Venčkauskas, and Jevgenijus Toldinas. 2022. "Distributed Agent-Based Orchestrator Model for Fog Computing" Sensors 22, no. 15: 5894. https://doi.org/10.3390/s22155894
APA StyleLiutkevičius, A., Morkevičius, N., Venčkauskas, A., & Toldinas, J. (2022). Distributed Agent-Based Orchestrator Model for Fog Computing. Sensors, 22(15), 5894. https://doi.org/10.3390/s22155894