GSoC/GCI Archive
Google Summer of Code 2010

The ns-3 Network Simulator Project

Web Page:

Mailing List:

ns-3 is a discrete-event network simulator, with a particular emphasis on network research and education. Users of ns-3 can construct simulations of computer networks using models of traffic generators, protocols such as TCP/IP, and devices and channels such as WiFi, and analyze or visualize the results. Simulation plays a vital role in the research and education process, because of the ability for simulations to obtain reproducible results (particularly for wireless protocol design), scale to large networks, and study systems that have not yet been implemented. A particular emphasis in ns-3 is the high degree of realism in the models (including frameworks for real application and kernel code) and integration of the tool with virtual machine environments and testbeds; we view that researchers need to move more effortlessly between simulation, testbeds, and live experiments, and ns-3 is designed to facilitate that. ns-3 has been in development since 2005 and has been making quarterly releases since June 2008 (our last release was ns-3.7 in January 2010). ns-3 is replacing the popular ns-2 tool which was developed in the 1997-2000 timeframe but became dated and unmaintained. The tool is coming into wide use; our web server logged over 10,000 successful downloads of our released software in January 2010, and we have a users mailing list of about 500 members now averaging 200-300 posts per month. ns-3 is operated as an open source project with financial backing from an NSF grant and funding from the French government (and via help from Google Summer of Code). We use a GPLv2 licensing model and heavily use mailing lists and to a lesser extent an IRC channel. We have roughly 10 maintainers worldwide and roughly 50 people have contributed code or patches to date.


Our project code repository for 2010 is here:



  • MAC and PHY models for LTE Long Term Evolution represents an emerging and promising technology for providing a broadband ubiquitous Internet access. Unfortunately, no ns-3 modules have been developed to simulate LTE networks. This project consist of a development of a framework to simulate LTE networks on ns-3, composed by (i) a standard compliant LTE PHY layer, (ii) two LTE network devices (UE and eNB), (iii) a Bearer Manager and a MAC Queue structure, and (iv) a Frame Manager and a Downlink Resource Allocation.
  • NS-3 Click Modular Router Integration Click is a software architecture for building configurable routers. By using different combinations of packet processing units called elements, a Click router can be made to perform a specific kind of functionality. This flexibility provides a good platform for testing and experimenting with different protocols. This project aims to integrate ns-3 with the Click Modular Router so as to enable rapid protocol development.
  • ns-3-OpenFlow This project will enable ns-3 simulations to use OpenFlow switches (McKeown et al.), widely used in research. OpenFlow switches are configurable via the OpenFlow API, and also have an MPLS extension for quality-of-service and service-level-agreement support. By extending these capabilities to ns-3 for a simulated OpenFlow switch that is both configurable and can use the MPLS extension, ns-3 simulations can accurately simulate many different switches.
  • UAN Framework: AUV simulator and power management layer One of the priorities in Underwater Networking research, is to have a complete simulation framework. The NS-3 UAN module is a first step in this direction. This project aims to integrate the efforts of UAN module, extending it to make a simulation framework that researchers will be able to use for their aims. The extension will consists of an Autonomous Underwater Vehicle (AUV) simulator (navigation and movement) and some energy related classes.