Ns-3.26: Difference between revisions

From Nsnam
Jump to navigation Jump to search
(update for ns-3.26)
Line 1: Line 1:
{{TOC}}
{{TOC}}


This page summarizes the release planning for ns-3.26 (planned for June 2016; rescheduled to early July 2016).  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.26 (originally planned for June 2016; rescheduled to July 2016).  The ns-3 release process is listed [http://www.nsnam.org/developers/release-process/ here] and [[Release Process | here]].


= Release goals =
This page has been recently revised and some original goals for ns-3.26 have slipped to a new [[ns-3.27]] page.


The following goals have been identified by maintainers.
= Schedule =


== Build system ==
The revised schedule is as follows:


* <s>Upgrade Waf and bake build systems according to [[BakeIntegration | this functional specification for supporting contributed code]]</s> <i>Deferred to post-ns-3.26; no Waf changes are anticipated in the initial phase.</i>
* July 15:  Merge any remaining new features
* July 22:  Code freeze
* around July 25:  Release
 
= Remaining new features =
 
Maintainers are working on finalizing the following new features:
 
== Wifi ==
 
* Introduce WiFi QoS support (https://codereview.appspot.com/302880043/)  (Stefano Avallone)
** Status:  Finalizing reviews; expected to add shortly
* 802.11e TXOP (https://codereview.appspot.com/293190043/) (Sebastien Deronne)
** Status:  needs to follow the QoS in WiFi patch
* RRPAA rate control (https://codereview.appspot.com/254440043/) (Matias Richart)
** Status:  finalize review comments/questions
* SpectrumWifiPhy (https://codereview.appspot.com/293380043/) (Tom Henderson)
** Status:  Sebastien asked for code de-duplication with YansWifiPhy
* Wi-Fi scanning support (https://www.nsnam.org/bugzilla/show_bug.cgi?id=2399) (Tom Henderson)
** Status:  Need to add an example
 
== traffic-control module ==
 
Stefano Avallone (stavallo@unina.it) is leading ns-3.26 development for traffic control, and has the following remaining goals:
 
* Add support for Byte Queue Limits (see bug 2428)
* porting and polishing fq-codel (see bug 2430)
* reviewing [https://www.nsnam.org/bugzilla/show_bug.cgi?id=2261 PIE contribution] (in progress)
* introduce mq (a multi-queue queue disc configured by default on wifi, along with fq-codel)
 
== ns-3 core ==
 
* Support DES metrics (https://codereview.appspot.com/301230043/) (Peter Barnes)
** Status:  Awaiting initial review
 
== TCP ==
 
* Hamilton TCP (http://mailman.isi.edu/pipermail/ns-developers/2016-April/013541.html) (Natale Patriciello)
** Status:  Natale asked to finalize this review.
 
TCP SACK (https://codereview.appspot.com/299130043/) is proposed to be held for merging to ns-3-dev just after ns-3.26 is released.
 
== applications ==
 
* Trace replay application (https://codereview.appspot.com/289550043/) (Tommaso Pecorella)
** Status:  Needs final review
 
== UAN ==
 
* UAN Raw application (https://www.nsnam.org/bugzilla/show_bug.cgi?id=2410)
** Status:  needs final review
 
= Bug fixing =
 
These will be largely handled in the bug tracker and we will handle as many as possible in the time remaining.


== ns-3 core ==
== ns-3 core ==
Line 31: Line 85:
== network module ==
== network module ==


There are a large number of patches pending on the Packet class and its friends; Tom H intends to work through them with Mathieu and with patch contributors.
There are a large number of patches pending on the Packet classes. This proposal was made recently on ns-developers:
 
This proposal was made recently on ns-developers:


* <s>we apply the patch in bug 2308 (LTE) if the LTE maintainers approve it</s> <i>Update:  Patch to 2308 was applied, but issues were later found and the bug is reopened</i>
* <s>we apply the patch in bug 2308 (LTE) if the LTE maintainers approve it</s> <i>Update:  Patch to 2308 was applied, but issues were later found and the bug is reopened</i>
Line 59: Line 111:
== TCP models ==
== TCP models ==


Natale Patriciello, Anh Nguyen, Tom Henderson, Matthieu Coudron, and Amir Modarresi are working on the following.
Open tracker issues
 
0) Already added.
 
TCP BIC, Veno, Scalable, Vegas, YeAH, and Illinois have already been merged.
 
1) Open tracker issues


* 2263:  Support processing multiple TCP options in 1 header
* 2263:  Support processing multiple TCP options in 1 header
Line 79: Line 125:
* 2214:  TCP ScheduleNow for data transfer
* 2214:  TCP ScheduleNow for data transfer
* 1783:  experiencing drops during FastRec causes Tcp cw to blow up
* 1783:  experiencing drops during FastRec causes Tcp cw to blow up
2) Try to merge as many remaining TCP congestion control variants as are ready or nearly ready.
* CUBIC
* <strike>YeAH</strike> (merged)
* <strike>Illinois</strike> (merged)
* H-TCP:  http://mailman.isi.edu/pipermail/ns-developers/2016-April/013541.html
3) work on SACK:  <s>https://codereview.appspot.com/283880043/</s> Updated in late May to this issue:  https://codereview.appspot.com/299130043/
* General Scoreboard
* Tcp option SACK management
* Tcp option SACK implementation
MPTCP will not be merged for ns-3.26.
== traffic-control module ==
Stefano Avallone (stavallo@unina.it) is leading ns-3.26 development for traffic control, and has the following goals:
* Add support for Byte Queue Limits (see bug 2428)
* porting and polishing fq-codel (see bug 2430)
* reviewing [https://www.nsnam.org/bugzilla/show_bug.cgi?id=2261 PIE contribution] (in progress)
* introduce mq (a multi-queue queue disc configured by default on wifi, along with fq-codel)
* [https://www.nsnam.org/bugzilla/show_bug.cgi?id=2241 user priorities and QoS API]
* <s>provide a better solution for a couple of issues introduced by the requeue mechanism</s> Merged


== lte module ==
== lte module ==
Line 117: Line 139:
=== lte maintenance items ===
=== lte maintenance items ===


<s>Manuel Ricardo plans to work on bug 2308 (how tags are used) in May.</s> <i> Issue reopened</i>
Manuel Ricardo is handling bug 2308 (how tags are used).


Biljana will coordinate the remaining LTE bug responses on a best-effort basis:
Other LTE bug responses needed for below:


* 2339:  PUSCH transmit power scaled incorrectly
* 2339:  PUSCH transmit power scaled incorrectly
Line 140: Line 162:


== wifi module ==
== wifi module ==
Wifi continues to undergo significant development activity.
Sebastien Deronne is working on these extensions:
* [https://www.nsnam.org/bugzilla/show_bug.cgi?id=2381 support for 802.11e TXOP]
* extension of MPDU aggregation and block ack support (multi-tid, delayed response, …)
Tom Henderson is working on these extensions:
* SpectrumWifiPhy (bug 2400)
* TOS setting so that Wi-Fi QoS can read it (also Stefano Avallone has a proposal)
* support for selecting best beacon to associate with (also, channel roaming)
* support for separate LAA Wifi Coexistence module
Matias Richart is working on [https://codereview.appspot.com/254440043/ RRPAA rate control]
===wifi maintenance items===


Tom Henderson would like to accomplish the following:
Tom Henderson would like to accomplish the following:
* resolve bug 2369 on immediate access vs backoff
* resolve bug 2369 on immediate access vs backoff
* EDCA open bugs (2222, 2229)
* EDCA open bugs (2222)
* allow mesh to run over 802.11n/ac


current wifi issue list:
current wifi issue list:
Line 166: Line 171:


== lr-wpan module ==
== lr-wpan module ==
Tommaso is aiming to get Vishwesh's code merged from GSOC 2015.
Other than that, the following bugs are open:


* 2088 SetMcpsDataIndicationCallback stops UDP data
* 2088 SetMcpsDataIndicationCallback stops UDP data
Line 181: Line 182:
== internet module ==
== internet module ==


Tommaso is coordinating the below new feature work.
* DHCP support: https://www.nsnam.org/bugzilla/show_bug.cgi?id=2280
* increased support for ARP/ND changes in bug 2145
* Krishna's code from 2014 GSOC
See also the proposal to add TOS byte:
https://codereview.appspot.com/294280043/
=== maintenance issues for internet ===
Some recent internet bugs:
- 2209 ICMP message forwarding not based in incoming interface
- 2209 ICMP message forwarding not based in incoming interface
- 2180 is possible to register same route multiple times
- 2180 is possible to register same route multiple times
Line 198: Line 189:
- 1984 expose additional random variables to configuration system
- 1984 expose additional random variables to configuration system


bug 2057 is considered to be high priority
bug 2057, 2102 is considered to be high priority


== applications module ==
== applications module ==
For application module, we have a backlog of contributed code reviews related to new applications:
* MPEG traffic generator
* trace replay application
* web browsing application
and we also have these maintenance issues:


* 2178 add Rx trace source to UdpEchoServer
* 2178 add Rx trace source to UdpEchoServer
Line 218: Line 201:
== uan module ==
== uan module ==


Federico Guerra plans to integrate [https://www.nsnam.org/bugzilla/show_bug.cgi?id=2299 WOSS with the UAN module].
* 2007 SetRxThresholdDb is marked deprecated but is used by the model
 
Hossam Khader has also been active with patches and new proposals; see issues 2404, 2405, 2410, 2413.
 
== other ==
 
Chip Webb is working on improving support for Ethernet (full duplex links, switches and mixed L2/L3 networks)
 
= Release and development schedule =
 
The following schedule is planned (sliding about 5 weeks from original plan):
 
* <s>May 11, 2016</s> <s>June 22:</s> July 13?  New feature deadline.
* <s>May 25, 2016</s> <s>July 1:</s> July 20?  Planned code freeze date.
* <s>June 1, 2016</s> <s>July 6:</s> July 27?  Scheduled release date for ns-3.26
 
= Help wanted =
 
If you would like to help prepare the ns-3.26 release in some way, please contact Tom Henderson (tomhend@u.washington.edu).
 
Also, please check back at a later date as specific tasks may be listed here.

Revision as of 13:45, 8 July 2016

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.26 (originally planned for June 2016; rescheduled to July 2016). The ns-3 release process is listed here and here.

This page has been recently revised and some original goals for ns-3.26 have slipped to a new ns-3.27 page.

Schedule

The revised schedule is as follows:

  • July 15: Merge any remaining new features
  • July 22: Code freeze
  • around July 25: Release

Remaining new features

Maintainers are working on finalizing the following new features:

Wifi

traffic-control module

Stefano Avallone (stavallo@unina.it) is leading ns-3.26 development for traffic control, and has the following remaining goals:

  • Add support for Byte Queue Limits (see bug 2428)
  • porting and polishing fq-codel (see bug 2430)
  • reviewing PIE contribution (in progress)
  • introduce mq (a multi-queue queue disc configured by default on wifi, along with fq-codel)

ns-3 core

TCP

TCP SACK (https://codereview.appspot.com/299130043/) is proposed to be held for merging to ns-3-dev just after ns-3.26 is released.

applications

UAN

Bug fixing

These will be largely handled in the bug tracker and we will handle as many as possible in the time remaining.

ns-3 core

For ns-3.26, only maintenance on core (dealing with bug reports/open issues) is planned.

Tom Henderson would like to finish off:

  • Attribute/TraceSource deprecation (bugs 2149 and 2344)
  • refactor chi-squared tests for random number generation (bug 1927)
  • Matt's test.py contributions (bug 2291)
  • bug 2086 on attribute accessibility
  • bug 1962 on random variable stream GetStream() returning -1
  • bug 1939 on aggregating same object to two nodes Merged
  • bug 1604 on Config::GetDefault

Peter Barnes intends to continue working on:

  • Bug 938 - missing Doxygen in ns-3
  • Bug 1764 - can't compile without pthread
  • Bug 1972 - CommandLine duplicate argument handling

network module

There are a large number of patches pending on the Packet classes. This proposal was made recently on ns-developers:

  • we apply the patch in bug 2308 (LTE) if the LTE maintainers approve it Update: Patch to 2308 was applied, but issues were later found and the bug is reopened
  • we apply the patch in bug 2069 (fix size of m_used variable)
  • we open a 'feature request/PATCH WANTED' for removal of ByteTags
  • we study the implications of the expansion of tag size recently (bug 2361) and either update documentation or change the code
  • we add a 'best current practice' note to the documentation, on tag usage, as suggested by Tommaso. (perhaps modifying this section:
 https://www.nsnam.org/docs/release/3.25/models/html/packets.html#adding-and-removing-tags) 

In addition, the following maintenance/bugs should be dealt with:

  • bug 2415: PacketMetadata Class Locks up Example
  • bug 2407: Packet Metadata bad state with small packet size
  • bug 2253: Alexander Krotov reported a bug: https://www.nsnam.org/bugzilla/show_bug.cgi?id=2253
  • bug 2221: Packet tag size increased by 1 byte recently due to a Wi-Fi requirement; what should we do about this? is the previous 20 byte limit sacred?
  • bug 2198: proposed const addition
  • bug 2078: Tommaso found problems in metadata usage
  • bug 2102: another metadata bug reported
  • bug 1643: this has lingered with a patch for a while
  • bug 1535: this Packet::AddAtEnd() in TCP is still around; the TCP buffers still use this
  • bug 1407: packet header printing disabled

TCP models

Open tracker issues

  • 2263: Support processing multiple TCP options in 1 header
  • 2122: decouple TcpTxBuffer variables
  • 2264: Possibility to setup Initial Sequence Number
  • 1529: randomize TCP initial sequence number
  • 2285: loss of TCP 3-way handshake calls receive callback to fire
  • 1167: TCP socket deferring CLOSE forever
  • 2133: In TCP close procedure, assert fail when receive in FIN_WAIT_2
  • 2278: in TcpSocketBase, need to advance NextTxSequence
  • 2256: TCPTxBuffer should be able to tell BytesInFlight
  • 2220: RAM usage reduction through reduction of retx events
  • 2214: TCP ScheduleNow for data transfer
  • 1783: experiencing drops during FastRec causes Tcp cw to blow up

lte module

No major changes planned for ns-3.26. Base support for LAA Wifi Coexistence module will be added (Biljana). Deferred to post-ns-3.26

With regard to two large patches previously proposed for code review, neither probably will make it to ns-3.26:

Tom and Tommaso will try to review and merge the IPv6 support:

lte maintenance items

Manuel Ricardo is handling bug 2308 (how tags are used).

Other LTE bug responses needed for below:

  • 2339: PUSCH transmit power scaled incorrectly
  • 2282: Resources from UDP flows not realized
  • 2277: EpcTftClassifier::Classify blindly assumes L4 header
  • 2172: Out-of-bounds array access
  • 2161: Error in removing a bearer in epc-mme class
  • 2152: Uplink HARQ retransmissions out of synch at MAC layer
  • 2151: Redundancy version in uplink HARQ not generated properly
  • 2140: TraceFadingLossModel could use a wrong value
  • 2113: LTE RLC AM: all status reports indicate no more than one NACK
  • 2107: PCAP printing for S1U and X2
  • 2091: Race condition in LteUePhy::GenerateCqiRsrpRsrq
  • 2048: PfFfMacScheduler assigns dlinfo even if no resources available
  • 1861: Problem when send UDP packet size between 1473-1478 bytes
  • 1840: SINR->CQI->MCS conversion in the UL
  • 1515: REM shows increased SINR when co-located eNBs have same EARFCN
  • 1460: LTE-EPC/RPM different SINR values
  • 1438: lena-simple-epc with AM mode

wifi module

Tom Henderson would like to accomplish the following:

  • resolve bug 2369 on immediate access vs backoff
  • EDCA open bugs (2222)

current wifi issue list: https://www.nsnam.org/bugzilla/buglist.cgi?component=wifi&product=ns-3&query_format=advanced&resolution=---

lr-wpan module

  • 2088 SetMcpsDataIndicationCallback stops UDP data
  • 2033 IFS are not currently implemented
  • 1934 CCA interrupted by incoming packet
  • 1933 CCA mode should be configurable
  • 1924 sensing radius and CCA
  • 1879 LR-WPAN association primitive
  • 1809 lr-wpan features needed

internet module

- 2209 ICMP message forwarding not based in incoming interface - 2180 is possible to register same route multiple times - 2102 global routing and bridging is reopened - 2064 UDP socket GetMtu() needed - 2057 ARP and NDISC caches should be updated by L4 - 1984 expose additional random variables to configuration system

bug 2057, 2102 is considered to be high priority

applications module

  • 2178 add Rx trace source to UdpEchoServer
  • 2111 add receiver timestamp to SeqTsHeader (we seem to have agreed to make a new header?)
  • 2106 add SetSocket API
  • 1977 v4ping verbose output when not explicitly stopped
  • 1899 add sequence number header (possibly related to 2111?)

uan module

  • 2007 SetRxThresholdDb is marked deprecated but is used by the model