Scheduling Algorithms in Fog Computing: A Survey
2021, International Journal of Networked and Distributed Computing
https://doi.org/10.2991/IJNDC.K.210111.001Abstract
Nowadays, with the development of technology, the Internet of Things (IoT) applications have become parts of our daily life. Consequently, the number of devices used in these applications will increase, leading to the creation of huge amounts of data. This data will be transferred to cloud computing for processing, and because the cloud is far from these devices, there will be a delay in the response. From here, it was necessary to find a new technology closer to the Internet of Things devices and overcome the problems in the cloud. So, Cisco proposed fog computing in 2012 [1], which placed between cloud computing and the IoT devices (end users). Fog computing is an emerging computing paradigm that extends cloud computing from the core of the network to the edge of the network. It aims to bring computation, storage and networking services close to users [2]. Internet of Things applications is connecting every physical object like cameras, vehicles, sensors, wearables, and home appliances [3]. Many applications require low latency, mobility, location awareness, high response time. Although many researchers have developed algorithms to improve the performance of cloud computing about the IoT applications, there are still many challenges regarding the requirements of the IoT applications and mobile services such as low latency, high response time, cost, support for mobility and geo-distributions [4]. They can be addressed these challenges by fog computing [5]. Kazem [6] presents a comparison between fog and cloud computing according to their latency and response time. As a result of the comparison, fog computing always performs better than cloud computing to meet the demands of time-sensitive applications by reducing the delay and response time. Through the prediction of Cisco, there are more than 50 billion devices that will be connected to the internet by 2020. Also, the data produced by users, devices and their interactions will reach 500 zettabytes [7]. The general fog computing architecture can be divided into three layers, as shown in Figure 1. The first is IoT devices layer that includes different types of devices, such as smartphones, smart vehicles, tablet computers, and various smart home devices. This layer can sense the surrounding environment and collect data through sensor devices, and communicate with the fog computing layer through 3G, 4G, 5G, WiFi, and Bluetooth technologies. The second is the middle layer is the fog computing layer that includes routers, gateways, workstations, switches, access points. This layer has the capability of computing, networking, and storage. Finally, the upper layer is cloud computing that includes cloud servers with high computation power [2,8-10]. Changes like user devices in terms of bandwidth, storage, latency and computation make resource management in the fog computing environment a major issue [11]. Scheduling is the main challenge in fog computing. In a fog environment, tasks are divided into two groups: tasks requiring the computing intensity and tasks requiring the data intensity. While scheduling the tasks requiring computing intensity, the scheduler migrates the data to the high productivity resource, and hence, the task execution time is reduced. On the other hand, while scheduling
References (80)
- References and year Algorithm Problem Metrics Environment Case study Results compared [62], 2016 Heuristic-based algorithm REFERENCES
- F. Bonomi, R. Milito, J. Zhu, S. Addepalli, Fog computing and its role in the internet of things, Proceedings of the First Edition of the MCC Workshop on Mobile Cloud Computing (MCC), 2012, pp. 13-16.
- Z. Hao, E. Novak, S. Yi, Q. Li, Challenges and software architecture for fog computing, IEEE Internet Comput. 21 (2017), 44-53.
- S. Sharma, H. Saini, A novel four-tier architecture for delay aware scheduling and load balancing in fog environment, Sustain. Comput. Inform. Syst. 24 (2019), 100355.
- S. Bitam, S. Zeadally, A. Mellouk, Fog computing job schedul- ing optimization based on bees swarm, Enterpr. Inform. Syst. 12 (2018), 373-397.
- D. Tychalas, H. Karatza, A scheduling algorithm for a fog comput- ing system with bag-of-tasks jobs: simulation and performance evaluation, Simul. Modell. Pract. Theory 98 (2020), 101982.
- L.H. Kazem, Efficient resource allocation for time-sensitive IoT applications in cloud and fog environments, Int. J. Recent Technol. Eng. 8 (2019), 2356-2363.
- Cisco Knowledge Networking, Cisco Global Cloud Index: Forecast and Methodology, 2015-2020, white paper, Cisco Public, San Jose, 2016.
- P. Hu, S. Dhelim, H. Ning, T. Qiu, Survey on fog computing: architecture, key technologies, applications and open issues, J. Netw. Comput. Appl. 98 (2017), 27-42.
- R.K. Naha, S. Garg, D. Georgakopoulos, P.P. Jayaraman, L. Gao, Y. Xiang, et al., Fog computing: survey of trends, architectures, requirements, and research directions, IEEE Access 6 (2018), 47980-48009.
- Y. Liu, J.E. Fieldsend, G. Min, A framework of fog computing: architecture, challenges, and optimization, IEEE Access 5 (2017), 25445-25454.
- H. Rafique, M.A. Shah, S.U. Islam, T. Maqsood, S. Khan, C. Maple, A novel bio-inspired hybrid algorithm (NBIHA) for effi- cient resource management in fog computing, IEEE Access 7 (2019), 115760-115773.
- M. Ghobaei-Arani, A. Souri, F. Safara, M. Norouzi, An efficient task scheduling approach using moth-flame optimization algo- rithm for cyber-physical system applications in fog computing, Trans. Emerg. Telecommun. Technol. 31 (2020), e3770.
- J. Wang, D. Li, Task scheduling based on a hybrid heuristic algo- rithm for smart production line with fog computing, Sensors (Basel) 19 (2019), 1023.
- R. Mahmud, R. Kotagiri, R. Buyya, Fog computing: a taxonomy, survey and future directions, in: B. Di Martino, K.C. Li, L. Yang, A. Esposito (Eds.), Internet of Everything, Springer, Singapore, 2018, pp. 103-130.
- H.F. Atlam, R.J. Walters, G.B. Wills, Fog computing and the inter- net of things: a review, Big Data Cogn. Comput. 2 (2018), 10.
- F.A. Kraemer, A.E. Braten, N. Tamkittikhun, D. Palma, Fog computing in healthcare-a review and discussion, IEEE Access 5 (2017), 9206-9222.
- H. Wadhwa, R. Aron, Fog computing with the integration of inter- net of things: architecture, applications and future directions, 2018 IEEE Intl Conf on Parallel & Distributed Processing with Applications, Ubiquitous Computing & Communications, Big Data & Cloud Computing, Social Computing & Networking, Sustainable Computing & Communications (ISPA/IUCC/BDCloud/SocialCom/ SustainCom), IEEE, Melbourne, Australia, 2018, pp. 987-994.
- A. Yousefpour, C. Fung, T. Nguyen, K. Kadiyala, F. Jalali, A. Niakanlahiji, et al., All one needs to know about fog comput- ing and related edge computing paradigms: a complete survey, J. Syst. Architect. 98 (2019), 289-330.
- M. Ghobaei-Arani, A. Souri, A.A. Rahmanian, Resource man- agement approaches in fog computing: a comprehensive review, J. Grid Comput. 18 (2012), 1-42.
- R. Sharma, S. Rani, Resource scheduling in fog computing: a review, Int. J. Adv. Stud. Sci. Res. 4 (2019), 883-886.
- D. Rahbari, M. Nickray, Computation offloading and scheduling in edge-fog cloud computing, J. Electron. Inform. Syst. 1 (2019), 26-36.
- P. Hosseinioun, M. Kheirabadi, S.R. Kamel Tabbakh, R. Ghaemi, aTask scheduling approaches in fog computing: a survey, Trans. Emerg. Telecommun. Technol. (2020), e3792.
- M.M. Mon, M.A. Khine, Scheduling and load balancing in cloud-fog computing using swarm optimization techniques: a survey, 2019. Available from: https://onlineresource.ucsy.edu.mm/bitstream/ handle/123456789/1119/ICCA%202019%20Proceedings%20 Book-pages-19-25.pdf?sequence=1&isAllowed=y.
- P. Singh, M. Dutta, N. Aggarwal, A review of task scheduling based on meta-heuristics approach in cloud computing, Knowl. Inform. Syst. 52 (2017), 1-51.
- S. Abrishami, M. Naghibzadeh, D.H.J. Epema, Cost-driven scheduling of grid workflows using partial critical paths, IEEE Trans. Parallel Distrib. Syst. 23 (2011), 1400-1414.
- L. Chunlin, L. Layuan, QoS based resource scheduling by compu- tational economy in computational grid, Inform. Process. Lett. 98 (2006), 119-126.
- Y. Sun, F. Lin, H. Xu, Multi-objective optimization of resource scheduling in Fog computing using an improved NSGA-II, Wireless Personal Commun. 102 (2018), 1369-1385.
- J. Xu, Z. Hao, R. Zhang, X. Sun, A method based on the combi- nation of laxity and ant colony system for cloud-fog task schedul- ing, IEEE Access 7 (2019), 116218-116226.
- G. Li, Y. Liu, J. Wu, D. Lin, S. Zhao, Methods of resource sched- uling based on optimized fuzzy clustering in fog computing, Sensors (Basel) 19 (2019), 2122.
- J.C. Bezdek, R. Ehrlich, W. Full, FCM: the fuzzy c-means cluster- ing algorithm, Comput. Geosci. 10 (1984), 191-203.
- J. Kennedy, R. Eberhart, Particle swarm optimization, Proceedings of ICNN'95 -International Conference on Neural Networks, IEEE, Perth, WA, Australia, 1995, pp. 1942-1948.
- K. Etminani, M. Naghibzadeh, A min-min max-min selective algorihtm for grid task scheduling, Proceedings of the 2007 3rd IEEE/IFIP International Conference in Central Asia on Internet, IEEE, Tashkent, Uzbekistan, 2007, pp. 1-7.
- M. Aazam, E.N. Huh, Fog computing micro datacenter based dynamic resource estimation and pricing model for IoT, Proceedings of the 2015 IEEE 29th International Conference on Advanced Information Networking and Applications, IEEE, Gwangiu, South Korea, 2015, pp. 687-694.
- C. Wu, W. Li, L. Wang, A. Zomaya, Hybrid evolutionary sched- uling for energy-efficient fog-enhanced internet of things, IEEE Trans. Cloud Comput. Early Access (2018), 1.
- H. Topcuoglu, S. Hariri, M.y. Wu, Performance-effective and low-complexity task scheduling for heterogeneous computing, IEEE Trans. Parallel Distrib. Syst. 13 (2002), 260-274.
- X. Zhang, H. Duan, J. Jin, DEACO: hybrid ant colony optimi- zation with differential evolution, Proceedings of the 2008 IEEE Congress on Evolutionary Computation (IEEE World Congress on Computational Intelligence), IEEE, Hong Kong, China, 2008, pp. 921-927.
- B.M. Nguyen, H.T.T. Binh, T.T. Anh, D.B. Son, Evolutionary algo- rithms to optimize task scheduling problem for the IoT based bag-of-tasks application in cloud-fog computing environment, Appl. Sci. 9 (2019), 1730.
- L. Zhang, Q. Fu, J. Chen, H. Bai, X. Zhou, A modified particle swarm optimization algorithm-CPSODE, Proceedings of the 2017 29th Chinese Control And Decision Conference (CCDC), IEEE, Chongqing, China, 2017, pp. 6659-6663.
- H.R. Boveiri, R. Khayami, M. Elhoseny, M. Gunasekaran, An effi- cient swarm-intelligence approach for task scheduling in cloud- based internet of things applications, J. Ambient Intell. Human. Comput. 10 (2019), 3469-3479.
- T.L. Adam, K.M. Chandy, J.R. Dickson, A comparison of list schedules for parallel processing systems, Commun. ACM 17 (1974), 685-690.
- B. Kruatrachue, T. Lewis, Duplication scheduling heuristics (DSH): a new precedence task scheduler for parallel processor systems, Oregon State University, Corvallis, OR, 1987.
- M.Y. Wu, D.D. Gajski, Hypertool: a programming aid for message-passing systems, IEEE Trans. Parallel Distrib. Syst. 1 (1990), 330-343.
- J.J. Hwang, Y.C. Chow, F.D. Anger, C.Y. Lee, Scheduling prece- dence graphs in systems with interprocessor communication times, SIAM J. Comput. 18 (1989), 244-257.
- G.C. Sih, E.A. Lee, A compile-time scheduling heuristic for inter- connection-constrained heterogeneous processor architectures, IEEE Trans. Parallel Distrib. Syst. 4 (1993), 175-187.
- L. Yin, J. Luo, H. Luo, Tasks scheduling and resource allocation in fog computing based on containers for smart manufacturing, IEEE Trans. Ind. Inform. 14 (2018), 4712-4721.
- X.Q. Pham, N.D. Man, N.D.T. Tri, N.Q. Thai, E.N. Huh, A cost- and performance-effective approach for task scheduling based on collaboration between cloud and fog computing, Int. J. Distrib. Sens. Netw. 13 (2017), 1550147717742073.
- J. Li, S. Su, X. Cheng, Q. Huang, Z. Zhang, Cost-conscious sched- uling for large graph processing in the cloud, Proceedings of the 2011 IEEE International Conference on High Performance Computing and Communications, IEEE, Banff, AB, Canada, 2011, pp. 808-813.
- D. Hoang, T.D. Dang, FBRC: optimization of task scheduling in fog-based region and cloud, Proceedings of the 2017 IEEE Trustcom/BigDataSE/ICESS, IEEE, Sydney, NSW, Australia, 2017, pp. 1109-1114.
- G.L. Stavrinides, H.D. Karatza, A hybrid approach to schedul- ing real-time IoT workflows in fog and cloud environments, Multimed. Tools Appl. 78 (2019), 24639-24655.
- E.S. Alkayal, N.R. Jennings, M.F. Abulkhair, Efficient task sched- uling multi-objective particle swarm optimization in cloud computing, Proceedings of the 2016 IEEE 41st Conference on Local Computer Networks Workshops (LCN Workshops), IEEE, Dubai, United Arab Emirates, 2016, pp. 17-24.
- E. Ghaffari, Providing a new scheduling method in fog network using the ant colony algorithm, Collect. Articles Comput. Sci. (2019). Available from: https://www.scipedia.com/public/Ghaffari_2019a.
- S. Dam, G. Mandal, K. Dasgupta, P. Dutta, An ant-colony-based meta-heuristic approach for load balancing in cloud computing, in: S. Khalid (Ed.), Applied Computational Intelligence and Soft Computing in Engineering, IGI Global, Hershey, PA, 2018, pp. 204-232.
- Y. Yang, S. Zhao, W. Zhang, Y. Chen, X. Luo, J. Wang, DEBTS: delay energy balanced task scheduling in homogeneous fog net- works, IEEE Internet Things J. 5 (2018), 2094-2106.
- T. Wang, Z. Liu, Y. Chen, Y. Xu, X. Dai, Load balancing task scheduling based on genetic algorithm in cloud computing, Proceedings of the 2014 IEEE 12th International Conference on Dependable, Autonomic and Secure Computing, IEEE, Dalian, China, 2014, pp. 146-152.
- S. Ningning, G. Chao, A. Xingshuo, Z. Qiang, Fog computing dynamic load balancing mechanism based on graph repartition- ing, China Commun. 13 (2016), 156-164.
- C.K. Chen, Y.H. Chang, Y.T. Chen, C.C. Yang, J.K. Lee, Switching supports for stateful object remoting on network processors, J. Supercomput. 40 (2007), 281-298.
- X. Xu, S. Fu, Q. Cai, W. Tian, W. Liu, W. Dou, et al., Dynamic resource allocation for load balancing in fog environment, Wireless Commun. Mobile Comput. 2018 (2018), 6421607.
- K.C. Lin, Y.H. Huang, J.C. Hung, Y.T. Lin, Modified cat swarm optimization algorithm for feature selection of support vector machines, in: J. Park, A. Zomaya, H.Y. Jeong, M. Obaidat (Eds.), Frontier and Innovation in Future Computing and Communications, Springer, Dordrecht, 2014, pp. 329-336.
- U. Schwiegelshohn, R. Yahyapour, Analysis of first-come-first- serve parallel job scheduling, Proceedings of the Ninth Annual ACM-SIAM Symposium On Discrete Algorithms (SODA), Association for Computation Machinery, San Francisco, California, USA, 1998, pp. 629-638.
- G. Li, J. Yan, L. Chen, J. Wu, Q. Lin, Y. Zhang, Energy consump- tion optimization with a delay threshold in cloud-fog coopera- tion computing, IEEE Access 7 (2019), 159688-159697.
- Q. Liu, Y. Wei, S. Leng, Y. Chen, Task scheduling in fog enabled internet of things for smart cities, Proceedings of the 2017 IEEE 17th International Conference on Communication Technology (ICCT), IEEE, Chengdu, China, 2017, pp. 975-980.
- X.Q. Pham, E.N. Huh, Towards task scheduling in a cloud-fog computing system, Proceedings of the 2016 18th Asia-Pacific Network Operations and Management Symposium (APNOMS), IEEE, Kanazawa, Japan, 2016, pp. 1-4.
- D. Rahbari, M. Nickray, Scheduling of fog networks with opti- mized knapsack by symbiotic organisms search, Proceedings of the 2017 21st Conference of Open Innovations Association (FRUCT), IEEE, Helsinki, Finland, 2017, pp. 278-283.
- M.Y. Cheng, D. Prayogo, Symbiotic organisms search: a new metaheuristic optimization algorithm, Comput. Struct. 139 (2014), 98-112.
- M.A. Rodriguez, R. Buyya, A responsive knapsack-based algorithm for resource provisioning and scheduling of scientific workflows in clouds, Proceedings of the 2015 44th International Conference on Parallel Processing, IEEE, Beijing, China, 2015, pp. 839-848.
- R.O. Aburukba, M. AliKarrar, T. Landolsi, K. El-Fakih, Scheduling Internet of Things requests to minimize latency in hybrid Fog-Cloud computing, Future Gen. Comput. Syst. 111 (2020), 539-551.
- S. Agarwal, S. Yadav, A.K. Yadav, An efficient architecture and algorithm for resource provisioning in fog computing, Int. J. Inform. Eng. Electron. Bus. 8 (2016), 48-61.
- D. Rahbari, M. Nickray, Low-latency and energy-efficient sched- uling in fog-based IoT applications, Turk. J. Electr. Eng. Comput. Sci. 27 (2019), 1406-1427.
- L.F. Bittencourt, J. Diaz-Montes, R. Buyya, O.F. Rana, M. Parashar, Mobility-aware application scheduling in fog computing, IEEE Cloud Comput. 4 (2017), 26-35.
- A. Ghenai, Y. Kabouche, W. Dahmani, Multi-user dynamic scheduling-based resource management for Internet of Things applications, Proceedings of the 2018 International Conference on Internet of Things, Embedded Systems and Communications (IINTEC), IEEE, Hamammet, Tunisia, 2018, pp. 126-131.
- K. Kishor, V. Thapar, An efficient service broker policy for cloud computing environment, Int. J. Comput. Sci. Trends Technol. 2 (2014), 104-109.
- R. Xu, Y. Wang, Y. Cheng, Y. Zhu, Y. Xie, A.S. Sani, et al., Improved particle swarm optimization based workflow scheduling in cloud-fog environment, International Conference on Business Process Management, Springer, Cham, 2018, pp. 337-347.
- H.Y. Wu, C.R. Lee, Energy efficient scheduling for heterogeneous fog computing architectures, Proceedings of the 2018 IEEE 42nd Annual Computer Software and Applications Conference (COMPSAC), IEEE, Tokyo, Japan, 2018, pp. 555-560.
- A.F.T. Martins, N.A. Smith, E.P. Xing, Concise integer linear pro- gramming formulations for dependency parsing, Proceedings of the Joint Conference of the 47th Annual Meeting of the ACL and the 4th International Joint Conference on Natural Language Processing of the AFNLP, Association for Computational Linguistics, Stroudsburg, PA, US, 2009, pp. 342-350.
- S. Kabirzadeh, D. Rahbari, M. Nickray, A hyper heuristic algo- rithm for scheduling of fog networks, Proceedings of the 2017 21st Conference of Open Innovations Association (FRUCT), IEEE, Helsinki, Finland, 2017, pp. 148-155.
- M. Dorigo, M. Birattari, T. Stützle, Ant colony optimization, IEEE Comput. Intell. Mag. 1 (2006), 28-39.
- X. Liu, J. Liu, A task scheduling based on simulated annealing algorithm in cloud computing, Int. J. Hybrid Inform. Technol. 9 (2016), 403-412.
- D. Whitley, A genetic algorithm tutorial, Stat. Comput. 4 (1994), 65-85.
- B. Jamil, M. Shojafar, I. Ahmed, A. Ullah, K. Munir, H. Ijaz, A job scheduling algorithm for delay and performance opti- mization in fog computing, Concurr. Comput. Pract. Exp. 32 (2020), e5581.