Difference between revisions of "Ns-3.27"

From Nsnam
Jump to: navigation, search
(Python bindings)
 
(26 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{TOC}}
 
{{TOC}}
  
This page summarizes the release planning for ns-3.27 (January 2017).  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.27 (finally published on October 12, 2017).  The ns-3 release process is listed [http://www.nsnam.org/developers/release-process/ here] and [[Release Process | here]].
  
= Current review items =
+
= Release status =
  
Patches that are in [https://www.nsnam.org/bugzilla/buglist.cgi?bug_status=LAST%20CALL&product=ns-3&query_format=advanced&resolution=--- LAST CALL] state are nearing merge to ns-3-dev.
+
ns-3.27 was published on October 12, 2017.  ns-3.27 may be refreshed with maintenance releases (e.g. ns-3.27.1) depending on future improvements.
 
+
Patches that are labelled with a [https://www.nsnam.org/bugzilla/buglist.cgi?query_format=advanced&resolution=---&short_desc=code%20review&short_desc_type=allwordssubstr code review] label are awaiting more review feedback.
+
  
 
= Release goals =
 
= Release goals =
 +
 +
Note:  Not all goals were met; some will carry over to [[ns-3.28]], and some may be abandoned due to lack of contribution.
  
 
== Build system ==
 
== Build system ==
  
 
* Upgrade Waf and bake build systems according to [[BakeIntegration | this functional specification for supporting contributed code]]
 
* Upgrade Waf and bake build systems according to [[BakeIntegration | this functional specification for supporting contributed code]]
** '''Update Feb. 2''' Patches are pending; see this [http://mailman.isi.edu/pipermail/ns-developers/2017-January/013773.html mailing list description]
+
** goals met for ns-3.27
  
 
== Python bindings ==
 
== Python bindings ==
  
* gccxml needs to be replaced by CastXML:  https://www.nsnam.org/bugzilla/show_bug.cgi?id=2451.  Ankit Deepak is looking into this.
+
* gccxml needs to be replaced by CastXML:  https://www.nsnam.org/bugzilla/show_bug.cgi?id=2451.   
 +
** We have done so for ns-3.27, but the scanning process is no longer fully automated (needs further work)
  
 
== ns-3 core ==
 
== ns-3 core ==
  
Tom Henderson would like to finish off:
+
These were not completed and may slide to ns-3.28.
 +
 
 
* refactor chi-squared tests for random number generation (bug 1927)
 
* refactor chi-squared tests for random number generation (bug 1927)
 
* Matt's test.py contributions (bug 2291)
 
* Matt's test.py contributions (bug 2291)
Line 50: Line 52:
  
 
== TCP models ==
 
== TCP models ==
 +
 +
TCP SACK and LEDBAT has been merged, along with a few bug fixes.
  
 
Natale Patriciello and contributors are working on the following.
 
Natale Patriciello and contributors are working on the following.
  
1) Open tracker issues
+
1) Open tracker issues ('''Last check in July 3.''')
  
* 2263:  Support processing multiple TCP options in 1 header
+
* <s>2613:  MaxRxSequence sometimes too large</s> [https://www.nsnam.org/bugzilla/show_bug.cgi?id=2613 fixed]
* 2122:  decouple TcpTxBuffer variables
+
* 2565:  Do not wait 2*MSL to notify socket close ([https://www.nsnam.org/bugzilla/show_bug.cgi?id=2565 waiting for comments])
* 2264:  Possibility to setup Initial Sequence Number
+
* <s>2559:  TCP advertised window.</s> [https://www.nsnam.org/bugzilla/show_bug.cgi?id=2559 fixed]
 +
* <s>2263:  Support processing multiple TCP options in 1 header</s> [https://www.nsnam.org/bugzilla/show_bug.cgi?id=2263 fixed]
 +
* 2122:  decouple TcpTxBuffer variables (''wrong bug number? Right is [https://www.nsnam.org/bugzilla/show_bug.cgi?id=2112 2112]?)
 +
* 2264:  Possibility to setup Initial Sequence Number ([https://www.nsnam.org/bugzilla/show_bug.cgi?id=2264 patch added])
 
* 1529:  randomize TCP initial sequence number
 
* 1529:  randomize TCP initial sequence number
* 2285:  loss of TCP 3-way handshake calls receive callback to fire
+
* 2285:  loss of TCP 3-way handshake calls receive callback to fire ([https://www.nsnam.org/bugzilla/show_bug.cgi?id=2285 patch added])
 
* 1167:  TCP socket deferring CLOSE forever
 
* 1167:  TCP socket deferring CLOSE forever
* 2133:  In TCP close procedure, assert fail when receive in FIN_WAIT_2
+
* 2133:  In TCP close procedure, assert fail when receive in FIN_WAIT_2 ([https://www.nsnam.org/bugzilla/show_bug.cgi?id=2133 patch added])
 
* 2278:  in TcpSocketBase, need to advance NextTxSequence
 
* 2278:  in TcpSocketBase, need to advance NextTxSequence
* 2256:  TCPTxBuffer should be able to tell BytesInFlight
+
* <s>2256:  TCPTxBuffer should be able to tell BytesInFlight</s> [https://www.nsnam.org/bugzilla/show_bug.cgi?id=2256 fixed]
* 2220:  RAM usage reduction through reduction of retx events
+
* 2220:  RAM usage reduction through reduction of retx events ([https://www.nsnam.org/bugzilla/show_bug.cgi?id=2220 patch added])
* 2214:  TCP ScheduleNow for data transfer
+
* <s>2214:  TCP ScheduleNow for data transfer</s> [https://www.nsnam.org/bugzilla/show_bug.cgi?id=2214 fixed]
* 1783:  experiencing drops during FastRec causes Tcp cw to blow up
+
* 1783:  experiencing drops during FastRec causes Tcp cw to blow up ([https://www.nsnam.org/bugzilla/show_bug.cgi?id=1783 patch added])
  
2) work on SACK:  <s>https://codereview.appspot.com/283880043/</s> Updated in late May to this issue:  https://codereview.appspot.com/299130043/
+
2) MPTCP is also in work but not for ns-3.27
* General Scoreboard
+
* Tcp option SACK management
+
* Tcp option SACK implementation
+
 
+
3) MPTCP is also in work
+
  
 
== traffic-control module ==
 
== traffic-control module ==
  
 
* introduce mq (a multi-queue queue disc configured by default on wifi, along with fq-codel)
 
* introduce mq (a multi-queue queue disc configured by default on wifi, along with fq-codel)
 +
** This was merged to ns-3.27.
  
 
== lte module ==
 
== lte module ==
  
 
* LTE RACH:  https://www.nsnam.org/bugzilla/show_bug.cgi?id=2300  (patch is very large-- Marco is reviewing)
 
* LTE RACH:  https://www.nsnam.org/bugzilla/show_bug.cgi?id=2300  (patch is very large-- Marco is reviewing)
 +
** This was not merged for ns-3.27
 +
 
* Carrier Aggregation from Google Summer of Code 2015 (needs additional work)
 
* Carrier Aggregation from Google Summer of Code 2015 (needs additional work)
 +
** This was merged for ns-3.27
  
 
Tom and Tommaso will try to review and merge the IPv6 support:
 
Tom and Tommaso will try to review and merge the IPv6 support:
 
* https://www.nsnam.org/bugzilla/show_bug.cgi?id=2312
 
* https://www.nsnam.org/bugzilla/show_bug.cgi?id=2312
 +
** Note:  This was further developed in GSoC 2017.
  
 
=== lte maintenance items ===
 
=== lte maintenance items ===
Line 116: Line 123:
  
 
A high priority is the frame capture model: https://www.nsnam.org/bugzilla/show_bug.cgi?id=2368
 
A high priority is the frame capture model: https://www.nsnam.org/bugzilla/show_bug.cgi?id=2368
** '''Update Dec 13:''' Bin is working with Sebastien on splitting the patch.
+
** This was merged for ns-3.27
  
 
Sebastien Deronne is working on these extensions:
 
Sebastien Deronne is working on these extensions:
Line 129: Line 136:
  
 
Matias Richart is working on [https://codereview.appspot.com/254440043/ RRPAA rate control]
 
Matias Richart is working on [https://codereview.appspot.com/254440043/ RRPAA rate control]
 +
** This was merged for ns-3.27
  
 
Other items:
 
Other items:
Line 151: Line 159:
 
* 1809 lr-wpan features needed
 
* 1809 lr-wpan features needed
  
== mesh ===
+
== mesh ==
  
* 2326 False duplicate detection in MaxRxMiddle
+
There is some difference of opinion whether this is mesh or Wi-Fi; it is probably a Wi-Fi bug triggered by a mesh use case.
 +
* 2326 False duplicate detection in MacRxMiddle
  
 
== internet module ==
 
== internet module ==
Line 188: Line 197:
  
 
Federico Guerra plans to integrate [https://www.nsnam.org/bugzilla/show_bug.cgi?id=2299 WOSS with the UAN module].
 
Federico Guerra plans to integrate [https://www.nsnam.org/bugzilla/show_bug.cgi?id=2299 WOSS with the UAN module].
 +
** This was merged for ns-3.27.
  
 
Hossam Khader has also been active with patches and new proposals; see issues 2404, 2405, 2410, 2413.
 
Hossam Khader has also been active with patches and new proposals; see issues 2404, 2405, 2410, 2413.
Line 194: Line 204:
  
 
Chip Webb is working on improving support for Ethernet (full duplex links, switches and mixed L2/L3 networks)
 
Chip Webb is working on improving support for Ethernet (full duplex links, switches and mixed L2/L3 networks)
 
= Release and development schedule =
 
 
TBD
 
 
= Help wanted =
 
 
If you would like to help prepare the ns-3.27 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.
 

Latest revision as of 16:03, 12 October 2017

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

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

This page summarizes the release planning for ns-3.27 (finally published on October 12, 2017). The ns-3 release process is listed here and here.

Release status

ns-3.27 was published on October 12, 2017. ns-3.27 may be refreshed with maintenance releases (e.g. ns-3.27.1) depending on future improvements.

Release goals

Note: Not all goals were met; some will carry over to ns-3.28, and some may be abandoned due to lack of contribution.

Build system

Python bindings

ns-3 core

These were not completed and may slide to ns-3.28.

  • refactor chi-squared tests for random number generation (bug 1927)
  • Matt's test.py contributions (bug 2291)
  • bug 1962 on random variable stream GetStream() returning -1
  • 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 class and its friends; Tom H intends to work through them with Mathieu and with patch contributors.

  • bug 2505: Header::Deserialize
  • bug 2308 was reopened; see also 2361. Need to add a 'best current practice' note to the documentation, on tag usage
  • 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
  • consider Alex's proposal of some API changes to the tags class: https://www.nsnam.org/bugzilla/show_bug.cgi?id=1383
  • consider to finish patch for serializing/deserializing tags (bug 582)

TCP models

TCP SACK and LEDBAT has been merged, along with a few bug fixes.

Natale Patriciello and contributors are working on the following.

1) Open tracker issues (Last check in July 3.)

  • 2613: MaxRxSequence sometimes too large fixed
  • 2565: Do not wait 2*MSL to notify socket close (waiting for comments)
  • 2559: TCP advertised window. fixed
  • 2263: Support processing multiple TCP options in 1 header fixed
  • 2122: decouple TcpTxBuffer variables (wrong bug number? Right is 2112?)
  • 2264: Possibility to setup Initial Sequence Number (patch added)
  • 1529: randomize TCP initial sequence number
  • 2285: loss of TCP 3-way handshake calls receive callback to fire (patch added)
  • 1167: TCP socket deferring CLOSE forever
  • 2133: In TCP close procedure, assert fail when receive in FIN_WAIT_2 (patch added)
  • 2278: in TcpSocketBase, need to advance NextTxSequence
  • 2256: TCPTxBuffer should be able to tell BytesInFlight fixed
  • 2220: RAM usage reduction through reduction of retx events (patch added)
  • 2214: TCP ScheduleNow for data transfer fixed
  • 1783: experiencing drops during FastRec causes Tcp cw to blow up (patch added)

2) MPTCP is also in work but not for ns-3.27

traffic-control module

  • introduce mq (a multi-queue queue disc configured by default on wifi, along with fq-codel)
    • This was merged to ns-3.27.

lte module

  • Carrier Aggregation from Google Summer of Code 2015 (needs additional work)
    • This was merged for ns-3.27

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

lte maintenance items

Manuel Ricardo plans to work on bug 2308 (how tags are used) in May. Issue reopened

Biljana will coordinate the remaining LTE bug responses on a best-effort basis:

  • 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

Wifi continues to undergo significant development activity.

A high priority is the frame capture model: https://www.nsnam.org/bugzilla/show_bug.cgi?id=2368

    • This was merged for ns-3.27

Sebastien Deronne is working on these extensions:

  • HT Greenfield support
  • extension of MPDU aggregation and block ack support (multi-tid, delayed response, …)

Tom Henderson is working on these extensions:

  • support for selecting best beacon to associate with (also, channel roaming)
  • support for separate LAA Wifi Coexistence module
  • shepherd the WinLab packet capture model review
  • new SpectrumWifiPhy error models based on link-to-system mapping

Matias Richart is working on RRPAA rate control

    • This was merged for ns-3.27

Other items:

  • Detection thresholds reworked (Seb/Tom)
  • Wifi code cleanup/refactoring (Seb/Tom)

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

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
  • 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

mesh

There is some difference of opinion whether this is mesh or Wi-Fi; it is probably a Wi-Fi bug triggered by a mesh use case.

  • 2326 False duplicate detection in MacRxMiddle

internet module

Tommaso is coordinating the below new feature work.

maintenance issues for internet

Some recent internet bugs:

  • 2209 ICMP message forwarding not based in incoming interface
  • 2180 is possible to register same route multiple times
  • 2064 UDP socket GetMtu() needed
  • 1984 expose additional random variables to configuration system

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
  • 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

Federico Guerra plans to integrate WOSS with the UAN module.

    • This was merged for ns-3.27.

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)