FogFrame
FogFrame manages decentralized placement, deployment, and runtime execution of Internet of Things (IoT) applications across edge and cloud resources to optimize resource utilization and Quality of Service (QoS) in fog computing environments.
Key Features:
- Decentralized Service Management: Enables placement, deployment, and execution of services across distributed edge devices and cloud infrastructure.
- Service Placement Algorithms: Implements greedy and genetic algorithms for service placement, with the greedy algorithm maximizing edge usage and the genetic algorithm distributing services to prevent device overloads.
- Adaptability and Resource Optimization: Dynamically adapts service placement based on demand, resource availability, and specific sensor-equipment requirements from new application requests.
- Performance Evaluation: Validated on real-world operational testbeds to assess QoS parameters and fog resource utilization, with measured edge deployment time at 14% of cloud deployment time.
- Runtime Event Handling: Recovers services when devices are removed, migrates services to release cloud resources and highly utilized devices, and performs migrations during overloads to maintain continuous operation.
- Efficient Resource Utilization: Uses a genetic algorithm to maintain edge device utilization at approximately 50% CPU capacity to accommodate new applications and avoid resource exhaustion.
Scientific Applications:
- Fog computing research: Enables experimental evaluation of fog architectures and service placement strategies in realistic distributed environments.
- IoT application deployment: Supports deployment and runtime management studies for IoT applications that span sensors, edge devices, and cloud resources.
- Resource management and optimization: Facilitates investigation of algorithms for load balancing, resource allocation, and CPU utilization control in fog landscapes.
- Performance and scalability evaluation: Provides a platform for measuring QoS, deployment latency, and scalability of distributed systems using operational testbeds.
Methodology:
Decentralized service placement and execution across edge and cloud resources; greedy algorithm to maximize edge placement; genetic algorithm to distribute services and maintain ~50% CPU utilization on edge devices; dynamic placement adaptation based on demand and resource availability including sensor-specific requirements; runtime event handling via service recovery and service migration to release cloud or overloaded devices; evaluation on real-world operational testbeds measuring QoS, resource utilization, and deployment time (edge = 14% of cloud).
Topics
Details
- License:
- Apache-2.0
- Cost:
- Free of charge
- Tool Type:
- workflow
- Programming Languages:
- Java, Shell
- Added:
- 11/28/2021
- Last Updated:
- 11/28/2021
Operations
Publications
Skarlat O, Schulte S. FogFrame: a framework for IoT application execution in the fog. PeerJ Computer Science. 2021;7:e588. doi:10.7717/peerj-cs.588. PMID:34307857. PMCID:PMC8279146.