Ns-3.24: Difference between revisions

From Nsnam
Jump to navigation Jump to search
No edit summary
 
(40 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{TOC}}
{{TOC}}


This page summarizes the release planning for ns-3.24 (August 2015).  The ns-3 release process is listed [http://www.nsnam.org/developers/release-process/ here] and [[Release Process | here]].
This page summarizes the release planning for ns-3.24 (early September 2015).  The ns-3 release process is listed [http://www.nsnam.org/developers/release-process/ here] and [[Release Process | here]].


The release manager is TBD.  Please contact if you would like to participate in any way in preparing the ns-3.24 release.
'''Note:''' ns-3.24 was released on September 15; this page is left around for future reference.
* If you are interested in testing a particular feature that is planned for ns-3.24, see the section on this page for [[Ns-3.24#Testing_repos | testing repos]].
* If you are interested in helping with a code review of a specific feature that you'd like to see in ns-3.24, please leave your comments on the code review pertaining to the [[Ns-3.24#New_features | feature of interest]].
* If you are interested to see that a specific bug be fixed, please email ns-developers mailing list, or the release manager.  You will probably be asked to help with creating a patch or testing an existing patch for that bug, if so.


= Release goals =
= Release goals =
Line 12: Line 9:
1) Python 3 support for at least the basic waf and test.py operations; see the [[Python3]] page.
1) Python 3 support for at least the basic waf and test.py operations; see the [[Python3]] page.


2)  continue the transition to a [[BakeIntegration | more modular build system]].  While a change away from the Waf build system is not planned for ns-3.24, 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).
<s>2)  continue the transition to a [[BakeIntegration | more modular build system]].  While a change away from the Waf build system is not planned for ns-3.24, 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).
* A proposal can be found at [[ns-3.22-build]]
* A proposal can be found at [[ns-3.22-build]]</s> Slipping to future release


