Analysis of Programming Language Overhead in DCE

In the context of network simulation, directly executing the code for new protocols and applications can add a sense of realism to the simulation while saving time that would have been required for development and validation of sufficiently representative models. Direct Code Execution (DCE) in ns-3 provides this functionality for debugging and analyzing new network applications directly in simulation. However, DCE currently requires that these applications are executed as native code that has been compiled from source code written in C or C++. This work exploits the fact that languages such as Python and Java launch their applications through native code that ultimately translates their source code into instructions that the underlying system understands. The efforts of this study provide a framework for allowing applications written in Python or Java to be executed within the simulated environment similarly to how DCE currently allows applications written in C or C++ to be introduced into simulation. This framework is tested on multiple simulated topologies for a variety of applications, and its overhead is examined in the context of memory usage and wallclock execution time.

[1]  Walid Dabbous,et al.  MSWIM demo abstract: direct code execution: increase simulation realism using unmodified real implementations , 2013, MobiWac '13.

[2]  Calvin J. Ribbens,et al.  Distributed ONE: scalable parallel network simulation , 2013, SimuTools.

[3]  Minsub Lee,et al.  Comparative analysis of real-time video performance in the CCN-based LTE networks , 2015, 2015 International Conference on Information and Communication Technology Convergence (ICTC).

[4]  Walid Dabbous,et al.  Direct code execution: revisiting library OS architecture for reproducible network experiments , 2013, CoNEXT.

[5]  Vikram S. Adve,et al.  LLVM: a compilation framework for lifelong program analysis & transformation , 2004, International Symposium on Code Generation and Optimization, 2004. CGO 2004..

[6]  Paul Barford,et al.  Fast, accurate simulation for SDN prototyping , 2013, HotSDN '13.

[7]  Walid Dabbous,et al.  DCE: Test the real code of your protocols and applications over simulated networks , 2014, IEEE Communications Magazine.

[8]  Walid Dabbous,et al.  Demo abstract: realistic evaluation of kernel protocols and software defined wireless networks with DCE/ns-3 , 2014, MSWiM '14.

[9]  Srinidhi Varadarajan,et al.  Open Network Emulator: A Parallel Direct Code Execution Network Simulator , 2012, 2012 ACM/IEEE/SCS 26th Workshop on Principles of Advanced and Distributed Simulation.

[10]  Evgeni Bikov,et al.  Direct execution of OLSR MANET routing daemon in ns-3 , 2011, SimuTools.

[11]  Stan Wagon,et al.  A SPIGOT ALGORITHM FOR THE DIGITS OF PI , 1995 .