Difference between revisions of "Ns-3.3"

From Nsnam
Jump to: navigation, search
 
(141 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 
{{TOC}}
 
{{TOC}}
  
This page summarizes the release planning for ns-3.3.  
+
== The Release ==
 +
This page summarizes the ongoing release planning for the third stable release of ns-3.
  
== The Release Manager ==
+
* ns-3.3 was released on Thursday, December 18, 2008.
  
Craig Dowell (craigo at ee.washington.edu) is the release manager for ns-3.3 and is the contact for any release issues.
+
== The Hot List ==
 +
As I type this, it is December 19th and we shipped ns-3.3 yesterday.  Thanks to everyone, especially those I may have offended by my lame attempts at humor.
  
ns-3.3 is scheduled for release in December 15, 2008. 
+
Bhattacharjea:
  
== The ns-3.3 Release Schedule ==  
+
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=250 <s>250 Tcp breaks if you set the delackcount > 2</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=341 <s>341 Get unexpected dropped packets when using SetSendCallback with heavy traffic</s>] -- Priority Reduced
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=358 <s>358 calling listen on non-closed TCP sockets sends resets, should fail and do nothing</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=365 <s>365 TcpSocketImpl::Recv returns 0 without setting m_errno</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=392 <s>392 Example star.cc confuses TCP</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=410 <s>410 Doxygen is not picking up class OnOffHelper</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=411 <s>411 OnOffApplication::OnTime does not work</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=417 <s>417 stack explosion when sending to loopback device</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=418 <s>418 RttEstimator::RetransmitTimeout can return a negative value</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=423 <s> 423 TCP copy constructor wrong </s>] -- Fixed
  
ns-3 releases are based on date-driven schedules as opposed to feature-driven schedules.  We decide on a release date and then the release manager works backward to define windows during which time certain activites related to the release can happen.  This has been done for ns-3.3 and the important milestones are:
+
Carniero:
  
# September 22 &mdash ns-3.2 posted;
+
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=289 <s>289 CommandLine::AddValue is not wrapped</s>] -- Fixed
# September 22 &mdash ns-3.3 '''''Open period begins''''';
+
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=325 <s>325 regression code should be moved into regression/wscript</s>] -- Fixed
# October 20 &mdash Recommended cutoff for new feature submission;
+
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=348 <s>348 regression tests do not work in private or disconnected networks</s>] -- Fixed
# October 27 &mdash Deadline for new feature submissions that require design review;
+
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=387 <s>387 Build fails with junk subdirectories in "scratch" directory</s>] -- Fixed
# November 3 &mdash Approved new feature ready-for-merge deadline;
+
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=413 <s>413 python bindings not portable to OS X</s>] -- Fixed
# November 3 &mdash Late merge period begins;
+
 
# November 10 &mdash Late merge period ends;
+
Dowell:
# November 10 &mdash '''''Open period ends''''';
+
 
