Core Concepts
A lean simulation framework is proposed to efficiently stress test IoT cloud systems by representing IoT devices symbolically, managing edge device execution timing, and grouping edge devices into scalable simulation nodes.
Abstract
The paper presents a lean simulation framework designed for stress testing IoT cloud systems. The key features of the framework are:
IoT devices are represented symbolically, focusing only on their payload and communication methods, to avoid runtime bloat observed in existing edge-to-cloud simulators.
Edge devices are augmented with configurable variables (offset and speed) to account for the variability in start times and data transmission intervals, mitigating bursty communication and improving the operational capacity of the simulators.
Edge devices are grouped into clusters called simulation nodes, which can be executed on native hosts, virtual machines, or Docker containers. This enables more scalable deployment of the simulators under limited computational resources.
The framework is supported by a domain-specific language called IoTECS, which allows practitioners to generate simulators from model-based specifications. The paper evaluates the simulators generated from IoTECS specifications for stress testing two real-world IoT cloud systems - a cloud-based IoT monitoring system and an IoT-connected vehicle system. The results show that the simulators:
Achieve best performance when configured with Docker containerization.
Effectively assess the service capacity of the case-study systems.
Outperform industrial stress-testing baseline tools, JMeter and Locust, by a factor of 3.5 in terms of the number of IoT and edge devices they can simulate using identical hardware resources.
Feedback from interviews with engineers at the industry partner suggests that IoTECS is effective in stress testing IoT cloud systems, saving significant time and effort.
Stats
The simulators created using IoTECS can simulate up to 19,000 IoT devices without packet loss.
Simulators generated from IoTECS outperform JMeter and Locust by a factor of 3.5 in terms of the number of IoT and edge devices they can simulate using identical hardware resources.
Quotes
"IoTECS is effective in stress testing IoT cloud systems, saving significant time and effort."
"Simulators created using IoTECS achieve best performance when configured with Docker containerization."