Skip to content
Tech News
← Back to articles

Co-Opting Linux Processes for High-Performance Network Simulation (2022)

read original more articles
Why This Matters

Phantom introduces a groundbreaking approach to network simulation by directly executing unmodified Linux applications, significantly improving performance and scalability. This advancement enables more efficient testing of distributed systems, which is crucial for the development of robust, high-performance network infrastructure. The tool's ability to outperform existing simulators at large scales can accelerate innovation and reduce costs in network research and development.

Key Takeaways

Network experimentation tools are vitally important to the process of developing, evaluating, and testing distributed systems. The state-of-the-art simulation tools are either prohibitively inefficient at large scales or are limited by nontrivial architectural challenges, inhibiting their widespread adoption. In this paper, we present the design and implementation of Phantom, a novel tool for conducting distributed system experiments. In Phantom, a discrete-event network simulator directly executes unmodified applications as Linux processes and innovatively synthesizes efficient process control, system call interposition, and data transfer methods to co-opt the processes into the simulation environment. Our evaluation demonstrates that Phantom is up to 2.2× faster than Shadow, up to 3.4× faster than NS-3, and up to 43× faster than gRaIL in large P2P benchmarks while offering performance comparable to Shadow in large Tor network simulations.