Dynamic Scheduling of Contextually Categorised Internet of Things Services in Fog Computing Environment
<p>Prioritization of QoS parameters in different IoT service categories.</p> "> Figure 2
<p>High-level formal model of the scheduling environment.</p> "> Figure 3
<p>Device registration procedure.</p> "> Figure 4
<p>System architecture and the utilized data model.</p> "> Figure 5
<p>Simulation architecture in IMUNES.</p> "> Figure 6
<p>Throughput reported by the data reception service (traffic generation speed: 66 Mbps).</p> "> Figure 7
<p>Throughput reported by the data reception service (traffic generation speed: 66 Mbps).</p> "> Figure 8
<p>Request-response latency in automation service scenario simulation (dynamic scheduling algorithm).</p> "> Figure 9
<p>Latency comparison of different scheduling algorithms in automation service scenario simulation.</p> ">
Abstract
:1. Introduction
2. Related Work
2.1. Offloading in Fog Environment
2.2. IoT Service Models
2.3. Scheduling Execution and Offloading Algorithms
3. Applying Fog Computing Concept within the IoT Architectures
3.1. Contexts of Service Scheduling across Fog-to-Cloud Environment
- Available execution environment (device context);
- Specific service scenario (service context);
- Specific service user (user context).
- CPU (frequency, number of processing units);
- RAM (frequency, capacity);
- Storage memory (frequency, capacity);
- Location (network address - private and public IP, GPS location);
- Power supply (available battery capacity, AC power supply);
- Communication (capacity of IP connection, other supported protocols).
- Data persistence (persistent/non-persistent);
- User reach (general/specific);
- Communication (IP connection capacity, other necessary communication protocols);
- Latency (maximum allowed latency);
- Security (low/high risk);
- Statefulness (stateful/stateless).
- User location (network address, GPS location);
- Explicit limitations of QoS parameters.
3.2. QoS Parameters Affected by Applying Fog Computing
- Latency: The most common parameter included in the evaluation of distributed computing systems. Total latency in a distributed system includes transmission delay (request sending time), propagation delay (data transition time), and operational delay (request processing time). Fog computing allows the execution of processing requests closer to end-users, or in the best-case scenario, within the same local environment. Thus, it reduces propagation and transmission delay, and consequentially the overall service response time calculated as the difference of the moment when the response is received () on the user’s side and the moment when the request is sent () towards the system:
- Network traffic reduction: The amount of data traffic generated by IoT devices towards the public network has grown to the extent that it could cause unnecessary network congestion. Fog computing implicitly tackles this issue by reducing the volume of data that leave the local network. Placing fog nodes closer to the end-devices and utilizing them as data sinks or gateways for IP communication could reduce the overall amount of generated data traffic and improve service performance in the context of this QoS parameter. The quantification of this parameter is carried out by the amount of data traffic that is not generated towards the public network or by the number of locally processed requests;
- Reliability: The system’s reliability is its ability to process the incoming requests during a specific time duration. Fog nodes can be utilized to enable partial or complete processing of requests even in periods of network outages. Thus, fog nodes could buffer received requests until the network becomes operational again, or these requests could be fully processed within the local environment. Measuring the reliability from the user’s point of view is carried out by the following formula:
- Scalability (throughput): Scalability is a property of computing systems that implies using the optimal number of processing resources necessary for efficient service delivery. Scalable architectures scale processing resources according to the volume of incoming requests to remain the constant throughput of the system. Fog computing introduces the option of horizontal system scaling that, besides increasing the system’s processing capabilities, also targets communication latency. Therefore, utilization of fog computing improves the system’s performance in the context of its throughput and latency, and thus, it ought to offer better results than cloud scaling strategies alone. Maintaining a constant throughput under various operational conditions is the best indicator of a scalable system and to measure the system’s scalability, we propose Little’s formula [36], where the throughput (X) is specified as the ratio between the average number of requests within the system (N) and the average time that each request spends in a system (t):
- Security: The vulnerability of IoT devices [37], and the complete IoT system architectures, is often revealed as the major concern for the massive utilization of IoT. This is mainly the consequence of neglecting the security in the design phase of the solution development [38]. To change this course, OWASP (Open Web Application Security Project) initiated a separate IoT project designed to help manufacturers, developers, and consumers to better understand the security issues associated with the Internet of Things [39]. Within this project, OWASP has identified ten major security breaches of IoT that should be considered to achieve a sufficiently secure IoT system design. Additionally, these guidelines, combined with OWASP’s top ten application security risks [40], can be utilized to identify security breaches of the specific IoT architecture. After their identification, STRIDE method can be used to classify them, and afterward, DREAD method can be utilized to quantitatively assess the threat level of the evaluated system architecture [41]. However, we believe that prioritizing the local processing raises the overall service security level by default because the local deployment of at least one service component offers the opportunity to apply necessary security mechanisms before transmitting data to vulnerable public networks. Thus, we did not quantify the security threats in this paper, but we partially tackled this issue by prioritizing the local deployment in our scheduling algorithm.
3.3. Deployment Restrictions and the Categorization of IoT Services
- Device interaction (sensor-data collection and actuator management);
- Different forms of data processing;
- Data storage.
3.4. Objective Function
4. Scheduling of IoT Services in Fog Computing Environment
4.1. Formal Specification of Our Service Scheduling System
4.2. Algorithm for Dynamic Scheduling of IoT Service Components
Algorithm 1 Scheduling algorithm |
|
4.2.1. Setting Up Service Deployment Restrictions
- Mandatory local execution (lines 2–3)—for service components (SC) intended to realize interaction with end-devices in service scenarios (S) that imply high-security risk (these components could be utilized to apply security mechanisms before data transmission to the public network), and for service components requiring specific constrained communication protocols (their reach is usually limited to the local environment);
- Mandatory cloud execution (lines 4–5)—for service components that are stateful or have persistent data storage, and are intended for mobile users since their frequent migrations could be more complex and time-consuming than acquired performance improvement;
- Preferred energy-supplied fog nodes (lines 6–7)—for service components that are stateful or have persistent data storage, and are intended for static users since such devices should provide a sufficiently stable execution environment due to their constant energy supply.
Algorithm 2 Set deployment restrictions |
|
4.2.2. Device Agents Categorisation
Algorithm 3 Categorise available fog devices to local and public |
|
4.2.3. Scheduling Procedure (First Stage)
Algorithm 4 Scheduling procedure (first stage) |
|
4.2.4. Scheduling Procedure (Second Stage)
Algorithm 5 Scheduling procedure (second stage) |
|
4.2.5. Dynamic Scheduling Based on the QoS Parameters
Algorithm 6 Dynamic scheduling on QoS parameters |
|
5. Simulation and Performance Evaluation
5.1. Streaming Service Simulation Scenario
5.1.1. Test 1: Verification of Re-Scheduling Execution
5.1.2. Test 2: Local Node Prioritization
5.2. Automation Service Scenario
Automation Simulation Results
6. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
Abbreviations
QoS | Quality of Service |
IoT | Internet of Things |
RTT | Round Trip Time |
IP | Internet Protocol |
VPN | Virtual Private Network |
OWASP | Open Web Application Security Project |
NAT | Network Address Translation |
References
- Kalyani, Y.; Collier, R. A Systematic Survey on the Role of Cloud, Fog, and Edge Computing Combination in Smart Agriculture. Sensors 2021, 21, 5922. [Google Scholar] [CrossRef] [PubMed]
- Puliafito, C.; Mingozzi, E.; Longo, F.; Puliafito, A.; Rana, O. Fog Computing for the Internet of Things: A Survey. ACM Trans. Internet Technol. 2019, 19, 1–41. [Google Scholar] [CrossRef]
- Ozeer, U.; Letondeur, L.; Ottogalli, F.G.; Salaün, G.; Vincent, J.M. Designing and Implementing Resilient IoT Applications in the Fog: A Smart Home Use Case. In Proceedings of the 2019 22nd Conference on Innovation in Clouds, Internet and Networks and Workshops (ICIN), Paris, France, 19–21 February 2019; pp. 230–232. [Google Scholar] [CrossRef] [Green Version]
- Mrabet, H.; Belguith, S.; Alhomoud, A.; Jemai, A. A Survey of IoT Security Based on a Layered Architecture of Sensing and Data Analysis. Sensors 2020, 20, 3625. [Google Scholar] [CrossRef] [PubMed]
- Hoque, S.; De Brito, M.S.; Willner, A.; Keil, O.; Magedanz, T. Towards Container Orchestration in Fog Computing Infrastructures. In Proceedings of the 2017 IEEE 41st Annual Computer Software and Applications Conference (COMPSAC), Turin, Italy, 4–8 July 2017; Volume 2, pp. 294–299. [Google Scholar] [CrossRef]
- Sri Raghavendra, M.; Chawla, P. A Review on Container-Based Lightweight Virtualization for Fog Computing. In Proceedings of the 2018 7th International Conference on Reliability, Infocom Technologies and Optimization (Trends and Future Directions) (ICRITO), Noida, India, 29–31 August 2018; pp. 378–384. [Google Scholar] [CrossRef]
- Jiang, Y.; Huang, Z.; Tsang, D.H.K. Challenges and Solutions in Fog Computing Orchestration. IEEE Netw. 2018, 32, 122–129. [Google Scholar] [CrossRef]
- Caminero, A.C.; Muñoz-Mansilla, R. Quality of Service Provision in Fog Computing: Network-Aware Scheduling of Containers. Sensors 2021, 21, 3978. [Google Scholar] [CrossRef]
- Santos, J.; Wauters, T.; Volckaert, B.; De Turck, F. Resource Provisioning in Fog Computing: From Theory to Practice. Sensors 2019, 19, 2238. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Kayal, P. Kubernetes in Fog Computing: Feasibility Demonstration, Limitations and Improvement Scope: Invited Paper. In Proceedings of the 2020 IEEE 6th World Forum on Internet of Things (WF-IoT), New Orleans, LA, USA, 2–16 June 2020; pp. 1–6. [Google Scholar] [CrossRef]
- Goethals, T.; De Turck, F.; Volckaert, B. FLEDGE: Kubernetes Compatible Container Orchestration on Low-Resource Edge Devices. In Internet of Vehicles. Technologies and Services Toward Smart Cities; Hsu, C.H., Kallel, S., Lan, K.C., Zheng, Z., Eds.; Springer International Publishing: Cham, Switzerland, 2020; pp. 174–189. [Google Scholar]
- Aljanabi, S.; Chalechale, A. Improving IoT Services Using a Hybrid Fog-Cloud Offloading. IEEE Access 2021, 9, 13775–13788. [Google Scholar] [CrossRef]
- Kramer, K.; Hedin, D.; Rolkosky, D. Smartphone based face recognition tool for the blind. In Proceedings of the 2010 Annual International Conference of the IEEE Engineering in Medicine and Biology, Buenos Aires, Argentina, 31 August–4 September 2010; pp. 4538–4541. [Google Scholar] [CrossRef]
- Li, Q.; Zhao, J.; Gong, Y.; Zhang, Q. Energy-efficient computation offloading and resource allocation in fog computing for Internet of Everything. China Commun. 2019, 16, 32–41. [Google Scholar] [CrossRef]
- Yousefpour, A.; Ishigaki, G.; Jue, J.P. Fog Computing: Towards Minimizing Delay in the Internet of Things. In Proceedings of the 2017 IEEE International Conference on Edge Computing (EDGE), Honolulu, HI, USA, 25–30 June 2017; pp. 17–24. [Google Scholar] [CrossRef]
- Vilalta, R.; Lopez, V.; Giorgetti, A.; Peng, S.; Orsini, V.; Velasco, L.; Serral-Gracia, R.; Morris, D.; De Fina, S.; Cugini, F.; et al. TelcoFog: A Unified Flexible Fog and Cloud Computing Architecture for 5G Networks. IEEE Commun. Mag. 2017, 55, 36–43. [Google Scholar] [CrossRef] [Green Version]
- Li, L.; Guo, M.; Ma, L.; Mao, H.; Guan, Q. Online Workload Allocation via Fog-Fog-Cloud Cooperation to Reduce IoT Task Service Delay. Sensors 2019, 19, 3830. [Google Scholar] [CrossRef] [Green Version]
- Brennand, C.A.R.L.; Filho, G.P.R.; Maia, G.; Cunha, F.; Guidoni, D.L.; Villas, L.A. Towards a Fog-Enabled Intelligent Transportation System to Reduce Traffic Jam. Sensors 2019, 19, 3916. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Wang, J.; Li, D. Adaptive Computing Optimization in Software-Defined Network-Based Industrial Internet of Things with Fog Computing. Sensors 2018, 18, 2509. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Lee, D.; Lee, H. IoT Service Classification and Clustering for Integration of IoT Service Platforms. J. Supercomput. 2018, 74, 6859–6875. [Google Scholar] [CrossRef]
- Gigli, M.; Koo, S. Internet of Things: Services and Applications Categorization Abstract. Adv. Internet Things 2011, 1, 27–31. [Google Scholar] [CrossRef] [Green Version]
- Noor, T.H. A service classification model for IoT services discovery. Computing 2021, 103, 2553–2572. [Google Scholar] [CrossRef]
- Yao, L.; Wang, X.; Sheng, Q.Z.; Dustdar, S.; Zhang, S. Recommendations on the Internet of Things: Requirements, Challenges, and Directions. IEEE Internet Comput. 2019, 23, 46–54. [Google Scholar] [CrossRef]
- Wu, H.; Zhang, Z.; Guan, C.; Wolter, K.; Xu, M. Collaborate Edge and Cloud Computing With Distributed Deep Learning for Smart City Internet of Things. IEEE Internet Things J. 2020, 7, 8099–8110. [Google Scholar] [CrossRef]
- Sarkar, S.; Misra, S. Theoretical modelling of fog computing: A green computing paradigm to support IoT applications. IET Netw. 2016, 5, 23–29. [Google Scholar] [CrossRef] [Green Version]
- Yousefpour, A.; Patil, A.; Ishigaki, G.; Kim, I.; Wang, X.; Cankaya, H.C.; Zhang, Q.; Xie, W.; Jue, J.P. FOGPLAN: A Lightweight QoS-Aware Dynamic Fog Service Provisioning Framework. IEEE Internet Things J. 2019, 6, 5080–5096. [Google Scholar] [CrossRef]
- Thoma, M.; Meyer, S.; Sperner, K.; Meissner, S.; Braun, T. On IoT-services: Survey, Classification and Enterprise Integration. In Proceedings of the 2012 IEEE International Conference on Green Computing and Communications, Besancon, France, 20–23 November 2012; pp. 257–260. [Google Scholar]
- Ju, J.; Kim, M.S.; Ahn, J.H. Prototyping Business Models for IoT Service. Procedia Comput. Sci. 2016, 91, 882–890. [Google Scholar] [CrossRef] [Green Version]
- Barros, C.; Rocio, V.; Sousa, A.; Paredes, H. Context-Aware Mobile Applications in Fog Infrastructure: A Literature Review. In Trends and Innovations in Information Systems and Technologies; Rocha, Á., Adeli, H., Reis, L.P., Costanzo, S., Orovic, I., Moreira, F., Eds.; Springer International Publishing: Cham, Switzerland, 2020; pp. 318–328. [Google Scholar]
- Rahman, M.A.; Hossain, M.S.; Hassanain, E.; Muhammad, G. Semantic Multimedia Fog Computing and IoT Environment: Sustainability Perspective. IEEE Commun. Mag. 2018, 56, 80–87. [Google Scholar] [CrossRef]
- Luan, T.H.; Gao, L.; Li, Z.; Xiang, Y.; Wei, G.; Sun, L. Fog Computing: Focusing on Mobile Users at the Edge. arXiv 2016, arXiv:1502.01815. [Google Scholar]
- Jin, X.; Chun, S.; Jung, J.; Lee, K.H. A Fast and Scalable Approach for IoT Service Selection Based on a Physical Service Model. Inf. Syst. Front. 2017, 19, 1357–1372. [Google Scholar] [CrossRef]
- Giacobbe, M.; Di Pietro, R.; Zaia, A.; Puliafito, A. The Internet of Things in Oil and Gas Industry: A Multi Criteria Decision Making Brokerage Strategy. In Proceedings of the 4th International Conference on Automation, Control Engineering and Computer Science, Tangier, Morocco, 28–30 March 2017; Volume 21, pp. 47–52. [Google Scholar]
- Badawy, M.M.; Ali, Z.H.; Ali, H.A. QoS provisioning framework for service-oriented internet of things (IoT). Clust. Comput. 2019, 23, 575–591. [Google Scholar] [CrossRef]
- Singh, M.; Baranwal, G.; Tripathi, A.K. QoS-Aware Selection of IoT-Based Service. Arab. J. Sci. Eng. 2020, 45, 10033–10050. [Google Scholar] [CrossRef]
- informIT. Scalable and High-Performance Web Applications. Available online: https://www.informit.com/articles/article.aspx?p=26942&seqNum=18 (accessed on 26 July 2021).
- Zenofex. All Your Things Are Belong to Us. Available online: https://blog.exploitee.rs/2017/08/ (accessed on 26 July 2021).
- Rauf, A.; Shaikh, R.A.; Shah, A. Security and privacy for IoT and fog computing paradigm. In Proceedings of the 2018 15th Learning and Technology Conference (L&T), Jeddah, Saudi Arabia, 25–26 February 2018; pp. 96–101. [Google Scholar] [CrossRef]
- OWASP. Internet of Things Project. Available online: https://wiki.owasp.org/index.php/OWASP_Internet_of_Things_Project#tab=Main (accessed on 26 July 2021).
- OWASP. Top Ten Web Application Security Risks. Available online: https://owasp.org/www-project-top-ten/ (accessed on 26 July 2021).
- Mahmood, H. Application Threat Modeling Using DREAD and STRIDE. Available online: https://haiderm.com/application-threat-modeling-using-dread-and-stride/ (accessed on 26 July 2021).
- Nadareishvili, I.; Mitra, R.; McLarty, M.; Amundsen, M. Microservice Architecture: Aligning Principles, Practices, and Culture; O’Reilly Media, Inc.: Sebastopol, CA, USA, 2016. [Google Scholar]
- Kubernetes. Control Plane-Node Communication. Available online: https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/ (accessed on 2 December 2021).
- Wang, Z.; Buyya, R. Integration of FogBus2 Framework with Container Orchestration Tools in Cloud and Edge Computing Environments. arXiv 2021, arXiv:2112.02267. [Google Scholar]
- Feiszli, A. 8 Use Cases for Kubernetes over VPN: Unlocking Multicloud Flexibility. Available online: https://itnext.io/8-use-cases-for-kubernetes-over-vpn-unlocking-multicloud-flexibility-3958dab2219f (accessed on 14 December 2021).
- IMUNES. Integrated Multiprotocol Network Emulator/Simulator. Available online: http://imunes.net/ (accessed on 26 October 2021).
- Salopek, D.; Vasić, V.; Zec, M.; Mikuc, M.; Vašarević, M.; Končar, V. A network testbed for commercial telecommunications product testing. In Proceedings of the 2014 22nd International Conference on Software, Telecommunications and Computer Networks (SoftCOM), Split, Croatia, 17–19 September 2014; pp. 372–377. [Google Scholar] [CrossRef]
- Hill, Z.; Chen, S.; Wall, D.; Papa, M.; Hale, J.; Hawrylak, P. Simulation and Analysis Framework for Cyber-Physical Systems. In Proceedings of the 12th Annual Conference on Cyber and Information Security Research, Oak Ridge, TN, USA, 4–6 April 2017; Association for Computing Machinery: New York, NY, USA, 2017; pp. 1–4. [Google Scholar] [CrossRef]
- Puljiz, Z.; Penco, R.; Mikuc, M. Performance analysis of a decentralized network simulator based on IMUNES. In Proceedings of the 2008 International Symposium on Performance Evaluation of Computer and Telecommunication Systems, Edinburgh, UK, 16–18 June 2008; pp. 519–525. [Google Scholar]
- Kubernetes. Kubernetes Scheduler. Available online: https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/ (accessed on 17 December 2021).
- CERN OpenStack Private Cloud Guide. Scheduling Policies. Available online: https://clouddocs.web.cern.ch/containers/tutorials/scheduling.html (accessed on 17 December 2021).
- Islam, M.S.U.; Kumar, A.; Hu, Y.C. Context-aware scheduling in Fog computing: A survey, taxonomy, challenges and future directions. J. Netw. Comput. Appl. 2021, 180, 103008. [Google Scholar] [CrossRef]
- Kubernetes. Pods and Nodes. Available online: https://kubernetesbootcamp.github.io/kubernetes-bootcamp/3-1.html (accessed on 17 December 2021).
t1 | t2 | t3 | t4 | t5 | |
---|---|---|---|---|---|
fog_node5 | 544 | 1393 | 60 | 1215 | 71 |
fog_node6 | 1568 | 83 | 1538 | 58 | 922 |
t1 | t2 | t3 | t4 | t5 | |
---|---|---|---|---|---|
LINK 1 (fog_node6) | 100 | 100 | 30 | 100 | 30 |
LINK 2 (fog_node5) | 100 | 30 | 100 | 30 | 100 |
t1 | t2 | t3 | t4 | t5 | |
---|---|---|---|---|---|
LINK 1 (fog_node6) | 100 | 100 | 100 | 100 | 30 |
LINK 2 (fog_node5) | 100 | 55 | 45 | 30 | 100 |
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
Krivic, P.; Kusek, M.; Cavrak, I.; Skocir, P. Dynamic Scheduling of Contextually Categorised Internet of Things Services in Fog Computing Environment. Sensors 2022, 22, 465. https://doi.org/10.3390/s22020465
Krivic P, Kusek M, Cavrak I, Skocir P. Dynamic Scheduling of Contextually Categorised Internet of Things Services in Fog Computing Environment. Sensors. 2022; 22(2):465. https://doi.org/10.3390/s22020465
Chicago/Turabian StyleKrivic, Petar, Mario Kusek, Igor Cavrak, and Pavle Skocir. 2022. "Dynamic Scheduling of Contextually Categorised Internet of Things Services in Fog Computing Environment" Sensors 22, no. 2: 465. https://doi.org/10.3390/s22020465
APA StyleKrivic, P., Kusek, M., Cavrak, I., & Skocir, P. (2022). Dynamic Scheduling of Contextually Categorised Internet of Things Services in Fog Computing Environment. Sensors, 22(2), 465. https://doi.org/10.3390/s22020465