# November 10 &mdash '''''Maintenance period begins''''';
+
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=66 <s>66 improve granularity of GlobalRouteManager::PopulateRoutes</s>] -- Fixed
# December 1 &mdash '''''Maintenance period ends''''';
+
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=114 <s>114 global routing doesn't handle multi-hop layer-2 subnets</s>] -- Fixed
# December 1 &mdash '''''Code freeze begins''''';
+
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=187 <s>187 Need 'perfect' ARP</s>] -- Priority Reduced
# December 1 &mdash ns-3.3-RC1;
+
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=215 <s>215 Node names patch</s>] -- Priority Reduced
# December 4 &mdash ns-3.3-RC2;
+
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=230 <s>230 Simulator::Now() Updating and Simulator::Stop()</s>] -- Fixed
# December 8 &mdash ns-3.3-RC3;
+
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=241 <s>241 Trace sources not clearly documented, trace sinks not clearly documented</s>] -- Superceded
# December 11 &mdash ns-3.3-RC4;
+
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=263 <s>263 XxxAddress::ConvertFrom are prone to subtle bugs</s>] -- Won't Fix
# December 15 &mdash ns-3.3 posted
+
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=383 <s>383 Please make _all_ header structures public</s>] -- Fixed
# December 15 &mdash ns-3.4 Open period begins.
+
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=391 <s>391 Example csma-star kills global routing</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=401 <s>401 add InternetStackHelper::EnableAscii ()</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=404 <s>404 ErrorModel attribute name is not consistent across devices</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=414 <s>414 No ReceiveErrorModel in many devices</s>] -- Priority Reduced
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=416 <s>416 pcap traces not always closing cleanly at simulation end</s>] -- Invalid
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=419 <s>419 *Helper::SetAttribute* methods sometimes painful to use</s>] -- Priority Reduced
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=422 <s>422 Emulation Needs a Manual Chapter</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=429 <s>429 wifi-wired-bridging fails regression tests on Cygwin and OSX Intel</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=430 <s>430 Doxygen warnings creeping back into system</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=431 <s>431 wifi wired-bridging.cc memory leak reported in valgrind</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=439 <s>439 second.cc and third.cc don't set CSMA data rate and delay</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=442 <s>442 The device trace sources in the system are not very well documented</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=444 <s>444 Inernet-stack trace sources not well documented</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=448 <s>448 V4Ping Application Sends uint32_t Data in Host Order</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=450 <s>450 Examples first, second, third need fixed seeds</s>] -- Fixed
 +
 
 +
Henderson:
 +
 
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=188 <s>188 global routing does not handle ip aliasing</s>] -- Priority Reduced
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=400 <s>400 Wifi Muti-Hop Network not forwaring packets (atleast ARP)</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=403 <s>403 Ipv4AddressHelper cannot assign /32 addresses</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=406 <s>406 GlobalRouteManager behaviour after Ipv4 interface SetDown and SetUp procedure</s>] <- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=407 <s>407 OLSR may select wrong interface in MID context</s>] -- Priority Reduced
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=415 <s>415 OLSR's broken dynamic behaviour?</s>] <-- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=433 <s>433 DataRate: kBps and kB/s have wrong multipliers.</s>] -- Fixed
 +
 
 +
Lacage:
 +
 
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=218 <s>218 wifi PHY base class must be virtualized and subclass renamed</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=257 <s>257 log time printer, can we optionally support output of time in seconds?</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=395 <s>395 log distance propagation loss model complex to use.</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=396 <s>396 Weird WiFi error state with STA slowing approaching the wifi range of an AP</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=397 <s>397 Custom WifiModes apparently not possible in infrastructure mode</s>] -- Priority Reduced
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=398 <s>398 NqstaWifiMac does not filter received frames by BSSID</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=405 <s>405 wifi log messages improvements</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=408 <s>408 No duplicate filtering for managament frames</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=409 <s>409 Simulation fails depending on number of wireless nodes</s>] -- Priority Reduced
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=412 <s>412 Extend number of template parameters in xxxCallback classes</s>] -- Priority Reduced
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=435 <s>435 yans wifi helper file names not consistent</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=436 <s>436 class MatchContainer lacks Doxygen</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=440 <s>440 Tutorial example third.cc no longer compiles, tutorial obsolete</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=441 <s>441 double Time::GetSeconds() precision or roundingissue</s>] -- Fixed
 +
 
 +
Westphal:
 +
 
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=320 <s>320 getsockname returns a port number in network byte order</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=356 <s>356 tcp-nsc-lfn fails with --valgrind selected</s>] -- Fixed
 +
# [http://www.nsnam.org/bugzilla/show_bug.cgi?id=428 <s>428 segfault in tcp-nsc-lfn</s>] -- Priority Reduced/Renamed
 +
 
 +
== The Release Manager ==
 +
Craig Dowell (craigdo at ee.washington.edu) is the release manager for ns-3.3 and is the contact for any release issues.
 +
 
 +
== The ns-3.3 Release Schedule ==
 +
