The release manager is Tom Henderson. Please contact him if you would like to participate in any way in preparing the ns-3.22 release.
- 1 Release goals
- 2 Release schedule
- 3 Packaging
- 4 Release platforms
- 4.1 New features
- 4.2 Software maintenance issues
- 4.3 Documentation improvements
- 4.4 Bugs or issues in ns-3 core
- 4.5 Bugs in models to fix
1) make a major dent in the bug tracker. Can we clean out most issues on our actively maintained modules, including closing out feature requests for which we do not have anyone working on them?
2) continue the transition to a more modular build system. While a major change to the build system is not planned for ns-3.22, one goal is to start to allow modules outside the core of ns-3 to be maintained in separate places, and integrated using the 'bake' tool (rather than merge everything into ns-3-dev).
3) merge (into ns-3-dev or to a bake-enabled repository) as many new features as we can get ready, including all remaining features from 2013 and 2014 GSOC and SOCIS projects, and 2014 summer projects
ns-3.22 is planned for mid-January, 2015. ns-3 makes roughly three releases per year (Dec/Jan, Apr/May, and Aug/Sept timeframes).
This means that we ought to get most new features and major changes into the simulator by early December.
ns-3.22 will be packaged as a source tarball as before: ns-allinone-3.22.tar.bz2.
The tarball will contain:
- Latest version of pybindgen
- Latest version of netanim
where bake is used to fetch optional ns-3 components, including DCE.
A patch from ns-3.21 to ns-3.22 will also be posted.
Whether ns-3.22 is prepared in other packaging (e.g. Debian) is to be determined.
Whether ns-3.22 will be distributed also as a Docker container is to be determined.
We usually try to keep pace with the latest popular versions of Linux, OS X, and FreeBSD. For the ns-3.22 release, we plan to support the following systems and compilers:
- OS X 10.10 Yosemite with latest Xcode
- Ubuntu 14.04 and 14.10 (gcc-4.8, 4.9)
- Fedora 20 and 21 (gcc-4.8, 4.9)
- Debian 7 (gcc-4.9)
- FreeBSD 10.1 (clang 3)
- some legacy platforms (to be determined); likely older Ubuntu LTS and CentOS systems, and OS X 10.9
Developers are working or planning to work on the following new features for ns-3.22. Note: there is no guarantee that the features will be finished by the end of the year, so check back for progress/status.
Changes to the simulation core
- Python 3 support (Siddharth Sankurdar)
- Synopsis: ns-3 is Python 2 based, and must be upgraded to support both Python 2 and 3
- Discuss changes due to Object Start/Stop discussion held at May developers meeting.
- Shared RngStream (Peter Barnes)
- Synopsis: Add API to allow multiple random variables to share an underlying RNG stream
- Changes to better support ns-3 on Windows Visual Studio
Others to be determined
- Add a basic statistics collector, and convert some existing stats helpers in LTE and WiFi to use the statistics framework (Tom Henderson and Li Li)
- An implementation of MLDv2 for IPv6 (Krishna Teja Yadavalli and Tommaso Pecorella)
- FQ-Codel and SFQ-Codel models (Anh Nguyen and Dave Taht)
- This will require some refactoring to allow AQM queues that need access to the IP and transport headers to get access at the layer at which ns3::Queue operates
- Move RED queue from network module to internet module
- TCP variants for satellite networks (Natale Patriciello)
- RttEstimator improvements (Natale Patriciello)
- Multipath TCP (Morteza Kheirkhah Sabetghadam)
- MPDU aggregation for 802.11n (Sebastien Deronne and Ghada Badawy, and others)
- WAVE for 802.11 vehicular networks (Scott Carpenter and Junling Bu)
- Finish off the 2013 GSoC code merging
- VANET example (Scott Carpenter)
- Routes Mobility Model (Tiago Cerqueira)
- Self-Delimiting Numeric Values (Dizhi Zhou and Ruben Martinez)
- Licklider Transport Protocol (Ruben Martinez)
- Bundle Protocol from SOCIS 2013 (Dizhi Zhou)
- LEAR extensions https://codereview.appspot.com/96130043/
CSMA improvements =
- https://codereview.appspot.com/109450044/ (Mehdi Moussouni)
Software maintenance issues
- Remove emu module from codebase (1945) (Tom Henderson)
- Mesh test crashes for certain configurations
- Time arithmetic consistency
- Wstrict-overflow and gcc-4.9 (Tom Henderson and Peter Barnes)
- Remove unnecessary dependency on Application module in other modules (1941) Tommaso Pecorella
- Cleanup of remaining modules unnecessarily dependent on applications (aodv, mesh, olsr, lte)
- improve documentation on linking ns-3 with other libraries (Tom Henderson)
others to be determined
Bugs or issues in ns-3 core
- RandomVariableStream::GetStream returns -1 for all automatically assigned streams (1962) Peter Barnes
- Close Changing the simulation time resolution does not work well with attributes (954) ?
- Close feature request: non-doxygen trace source introspection program needed with status Resolved?
Bugs in models to fix
To be determined