Ns-3.8: Difference between revisions
Line 76: | Line 76: | ||
== ns-3.8 Features Merged == | == ns-3.8 Features Merged == | ||
=== Topology read system (Inet/Orbis) === | |||
* ''Review location'': http://codereview.appspot.com/204055/show | |||
* ''Reviewers'': Pavel Boyko | |||
* ''Developer'': Tommaso Pecorella | |||
* ''background'':http://mailman.isi.edu/pipermail/ns-developers/2010-January/007314.html | |||
=== Matrix propagation loss model === | === Matrix propagation loss model === |
Revision as of 20:28, 12 March 2010
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 ongoing release planning for ns-3.8. The release manager is Josh Pelkey <jpelkey@gatech.edu>.
Tentative ns-3.8 Release Schedule
January 27 -- ns-3.7 postedJanuary 27 -- ns-3.8 Open phase beginsMarch 8 -- Deadline for new feature merge- March 8 -- Begin the phase of small feature development and bug fixing
- March 27 -- Small feature development and bug fixing ends
- March 27 -- Open phase ends
- March 27 -- Maintenance phase begins
- April 13 -- Maintenance phase ends
- April 13 -- Code freeze phase begins
- April 13 -- ns-3.8-RC1
- April 15 -- ns-3.8-RC2
- April 19 -- ns-3.8-RC3
- April 22 -- ns-3.8-RC4
- April 27 -- ns-3.8 posted
- April 27 -- Code freeze phase ends
- April 27 -- ns-3.9 Open phase begins
As described in the Roadmap there are three broad sections in the release schedule. During the open phase, people wanting to include a new feature in ns-3.8 should contact Josh and arrange to have their features merged into ns-3-dev. You will be expected to provide the following:
- A mercurial patch, bundle or repo against the current version of ns-3-dev that contains your proposed feature addition. You need to make sure that we can apply this patch and build and run (debug and optimized as appropriate) all unit and regression tests successfully on all of our target machines
- A summary of the additions you are proposing and an explanation of any changes to existing code that had to be done in order to support your feature (this will be used to generate release notes and will be provided to maintainers if a code review is indicated)
- Some kind of unit or system test that can be used to determine if your feature is actually working at each stage of the integration
One of us will take a quick look at your proposed addition and determine if a code review is required. According to the book of instructions a code review requiring positive acknowledgment by maintainers is indicated if:
- Your proposed feature does not work with all models or on all platforms
- Your feature changes pre-existing APIs
- Your feature crosses maintainer boundaries
Just to be safe, we will probably run a feature submission by at least one maintainer according to the general area of applicability of the feature. For example, if you submit an entirely new device driver model, as a courtesy we will run this submission by the maintainers of the current devices. The maintainers won't have any responsibility to positively ack the submission, but we will take some time to allow a reasonable review.
The open phase is divided into two parts: new feature merge period and small feature development and bug fixing.
During the new feature merge period we can:
- Review the code that might be merged
- Clean up the bug tracker: solve as much bugs as possible
- Merge the new features that has +1 and from maintainers
After March 8th, the new feature merge period ends and small feature development and bug fixes begins. During the latter, no more merges are accepted and we can:
- Accept limited, small, self contained changes/features to ns-3-dev and to merged new features. As specified before, no more merges are accepted
- Review the code to be merged for next releases
- Cleanup the ns-3-dev bug tracker, solve as much bugs as possible
The end of the small feature development and bug fixes coincides (March 27th) with the beginning of the maintenance phase. No new features may be added, but the maintainers may check in fixes to bugs; and people with new features that have been accepted and previously merged may fix bugs in existing features. Please don't try to sneak in more new features or you may have your whole feature set removed at the release manager's discretion. You can ask if you want to add small, self-contained features, but there are no guarantees that we will okay them.
On April 13th, 2010, we are going to enter the code freeze phase. This indicates that we are in the final stages of the release and our primary goal is stability. During the code freeze phase, only P1 bugfixes will be allowed to be checked in. Our goal will be to reduce the number of P1 bugs to zero before the release of ns-3.8.
We will reserve the right to veto (and remove) any new feature addition if it begins to cause problems and looks like it threatens the stability of the release at any time in the release process.
Candidate Contributions for Inclusion in ns-3.8
Underwater Acoustic Network Device
- review location: http://codereview.appspot.com/87043
- reviewer(s): Craig Dowell, Faker Moatamri
- status: postponed to NS-3.8
- Developer: Leonard Tracy
- background: http://mailman.isi.edu/pipermail/ns-developers/2009-June/006148.html
NHDP
- Code: No available code for the moment
- Developer: Tom Wambold
- Status: waiting to the code to be ready to review
Internet stack roadmap
- Work on various parts of the TCP/IP stack is tracked on this wiki page
NAT traversal
ns-3.8 Features Merged
Topology read system (Inet/Orbis)
- Review location: http://codereview.appspot.com/204055/show
- Reviewers: Pavel Boyko
- Developer: Tommaso Pecorella
- background:http://mailman.isi.edu/pipermail/ns-developers/2010-January/007314.html
Matrix propagation loss model
- Review location: http://codereview.appspot.com/207104/show
- Reviewers: Mathieu Lacage, Nicola Baldo
- Developer: Pavel Boyko
MPI-based parallelization
- review location: http://codereview.appspot.com/109068
- code location: http://code.nsnam.org/jpelkey3/ns-3-distributed
- reviewers: Faker Moatamri, Craig Dowell, Tom Henderson, Mathieu Lacage
- Developer: George Riley and Josh Pelkey
- background: http://mailman.isi.edu/pipermail/ns-developers/2009-November/006927.html
WiMAX
- code location: http://code.nsnam.org/iamine/ns-3-wimax
- reviewers: Faker Moatamri, Mathieu Lacage, Tom Henderson
- Developer: Amine Ismail
- background: http://mailman.isi.edu/pipermail/ns-developers/2009-August/006329.html
Redo ASCII and pcap Traces
- review location: http://codereview.appspot.com/196058
- reviewer(s): Mathieu Lacage
- Developer: Craig Dowell
- background: http://mailman.isi.edu/pipermail/ns-developers/2010-January/007352.html
Gauss-Markov Mobility Model
- Review location: http://codereview.appspot.com/223048
- Reviewers: Josh Pelkey, Mathieu Lacage
- Developer: Dan Broyles
Steady state random waypoint mobility model
- Review location: http://codereview.appspot.com/193105/show
- Reviewers: Mathieu Lacage
- Developer: Denis Fakhriev
- Background: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.2.7557
802.11n block ack
- Review location: http://codereview.appspot.com/144050
- Reviewers: Faker Moatamri, Nicola Baldo, Andrey Mazo, Andreev Kirill, Mathieu Lacage
- Developer: Mirko Blanchi
Enhancements to src/core/random-variable.cc/h
- Review location: http://www.nsnam.org/bugzilla/show_bug.cgi?id=797
- Reviewers: Michele Weigle
- Developer: Tommaso Pecorella
Two ray ground radio propagation model
- Review location: http://www.nsnam.org/bugzilla/show_bug.cgi?id=787
- Reviewers: Pavel Boyko, Mathieu Lacage
- Developer: Tom Hewer
- Background: http://en.wikipedia.org/wiki/2-Ray_Ground_Reflection_Model
Move propagation models to src/common
- Developer: Amine Ismail
- Background: http://mailman.isi.edu/pipermail/ns-developers/2010-January/007354.html
Pareto rng constructors using scale and shape instead of mean and shape
- Review location: http://codereview.appspot.com/207098/show
- Reviewers: Mathieu Lacage, Tom Henderson
- Developer: Tommaso Pecorella
The ns-3.8 Bug List
High Priority Blockers
P1 Bugs
Bug 806 - TCP doesn't work over a CSMA link
Assigned to: ns-bugsProbably only affects ns-3.7 releaseTom is working on a small test suite for this case
High Priority Non-Blockers
P2 Bugs with patches
Bug 772 - AODV is unable to correctly buffer packets waiting for route reply
Assigned to: Pavel BoykoPatch available, needs review
Bug 810 - In TCP, Socket::GetSockName() does not return the local socket address
Assigned to: Josh PelkeyPatch available, looks ready to go
Bug 794 - Ipv4Mask constructor for "/yy"-notation is wrong
Assigned to: Craig Dowell+1 from Tom and Craig, looks ready to go
Bug 231 - SocketAddressTag needs to be removed from a packet before forwarding the packet to the user
- Assigned to: Faker Moatamri
- Possibly trivial now with RemovePacketTag API
Bug 778 - OLSR ignores specified outgoing interface in RouteOutput()
Assigned to: Gustavo J. A. M. CarneiroPatch from Tom, Gustavo pretty much +1looks ready to go
Bug 788 - OLSR_NEIGH_HOLD_TIME should be 3 times OLSR_REFRESH_INTERVAL
Assigned to: Gustavo J. A. M. Carneirolooks ready to go
Bug 747 - Listening TCP socket closes on RST
Assigned to: Josh Pelkey+1 from me, looks ready to go
Bug 748 - Cloned TCP socket uses wrong source address
Assigned to: Josh PelkeyPatch proposal from Fabian Mauchleneed to look at this
Bug 555 - DCF immediate access bug
- Assigned to: Mathieu Lacage
- patch needs review
Bug 602 - WifiRemoteStation lacks information about the access class of outgoing packets
Assigned to: Mathieu Lacagepatch needs reviewpossibly fixed in changeset 0f012e7d9128
Bug 521 - Ipv4 global routing inefficient
- Assigned to: Tom Henderson
- I think this one was re-opened, and not sure if the patch is still valid
- I know that Tom has mentioned he is working on this one
Bug 385 - Add a generic "sequence number" class
- Assigned to: Mathieu Lacage
- patch exists, but there is still some issues about implementation
- tracing is important for this one
Bug 184 - GtkConfigStore do not support ConfigureDefault
Assigned to: Faker Moatamrianother oldieMathieu says, "This bug is now really about making GtkConfigStore do what ConfigStore already does and provide a GUI for the 'default' + 'global' values."Faker just updated the patch (Feb. 16, 2010), needs review
P2 Bugs without patches
Bug 818 - TCP Socket implementation does not set ACK flag on retransmits
- Assigned to: Josh Pelkey
- Possible fix mentioned, but it causes crash in tcp test suite
Bug 822 - Default attributes in abstract base classes not working
- Assigned to: Mathieu Lacage
- Has test case to show bug
- Possibly two bugs
Bug 812 - Assert when getting socket in RecvReply for AODV
Assigned to: Pavel Boykochanged to P2 crit, as this is blocking some people's researchhas example showing assert
Bug 796 - TCP bug in ns-3-dev branch : Crash detected during retesting of Chord on ns-3-dev branch
Assigned to: Craig Dowelllogs attached to this oneworked in ns-3.6 but not ns-3.7possibly bug 806 fix fixed this
Bug 409 - Routing messages can exceed MTU, and fragmentation not supported
- Assigned to: Mathieu Lacage
- Quick fix available
- IP fragmentation support for UDP is needed
Bug 631 - RealtimeSimulatorImpl not compatible with python bindings
- Assigned to: Mathieu Lacage
- lots of discussion here, no consensus it seems