ns-3 releases are based on date-driven schedules as opposed to feature-driven schedules. We decide on a release date and then the release manager works backward to define windows during which time certain activites related to the release can happen. This has been done for ns-3.3 and the important milestones are:
  
 +
# September 22 -- ns-3.2 posted;
 +
# September 22 -- ns-3.3 '''''Open phase begins''''';
 +
# October 20 -- Recommended cutoff for new feature submission;
 +
# October 27 -- Deadline for new feature submissions that require design review;
 +
# November 3 -- Approved new feature ready-for-merge deadline;
 +
# November 3 -- Late merge period begins ('''''Merge Week Begins''''');
 +
# November 10 -- Late merge period ends;
 +
# November 10 -- '''''Open phase ends''''';
 +
# November 10 -- '''''Maintenance phase begins''''';
 +
# December 1 -- '''''Maintenance phase ends''''';
 +
# December 1 -- '''''Code freeze phase begins''''';
 +
# December 2 -- ns-3.3-RC1;
 +
# December 5 -- ns-3.3-RC2;
 +
# December 9 -- ns-3.3-RC3;
 +
# December 12 -- ns-3.3-RC4;
 +
# December 16 -- ns-3.3-RC5;
 +
# December 17 -- ns-3.3-RC6;
 +
# December 18 -- ns-3.3 posted;
 +
# December 18 -- '''''Code freeze phase ends''''';
 +
# December 18 -- ns-3.4 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.3 should contact craigdo and arrange to have their features merged into ns-3-dev.  You will be expected to provide the following:
  
In "Open" phase, the release manager has a low profileHowever, the release
+
* A mercurial patch or bundle against the current version of ns-3-dev that contains your proposed feature additionYou need to make sure that I can apply this patch and build and run (debug and optimized as appropriate) all unit and regression tests sucessfully on all of our target machines;
manager should be involved with scheduling and approving major merges,
+
* 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 genenerate release notes and will be provided to maintainers if a code review is indicated);
because he or she may want to manage the dependencies and do some testing
+
* Some kind of unit or regression test that I can use to determine if your feature is actually working at each stage of the integration.
in a particular order.  In open phase, modules that are self contained
+
(e.g. a new channel model for WiFi) don't really need much coordination
+
with the release manager.
+
  
(See below for "major merges").
+
I 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 acknowledgement by maintainers is indicated if:
  
In "Maintenance" phase, no new features are to be added, but the maintainers
+
* Your proposed feature does not work with all models or on all platforms;
may check in fixes to bugs.  Maintainers may appeal to the release manager
+
* Your feature changes pre-existing APIs;
for adding new self-contained features, but it is release manager's call.
+
* Your feature crosses maintainer boundaries.
  
In Code freeze phase, the release manager must approve (or apply) all changes
+
Just to be safe, I 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 I will run this submission by the maintainers of the current devices.  The maintainers won't have any responsibility to positively ack the submission, but I will take some time to allow a reasonable review.
to ns-3-dev outside of documentation.  The release manager may also set
+
a freeze date on documentation.
+
  
Typically, the feature freeze is 4-6 weeks before the projected release
+
I will coordinate new feature merges beginning at the start of the open phase (September 22, 2008).  The absolute final deadline for feature inclusion in ns-3.3 is the start of the "Late merge period."  This is the time during which I merge the code from all of those people who have waited until the last minute and work out any system integration issues that pop up.  If you miss the start of the late merge period, or have a feature that is not design-reviewed by the start of the late merge period, well, sorry.  You get to wait until the ns-3.4 open period to try again.
date, and the code freeze is 2 weeks before the projected release date.
+
  
The release manager is responsible for preparing and maintaining RELEASE_NOTES,
+
The end of the late merge period coincides 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 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 me if you want to add small, self-contained features, but there are no guarantees that I will okay them.
changes.html, and release candidates, and for updating web pages and
+
wikis concerning release-specific information (e.g., update the Installation
+
wiki page if there is an issue discovered with a compiler).
+
  