3) finally try to implement [http://www.nsnam.org/docs/meetings/ns-3-developer-meeting-notes-May14.pdf Object Start/Stop]; Vedran is working on a patch
<s>3) finally try to implement [http://www.nsnam.org/docs/meetings/ns-3-developer-meeting-notes-May14.pdf Object Start/Stop]; Vedran is working on a patch</s> slipping to future release


4) Add [[Ns-3.24#New_features | new features]] as they become ready.  In particular, finish inclusion of previous summer project code, including SOCIS 2013 and 2014 code (Bundle Protocol, TCP satellite extensions), Google Summer of Code (MLDv2, AQM queues FqCoDel and SfqCoDel), and 2014 mentored projects (Mobility Service Interface, and Python 3 support).
<s>4) Add [[Ns-3.24#New_features | new features]] as they become ready.  In particular, finish inclusion of previous summer project code, including SOCIS 2013 and 2014 code (Bundle Protocol, TCP satellite extensions), Google Summer of Code (MLDv2, AQM queues FqCoDel and SfqCoDel), and 2014 mentored projects (Mobility Service Interface, and Python 3 support).</s> slipping to future release


= Release and development schedule =
= Release and development schedule =
 
* A new feature release, [[ns-3.24]], is planned for September 15, 2015.
ns-3.24 is planned for August 2015; exact date TBD. ns-3 makes roughly three releases per year (Dec/Jan, Apr/May, and Aug/Sept timeframes).
** '''Release candidate available:''' As of September 14, a new (second) release candidate for [http://www.nsnam.org/release/ns-allinone-3.24.rc2.tar.bz2 ns-3.24] is available for testing.
 
This means that we ought to get most new features and major changes into the simulator by late July.
 
More detailed scheduling is TBD once the release date is set. In general:
* one or more release candidates will be posted in the week prior to the actual release
* new features should be merged several weeks in advance of the release date


= Feature and patch review status =
= Feature and patch review status =


This table is meant to put review items for merge to ns-3-dev on a schedule.  Maintainers of a module can commit changes as they see fit (i.e. without review for everything), but for proposals that seek or need a review, we should allow one to two weeks review time before the release manager or a maintainer commits the change.
This table is meant to put review items for merge to ns-3-dev on a schedule.  Maintainers of a module can commit changes as they see fit (i.e. without going through review for everything), but for proposals that seek or need a review, we should try to allow a default of 1 week review time before the release manager or a maintainer commits the change.


{| border=1 cellspacing=0 cellpadding=3
{| border=1 cellspacing=0 cellpadding=3


|+ Features under review
|+ Features or patches under review
! Contribution !! Module !! Review deadline !! Status !! Link   
! Contribution !! Module !! Review deadline !! Status !! Link   
|-
|-
! SOCIS TCP variants
! Collectors for data collection
| internet || June 8 || will be committed week of June 15 if no other comments || https://codereview.appspot.com/122010043/
| stats || <s>June 25</s> || Budi's comments must be resolved and updated patch posted as a next step (slipping to future release) || http://codereview.appspot.com/245260043
|-
! Python versions of second.cc/third.cc
|  tutorial || June 18 || pending tracker commments || https://www.nsnam.org/bugzilla/show_bug.cgi?id=2139
|-
! Add blacklist to SimpleChannel
|  network || June 18 || pending tracker comments || https://www.nsnam.org/bugzilla/show_bug.cgi?id=2130
|-
! NotifyNewAggregate patch
|  core || June 18 || pending tracker comments || https://www.nsnam.org/bugzilla/show_bug.cgi?id=2125
|-
|-
! BenchSimulator fixes
! WiFi propagation frequency
| core || June 18 || pending tracker comments || https://www.nsnam.org/bugzilla/show_bug.cgi?id=2127
| wifi || <s>July 1</s> || Sebastien is reworking based on comments (slipping to future release) || https://www.nsnam.org/bugzilla/show_bug.cgi?id=2122
|-
|-
! TCP RST patch
! deprecate attributes and trace sources
| internet || June 18 || pending tracker comments || https://www.nsnam.org/bugzilla/show_bug.cgi?id=2132
| core || <s>July 9</s>TBD || still under discussion in the tracker (slipping to future release) || https://www.nsnam.org/bugzilla/show_bug.cgi?id=2149
|}
|}
The following additional bug fixes will slip to next release:
* (TCP)  Server replies to syn:  https://www.nsnam.org/bugzilla/show_bug.cgi?id=2165
* (TCP)  Wrong receive window:  https://www.nsnam.org/bugzilla/show_bug.cgi?id=2159
* (TCP) Data sent callback bugfix:  https://www.nsnam.org/bugzilla/show_bug.cgi?id=2141
* (TCP) Tcp close bug:  https://www.nsnam.org/bugzilla/show_bug.cgi?id=2133


= Packaging =  
= Packaging =  


ns-3.24 will be packaged as a source tarball as before:  ns-allinone-3.24.tar.bz2.
ns-3.24 will be packaged as a source tarball as before:  ns-allinone-3.24.tar.bz2.
Other details (other formats, etc.) are for further study.


A patch from ns-3.23 to ns-3.24 will also be posted.
A patch from ns-3.23 to ns-3.24 will also be posted.
Whether ns-3.24 is prepared in other packaging (e.g. Debian) would require a volunteer to prepare this.
Whether ns-3.24 will be distributed also as a [http://www.docker.com Docker container] would require a volunteer to prepare this.


= Release platforms =
= Release platforms =


We usually try to keep pace with the latest popular versions of Linux, OS X, and FreeBSD.  For the ns-3.24 release, we plan to support the following systems and compilers:
The latest OS X with Xcode, Fedora Linux, and Ubuntu Linux releases, along with some long term stable Linux releases such as CentOS 6.6 and Ubuntu 12.04/14.04.
 
TBD
 
= Testing repos =
 
Some repositories, based on a recent copy of ns-3-dev, will be available for testing specific features.
 
== Mobility Service Interface ==
 
Tiago Cerqueria has posted some code that uses Google Maps and Directions API to fetch waypoints for the ns-3 waypoint mobility model, corresponding to real-world routes provided by the service.  There is a testing repository available for this code (the patchset in https://codereview.appspot.com/176430044/ is too large to download from Rietveld).  To test, one must obtain an API key from Google, as described in the code review issue.  One must also have installed GeographicLib, xerces-cpp, libcurl, and libdl.
<pre>
hg clone http://code.nsnam.org/ns-3-dev
cd ns-3-dev/src
hg clone http://code.nsnam.org/tomh/mobility-service-interface
cd mobility-service-interface
mkdir conf
# copy your API key to this conf directory as described here https://codereview.appspot.com/176430044/
cd ../../
./waf configure ...
</pre>
 
= New features =
 
Developers are working or planning to work on the following new features for ns-3.24. 
 
'''Note:''' there is no guarantee that the features will be finished by the end of the release cycle, so check back for progress/status.
 
=== Energy Enhancements (Cristiano Tapparello) ===
Cristiano plans several additions:
* New models for energy sources, converters, predictors, and sensor models (code to be posted soon)
* LithiumIonEnergySource helper
* RVBatteryModel bug fixes
 
=== DSR ===
* LEAR extensions https://codereview.appspot.com/96130043/
'''Status:''' Tomasz is working on addressing the review comments (no update recently)
 
=== Epidemic Routing ===
* https://codereview.appspot.com/13831049/
'''Status:''' Still undergoing code review revisions.
 
=== UAN WOSS ===
* https://codereview.appspot.com/14677043/
 
=== Satellite models ===
* http://mailman.isi.edu/pipermail/ns-developers/2014-June/012071.html
 
== Statistics ==
Enhancements to data collection framework are planned to enable more flexible configuration of time series, time avearge, and asynchronous event plotting (Li Li, Felipe Perrone, Tom Henderson).
* '''Status:''' Development repo is found at http://code.nsnam.org/safe/ns-3.22-dcf; code review planned for week of June 15.
 
=== TCP ===
 
* Some of the TCP variants for satellite networks (Natale Patriciello) will be merged soon
** https://codereview.appspot.com/122010043/
 
* RttEstimator improvements (Natale Patriciello)
** Resolve [https://www.nsnam.org/bugzilla/show_bug.cgi?id=1412 bug 1412]  RttEstimator to network module
 
== Software maintenance issues ==
* [https://www.nsnam.org/bugzilla/show_bug.cgi?id=1900 Time arithmetic consistency]
* [https://www.nsnam.org/bugzilla/show_bug.cgi?id=1868 Wstrict-overflow and gcc-4.9] (Tom Henderson and Peter Barnes)
* [https://www.nsnam.org/bugzilla/show_bug.cgi?id=1941 Remove unnecessary dependency on Application module in other modules (1941)] Tommaso Pecorella
** Cleanup of remaining modules unnecessarily dependent on applications (aodv, mesh, olsr, lte)
 
'''Status:''' No change on the above lately.

Latest revision as of 22:16, 15 September 2015

Main Page - Roadmap - Summer Projects - Project Ideas - Developer FAQ - Tools - Related Projects

HOWTOs - Installation - Troubleshooting - User FAQ - Samples - Models - Education - Contributed Code - Papers

This page summarizes the release planning for ns-3.24 (early September 2015). The ns-3 release process is listed here and here.

Note: ns-3.24 was released on September 15; this page is left around for future reference.

Release goals

1) Python 3 support for at least the basic waf and test.py operations; see the Python3 page.

2) continue the transition to a more modular build system. While a change away from the Waf build system is not planned for ns-3.24, 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).

  • A proposal can be found at ns-3.22-build Slipping to future release

3) finally try to implement Object Start/Stop; Vedran is working on a patch slipping to future release

4) Add new features as they become ready. In particular, finish inclusion of previous summer project code, including SOCIS 2013 and 2014 code (Bundle Protocol, TCP satellite extensions), Google Summer of Code (MLDv2, AQM queues FqCoDel and SfqCoDel), and 2014 mentored projects (Mobility Service Interface, and Python 3 support). slipping to future release

Release and development schedule

  • A new feature release, ns-3.24, is planned for September 15, 2015.
    • Release candidate available: As of September 14, a new (second) release candidate for ns-3.24 is available for testing.

Feature and patch review status

This table is meant to put review items for merge to ns-3-dev on a schedule. Maintainers of a module can commit changes as they see fit (i.e. without going through review for everything), but for proposals that seek or need a review, we should try to allow a default of 1 week review time before the release manager or a maintainer commits the change.

Features or patches under review
Contribution Module Review deadline Status Link
Collectors for data collection stats June 25 Budi's comments must be resolved and updated patch posted as a next step (slipping to future release) http://codereview.appspot.com/245260043
WiFi propagation frequency wifi July 1 Sebastien is reworking based on comments (slipping to future release) https://www.nsnam.org/bugzilla/show_bug.cgi?id=2122
deprecate attributes and trace sources core July 9TBD still under discussion in the tracker (slipping to future release) https://www.nsnam.org/bugzilla/show_bug.cgi?id=2149

The following additional bug fixes will slip to next release:

Packaging

ns-3.24 will be packaged as a source tarball as before: ns-allinone-3.24.tar.bz2.

A patch from ns-3.23 to ns-3.24 will also be posted.

Release platforms

The latest OS X with Xcode, Fedora Linux, and Ubuntu Linux releases, along with some long term stable Linux releases such as CentOS 6.6 and Ubuntu 12.04/14.04.