GSoC/GCI Archive
Google Summer of Code 2009

The ns-3 Network Simulator Project

Web Page:

Mailing List:

The ns-3 project is developing a new open source, modular network simulator, aimed at supporting top-tier research in networking. It aims to replace the venerable ns-2 simulator, which has had a profound effect on networking research but has fallen out of date with respect to models, scalability, scripting language, and alignment with current research priorities favoring better testbed integration. In the past year the ns-3 project has achieved several milestones, including its first "stable" code release. Its core capabilities include a complete discrete event manager built on sophisticated C++ object management and tracing mechanisms, full TCP/IP implementations, and several typical network device and physical layer models, including WiFi. A large and growing network of developers and followers have taken up the project, with increasing numbers of contributors and users. There are presently six known research groups advancing and validating the WiFi models, and the project is currently exceeding over 1000 downloads per month of our released software, with many additional users working directly from the development tree.


  • Minstrel Rate for NS-3 Minstrel is a widely used and tested rate control algorithm in both madwifi driver and linux kernel, but it is yet to be implemented in NS-3. The proposal plans out the technical details for accomplishing such task in the timeline of 10 weeks, including testing and validating results with the testbeds.
  • ns-3 Network Address Translation Network Address Translation node model will be implemented for ns-3. Specifically, Network Address and Port Translation will be implemented for Small Office, Home Office (SOHO) environments. This work will include studying the Linux Kernel NAT implementation, and reusing ideas such as connection tracking and NAT helpers to realize NAT for ns-3.
  • Uplink Scheduler for WiMAX The ns-3 WiMAX module lacks the implementation of a more sophisticated uplink scheduler for QoS provisioning. The main goal of this project is to port the uplink scheduler implemented in the ns-2 WiMAX module developed by the Computer Networks Laboratory at University of Campinas to the ns-3 WiMAX module. The second goal of this project is to implement propagation and error models to allow the simulation of more realistic scenarios.