Current Development
Main Page - Roadmap - Summer Projects - Project Ideas - Developer FAQ - Tools - Related Projects
HOWTOs - Installation - Troubleshooting - User FAQ - Samples - Models - Education - Contributed Code - Papers
On this page, we will try to maintain pointers to current ns-3 development work, and post some suggested project ideas.
If you are interested in collaborating on one of these projects, please do not hesitate to contact the individuals identified.
Note: Several ns-3 developers hang out on IRC at #ns-3 at irc.freenode.net. A typically active time is around 1500 to 1900 UTC, Mondays through Fridays.
Current Development Projects
ns-3 Emulation and Realtime Scheduler
In this context emulation means the ability to arange for the simulator to generate and consume data from the network in real time. There are two main pieces to this effort: a realtime simulator scheduler and prototypical net devices that allow connection to real system hardware.
Emulation and Realtime Scheduler has details.
- summary: Add support for various forms of emulation
- wiki page: Emulation and Realtime Scheduler
- code location: http://code.nsnam.org/craigdo/ns-3-emu
- status: Working on emulation code (libnet and pcap integration) and user-space threads
Synchronous posix/sockets API
- summary: Add support for various forms of emulation
- ns-developers post: http://mailman.isi.edu/pipermail/ns-developers/2008-April/003912.html
- code location: http://code.nsnam.org/mathieu/ns-3-simu
- status: likely for ns-3.3 merge; being worked also with the application integration project below
Network Simulation Cradle Integration
Florian Westphal is working on this Google Summer of Code Project for 2008.
- summary: Allow use of real-world network stacks in simulations
- code location: http://code.nsnam.org/fw/ns-3-nsc
- wiki page: http://www.nsnam.org/wiki/index.php/Network_Simulation_Cradle_Integration
- status: candidate for ns-3.2 merge. Being developed as part of Google Summer of Code, 2008
Network Simulation Cradle Integration has details and will be updated as work progresses.
Visualization for ns-3
Jeremy Norman and the iNSpect team have posted some plans for a visualization library for ns-3: http://mailman.isi.edu/pipermail/ns-developers/2008-March/003777.html
IPv6 for ns-3
- summary: Ipv6 support for ns-3
- ns-developers post: http://mailman.isi.edu/pipermail/ns-developers/2008-June/004283.html
- code location: hg clone https://svnet.u-strasbg.fr/hg/ns-3-ipv6/
- status: Posted for review on 13-June. Initial merge planned to start for ns-3.2 release.
real-world application integration
- summary: port of quagga routing to ns-3
- wiki page: http://www.nsnam.org/wiki/index.php/Real_World_Application_Integration
- code location: http://code.nsnam.org/lj/quagga-porting/
- status: Being developed by Liu Jian, Google Summer of Code
Parallel simulations
- summary: ns-3 extensions for parallelization
- wiki page: http://www.nsnam.org/wiki/index.php/Parallel_Simulations
- code location: http://code.nsnam.org/pfeifer/ns-3-para/
- status: Being developed by Hagen Paul Pfeifer, Google Summer of Code
Statistics for ns-3
- summary: statistical framework for ns-3
- wiki page: http://www.nsnam.org/wiki/index.php/Statistical_Framework_for_Network_Simulation
- code location: http://code.nsnam.org/tjkopena/ns-3-stat/
- status: Planned to be merged to src/contrib for ns-3.2
802.11 PHY cleanup
Mathieu Lacage (mathieu.lacage@sophia.inria.fr) is working on 802.11 PHY cleanup to simplify addition of other 802.11 PHY models.
- code location: http://code.nsnam.org/mathieu/ns-3-wifi
- status: Planned to be merged to ns-3.2
Delay Box for ns-3
Matt Crinklaw is working on a port of ns-2 DelayBox to ns-3.
- summary: http://www.isi.edu/nsnam/ns/doc/node247.html (from ns-2 documentation)
- code location: http://freehg.org/u/mlaw
- status: No status update recently.
Ipv4 API, routing, cleanup
- ns-developers post: http://mailman.isi.edu/pipermail/ns-developers/2008-July/004462.html
- wiki page: IPv4 cleanup
- code location: http://code.nsnam.org/craigdo/ns-3-ipv4 (only the name changes so far)
- status: Priority for ns-3.2 merge.
Tag rework
- ns-developers post: http://mailman.isi.edu/pipermail/ns-developers/2008-July/004447.html
- status: Priority for ns-3.2 merge.
Suggested Projects
2008 Google Summer of Code Project Ideas
We have posted some project ideas for Google Summer of Code. Three of these have been picked up (see above) but others are candidates for future work.
Event Scheduler
- Implement a "Calendar Queue" event scheduler. The reference paper is: Randy Brown, Calendar Queues: A Fast 0(1) Priority Queue Implementation for the Simulation Event Set Problem, CACM, 31(10):1220-1227, October 1988.
- Implement a "Dynamic Calendar Queue" event scheduler. The reference paper is: JongSuk Ahn, SeungHyun Oh, "Dynamic Calendar Queue," ss, p. 20, Thirty-Second Annual Simulation Symposium, 1999.
Ns3 Wireless PHY
This project aims at building a high-quality set of PHY-level models for wireless networks: Ns3WirelessPhy
Traffic generation applications
George Riley (riley@ece.gatech.edu) is overseeing the porting of application models from GTNetS to ns-3.
Wireless routing protocol infrastructure
Wireless routing protocol infrastructure for mobile wireless networks. Contact: Mathieu Lacage (mathieu.lacage@sophia.inria.fr)
Removing traffic generation from applications class
- summary: Proposed decoupling to generalize applications
- ns-developers post: http://mailman.isi.edu/pipermail/ns-developers/2007-July/003136.html
- code location: http://code.nsnam.org/laprisee/ns-3-mp/
- status: Was under discussion in the summer.