DD-FoG: Intelligent Distributed Dynamic FoG Computing Framework
Abstract
:1. Introduction
- In this paper, we proposed a new framework for deploying services based on MEC, FoG infrastructure in accordance with user dynamics. The key feature of this framework (DD-fog) is the microservices migration on the necessary FoG-node for providing a stable quality level for each service.
- K means-based algorithm is developed and tested for peak loads center searching.
- Swarm-based algorithm is proposed and tested to define the fog-node with necessary resource allocation.
- Simulation results proved that the proposed framework could reduce the execution time of the microservice function due to the rational allocation of resources by up to 70%.
2. Related Works
3. Proposed System
3.1. Proposed Framework of Distributed Dynamic Fog Computing System (DD-Fog)
- Balancer HAProxy: It is a software module (proxy server) that accepts user requests, performs TCP / HTTP load balancing and distribution of requests between elements on the Backend. These user requests are generated by various client devices (browser, mobile application, smart device, etc.).
- API GW-(Application Programming Interface): This is a software module (can be rendered as a separate microservice), which acts as a single accurate reception of requests from external users of the microservices API. API GW receives the request and, based on the URL, determines which microservice should receive/process it. After that, it sends the message through MQ Broker to the recipient microservice, waits for a response and returns it back. The second important function of the GW API is to create and maintain a user session.
- MAIN DB-(Main Application Database): This database stores information about users and related information, as well as other application metadata.
- MQ Broker-(Message Broker): This module is required to implement asynchronous communication between system components. Implements the functions of the microservices discovery service in the system. One of the main functions of the module is the implementation of queues: for receiving requests and sending responses to received requests. Each of the microservices connects to a given broker and corresponding message queues. The broker also performs the functions of routing messages based on the metadata transmitted in the message headers (including data about the current user session-authorization token). Each instance of a microservice of a particular type subscribes to listen on the request queue and fetches messages. When sending requests, the recipient is not a specific instance of the microservice, but the type to which it belongs. Since within the framework of the microservice approach, the implementation of each of the microservices can be made in such a way that to increase the performance of the microservice, only copying it is required. The data broker also takes over the load balancing function. In this case, balancing is done implicitly by the microservices themselves, listening to the request queue.
3.2. Entities and Interconnection Model in Framework
- CPU (cores, frequency of each cores), which presented the device performance and calculated in [Flops].
- RAM.
- ROM.
- Code of active wireless technology (for example: 802.11ac, 5G etc); This code is used for defining the theoretical throughput of the device channel. In this case, the database has a table with relations between wireless codes and theoretical channel throughput.
- Allowed speed for external microservices.
- System of virtualization.
- Supported format of microservices.
- Battery time: Battery discharge time to critical value.
4. Proposed Algorithms of Monitoring and Control
4.1. Determination of the Central Load Point of Users (K-Means-Based Algorithm)
- Input data are set: x, y and z coordinates of points. The number of clusters and their initial centers are also set.
- Assigning users (user devices) to the nearest cluster centers. For this, the Euclidean metric of the distance between points in space is used:
- Comparison of centers of mass and assumed centers of clusters.
- If the centers of mass and the assumed centers of the clusters are equal, then the centers of the clusters are considered finally determined and all users assigned to them are marked as members of this cluster. If they are not equal, then steps 2–4 are repeated anew, but with the assumed centers of the clusters equal to the centers of mass determined at this iteration.
4.2. Service Time Providing through Device Selection (SWARM-Based Algorithm)
Algorithm 1: PSO Update Process |
|
5. Framework Modeling
5.1. K-Means-Based Algorithm Results
- The total number of clusters is 5.
- Presumptive centers were randomly assigned according to the principle of places in a space with a large number of possible users.
5.2. Swarm-Based Algorithm Results
6. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
References
- Park, J.H.; Rathore, S.; Singh, S.K.; Salim, M.M.; Azzaoui, A.E.; Kim, T.W.; Pan, Y.; Park, J.H. A Comprehensive Survey on Core Technologies and Services for 5G Security: Taxonomies, Issues, and Solutions. Hum.-Centric Comput. Inf. Sci. 2021, 11, 22. [Google Scholar]
- Khayyat, M.; Alshahrani, A.; Alharbi, S.; Elgendy, I.; Paramonov, A.; Koucheryavy, A. Multilevel service-provisioning-based autonomous vehicle applications. Sustainability 2020, 12, 2497. [Google Scholar] [CrossRef] [Green Version]
- Alshahrani, A.; Elgendy, I.A.; Muthanna, A.; Alghamdi, A.M.; Alshamrani, A. Efficient multi-player computation offloading for VR edge-cloud computing systems. Appl. Sci. 2020, 10, 5515. [Google Scholar] [CrossRef]
- Guerrero, C.; Lera, I.; Juiz, C. Evaluation and efficiency comparison of evolutionary algorithms for service placement optimization in fog architectures. Future Gener. Comput. Syst. 2019, 97, 131–144. [Google Scholar] [CrossRef]
- Duc, T.L.; Leiva, R.G.; Casari, P.; Östberg, P.O. Machine learning methods for reliable resource provisioning in edge-cloud computing: A survey. ACM Comput. Surv. (CSUR) 2019, 52, 1–39. [Google Scholar] [CrossRef] [Green Version]
- Rec, I. ITU-R M. 2083-0. In IMT Vision—Framework and Overall Objectives of the Future Development of IMT; International Telecommunication Union: Genève, 2020. [Google Scholar]
- Gao, J.; Li, W.; Zhao, Z.; Han, Y. Provisioning big data applications as services on containerised cloud: A microservices-based approach. Int. J. Serv. Technol. Manag. 2020, 26, 167–181. [Google Scholar] [CrossRef]
- Alaasam, A.B.; Radchenko, G.; Tchernykh, A.; Compeán, J.G. Analytic Study of Containerizing Stateful Stream Processing as Microservice to Support Digital Twins in Fog Computing. Program. Comput. Softw. 2020, 46, 511–525. [Google Scholar] [CrossRef]
- Herrera, J.L.; Galán-Jiménez, J.; Berrocal, J.; Murillo, J.M. Optimizing the Response Time in SDN-Fog Environments for Time-Strict IoT Applications. IEEE Internet Things J. 2021, 8, 17172–17185. [Google Scholar] [CrossRef]
- Al-Ansi, A.; Al-Ansi, A.M.; Muthanna, A.; Elgendy, I.A.; Koucheryavy, A. Survey on Intelligence Edge Computing in 6G: Characteristics, Challenges, Potential Use Cases, and Market Drivers. Future Internet 2021, 13, 118. [Google Scholar] [CrossRef]
- Zhang, W.Z.; Elgendy, I.A.; Hammad, M.; Iliyasu, A.M.; Du, X.; Guizani, M.; Abd El-Latif, A.A. Secure and Optimized Load Balancing for Multitier IoT and Edge-Cloud Computing Systems. IEEE Internet Things J. 2020, 8, 8119–8132. [Google Scholar] [CrossRef]
- Elgendy, I.A.; Zhang, W.Z.; Zeng, Y.; He, H.; Tian, Y.C.; Yang, Y. Efficient and secure multi-user multi-task computation offloading for mobile-edge computing in mobile IoT networks. IEEE Trans. Netw. Serv. Manag. 2020, 17, 2410–2422. [Google Scholar] [CrossRef]
- Tran, T.X.; Hajisami, A.; Pandey, P.; Pompili, D. Collaborative mobile edge computing in 5G networks: New paradigms, scenarios, and challenges. IEEE Commun. Mag. 2017, 55, 54–61. [Google Scholar] [CrossRef] [Green Version]
- Li, Y.; Anh, N.T.; Nooh, A.S.; Ra, K.; Jo, M. Dynamic mobile cloudlet clustering for fog computing. In Proceedings of the 2018 international conference on electronics, information, and communication (iceic), Honolulu, HI, USA, 24–27 January 2018; pp. 1–4. [Google Scholar]
- Ningning, S.; Chao, G.; Xingshuo, A.; Qiang, Z. Fog computing dynamic load balancing mechanism based on graph repartitioning. China Commun. 2016, 13, 156–164. [Google Scholar] [CrossRef]
- Volkov, A.; Khakimov, A.; Muthanna, A.; Kirichek, R.; Vladyko, A.; Koucheryavy, A. Interaction of the IoT traffic generated by a smart city segment with SDN core network. In Proceedings of the International Conference on Wired/Wireless Internet Communication, Moscow, Russia, 25–29 September 2017; pp. 115–126. [Google Scholar]
- Volkov, A.; Muhathanna, A.; Pirmagomedov, R.; Kirichek, R. SDN approach to control internet of thing medical applications traffic. In Proceedings of the International Conference on Distributed Computer and Communication Networks, Moscow, Russia, 25–29 September 2017; pp. 467–476. [Google Scholar]
- Volkov, A.; Proshutinskiy, K.; Adam, A.B.; Ateya, A.A.; Muthanna, A.; Koucheryavy, A. SDN load prediction algorithm based on artificial intelligence. In Proceedings of the International Conference on Distributed Computer and Communication Networks, Moscow, Russia, 23–27 September 2019; pp. 27–40. [Google Scholar]
- Muthanna, A.; Volkov, A.; Khakimov, A.; Muhizi, S.; Kirichek, R.; Koucheryavy, A. Framework of QoS management for time constraint services with requested network parameters based on SDN/NFV infrastructure. In Proceedings of the 10th International Congress on Ultra Modern Telecommunications and Control Systems and Workshops (ICUMT), Moscow, Russia, 5–9 November 2018; pp. 1–6. [Google Scholar]
- Aljubayri, M.; Yang, Z.; Shikh-Bahaei, M. Cross-layer multipath congestion control, routing and scheduling design in ad hoc wireless networks. IET Commun. 2021, 15, 1096–1108. [Google Scholar] [CrossRef]
- Ibrar, M.; Wang, L.; Muntean, G.M.; Shah, N.; Akbar, A.; Qureshi, K.I. SOSW: Scalable and optimal nearsighted location selection for fog node deployment and routing in SDN-based wireless networks for IoT systems. Ann. Telecommun. 2021. [Google Scholar] [CrossRef]
- Bratton, D.; Kennedy, J. Defining a standard for particle swarm optimization. In Proceedings of the 2007 IEEE swarm intelligence symposium, Honolulu, HI, USA, 1–5 April 2007; pp. 120–127. [Google Scholar]
Existing Works | Problems Addressed | Proposed Solutions |
---|---|---|
[13] |
|
|
[14] | Mobile devices cannot always meet the requirements for organizing of high resource consuming applications, and capability of fog servers are still limited due to the high cost of deployment. |
|
[15] | Due to the high polymerization calculation mode, compute clouds cannot fully utilize the resources of the edge device. |
|
Existing Works | Pros | Cons |
---|---|---|
[13] | The proposed additional layer for selecting the processing level allows you to move the options for choosing the processing level closer to end users. | The additional level only performs functions for the choice of processing level, but the participation itself does not take part in the processing process. |
[14] | The algorithm for choosing mobile devices based on their resources was proposed and described to form a cloudlet cluster. | The article does not consider the possibility of using the fog server for processing user requests. In addition, the article does not consider the problem when it is impossible to form a cluster to handle the user request. |
[15] | The article proposes a network hierarchy of the Framework for "foggy" systems, which consists of four levels. The atomization layer is responsible for forming a set of resources for cloud atomization from physical resources. | The proposed architecture uses only the concept of fog computing. Only mobile devices are used to process user requests, and the remote server and MEC servers are not used. |
(Proposed System) | Our proposed architecture allows us to process user data at all 4 levels. The formation of a cluster is carried out on the basis of a larger number of parameters. | The proposed network architecture is more complex because it is based on the simultaneous use of MEC and fog technologies (in related works, only one technology was used). The load on the mini-cloud will be greater, since it will be responsible not only for the task of choosing the processing level, but also for processing user requests. |
Cluster | 1 | 2 | 3 | 4 | 5 |
---|---|---|---|---|---|
Number of Users | 10 | 50 | 15 | 30 | 50 |
Congestion of users | in a fast food cafe on the ground floors | on higher floors 415 of an office building | on higher floors of an office building | in a fast food cafe on the ground floors | on higher floors of an office building |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 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
Artem, V.; Vadim, K.; Elgendy, I.A.; Muthanna, A.; Koucheryavy, A. DD-FoG: Intelligent Distributed Dynamic FoG Computing Framework. Future Internet 2022, 14, 13. https://doi.org/10.3390/fi14010013
Artem V, Vadim K, Elgendy IA, Muthanna A, Koucheryavy A. DD-FoG: Intelligent Distributed Dynamic FoG Computing Framework. Future Internet. 2022; 14(1):13. https://doi.org/10.3390/fi14010013
Chicago/Turabian StyleArtem, Volkov, Kovalenko Vadim, Ibrahim A. Elgendy, Ammar Muthanna, and Andrey Koucheryavy. 2022. "DD-FoG: Intelligent Distributed Dynamic FoG Computing Framework" Future Internet 14, no. 1: 13. https://doi.org/10.3390/fi14010013
APA StyleArtem, V., Vadim, K., Elgendy, I. A., Muthanna, A., & Koucheryavy, A. (2022). DD-FoG: Intelligent Distributed Dynamic FoG Computing Framework. Future Internet, 14(1), 13. https://doi.org/10.3390/fi14010013