Direct code execution: revisiting library OS architecture for reproducible network experiments

  • Authors:
  • Hajime Tazaki;Frédéric Uarbani;Emilio Mancini;Mathieu Lacage;Daniel Camara;Thierry Turletti;Walid Dabbous

  • Affiliations:
  • University of Tokyo, Tokyo, Japan;INRIA, Sophia Antipolis, France;INRIA, Sophia Antipolis, France;Alcmeon, Sophia Antipolis, France;INRIA, Sophia Antipolis, France;INRIA, Sophia Antipolis, France;INRIA, Sophia Antipolis, France

  • Venue:
  • Proceedings of the ninth ACM conference on Emerging networking experiments and technologies
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

We describe the first capability, to our knowledge, to execute nearly unmodified applications and Linux kernel code in the context of a widely-used open source discrete event networking simulator (ns-3). We propose Direct Code Execution (DCE), a framework that dramatically increases the number of available protocol models and realism available for ns-3 simulations. DCE meets the goals recently proposed for fully reproducible networking research and runnable papers, with the added benefits of 1) the ability of completely deterministic reproducibility, 2) the scalability that simulation time dilation offers, 3) capabilities supporting automated code coverage analysis, and 4) improved debuggability via execution within a single address space. In this paper, we describe in detail DCE, report on packet processing benchmarks and showcase key features of the framework with different use cases. We reproduce a previously published Multipath TCP (MPTCP) experiment and highlight how code coverage testing can be automated by showing results achieving 55-86% coverage of the MPTCP implementation. Then we demonstrate how network stack debugging can be easily performed and reproduced across a distributed system. Our first benchmarks are promising and we believe this framework can benefit the network community by enabling realistic, reproducible experiments and runnable papers.