Nsclick: Bridging Network Simulation and Deploymen
Micheal Neufeld, Ashish Jain, Dirk Grunwald
Department of Computer Science, University of Colorado, Boulder, Colorado
Bibtex citation
@inproceedings{nsclick-mswim,
author = {Michael Neufeld and Ashish Jain and Dirk Grunwald},
title = {Nsclick:: bridging network simulation and deployment},
booktitle = {Proceedings of the 5th ACM international workshop on
Modeling analysis and simulation of wireless and mobile systems},
year = {2002},
isbn = {1-58113-610-2},
pages = {74--81},
location = {Atlanta, Georgia, USA},
doi = {http://doi.acm.org/10.1145/570758.570772},
publisher = {ACM Press},
}
Abstract
Ad hoc network protocols are often developed, tested and evaluated using simulators. However, when the time comes to deploy those protocols for use or testing on real systems the protocol must be reimplemented for the target platform. This usually results in two, completely separate codebases that must be maintained. Bugs which are found and fixed under simulated conditions must also be fixed separately in the deployed implementation, and vice versa. There is ample opportunity for the two implementations to drift apart, possibly to the point where the deployed and simulated version have little actual resemblance to each other. Testing the deployed version may also require construction of a testbed, a potentially timeconsuming and expensive endeavor. Even if constructing an actual testbed is feasible, simulators are very useful for running large, repeatable scenarios for tasks such as protocol evaluation and regression testing.
Furthermore, since the implementation may require modification of the kernel network stack, there\'s a good chance that a particular implementation may only run on specific versions of specific operating systems. To address these issues, we constructed the nsclick simulation environment by embedding the Click Modular Router inside of the popular ns2 network simulator. Routing protocols may be implemented as Click graphs and easily
moved between simulation and any operating system supported by Click. This paper describes the design, use, validation and performance of nsclick.