From 9941e75c5e116d1cdf8bc96d7a84a7ebae97ade1 Mon Sep 17 00:00:00 2001 From: Tom Henderson Date: Sat, 12 Mar 2016 17:37:01 -0800 Subject: [PATCH] update RELEASE_NOTES --- RELEASE_NOTES | 121 +++++++++++++++++++++++++++++++++++++------------- 1 file changed, 91 insertions(+), 30 deletions(-) diff --git a/RELEASE_NOTES b/RELEASE_NOTES index 8382c7e77..4c778e547 100644 --- a/RELEASE_NOTES +++ b/RELEASE_NOTES @@ -10,6 +10,9 @@ Consult the file CHANGES.html for more detailed information about changed API and behavior across ns-3 releases. Release 3-dev +============= + +Release 3.25 ============ Availability @@ -18,40 +21,92 @@ This release is not yet available. Supported platforms ------------------- -To be determined. +This release has been tested on the following platforms: +- Ubuntu 15.10 (64 bit) with g++-5.2.1 +- Ubuntu 14.04 (64 bit) with g++-4.8.2 +- Fedora Core 23 (64 bit) with g++-5.3.1 +- Fedora Core 22 (32 bit) with g++-5.1.1 +- Fedora Core 21 (64 bit) with g++-4.9.2 +- CentOS/RHEL 6.7 (64-bit) with g++-4.4.7 +- OS X El Capitan 10.11.3 with Xcode 7.2.1 and Apple LLVM version 7.0.2 +- OS X Yosemite 10.10.5 with Xcode 7.2.1 and Apple LLVM version 7.0.2 +- FreeBSD 10.2-RELEASE (64 bit) with clang-3.4.1 New user-visible features ------------------------- -- (internet) The native TCP implementation has been refactored, for the following - improvements: 1) congestion control has been aligned with the Linux - architecture, to facilitate easier coding of new congestion control algorithms - or porting implementations from the Linux kernel, 2) Fast Retransmit and Fast - recovery algorithms, compliant to RFCs, are shared by all TCP variants, unlike - previous releases. 3) TCP Hybla and TCP HighSpeed have been added. -- (routing) The PrintRoutingTable* functions now print the following informations - each time they are called: 1) the node ID, 2) the global time, 3) the local time - 4) the routing protocol type -- (internet) L4 protocols (e.g., TCP, UDP, ICMP, etc.) can be demultiplexed by IP - according to the incoming interface. In other words, it is now possible to - use specialized L4 protocols according to the interface. -- (internet) Ipv6Address::IsAllHostsMulticast() is now deprecated. FF02::3 is not - in the official reserved IPv6 multicast address list. -- (internet) Ipv6Address::IsAll[Nodes,Routers]Multicast() now checks the address - scope beyond the simple link-local. Nodes are checked for Interface-Local, Link-Local - and Realm-Local, Routers for the above plus Site-Local. -- (internet) Ipv6 routing protocols must now *not* forward packets to upper layers - unless for extremey specific cases. The Ipv6L3protocol handles almost all the - packets directed to the host. -- (internet) Ipv6 can now reject packets directed to an address not configured on - the interface they are received from (Strong End System Model, RFC 1222). +- (internet) The native TCP implementation has been refactored, for the + following improvements: + 1) congestion control has been aligned with the Linux architecture, + to facilitate easier coding of new congestion control algorithms + or porting implementations from the Linux kernel, + 2) Fast Retransmit and Fast Recovery algorithms, compliant to RFCs, are + shared by all TCP variants, unlike previous releases. + 3) TCP Hybla and TCP HighSpeed variants have been added. + +- (routing) The PrintRoutingTable* functions now print the following information + each time they are called: + 1) the node ID, + 2) the global time, + 3) the local time (allowing for future introduction of per-node clocks), + 4) the routing protocol type + +- (traffic control) A traffic control sublayer has been added with the aim of + introducing an equivalent of the Linux Traffic +Control infrastructure into + ns-3. This layer sits in between the NetDevices (L2) and the network + protocol (e.g. IP). It is in charge of processing packets and performing + actions on them: scheduling, dropping, marking, policing, etc. Initial + support for flow control has been added to the PointToPointNetDevice; + backward-compatible support for other device types is provided. + +- (traffic control) A three band priority queue modelled after Linux + pfifo_fast queueing discipline has been added. + +- (traffic control) Adaptive RED extensions have been added to the RED model + +- (wifi) A number of changes related to improving support for 802.11n/ac + models have been introduced. + 1) Two rate controls compatible with High Throughput (HT) Wi-Fi modes + (e.g. 802.11n/ac), Ideal and MinstrelHT, have been added + 2) Support for multiple spatial streams (MIMO) using existing SISO + error models + 3) The WiFi helper API for the WifiMac sublayer, and the configuration + of HT modes and parameters, has been simplified + 4) Better support for backward compatibilty with legacy modes + +- (wifi) 802.11g was made backward compatible with 802.11b networks + +- (internet) L4 protocols (e.g., TCP, UDP, ICMP, etc.) can be demultiplexed + by IP according to the incoming interface. In other words, it is now + possible to use specialized L4 protocols according to the interface. + +- (internet) Ipv6Address::IsAllHostsMulticast() is now deprecated. + FF02::3 is not in the official reserved IPv6 multicast address list. + +- (internet) Ipv6Address::IsAll[Nodes,Routers]Multicast() now checks the + address scope beyond the simple link-local. Nodes are checked for + Interface-Local, Link-Local and Realm-Local, Routers for the above plus + Site-Local. + +- (internet) Ipv6 routing protocols must now *not* forward packets to upper + layers unless for extremey specific cases. The Ipv6L3protocol handles + almost all the packets directed to the host. + +- (internet) Ipv6 can now reject packets directed to an address not configured + on the interface they are received from (Strong End System Model, RFC 1222). + - (internet) UDP and Ipv6 RAW sockets can now join Ipv6 multicast groups. - Incomin packets will be filtered according to if there's a socket listening to - that group. Source filtering is left to the application. -- (network) ns-3 is now capable of serializing cooked (SLL) headers. This is used - in DCE to allow the generation of pcap directly readable by wireshark. -- (internet) It is now possible to set custom values for RipNg Link Down (standard is 16). + Incoming packets will be filtered according to if there's a socket listening + to that group. Source filtering is left to the application. + +- (network) ns-3 is now capable of serializing cooked (SLL) headers. This is + used in DCE to allow the generation of pcap directly readable by wireshark. + +- (internet) It is now possible to set custom values for RipNg Link Down + (standard is 16). + - (internet) permanent (static) NDISC entries can be created for IPv6 -- (internet) IPv4 RIPv2 protocol is now available. + +- (internet) IPv4 RIPv2 protocol model is now available. Bugs fixed ---------- @@ -65,6 +120,7 @@ Bugs fixed - Bug 2003 - Missing DSSS short PLCP preamble - Bug 2041 - TCP RTO needs unit tests - Bug 2068 - Timestamp option conforms to RFC 7323 +- Bug 2102 - Make global routing robust to bridged links - Bug 2116 - refactoring aggregation API - Bug 2120 - 802.11g networks are not compatible with 802.11b clients - Bug 2141 - TCP DataSent callback now correctly notifies sent data, without missing bytes in particular conditions @@ -72,13 +128,15 @@ Bugs fixed - Bug 2159 - TCP advertises wrong receive window - Bug 2176 - Building IPv4 address from char* doesn't look reliable - Bug 2183 - LiIonEnergySourceHelper is not in the energy wscript +- Bug 2184 - Integer overflow in Wi-Fi MacLow; remove dependency between tx and rx reference number field in MPDU status - Bug 2185 - WiFi MacLow may respond to errored frames that it should ignore - Bug 2193 - Simulation fails when transmitting very small MPDU subframes - Bug 2195 - Udp[*]Client can't send packets to broadcast address - Bug 2201 - Simulation fails when active probing is used in 802.11n/ac with channel bonding enabled -- Bug 2207 - Print node ID and time when printing routing tables - Bug 2206 - Split internet-apps from applications +- Bug 2207 - Print node ID and time when printing routing tables - Bug 2208 - Interface index based L4 protocols +- Bug 2210 - set Order field to 0 for HT/VHT - Bug 2211 - Ipv{4,6}EndPoint can cause memory corruption - Bug 2213 - Inconsistencies may exist between the selected WifiMacHelper and the chosen 802.11 version - Bug 2219 - SixLowPanNetDevice hangs trying to decode a IPv6 Fragment extension header @@ -90,6 +148,7 @@ Bugs fixed - Bug 2243 - TCP Socket Fork() fails to copy some parameters, causing connections to close prematurely on retransmit - Bug 2246 - Some DSR LogComponents and classes are not defined in a unique way. - Bug 2247 - Disabled Fast retransmit after an RTO +- Bug 2249 - LTE perl speed tests possibly broken - Bug 2252 - Nix needs StaticRouting to work - Bug 2254 - Ipv[4,6]RawSocket can return the wrong number of bytes sent. - Bug 2255 - Ipv6RawSocket does not call data sent callbacks. @@ -109,6 +168,7 @@ Bugs fixed - Bug 2287 - FlowMonitor is confused by IP over IP. - Bug 2288 - Ipv4 broadcast and multicast packets are replicated on all the interfaces. - Bug 2289 - RIP v2 implementation +- Bug 2290 - Cannot run click examples from test.py - Bug 2292 - Uninitialized variables since commit 7c60a9f8f271 - Bug 2293 - Red Queue Estimator spins when trying to compute queue average size under long idle times. - Bug 2297 - 802.11n/ac networks are not compatible with legacy clients @@ -127,6 +187,7 @@ Bugs fixed - Bug 2321 - Wifi rate managers should not be triggered for each MPDU when A-MPDU is used - Bug 2327 - CWmin value selection for 802.11g is not compliant with the standard rules - Bug 2328 - changes to antenna configuration should update HT MCS set +- Bug 2331 - Wrong mobility model in vanet-routing-compare example - Bug 2332 - Assert failed when using aggregation and two pairs of AP-STA Known issues