This is a developer's FAQ page to complement the Developer Information page.
How does ns development work?
Who are the developers?
The committers welcome contributions (patches, bugfixes, new protocols) from the development community. Please contribute patches and bug fixes to the respective Sourceforge site so they can be tracked (or email one of the committers).
Communication with developers
Development discussion of ns-2 and ns-3 is found on the ns-developers mailing list.
Other developer mailing lists may be of interest, including nsnam-commits (which provides email notification of any changes checked into the tree).
How does one obtain commit access?
If a developer has contributed a significant number of high-quality patches, is interested in continuing the contribution, and has demonstrated the ability to work well with others under the project developer guidelines, it may be proposed to grant that developer CVS commit access. A new committer may be nominated by the existing committers, or one may self-nominate oneself by emailing one of the project admins.
Before being granting commit access, the proposed committer needs to agree to abide by development guidelines (regarding licensing and copyright, validation, coding standards, documentation submission, etc.). The committer list may be pruned over time as an individual's participation wanes (generally a mutually agreeable process). The nominating committer will privately request a vote on the candidate (yes/no/abstain) among the existing committer list; if 3/4 of the yes/no votes received within one week's time of the vote's call are yes votes, the candidate will be added to the list of committers and announced to the ns-developers mailing list.
What are the development plans?
There are two parallel efforts:
- continued maintenance of ns-2, nam-1, otcl, and tclcl
- planning for ns-3
Maintenance of existing code trees
Presently there is little activity for nam, otcl, and tclcl, other than occasional updating of the autoconf-related scripts for support of new platforms, and code revisions for new compilers such as gcc-4. Note that there are a few tasks for nam-1 development, if anyone is interested.
ns-2 is expected to undergo continued maintenance to fix bugs without breaking existing scripts. A list of ns-2 tasks is available, and bugs are listed here.
People contributing patches, bug fixes, or new protocol models may be interested in the Commit Guidelines for ns-2 developers.
New code tree
Some developers are interested in working on unstable branches of ns-2, for a future major revision of the simulator. Information can be found on the ns Direction page.