From Nsnam
Jump to: navigation, search

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 (originally for January 2017, now likely for July 2017). The ns-3 release process is listed here and here.

Current review items

Patches that are in LAST CALL state are nearing merge to ns-3-dev.

Patches that are labelled with a code review label are awaiting more review feedback.

Release status

We are waiting for resolution of API scanning for Python bindings (gccxml needs to be replaced by CastXML: https://www.nsnam.org/bugzilla/show_bug.cgi?id=2451) before releasing.

In the meantime, some final changes are being made to wifi, traffic-control, and internet (DHCP) modules.

Release goals

Build system

Python bindings

ns-3 core

Tom Henderson would like to finish off:

  • 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

Update May 7: These may slide past ns-3.27 release date.

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 has been merged and LEDBAT is under review, 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)

lte module

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

    • Update Dec 13: Bin is working with Sebastien on splitting the patch.

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

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


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.

Hossam Khader has also been active with patches and new proposals; see issues 2404, 2405, 2410, 2413.


Chip Webb is working on improving support for Ethernet (full duplex links, switches and mixed L2/L3 networks)

Release and development schedule


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.