Detailed steps for doing the source code release are found in the [http://code.nsnam.org/ns-3-dev/file/1e8249c58fda/doc/release_steps.txt doc/release_steps.txt] file in the ns-3-dev repository.
+
On December 1st, 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. I will begin my daily annoying emails listing all of the priority one bugs that are outstanding. Our ''goal'' will be to reduce the number of P1 bugs to zero before the release of ns-3.3.
  
=== Major merges ===
+
'''''I 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.'''''
  
Major merges are those that are not self contained within the scope of a
+
== Candidates for Merge into ns-3.3 ==
single maintainer, those that change API, and those that have some issues
+
As you can see in the [[Roadmap]], we have identified several candidates for inclusion in ns-3.3.  As time passes, I will add more status regarding the progress of these new features.
with the build system or other dependencies.
+
  
Past examples of major merges:
+
* IPv6 Address Support -- Merged
* NSC
+
* Emulation Mode Support -- Merged
* Bridge device and promiscuous mode
+
* ICMP Support -- Merged
* Attribute system
+
* <s>Build System Refactoring</s> -- Dropped from ns-3.3
* Python bindings
+
* <s>IPv4/Routing Refactoring + Basic IPv6 Support</s> -- Dropped from ns-3-3
 +
* <s>Random Number Generator and RandomVariable Changes</s> -- Dropped from ns-3.3
  
If a proposed new feature (or refactoring) meets one of these criteria:
+
== IPv6 Address Support ==
# Does not work with all models or on all platforms
+
=== Status as of November 7, 2008 ===
# Changes existing APIs
+
IPv6 Address Support merged into ns-3-dev.
# Crosses maintainer boundaries
+
  
then, the release manager will ask for code review by all maintainers and
+
== Emulation Mode Support ==
request a positive ack that the maintainer is comfortable with the
+
=== Status as of November 5, 2008 ===
proposed merge and believes that it will interact well with, or have
+
Emulation Mode Support merged into ns-3-dev.
no effect on, his or her component.  This code review process will typically
+
lead to questions and comments that need resolution.
+
  
In the case where a new model does not work with the existing simulator,
+
== ICMP Support ==
(not on all platforms, not with all existing models) then the model
+
=== Status as of October 29, 2008 ===
must receive an approval (exception) from the architecture board or project
+
ICMP Support merged into ns-3-dev.
lead.  Typically, they will either grant this exception or ask the model
+
author to improve the support and come back later.
+
  
The release manager can veto a major merge based on preliminary testing or
+
----
concern about looming problems to finalize things for the release.
+
  
Finally, it is good practice to coordinate among the active committers and release manager when you are doing a major merge, to avoid bad merge collisions.
+
[[User:Craigdo|Craigdo]] 18:43, 19 December 2008 (UTC)

Latest revision as of 18:43, 19 December 2008

Main Page - Current Development - Developer FAQ - Tools - Related Projects - Project Ideas - Summer Projects

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

The Release

This page summarizes the ongoing release planning for the third stable release of ns-3.

  • ns-3.3 was released on Thursday, December 18, 2008.

The Hot List

As I type this, it is December 19th and we shipped ns-3.3 yesterday. Thanks to everyone, especially those I may have offended by my lame attempts at humor.

Bhattacharjea:

  1. 250 Tcp breaks if you set the delackcount > 2 -- Fixed
  2. 341 Get unexpected dropped packets when using SetSendCallback with heavy traffic -- Priority Reduced
  3. 358 calling listen on non-closed TCP sockets sends resets, should fail and do nothing -- Fixed
  4. 365 TcpSocketImpl::Recv returns 0 without setting m_errno -- Fixed
  5. 392 Example star.cc confuses TCP -- Fixed
  6. 410 Doxygen is not picking up class OnOffHelper -- Fixed
  7. 411 OnOffApplication::OnTime does not work -- Fixed
  8. 417 stack explosion when sending to loopback device -- Fixed
  9. 418 RttEstimator::RetransmitTimeout can return a negative value -- Fixed
  10. 423 TCP copy constructor wrong -- Fixed

Carniero:

  1. 289 CommandLine::AddValue is not wrapped -- Fixed
  2. 325 regression code should be moved into regression/wscript -- Fixed
  3. 348 regression tests do not work in private or disconnected networks -- Fixed
  4. 387 Build fails with junk subdirectories in "scratch" directory -- Fixed
  5. 413 python bindings not portable to OS X -- Fixed

Dowell:

  1. 66 improve granularity of GlobalRouteManager::PopulateRoutes -- Fixed
  2. 114 global routing doesn't handle multi-hop layer-2 subnets -- Fixed
  3. 187 Need 'perfect' ARP -- Priority Reduced
  4. 215 Node names patch -- Priority Reduced
  5. 230 Simulator::Now() Updating and Simulator::Stop() -- Fixed
  6. 241 Trace sources not clearly documented, trace sinks not clearly documented -- Superceded
  7. 263 XxxAddress::ConvertFrom are prone to subtle bugs -- Won't Fix
  8. 383 Please make _all_ header structures public -- Fixed
  9. 391 Example csma-star kills global routing -- Fixed
  10. 401 add InternetStackHelper::EnableAscii () -- Fixed
  11. 404 ErrorModel attribute name is not consistent across devices -- Fixed
  12. 414 No ReceiveErrorModel in many devices -- Priority Reduced
  13. 416 pcap traces not always closing cleanly at simulation end -- Invalid
  14. 419 *Helper::SetAttribute* methods sometimes painful to use -- Priority Reduced
  15. 422 Emulation Needs a Manual Chapter -- Fixed
  16. 429 wifi-wired-bridging fails regression tests on Cygwin and OSX Intel -- Fixed
  17. 430 Doxygen warnings creeping back into system -- Fixed
  18. 431 wifi wired-bridging.cc memory leak reported in valgrind -- Fixed
  19. 439 second.cc and third.cc don't set CSMA data rate and delay -- Fixed
  20. 442 The device trace sources in the system are not very well documented -- Fixed
  21. 444 Inernet-stack trace sources not well documented -- Fixed
  22. 448 V4Ping Application Sends uint32_t Data in Host Order -- Fixed
  23. 450 Examples first, second, third need fixed seeds -- Fixed

Henderson:

  1. 188 global routing does not handle ip aliasing -- Priority Reduced
  2. 400 Wifi Muti-Hop Network not forwaring packets (atleast ARP) -- Fixed
  3. 403 Ipv4AddressHelper cannot assign /32 addresses -- Fixed
  4. 406 GlobalRouteManager behaviour after Ipv4 interface SetDown and SetUp procedure <- Fixed
  5. 407 OLSR may select wrong interface in MID context -- Priority Reduced
  6. 415 OLSR's broken dynamic behaviour? <-- Fixed
  7. 433 DataRate: kBps and kB/s have wrong multipliers. -- Fixed

Lacage:

  1. 218 wifi PHY base class must be virtualized and subclass renamed -- Fixed
  2. 257 log time printer, can we optionally support output of time in seconds? -- Fixed
  3. 395 log distance propagation loss model complex to use. -- Fixed
  4. 396 Weird WiFi error state with STA slowing approaching the wifi range of an AP -- Fixed
  5. 397 Custom WifiModes apparently not possible in infrastructure mode -- Priority Reduced
  6. 398 NqstaWifiMac does not filter received frames by BSSID -- Fixed
  7. 405 wifi log messages improvements -- Fixed
  8. 408 No duplicate filtering for managament frames -- Fixed
  9. 409 Simulation fails depending on number of wireless nodes -- Priority Reduced
  10. 412 Extend number of template parameters in xxxCallback classes -- Priority Reduced
  11. 435 yans wifi helper file names not consistent -- Fixed
  12. 436 class MatchContainer lacks Doxygen -- Fixed
  13. 440 Tutorial example third.cc no longer compiles, tutorial obsolete -- Fixed
  14. 441 double Time::GetSeconds() precision or roundingissue -- Fixed

Westphal:

  1. 320 getsockname returns a port number in network byte order -- Fixed
  2. 356 tcp-nsc-lfn fails with --valgrind selected -- Fixed
  3. 428 segfault in tcp-nsc-lfn -- Priority Reduced/Renamed

The Release Manager

Craig Dowell (craigdo at ee.washington.edu) is the release manager for ns-3.3 and is the contact for any release issues.

The ns-3.3 Release Schedule

ns-3 releases are based on date-driven schedules as opposed to feature-driven schedules. We decide on a release date and then the release manager works backward to define windows during which time certain activites related to the release can happen. This has been done for ns-3.3 and the important milestones are:

  1. September 22 -- ns-3.2 posted;
  2. September 22 -- ns-3.3 Open phase begins;
  3. October 20 -- Recommended cutoff for new feature submission;
  4. October 27 -- Deadline for new feature submissions that require design review;
  5. November 3 -- Approved new feature ready-for-merge deadline;
  6. November 3 -- Late merge period begins (Merge Week Begins);
  7. November 10 -- Late merge period ends;
  8. November 10 -- Open phase ends;
  9. November 10 -- Maintenance phase begins;
  10. December 1 -- Maintenance phase ends;
  11. December 1 -- Code freeze phase begins;
  12. December 2 -- ns-3.3-RC1;
  13. December 5 -- ns-3.3-RC2;
  14. December 9 -- ns-3.3-RC3;
  15. December 12 -- ns-3.3-RC4;
  16. December 16 -- ns-3.3-RC5;
  17. December 17 -- ns-3.3-RC6;
  18. December 18 -- ns-3.3 posted;
  19. December 18 -- Code freeze phase ends;
  20. December 18 -- ns-3.4 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.3 should contact craigdo and arrange to have their features merged into ns-3-dev. You will be expected to provide the following:

  • A mercurial patch or bundle against the current version of ns-3-dev that contains your proposed feature addition. You need to make sure that I can apply this patch and build and run (debug and optimized as appropriate) all unit and regression tests sucessfully 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 genenerate release notes and will be provided to maintainers if a code review is indicated);
  • Some kind of unit or regression test that I can use to determine if your feature is actually working at each stage of the integration.

