The Open Network Emulator: An Integrated Environment for Simulation and Emulation of Large-Scale Networks

Prof. Srinidhi Varadarajan

Dept. of Computer Science
Virginia Tech, Blacksburg VA 24060

Friday, March 28th, 3:00 PM, ENS 637

srinidhi@cs.vt.edu


Abstract

With the continuing exponential growth of the Internet and the ensuing rapid proliferation of network protocols, there is an urgent need for large-scale protocol development environments that can act as controlled experimental testbeds for protocol testing, interoperability, verification and validation of wired and wireless networks. Hitherto, protocol development environments (PDEs) have fallen into (a) network simulators or (b) direct code execution environments (DCEE). While simulators such as NS and OPNET are very popular, they require that the protocol under test be written in an event driven model. The event driven version of the protocol can be refined and then converted to a real-world code implementation. The basic problem in simulation based PDEs is that there is no formal mechanism to ensure the equivalence of the simulated protocol and its real world code version. Direct-execution environments - such as ENTRAPID - solve the verification and validation problems by directly executing unmodified real-world code in a network test-bed environment. However, network emulators have their own set of problems, largely due the lack of a development framework. Direct code execution environments use OS processes for each network protocol/application under test. The large context switch time of processes inherently limits the scalability of this solution. Furthermore, since direct execution environments work in real-time as opposed to virtual simulation time, they suffer from an inherent lack of temporal determinism which impacts controllability of experimental test-beds.

In this talk I will describe a new scalable network emulation test-bed that supports the simulation and direct code execution paradigms within a single framework. In order to represent the scale and heterogeneity of the Internet, the test-bed scales to tens to hundreds of thousands of virtual network nodes, where a node is a wired/wireless network enabled device. This work uses a novel vertical integration of (a) a new compiler generated object framework called Weaves, (b) compiler support for fast and memory efficient checkpointing and, (c) a temporal representation for integrated simulation/emulation, all of which work in conjunction. This synergy creates a new object based framework for the development of large-scale simulations using code composition, without restricting the application programmer to any language or programming paradigm. The enabling technology of this research - Weaves - creates intra-process modules (similar to objects in OOP) from code written in any language. Applications can be built by instantiating Weaves to form Tapestries of dynamically interacting code. The Weaves paradigm allows objects to be arbitrarily shared - it is a true superset of both processes as well as threads, with fast context switching time similar to threads. Weaves do not require any special support from either the language or application code - practically any code can be weaved. Our compiler directed portions are within the back-end of the compiler. Weaves also include compiler support for fast automatic checkpointing and recovery with no application support.

In this talk I will present the design of the Open Network Emulator and preliminary results from a prototype implementation.

Biography

Srinidhi Varadarajan received his Ph.D. in Computer Science from the State University of New York, Stony Brook in 2000 and his Bachelor of Technology degree in Electronics and Communication Engineering in 1994 from the Regional Engineering College, Warangal, India. He presently serves as an Assistant Professor of Computer Science at Virginia Tech.

Dr. Varadarajan's prior work was on the design and implementation of a switched Ethernet network architecture called EtheReal, which provides "hard" bandwidth guarantee services on traditional Ethernet networks, without any modifications to the operating system/network hardware on the end-hosts. Dr. Varadarajan's current research is focused on building a distributed network emulation system that can scale to emulate hundreds of thousands of virtual nodes. This work involves research on several areas, including compiler directed mechanisms for transparent generation of reentrant code from non-reentrant sources, automatic checkpointing and recovery, code migration, dynamic load balancing and 3D environments for network traffic visualization. In the area of routing algorithms, Dr. Varadarajan is exploring the use of AI techniques such as reinforcement learning for use in a probabilistic framework for multi-path routing protocols.

Dr. Varadarajan is the recipient of an NSF CAREER award for his work on scalable network emulation and the Weaves framework. He currently advises 5 Ph.D. students and 8 MS thesis students. He is involved in NSF and NASA funded research in excess of $3 Million.


A list of Wireless Networking and Communications Seminars is available at from the ECE department Web pages under "Seminars". The Web address for the Wireless Networking and Communications Seminars is http://signal.ece.utexas.edu/seminars