Source-linked AI summary

YAFS: A simulator for IoT scenarios in fog computing

Isaac Lera, Carlos Guerrero, Carlos Juiz

arXiv:1902.01091v1cs.NI

TL;DR

Fog-computing resource placement is an NP problem involving optimal network selection. YAFS presents a discrete-event simulator for novel and complex IoT fog-computing models, with results showing similar convergence and slightly better runtime than iFogSim.

  • Problem

    Fog-computing resource placement is an NP problem involving selection of the optimal network.

  • Method

    YAFS is a discrete-event fog-computing simulator for modelling novel and complex IoT scenarios and application interactions.

  • Results

    YAFS produces results with convergence similar to iFogSim and a slightly better runtime.

  • Takeaways & Limitations

    YAFS supports modelling novel and complex IoT fog-computing scenarios.

  • Takeaways & Limitations

    Future work covers power-aware management policies and functions for controlling resource computational capacity.

Abstract

from arXiv · show

We propose a fog computing simulator for analysing the design and deployment of applications through customized and dynamical strategies. We model the relationships among deployed applications, network connections and infrastructure characteristics through complex network theory, enabling the integration of topological measures in dynamic and customizable strategies such as the placement of application modules, workload location, and path routing and scheduling of services. We present a comparative analysis of the efficiency and the convergence of results of our simulator with the most referenced entity, iFogSim. To highlight YAFS functionalities, we model three scenarios that, to the best of our knowledge, cannot be implemented with current fog simulators: dynamic allocation of new application modules, dynamic failures of network nodes and user mobility along the topology.

1. Introduction

YAFS is a highly customizable discrete-event simulator for fog and edge IoT scenarios, designed to model application placement and dynamic network behavior. It extends simulation capabilities through complex-network modeling, customizable runtime strategies, and scenarios involving allocation, failures, and mobility.

  • Simulator and motivation: The placement problem selects network entities for application deployment under constraints including location, hardware, links, QoS, energy, and cost.These factors evolve with user movement, link failures, network congestion, and application popularity.
  • Simulator and motivation: YAFS is a discrete-event simulator for analysing application design and deployment in fog environments.It incorporates strategies for placement, scheduling, and routing.
  • Core capabilities: YAFS models infrastructure networks as complex networks, enabling topological features to be incorporated into placement solutions.The approach uses graph-based relationships and supports customized simulator policies.
  • Dynamic scenarios: YAFS supports dynamic creation and removal of devices, links, workload sources, and runtime processes for modeling failures and user movement.It reports communication failures and provides data for analysing unsatisfied requests, placements under failures, and robust networks.
  • Core capabilities: Users can define placement, scheduling, and routing algorithms that operate during simulation execution.Scheduling can select among different application modules, while routing chooses paths between transmitters and receptors.
  • Evaluation and contribution: The paper evaluates YAFS against iFogSim and presents case studies involving dynamic module allocation, device failures, and user movement.The authors position these scenarios as functionalities unavailable in current fog simulators.

2. Related Work

The related-work comparison distinguishes fog simulators by topology, scenario coding, recorded results, dynamic changes, and programming language. YAFS uses graph-based topologies, supports dynamic scenarios and policies, records data for post-simulation analysis, and introduces API improvements compared with prior simulators.

  • Topology: Fog simulators differ in topology representation: EdgeCloudSim and iFogSim use hierarchies, whereas FogTorch, EmuFog, and YAFS use graphs.YAFS additionally supports subgraphs for isolated regions or fog colonies.
  • Scenario representation: YAFS supports topology definitions through JSON-based files and supports BRITE and CAIDA topology formats.The comparison states these formats are supported by EmuFog and YAFS but not by the other simulators.
  • Results: YAFS and EdgeCloudSim record simulation data for post-simulation analysis, enabling users to analyze events and derive specific indicators.This is presented as important for complex scenarios with customizable policies.
  • Dynamic policies: Only YAFS supports dynamic scenarios in the cloud, grid, and fog edge, while EdgeCloudSim supports user movement in the infrastructure.The comparison covers dynamic allocation or placement, path routing, service orchestration, and workload or user movement.
  • Simulator roles: FogTorch uses Monte Carlo simulations to optimize application allocation under QoS restrictions, while YAFS integrates allocation values to obtain simulated metrics.FogTorch considers latency, bandwidth, cost, and response time as QoS indicators.
  • YAFS and iFogSim: YAFS applies a graph-based complex-network representation and introduces API improvements while comparing performance with an iFogSim application case.The comparison uses the iFogSim case study and two placement strategies.

3. YAFS architecture

YAFS combines a graph-based fog topology with discrete-event simulation and customizable application, placement, selection, and population policies. Its models support dynamic interactions, flexible entity and application representations, and detailed result generation.

  • Simulation core: YAFS uses a generic library for discrete-event simulation, with SimPy implementing workload transmission and fog-node computation processes.The simulator executes processes and shared resources such as network links and queues.
  • Simulation core: The Core class orchestrates topology access, simulation execution, and customized selection, placement, population, and control policies.Policies can interact dynamically during execution.
  • Results and extensibility: YAFS records simulation events and computes measures including average response time, link latency, and resource utilization; its results function reproduces iFogSim results while enabling more complex analyses.The application representation supports partitioning and scaling for microservices and serverless models.
  • Topology and entities: YAFS represents fog scenarios as graphs whose nodes are network elements and whose vertices are network links, with NetworkX support for topology manipulation and import.Supported formats include JSON, GML, GEXF, Pickle, GraphML, and Pajek.
  • Topology and entities: Fog nodes require an identifier, while links require bandwidth and propagation attributes; customized attributes can model power, coordinates, virtualization, containers, microservices, and serverless functions.Entities can therefore have flexible definitions within the same scenario.
  • Application model: Applications comprise modules, dependencies, messages, and results, with message instructions affecting service time and bytes affecting transmission time.YAFS also supports message generation, reception, periodic messages, fractional selectivity, and broadcasting.

4. Evaluation

YAFS is evaluated against iFogSim using comparable cloud and edge placement experiments, with differences arising from simulator configurations and attributes. Results show similar convergence, slightly better YAFS runtime, and additional saturation measurements unavailable in iFogSim.

  • Comparison caveat: The reported results are not equal because the simulators use different computational, link, and message attributes despite similar settings.YAFS uses instructions per time, while iFogSim uses MIPS and represents link attributes differently.
  • Execution-time comparison: The simulators show similar behavior overall, but cloud-policy traffic saturates the network and affects iFogSim runtime, whereas edge policy controls more YAFS processes.Cloud placement sends messages through more links; edge placement deploys more application modules and therefore more discrete-event processes.
  • Network saturation: YAFS measures the total number of waiting messages at each fog-node level, whereas iFogSim does not provide this measure.The waiting-message count is reported for configurations with 4, 8, 12, and 16 gateways.
  • Latency comparison: Under edge policy, response time remains constant with fog-node count because clients and fog devices retain the same network distance.Latency is calculated after simulation in YAFS, while iFogSim requires the message sequence before execution.
  • Convergence: The convergence of both simulators is similar, with YAFS slightly more stable and showing better latency convergence.The study runs both simulators 50 times for 10,000 time units at each fog-node configuration.

5. Three complex scenarios

YAFS demonstrates three dynamic IoT scenarios: adding application modules, handling network-device failures, and moving workload sources. Across these experiments, latency changes consistently with receiver availability, failures, and sender movement.

  • Scope: The dynamic scenarios use arbitrary values because public real-world data for these scenario types are unavailable and their real characterization is outside scope.The authors therefore interpret the results as expected-behavior demonstrations rather than comparisons with real cases.
  • Dynamic allocation: Dynamic receiver allocation initially reduces latency by distributing messages more evenly, but adding receivers after the fifth does not improve performance.With one receiver, latency continuously increases; after the first deployment at time point 3300, latency decreases as receivers become available.
  • Dynamic allocation: From the eleventh module, receiver allocation changes the selection strategy and latency becomes stabilized.In the configuration with 20 fog nodes, response time also tends to remain stable.
  • Dynamic failures: When network or fog nodes fail, YAFS removes the node and its links, recomputes affected routes, and records messages that cannot be served.Messages waiting on a removed node are discarded, and latency worsens as failures occur.
  • Workload movement: In the mobility scenario, sender locations change periodically toward nearby receiver nodes while a round-robin scheduler selects different receivers.The experiment reduces request generation to every 100 time units because links near receivers receive many requests.
  • Workload movement: Latency decreases at each sender-movement step and ultimately converges at approximately 4.5 time units.The movement policy reduces hop count between senders and receivers at each period.

6. Conclusion and future work

YAFS is a discrete-event fog-computing simulator built around complex-network infrastructure models and customizable policies. It matches iFogSim’s convergence while offering slightly better runtime and supporting dynamic scenarios that iFogSim’s API cannot implement.

  • Contributions: YAFS models novel and complex IoT fog-computing scenarios through discrete-event simulation and complex network theory.Its policies control module placement, workload locations, routing, orchestration, and job scheduling.
  • Usability: YAFS records computational and transmission results in CSV files, supporting interoperability with Grafana, Panda, and R.Infrastructure and policy definitions can use a JSON-based format.
  • Usability: The simulator supports optimization-algorithm integration for evaluating fog-placement proposals.This extends the use of customizable policies beyond fixed infrastructure configurations.
  • Evaluation: YAFS and iFogSim have similar convergence, while YAFS has slightly better runtime.The comparison covers cloud and edge allocation policies.
  • Dynamic scenarios: YAFS implements dynamic module creation, device failures, and workload movement that cannot be implemented under iFogSim’s API.The reported results are consistent with the expected values in each experiment.
  • Future work: Future work includes power-aware policy management, topology definitions based on policies, and control of resource computational capacity.The authors also identify nomenclature improvements as future work.
Loading 1902.01091v1…