Abstract
Cloud computing is a rapidly developing computing technology, which enables to process and store large volumes of information along with providing services to numerous end users across various disciplines. Due to ever-increasing demand with the introduction of technologies like IoT, cloud servers processing capability and storage capacity are rapidly saturating, creating lag in response time. The lag in response time contradicts the never-ending rise of demand for programs associated with real-time analytics and real-time applications. Technologies like Fog computing which works in close association with cloud computing can act as an alternative platform to meet the desired goals. However, due to limited capacity, fog computing-based platforms get exhausted easily. Setting up effective burden allocation algorithms will allow for powerful and well-organized use of both of these platforms. Numerous methods are there to address problems such as task scheduling, resource scheduling, workflow scheduling, load balancing, resource provisioning, and load balancing. The present study compares different aspects of the existing techniques. The current study also explores the quality of service metrics across a variety of existing techniques, providing food for further experimentation.
Background: It is required to design a suitable scheduling algorithm that enhances the timely execution of goals such as load distribution, cost monitoring, minimal time lag to react, increased security awareness, optimized energy usage, dependability, and so on. In order to attain these criteria, a variety of scheduling strategies based on hybrid, heuristic, and meta-heuristic techniques are under consideration.
Objective: IoT devices and a variety of network resources make up the integrated cloud-fog environment. Every fog node has devices that release or request resources. A good scheduling algorithm is required in order to maintain the requests for resources made by various IoT devices.
Methods: This research focuses on the analysis of numerous scheduling challenges and techniques employed in a cloud-fog context. This work evaluates and analyses the most important fog computing scheduling algorithms.
Results: The survey of simulation tools used by the researchers is done. From the compared results, the highest percentage in the literature has 60% of scheduling algorithm which is related to task scheduling and 37% of the researchers have used iFogSim simulation tool for the implementation of the proposed algorithm defined in their research paper.
Conclusion: The findings in the paper provide a roadmap of the proposed efficient scheduling algorithms and can help researchers to develop and choose algorithms close to their case studies.
Keywords: Fog computing, cloud computing, quality-of-service, scheduling, and load balancing
Graphical Abstract
[http://dx.doi.org/10.1016/j.jnca.2020.102674]
[http://dx.doi.org/10.1145/2342509.2342513]
[http://dx.doi.org/10.7717/peerj-cs.509] [PMID: 34013035]
[http://dx.doi.org/10.2991/ijndc.k.210111.001]
[http://dx.doi.org/10.11591/ijece.v8i6.pp4646-4653]
[http://dx.doi.org/10.18280/isi.260208]
[http://dx.doi.org/10.1145/3403955]
[http://dx.doi.org/10.1007/978-3-030-03146-6_161]
[http://dx.doi.org/10.3390/bdcc2020010]
[http://dx.doi.org/10.14419/ijet.v7i3.12612]
[http://dx.doi.org/10.30564/jeisr.v1i1.1135]
[http://dx.doi.org/10.29333/jisem/8429]
[http://dx.doi.org/10.3390/s20226574]
[http://dx.doi.org/10.4108/eai.27-2-2020.2303123]
[http://dx.doi.org/10.1109/CIT/IUCC/DASC/PICOM.2015.51]
[http://dx.doi.org/10.1007/s11227-020-03600-8]
[http://dx.doi.org/10.35940/ijrte.F9238.038620]
[http://dx.doi.org/10.4018/ijsir.2013100103]
[http://dx.doi.org/10.1007/s10723-015-9334-y]
[IJECE [http://dx.doi.org/10.11591/ijece.v11i3.pp2219-2228]
[http://dx.doi.org/10.21203/rs.3.rs-208986/v1]
[http://dx.doi.org/10.1007/s12083-020-01051-9]
[http://dx.doi.org/10.1007/s00607-021-00935-9]
[http://dx.doi.org/10.1109/RTEST49666.2020.9140118]
[http://dx.doi.org/10.1117/12.2580303]
[http://dx.doi.org/10.1109/EDGE50951.2020.00018]
[http://dx.doi.org/10.1109/ICFEC50348.2020.00012]
[http://dx.doi.org/10.1186/s13638-020-01825-y]
[http://dx.doi.org/10.1088/1742-6596/1607/1/012017]
[http://dx.doi.org/10.3390/s19051023] [PMID: 30823391]
[http://dx.doi.org/10.1109/JIOT.2020.3012617]
[http://dx.doi.org/10.1007/s00607-019-00786-5]
[http://dx.doi.org/10.1002/spe.2824]
[http://dx.doi.org/10.1016/j.future.2019.09.060]
[http://dx.doi.org/10.1002/cpe.5581]
[http://dx.doi.org/10.1142/S021969131941025X]
[http://dx.doi.org/10.3390/s19092122] [PMID: 31071923]
[http://dx.doi.org/10.1109/CEC.2019.8790305]
[http://dx.doi.org/10.1109/ACCESS.2019.2924958]
[http://dx.doi.org/10.1007/978-3-030-11641-5_27]
[http://dx.doi.org/10.21123/bsj.2019.16.3.0667]
[http://dx.doi.org/10.12694/scpe.v20i2.1538]
[http://dx.doi.org/10.14569/IJACSA.2019.0100913]
[http://dx.doi.org/10.1155/2018/2102348]
[http://dx.doi.org/10.1145/3190645.3190699]
[http://dx.doi.org/10.1177/1550147717742073]
[http://dx.doi.org/10.23919/FRUCT.2017.8250177]
[http://dx.doi.org/10.5815/ijitcs.2016.04.01]
[http://dx.doi.org/10.1109/IAEAC.2017.8054177]
[http://dx.doi.org/10.1016/j.eij.2015.07.001]
[http://dx.doi.org/10.1109/INFCOMW.2016.7562149]
[http://dx.doi.org/10.1109/MCC.2017.27]
Available from:https://github.com/WorkflowSim [http://dx.doi.org/10.1109/eScience.2012.6404430]
[http://dx.doi.org/10.1002/spe.995]
[http://dx.doi.org/10.1002/9781119525080.ch17]
[http://dx.doi.org/10.1109/AINA.2010.32]