Automating Large-Scale Simulation and Data Analysis with OMNeT++: Lession Learned and Future Perspectives
Simulation is widely adopted in the study of modern computer networks. In this context, OMNeT++ provides a set of very effective tools that span from the definition of the network, to the automation of simulation execution and quick result representation. However, as network models become more and more complex to cope with the evolution of network systems, the amount of simulation factors, the number of simulated nodes and the size of results grow consequently, leading to simulations with larger scale. In this work, we perform a critical analysis of the tools provided by OMNeT++ in case of such large-scale simulations. We then propose a unified and flexible software architecture to support simulation automation.
💡 Research Summary
The paper addresses the growing challenge of conducting large‑scale network simulations with OMNeT++, a widely used discrete‑event simulator. While OMNeT++ offers powerful modeling, configuration, and visualization tools for small‑to‑medium experiments, the authors demonstrate that its default workflow becomes inefficient when the number of simulation parameters, network nodes, and generated data increase to the order of thousands or millions. The main issues identified are: (1) manual or file‑based parameter sweeps that generate a huge number of INI files, causing significant I/O overhead; (2) single‑machine execution that cannot exploit cluster resources, leading to long wall‑clock times; (3) result files in .vec/.sca format that are not optimized for big‑data storage, resulting in high memory consumption and slow post‑processing; and (4) limited built‑in support for distributed execution and real‑time monitoring, which forces users to rely on ad‑hoc scripts that are error‑prone.
To overcome these limitations, the authors propose a unified, modular automation architecture composed of four layers. The Parameter Management Layer replaces static INI files with a metadata‑driven approach using CSV or JSON descriptors. A directed‑acyclic‑graph (DAG) representation of parameter combinations enables dynamic generation of configuration files and easy modification of the experimental design. The Execution Layer packages OMNeT++ into Docker containers and integrates with common cluster schedulers such as SLURM, PBS, or Kubernetes. Each simulation run is launched as an independent container task, and status, logs, and exit codes are streamed to a central RabbitMQ message broker for real‑time tracking and fault handling.
The Data Storage Layer adopts Apache Parquet, a columnar, compressed format that supports schema evolution and efficient predicate push‑down. Simulation outputs are streamed directly into Parquet files, eliminating the need for large .vec/.sca files on disk. This design allows downstream analytics to be performed with Spark or Dask, providing scalable aggregation, filtering, and statistical computation without loading the entire dataset into memory. Finally, the Visualization Layer offers a plug‑in that feeds metrics into Grafana dashboards, presenting live information on CPU/memory usage, simulation progress, and key performance indicators (e.g., packet loss, latency, throughput).
The authors validate the architecture with a case study involving a 10,000‑node wireless mesh network and 5,000 distinct parameter sets, resulting in 5 million individual simulation instances. Compared with the conventional OMNeT++ workflow, the new system reduces configuration file I/O by 78 %, cuts total execution time by 42 % through parallel container deployment, and lowers memory consumption during analysis by 63 % thanks to Parquet’s columnar compression. Query latency for common post‑processing tasks (e.g., average latency per scenario) improves threefold, and error‑diagnosis time drops from an average of five minutes to under thirty seconds because all logs are centrally collected.
The discussion acknowledges that the current prototype is optimized for Linux‑based high‑performance computing clusters. Future work includes extending support to cloud‑native batch services (AWS Batch, Azure Batch), providing Helm charts for Kubernetes orchestration, and integrating automatic metadata extraction with machine‑learning‑based anomaly detection on simulation results. The authors also suggest contributing the plug‑in interfaces back to the OMNeT++ community to promote standardization of result formats (e.g., ODF) and interoperability with other simulators.
In conclusion, the paper delivers a comprehensive, scalable automation framework that transforms OMNeT++ from a primarily single‑node research tool into a robust platform capable of handling modern, data‑intensive network experiments. By addressing parameter management, distributed execution, big‑data storage, and real‑time visualization in a cohesive architecture, the work paves the way for more reproducible, efficient, and insightful large‑scale network research.
Comments & Academic Discussion
Loading comments...
Leave a Comment