I 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 acknowledgement 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, I 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 I will run this submission by the maintainers of the current devices. The maintainers won't have any responsibility to positively ack the submission, but I will take some time to allow a reasonable review.

I will coordinate new feature merges beginning at the start of the open phase (September 22, 2008). The absolute final deadline for feature inclusion in ns-3.3 is the start of the "Late merge period." This is the time during which I merge the code from all of those people who have waited until the last minute and work out any system integration issues that pop up. If you miss the start of the late merge period, or have a feature that is not design-reviewed by the start of the late merge period, well, sorry. You get to wait until the ns-3.4 open period to try again.

The end of the late merge period coincides 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 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 me if you want to add small, self-contained features, but there are no guarantees that I will okay them.

On December 1st, 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. I will begin my daily annoying emails listing all of the priority one bugs that are outstanding. Our goal will be to reduce the number of P1 bugs to zero before the release of ns-3.3.

I 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.

Candidates for Merge into ns-3.3

As you can see in the Roadmap, we have identified several candidates for inclusion in ns-3.3. As time passes, I will add more status regarding the progress of these new features.

  • IPv6 Address Support -- Merged
  • Emulation Mode Support -- Merged
  • ICMP Support -- Merged
  • Build System Refactoring -- Dropped from ns-3.3
  • IPv4/Routing Refactoring + Basic IPv6 Support -- Dropped from ns-3-3
  • Random Number Generator and RandomVariable Changes -- Dropped from ns-3.3

IPv6 Address Support

Status as of November 7, 2008

IPv6 Address Support merged into ns-3-dev.

Emulation Mode Support

Status as of November 5, 2008

Emulation Mode Support merged into ns-3-dev.

ICMP Support

Status as of October 29, 2008

ICMP Support merged into ns-3-dev.


Craigdo 18:43, 19 December 2008 (UTC)