Ns-3.27: Difference between revisions

From Nsnam
Jump to navigation Jump to search
No edit summary
 
(27 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
* 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 - 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.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)