skip to main content
10.1145/2915371.2915383acmotherconferencesArticle/Chapter ViewAbstractPublication Pageswns3Conference Proceedingsconference-collections
research-article

Analysis of Programming Language Overhead in DCE

Authors Info & Claims
Published:15 June 2016Publication History

ABSTRACT

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.

References

  1. M. Gupta, J. Sommers, and P. Barford. Fast, accurate simulation for SDN prototyping. In Proceedings of the Second ACM SIGCOMM Workshop on Hot Topics in Software Defined Networking, HotSDN '13, pages 31--36, New York, NY, USA, 2013. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. D. Camara, H. Tazaki, E. Mancini, T. Turletti, W. Dabbous, and M. Lacage. DCE: Test the real code of your protocols and applications over simulated networks. Communications Magazine, IEEE, 52(3):104--110, March 2014.Google ScholarGoogle ScholarCross RefCross Ref
  3. H. Tazaki, F. Urbani, E. Mancini, M. Lacage, D. Camara, T. Turletti, and W. Dabbous. Direct code execution: Revisiting library OS architecture for reproducible network experiments. In Proceedings of the Ninth ACM Conference on Emerging Networking Experiments and Technologies, CoNEXT '13, pages 217--228, New York, NY, USA, 2013. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Inria. Direct code execution (DCE) manual. Website, 2013. https://www.nsnam.org/docs/dce/release/1.5/manual/html/index.html.Google ScholarGoogle Scholar
  5. H. Tazaki. dce-pre.patch. Website, 2014. https://gist.github.com/thehajime/b2efe96e797cd131cac1.Google ScholarGoogle Scholar
  6. S. Rabinowitz and S. Wagon. A spigot algorithm for the digits of π. The American Mathematical Monthly, 102(3):195--203, 1995.Google ScholarGoogle ScholarCross RefCross Ref
  7. M. Muuss. The story of the ping program. Website, 1999. http://ftp.arl.army.mil/~mike/ping.html.Google ScholarGoogle Scholar
  8. J. Diemer. python-ping. Website, 2011. https://pypi.python.org/pypi/python-ping.Google ScholarGoogle Scholar
  9. P. Brady. ps_mem 3.6: Python package index. Website, 2015. https://pypi.python.org/pypi/ps_mem/3.6.Google ScholarGoogle Scholar
  10. E. Bikov and P. Boyko. Direct execution of OLSR MANET routing daemon in ns-3. In Proceedings of the 4th International ICST Conference on Simulation Tools and Techniques, SIMUTools '11, pages 454--461, ICST, Brussels, Belgium, Belgium, 2011. ICST (Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering). Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. S. Kwon, K. Hasan, M. Lee, and S. Jeong. Comparative analysis of real-time video performance in the CCN-based LTE networks. In Information and Communication Technology Convergence (ICTC), 2015 International Conference on, pages 509--511, Oct 2015.Google ScholarGoogle ScholarCross RefCross Ref
  12. H. Tazaki, E. Mancini, D. Camara, T. Turletti, and W. Dabbous. MSWIM demo abstract: Direct code execution: Increase simulation realism using unmodified real implementations. In Proceedings of the 11th ACM International Symposium on Mobility Management and Wireless Access, MobiWac '13, pages 29--32, New York, NY, USA, 2013. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. E. Mancini, H. Soni, T. Turletti, W. Dabbous, and H. Tazaki. Demo abstract: Realistic evaluation of kernel protocols and software defined wireless networks with DCE/ns-3. In Proceedings of the 17th ACM International Conference on Modeling, Analysis and Simulation of Wireless and Mobile Systems, MSWiM '14, pages 335--337, New York, NY, USA, 2014. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. V. Duggirala and S. Varadarajan. Open network emulator: A parallel direct code execution network simulator. In Proceedings of the 2012 ACM/IEEE/SCS 26th Workshop on Principles of Advanced and Distributed Simulation, PADS '12, pages 101--110, Washington, DC, USA, 2012. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. C. Lattner and V. Adve. LLVM: a compilation framework for lifelong program analysis transformation. In Code Generation and Optimization, 2004. CGO 2004. International Symposium on, pages 75--86, March 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. V. Duggirala, C. Ribbens, and S. Varadarajan. Distributed ONE: Scalable parallel network simulation. In Proceedings of the 6th International ICST Conference on Simulation Tools and Techniques, SimuTools '13, pages 10--16, ICST, Brussels, Belgium, Belgium, 2013. ICST (Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering). Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. C. Lattner. The LLVM compiler infrastructure project. Website, 2016. http://llvm.org.Google ScholarGoogle Scholar
  18. GCC Team. GCJ: The GNU compiler for Java. Website, 2016. https://gcc.gnu.org/java.Google ScholarGoogle Scholar
  1. Analysis of Programming Language Overhead in DCE

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Other conferences
      WNS3 '16: Proceedings of the 2016 Workshop on ns-3
      June 2016
      148 pages
      ISBN:9781450342162
      DOI:10.1145/2915371

      Copyright © 2016 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 15 June 2016

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article
      • Research
      • Refereed limited

      Acceptance Rates

      WNS3 '16 Paper Acceptance Rate18of28submissions,64%Overall Acceptance Rate54of82submissions,66%

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader