Network protocol development with nsclick

  • Authors:
  • Michael Neufeld;Ashish Jain;Dirk Grunwald

  • Affiliations:
  • University of Colorado, Department of Computer Science, Boulder, CO;University of Colorado, Department of Computer Science, Boulder, CO;University of Colorado, Department of Computer Science, Boulder, CO

  • Venue:
  • Wireless Networks
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

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 code-bases 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 time-consuming 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 ns-2 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.