RELEASE_NOTES
author Tom Henderson <tomh@tomh.org>
Wed, 23 Mar 2016 21:34:07 -0700
changeset 12070 c43637263fc9
parent 12068 3316e06767e7
permissions -rw-r--r--
update VERSION to ns-3.25
     1 
     2 		ns-3 RELEASE NOTES
     3 
     4 This file contains ns-3 release notes (most recent releases first).  
     5 
     6 All of the ns-3 documentation is accessible from the ns-3 website: 
     7 http://www.nsnam.org including tutorials: http://www.nsnam.org/tutorials.html
     8 
     9 Consult the file CHANGES.html for more detailed information about changed
    10 API and behavior across ns-3 releases.
    11 
    12 Release 3.25
    13 ============
    14 
    15 Availability
    16 ------------
    17 This release is available from:
    18 https://www.nsnam.org/release/ns-allinone-3.25.tar.bz2
    19 
    20 Supported platforms
    21 -------------------
    22 This release has been tested on the following platforms:
    23 - Ubuntu 15.10 (64 bit) with g++-5.2.1
    24 - Ubuntu 14.04 (64 bit) with g++-4.8.2
    25 - Fedora Core 23 (64 bit) with g++-5.3.1
    26 - Fedora Core 22 (32 bit) with g++-5.1.1
    27 - Fedora Core 21 (64 bit) with g++-4.9.2
    28 - Arch Linux (64 bit) with g++-5.3.0 and clang++-3.7.1
    29 - CentOS/RHEL 6.7 (64-bit) with g++-4.4.7
    30 - OS X El Capitan 10.11.4 with Xcode 7.3 and Apple LLVM version 7.3.0
    31 - OS X El Capitan 10.11.3 with Xcode 7.2.1 and Apple LLVM version 7.0.2
    32 - OS X Yosemite 10.10.5 with Xcode 7.2.1 and Apple LLVM version 7.0.2
    33 - FreeBSD 10.2-RELEASE (64 bit) with clang-3.4.1
    34 
    35 New user-visible features
    36 -------------------------
    37 - (internet) The native TCP implementation has been refactored, for the 
    38   following improvements:  
    39     1) congestion control has been aligned with the Linux architecture, 
    40        to facilitate easier coding of new congestion control algorithms
    41         or porting implementations from the Linux kernel, 
    42     2) Fast Retransmit and Fast Recovery algorithms, compliant to RFCs, are 
    43        shared by all TCP variants, unlike previous releases. 
    44     3) TCP Hybla and TCP HighSpeed variants have been added.
    45 
    46 - (routing) The PrintRoutingTable* functions now print the following information
    47   each time they are called: 
    48     1) the node ID, 
    49     2) the global time, 
    50     3) the local time (allowing for future introduction of per-node clocks), 
    51     4) the routing protocol type
    52 
    53 - (traffic control) A traffic control sublayer has been added with the aim of
    54   introducing an equivalent of the Linux Traffic +Control infrastructure into 
    55   ns-3. This layer sits in between the NetDevices (L2) and the network 
    56   protocol (e.g. IP). It is in charge of processing packets and performing 
    57   actions on them: scheduling, dropping, marking, policing, etc.  Initial
    58   support for flow control has been added to the PointToPointNetDevice;
    59   backward-compatible support for other device types is provided.
    60 
    61 - (traffic control) A three band priority queue modelled after Linux
    62   pfifo_fast queueing discipline has been added.
    63 
    64 - (traffic control) Adaptive RED extensions have been added to the RED model
    65 
    66 - (wifi) A number of changes related to improving support for 802.11n/ac
    67   models have been introduced.
    68   1) Two rate controls compatible with High Throughput (HT) Wi-Fi modes
    69      (e.g. 802.11n/ac), Ideal and MinstrelHT, have been added  
    70   2) Support for multiple spatial streams (MIMO) using existing SISO
    71      error models
    72   3) The WiFi helper API for the WifiMac sublayer, and the configuration
    73      of HT modes and parameters, has been simplified
    74   4) Better support for backward compatibilty with legacy modes
    75 
    76 - (wifi) 802.11g was made backward compatible with 802.11b networks
    77 
    78 - (internet) L4 protocols (e.g., TCP, UDP, ICMP, etc.) can be demultiplexed 
    79   by IP according to the incoming interface. In other words, it is now 
    80   possible to use specialized L4 protocols according to the interface.
    81 
    82 - (internet) Ipv6Address::IsAllHostsMulticast() is now deprecated. 
    83   FF02::3 is not in the official reserved IPv6 multicast address list.
    84 
    85 - (internet) Ipv6Address::IsAll[Nodes,Routers]Multicast() now checks the 
    86   address scope beyond the simple link-local. Nodes are checked for 
    87   Interface-Local, Link-Local and Realm-Local, Routers for the above plus 
    88   Site-Local.
    89 
    90 - (internet) Ipv6 routing protocols must now *not* forward packets to upper 
    91   layers unless for extremey specific cases. The Ipv6L3protocol handles 
    92   almost all the packets directed to the host.
    93 
    94 - (internet) Ipv6 can now reject packets directed to an address not configured 
    95   on the interface they are received from (Strong End System Model, RFC 1222).
    96 
    97 - (internet) UDP and Ipv6 RAW sockets can now join Ipv6 multicast groups.
    98   Incoming packets will be filtered according to if there's a socket listening 
    99   to that group. Source filtering is left to the application.
   100 
   101 - (network) ns-3 is now capable of serializing cooked (SLL) headers. This is 
   102   used in DCE to allow the generation of pcap directly readable by wireshark.
   103 
   104 - (internet) It is now possible to set custom values for RipNg Link Down 
   105   (standard is 16).
   106 
   107 - (internet) permanent (static) NDISC entries can be created for IPv6
   108 
   109 - (internet) IPv4 RIPv2 protocol model is now available.
   110 
   111 Bugs fixed
   112 ----------
   113 - Bug 1132 - useless for loops in block-ack-test-suite.cc
   114 - Bug 1205 - EDCA is incorrectly modelled as DCF
   115 - Bug 1571 - TCP zero-window and flow control window updates by the receiver
   116 - Bug 1631 - Acoustic modem Energy consumption calc is wrong
   117 - Bug 1761 - Rounding with olsr::EmfToSeconds
   118 - Bug 1783 - BytesInFlight value fixed
   119 - Bug 1954 - Serialized size of wifi-net-device differ for TX and RX trace
   120 - Bug 1999 - PointToPointRemoteChannel invokes PointToPointChannel constructor
   121 - Bug 2003 - Missing DSSS short PLCP preamble
   122 - Bug 2041 - TCP RTO needs unit tests
   123 - Bug 2068 - Timestamp option conforms to RFC 7323
   124 - Bug 2102 - Make global routing robust to bridged links
   125 - Bug 2116 - refactoring aggregation API
   126 - Bug 2120 - 802.11g networks are not compatible with 802.11b clients
   127 - Bug 2141 - TCP DataSent callback now correctly notifies sent data, without missing bytes in particular conditions
   128 - Bug 2150 - The TCP sender keeps retransmitting and does not terminate the connection after some retries.
   129 - Bug 2159 - TCP advertises wrong receive window
   130 - Bug 2176 - Building IPv4 address from char* doesn't look reliable
   131 - Bug 2183 - LiIonEnergySourceHelper is not in the energy wscript
   132 - Bug 2184 - Integer overflow in Wi-Fi MacLow; remove dependency between tx and rx reference number field in MPDU status
   133 - Bug 2185 - WiFi MacLow may respond to errored frames that it should ignore
   134 - Bug 2193 - Simulation fails when transmitting very small MPDU subframes
   135 - Bug 2195 - Udp[*]Client can't send packets to broadcast address
   136 - Bug 2201 - Simulation fails when active probing is used in 802.11n/ac with channel bonding enabled
   137 - Bug 2206 - Split internet-apps from applications
   138 - Bug 2207 - Print node ID and time when printing routing tables
   139 - Bug 2208 - Interface index based L4 protocols
   140 - Bug 2210 - set Order field to 0 for HT/VHT 
   141 - Bug 2211 - Ipv{4,6}EndPoint can cause memory corruption
   142 - Bug 2213 - Inconsistencies may exist between the selected WifiMacHelper and the chosen 802.11 version
   143 - Bug 2219 - SixLowPanNetDevice hangs trying to decode a IPv6 Fragment extension header
   144 - Bug 2224 - scope of GetAmpduExist() in EdcaTxopN
   145 - Bug 2233 - Implement RFC 1222 - Strong End System Model
   146 - Bug 2234 - Ipv6L3Protocol should trash multicast packets not interesting for the node
   147 - Bug 2238 - Ipv6 routing reorganization
   148 - Bug 2242 - Mobility of both sender PHY and receiver PHY set to sender mobility in lr-wpan-phy-test.cc example.
   149 - Bug 2243 - TCP Socket Fork() fails to copy some parameters, causing connections to close prematurely on retransmit
   150 - Bug 2246 - Some DSR LogComponents and classes are not defined in a unique way.
   151 - Bug 2247 - Disabled Fast retransmit after an RTO
   152 - Bug 2249 - LTE perl speed tests possibly broken
   153 - Bug 2252 - Nix needs StaticRouting to work
   154 - Bug 2254 - Ipv[4,6]RawSocket can return the wrong number of bytes sent.
   155 - Bug 2255 - Ipv6RawSocket does not call data sent callbacks.
   156 - Bug 2257 - Ipv[4,6]InterfaceContainer::Add are not consistent
   157 - Bug 2258 - TcpSocketBase updated options and RTT for out of range segments.
   158 - Bug 2259 - GSL not successfully enabled for Wi-Fi DSSS error rate model
   159 - Bug 2262 - Corrected initial slow start threshold value
   160 - Bug 2266 - NixRouting info are not copied during a packet fragmentation.
   161 - Bug 2267 - Wrong channel bandwidth value in pcap files
   162 - Bug 2271 - Decision to enable RTS/CTS handshake for A-MPDUs should be based on the comparison between RtsCtsThreshold and the total A-MPDU size
   163 - Bug 2272 - SixLowPan NetDevice can not send uncompressed packets larger than 802.15.4 MTU
   164 - Bug 2273 - WeakEs model should be enforced in Static and Global routing
   165 - Bug 2275 - AdhocWifiMac not compatible with 802.11n/ac
   166 - Bug 2279 - Ipv[4,6]L3Protocol::GetInterfaceForDevice speedup.
   167 - Bug 2283 - Add capability to use pcap trace files with nanosecond precision timestamps
   168 - Bug 2286 - Support for SLL header (de)serialization.
   169 - Bug 2287 - FlowMonitor is confused by IP over IP.
   170 - Bug 2288 - Ipv4 broadcast and multicast packets are replicated on all the interfaces.
   171 - Bug 2289 - RIP v2 implementation
   172 - Bug 2290 - Cannot run click examples from test.py
   173 - Bug 2292 - Uninitialized variables since commit 7c60a9f8f271
   174 - Bug 2293 - Red Queue Estimator spins when trying to compute queue average size under long idle times.
   175 - Bug 2297 - 802.11n/ac networks are not compatible with legacy clients
   176 - Bug 2302 - Fixing RTT calculation inside TCP Socket
   177 - Bug 2303 - WifiMacQueue::GetSize should cleanup queue beforehand
   178 - Bug 2304 - DSCP Set/Get are using 8 bit values instead of 6
   179 - Bug 2307 - m_receivedAtLeastOneMpdu is not always reset
   180 - Bug 2311 - save Ht/Vht capabilities info on a per-station basis
   181 - Bug 2313 - Assert failed when using aggregation and RTS/CTS
   182 - Bug 2315 - Problem when BACK Request is part of an A-MPDU
   183 - Bug 2316 - MacLow shall use a single TXVECTOR for all MPDUs belonging to a same A-MPDU
   184 - Bug 2317 - Get the non-HT reference rate of a HT MCS
   185 - Bug 2318 - MPDU Aggregation fails with TCP
   186 - Bug 2319 - BlockAckTimeout value is too low for 802.11n operating at 2.4 GHz
   187 - Bug 2320 - Add method to check whether a WifiTxVector contains a valid combination of WifiMode, number of spatial streams and channel width
   188 - Bug 2321 - Wifi rate managers should not be triggered for each MPDU when A-MPDU is used
   189 - Bug 2327 - CWmin value selection for 802.11g is not compliant with the standard rules
   190 - Bug 2328 - changes to antenna configuration should update HT MCS set
   191 - Bug 2331 - Wrong mobility model in vanet-routing-compare example
   192 - Bug 2332 - Assert failed when using aggregation and two pairs of AP-STA
   193 - Bug 2337 - WifiPhy uses channel width in Hz iso MHz
   194 - Bug 2338 - WifiMode selected for control frames may sometimes be invalid
   195 
   196 Known issues
   197 ------------
   198 In general, known issues are tracked on the project tracker available
   199 at http://www.nsnam.org/bugzilla/
   200 
   201 Release 3.24.1
   202 ==============
   203 
   204 Release 3.24.1 is a maintenance release that fixes three issues:
   205 - support for Xcode 7 clang compiler version
   206 - detection of Python bindings location
   207 - compilation problem on 32-bit gcc-4.4 machine
   208 
   209 The issues prevented selected systems from being able to successfully
   210 build ns-3, and prevented the released version from being able to
   211 detect the presence of pybindgen used for Python bindings.
   212 
   213 Availability
   214 ------------
   215 This release is available from:
   216 https://www.nsnam.org/release/ns-allinone-3.24.1.tar.bz2
   217 
   218 Supported platforms
   219 -------------------
   220 This release has been tested on the following platforms:
   221 - Ubuntu 15.04 (64 bit) with g++-4.9.2
   222 - Fedora Core 22 (32 bit) with g++-5.1.1
   223 - Fedora Core 21 (64 bit) with g++-4.9.2
   224 - Ubuntu 14.04 (64 bit) with g++-4.8.2
   225 - Ubuntu 12.04.4 (64 bit) with g++-4.6.3
   226 - CentOS/RHEL 6.7 (64-bit) with g++-4.4.7
   227 - OS X Yosemite 10.10.5 with Xcode 7 and Apple LLVM version 7.0.0
   228 - OS X Yosemite 10.10.5 with Xcode 6.4 and Apple LLVM version 6.1.0
   229 - FreeBSD 10.2-RELEASE (64 bit) with clang-3.4.1
   230 
   231 New user-visible features
   232 -------------------------
   233 Features are identical to release 3.24.
   234 
   235 Bugs fixed
   236 ----------
   237 - Bug 2181 - Xcode 7.0 compiler warnings trigger build failure
   238 - Bug 2182 - pybindgen required version is now a string literal
   239 - Bug 2184 - integer overflow in MacLow
   240 
   241 Release 3.24
   242 ============
   243 
   244 Availability
   245 ------------
   246 This release is available from:
   247 https://www.nsnam.org/release/ns-allinone-3.24.tar.bz2
   248 
   249 Supported platforms
   250 -------------------
   251 This release has been tested on the following platforms:
   252 - Ubuntu 15.04 (64 bit) with g++-4.9.2
   253 - Fedora Core 22 (32 bit) with g++-5.1.1
   254 - Fedora Core 21 (64 bit) with g++-4.9.2
   255 - Ubuntu 14.04 (64 bit) with g++-4.8.2
   256 - Ubuntu 12.04.4 (32/64 bit) with g++-4.6.3
   257 - CentOS/RHEL 6.7 (64-bit) with g++-4.4.7
   258 - OS X Yosemite 10.10.4 with Xcode 6.4 and Apple LLVM version 6.1.0
   259 - FreeBSD 10.1-RELEASE (64 bit) with clang-3.4.1
   260 
   261 New user-visible features
   262 -------------------------
   263 - (build system) Python 3 is now supported by waf and test runner programs
   264 - (wifi) 802.11ac Very High Throughput (VHT) physical layer modes are now 
   265   supported.
   266 - (internet) permanent (static) ARP entries can be created for IPv4
   267 - (network) SimpleChannel allows per-NetDevice blacklists, in order to do hidden terminal testcases.
   268 - (documentation) TracedCallback function signatures now documented in Doxygen
   269 
   270 Bugs fixed
   271 ----------
   272 - Bug 730 - Enabling fragmentation at run-time breaks simulation
   273 - Bug 1249 - doxygen comments on device-level SetMobility ()
   274 - Bug 1482 - mesh module was producing fatal error with ASCII and netanim traces
   275 - Bug 1557 - errors in function OpenFlowSwitchNetDevice::BufferFromPacket()
   276 - Bug 1681 - m_lastNavStart is assigned twice continuously
   277 - Bug 1736 - default dot11EDCATableMSDULifetime
   278 - Bug 1901 - mesh module producing malformed pcaps
   279 - Bug 1929 - TcpL4Protocol::Send must indicate the source address to routing (if known)
   280 - Bug 1982 - AODV and mesh modules use random variables before seeds can be set
   281 - Bug 2058 - TCP window update can shrink left edge of window
   282 - Bug 2063 - FdNetDevice::SendFrom assert does not account for headers correctly
   283 - Bug 2082 - Empirical RV fails if value provided in CDF function is negative
   284 - Bug 2093 - MultiModelSpectrumChannel::GetDevice only works for 0-th index
   285 - Bug 2096 - Wrong pcap information when MPDU aggregation is used
   286 - Bug 2104 - Sequence Number passed to QosUtilsMapSeqControlToUniqueInteger instead of Sequence Control
   287 - Bug 2108 - Erroneous implementation in InterferenceHelper
   288 - Bug 2119 - Fix memory leaks in FdNetDevice test due to non-executed events
   289 - Bug 2124 - UdpSocketImpl::ShutdownRecv doesn't stop the Ipv[4,6]EndPointDemux
   290 - Bug 2125 - subclasses must chain up to base class NotifyNewAggregate
   291 - Bug 2126 - LrWpanNetDevice silently accepts no mobility on the node
   292 - Bug 2127 - Scheduler benchmark utility works in first run only
   293 - Bug 2130 - Allow SimpleChannel to simulate hidden terminals
   294 - Bug 2132 - TcpL4Protocol sends a bad-formatted RST packet
   295 - Bug 2135 - TCP doesn't honor the socket's output interface
   296 - Bug 2136 - The usage of tid in wifi and wave module shall be "if (tid > 7)" rather than "if (tid >= 7)"
   297 - Bug 2138 - SimpleNetDevice could send overlapped packets
   298 - Bug 2143 - maybe-uninitialized warning
   299 - Bug 2146 - bug in WAVE channel coordination
   300 - Bug 2148 - Ipv6Interface::SetUp doesn't re-create the Link-Local addresses
   301 - Bug 2153 - Incorrect power limits in wifi power control algorithms
   302 - Bug 2154 - Incorrect power calculation in wifi power adaptation examples
   303 - Bug 2156 - Duplicate packets when using two level aggregation
   304 - Bug 2157 - OpenFlowSwitchNetDevice::BufferFromPacket setting eth_type incorrectly
   305 - Bug 2158 - OpenflowSwitchNetDevice flooding bug
   306 - Bug 2165 - server replies to SYN (with option TS) with a SYNACK (with option TS) also if the attribute Timestamp is false
   307 - Bug 2166 - SteadyStateRandomWaypointMobilityModel directs the node to the ground
   308 - Bug 2170 - AnimationInterface outputs improperly formed XML
   309 - Bug 2171 - power-adaptation-distance.cc:202:22: error: call to 'pow' is ambiguous
   310 - Bug 2173 - WifiInformationElement::DeserializeIfPresent attempts to read beyond the end of buffer
   311 - Bug 2174 - m_rWnd not updated when segments without ACK are received
   312 - Bug 2177 - Ipv6ExtensionFragmentHeader length is initialized to a wrong value.
   313 
   314 Known issues
   315 ------------
   316 In general, known issues are tracked on the project tracker available
   317 at http://www.nsnam.org/bugzilla/
   318 
   319 Release 3.23
   320 ============
   321 
   322 Availability
   323 ------------
   324 This release is available from:
   325 http://www.nsnam.org/release/ns-allinone-3.23.tar.bz2
   326 
   327 Supported platforms
   328 -------------------
   329 This release has been tested on the following platforms:
   330 - Ubuntu 15.04 (64 bit) with g++-4.9.2
   331 - Fedora Core 21 (64 bit) with g++-4.9.2
   332 - Ubuntu 14.04 (64 bit) with g++-4.8.2
   333 - Ubuntu 12.04.4 (32/64 bit) with g++-4.6.3
   334 - CentOS/RHEL 6.6 (64-bit) with g++-4.4.7
   335 - OS X Yosemite 10.10.3 with Xcode 6.3.1 and Apple LLVM version 6.1.0
   336 - FreeBSD 10.1-RELEASE (64 bit) with clang-3.4.1
   337 
   338 New user-visible features
   339 -------------------------
   340 - (network) CalculateTxTime has been declared obsolete.
   341   CalculateBytesTxTime and CalculateBitsTxTime are to be used instead.
   342   The return value is a Time, instead of a double.
   343 - (mobility) Classes added for converting geographic to cartesian coordinates.
   344 - (spectrum) TvSpectrumTransmitter models added to create television 
   345   transmitter(s) that transmit PSD spectrums customized by attributes such 
   346   as modulation type, power, antenna type, channel frequency, etc.
   347 - (wifi) Several model improvements have been made.  Access points now 
   348   establish BSSBasicRateSet for control frame transmissions.  PLCP header 
   349   and payload reception have been decoupled for improved PHY modeling
   350   accuracy.  RTS/CTS with A-MPDU is now fully supported, and 802.11n
   351   stations now support two-level aggregation.
   352 
   353 Bugs fixed
   354 ----------
   355 - Bug 1757 - RLC AM not using NACK_SN
   356 - Bug 1974 - CalculateTxTime should return a Time, not a double
   357 - Bug 1982 - AODV and mesh use random variables before seed can be set
   358 - Bug 2004 - Wrong timeout calculation for 802.11n in WifiMac
   359 - Bug 2008 - (lr-wpan) Crash if ending rx while status change is in progress
   360 - Bug 2025 - (lr-wpan) Changing the channel doesn't affect the Tx params
   361 - Bug 2034 - (lr-wpan) CSMA-CA BackoffPeriod is too short 
   362 - Bug 2054 - TCP window update can shrink the Left Edge of the window
   363 - Bug 2066 - A-MPDU reception should check for successful preamble
   364 - Bug 2067 - TCP performance when advertised window exceeds sender buffer size
   365 - Bug 2070 - Wrong report of Packets and Bytes stored in CoDeL
   366 - Bug 2073 - NDisc cache entries update timer might be stuck in a loop
   367 - Bug 2075 - A-MPDU using RTS/CTS behaves wrongly when MaxSsrc is reached
   368 - Bug 2076 - TCP MinRTO Attribute is not actually used
   369 - Bug 2077 - Icmpv6L4Protocol::HandleDestinationUnreachable must check the packet size, not its serialized size
   370 - Bug 2079 - mcs variable in ht-wifi-network example is confusing
   371 - Bug 2082 - Empirical RV fails if the value provided in the CDF member function is negative
   372 - Bug 2083 - BridgeNetDevice may send corrupted packets
   373 - Bug 2087 - Waf fails to build ns-3 if the path contains accented characters
   374 - Bug 2090 - (rip-ng) Routes may be added twice on interface activation
   375 - Bug 2093 - MultiModelSpectrumChannel::GetDevice only works for 0-th index
   376 - Bug 2095 - (wimax) Wrong values in default-traces.h for 16 QAM 3/4
   377 - Bug 2097 - ACKs should be sent using legacy rates and preambles in 802.11n
   378 - Bug 2103 - Ipv[4,6]RoutingHelper::PrintRoutingTableAll[At,Every] hangs if a node doesn't have IP
   379 
   380 Known issues
   381 ------------
   382 In general, known issues are tracked on the project tracker available
   383 at http://www.nsnam.org/bugzilla/
   384 
   385 Release 3.22
   386 ============
   387 
   388 Availability
   389 ------------
   390 This release is available from:
   391 http://www.nsnam.org/release/ns-allinone-3.22.tar.bz2
   392 
   393 Supported platforms
   394 -------------------
   395 This release has been tested on the following platforms:
   396 - Fedora Core 21 (64 bit) with g++-4.9.2
   397 - Ubuntu 14.10 (32 bit) with g++-4.9.1
   398 - Ubuntu 14.04 (64 bit) with g++-4.8.2
   399 - Ubuntu 12.04.4 (32/64 bit) with g++-4.6.3
   400 - CentOS/RHEL 6.6 (64-bit) with g++-4.4.7
   401 - OS X Yosemite 10.10 with Xcode 6.1.1 and clang-600.0.56
   402 - FreeBSD 10.1-RELEASE (64 bit) with clang-3.4.1
   403 
   404 New user-visible features
   405 -------------------------
   406 - (wifi) Support for MPDU aggregation has been added to the wifi model, 
   407   as well as a number of related example programs.
   408 - (wifi) Added two combined power and rate control mechanisms to the
   409   wifi module.  The new mechanisms, PARF and APARF, are the first in the
   410   wifi module to jointly control transmission power and data rate.  Two use 
   411   case examples (PowerAdaptationDistance and PowerAdaptationInterference) 
   412   and a test case have also been added.
   413 - (lte) In previous releases of the LTE module, the bearer release
   414   functionality was only partially supported. As an enhancement, a
   415   complete release bearer procedure is now implemented, which can be
   416   invoked by calling the new helper method
   417   LteHelper::DeActivateDedicatedEpsBearer(). The related output can be
   418   seen through the stats collected at different layers like PDCP, RLC,
   419   MAC, PHY. To support this implementation, an example and test suite is
   420   added within the LTE module examples and tests folder.  
   421 - (wave) Additional support has been added for WiFi-based vehicular networks, 
   422   including the channel-access coordination features of IEEE 1609.4 and a 
   423   comprehensive VANET routing example that includes a Basic Safety 
   424   Message (BSM) packet generator application and associated statistics 
   425   counters.  Together, these allow users to evaluate the performance effects 
   426   in a VANET of varying transmission and channel properties (e.g., packet 
   427   rate, message size, transmit power, propagation loss model, impact of 
   428   routing protocol traffic, etc.).
   429 - (internet) It is now possible to print the Neighbor Cache (ARP and NDISC) 
   430   by using the RoutingProtocolHelper
   431 - (stats) A new TimeProbe class has been added to hook the data collection 
   432   framework to traced values emitting Time objects
   433 - (documentation) the callback function signatures for all TraceSources
   434   is documented in Doxygen
   435 - (utils) print-introspected-doxygen.cc has had several enhancements;
   436   use -h to read the usage message for details.
   437 - (core) TracedValue and TracedCallback function signatures are now documented,
   438   which required changing the TypeId::AddTraceSource API.
   439 
   440 Bugs fixed
   441 ----------
   442 - Bug 1405 - RttEstimator improvements
   443 - Bug 1551 - NS_LOG_COMPONENT_DEFINE inside or outside of ns3 namespace?
   444 - Bug 1726 - WiFi Minstrel rate control algorithm doesn't save state
   445 - Bug 1734 - TcpSocketBase produces spurious delayed ACKs
   446 - Bug 1758 - Yans and Nist error rate models for 5/6 code rate 802.11n HT
   447 - Bug 1770 - mesh test and example crash for 32-bit optimized builds
   448 - Bug 1774 - compute signal power around channel, not across whole band, and fix LrWpanHelper to add a default PropagationDelayModel
   449 - Bug 1791 - TCP Endpoint never deallocates when closing
   450 - Bug 1801 - Setting Wi-Fi timing parameters through WifiMac attributes (documentation fix)
   451 - Bug 1906 - 802.11n PHY configuration for 2.4GHz and 5GHz devices
   452 - Bug 1957 - UdpSocketImpl is stuck after a Close()
   453 - Bug 1968 - Missing supported 802.11n HT rates in the WifiPhy constructor
   454 - Bug 1969 - Support short guard interval durations in 802.11n
   455 - Bug 1970 - Missing NotifyAckTimeoutStartNow in MacLow::StartDataTxTimers
   456 - Bug 1971 - 802.11n at 2.4 GHz should include a signal extension duration
   457 - Bug 1972 - CommandLine duplicate argument handling: documentation updated.
   458 - Bug 1983 - FlowMonitor returns containers copies instead of references.
   459 - Bug 1986 - test result divergence for lte-frequency-reuse test
   460 - Bug 1991 - PcapFileWrapper::CaptureSize attribute (snaplen) has no effect.
   461 - Bug 1995 - avoid multiple definitions of PI
   462 - Bug 1996 - RSRQ calculation: misleading variable names
   463 - Bug 1997 - Fix PlotProbe() documentation and usage for GnuplotHelper and FileHelper
   464 - Bug 2002 - Hardcoded include paths cause breakage
   465 - Bug 2011 - Default Speed attribute in ConstantSpeedPropagationDelayModel
   466 - Bug 2016 - Radvd do not consider the SendAdvert option and don't reply to RS
   467 - Bug 2020 - Erroneous MCS field in 802.11n PCAP files
   468 - Bug 2021 - Missing const qualifier in TopologyReader::Link::Attributes{Begin,End}()
   469 - Bug 2026 - 802.11n Ness parameter badly set for data frames
   470 - Bug 2027 - Calculation of HT training symbol duration does not accurately follow 802.11n standard
   471 - Bug 2028 - remove unnecessary Time to double conversions in Wifi models
   472 - Bug 2029 - new CQI generation approach fix
   473 - Bug 2030 - provide default values for WifiTxVector
   474 - Bug 2037 - HT capabilities may print bogus chars
   475 - Bug 2038 - Stop method does not stop next wave in WaveformGenerator
   476 - Bug 2042 - LTE a3-rsrp-handover-algorithm.cc:  error: overflow in implicit constant conversion
   477 - Bug 2043 - print-introspected-doxygen crashes when some modules are disabled 
   478 - Bug 2044 - Buffer::Iterator::ReadNtohU16() and ReadNtohU32() not implemented correctly
   479 - Bug 2045 - Missing NS_OBJECT_ENSURE_REGISTERED in TcpTxBuffer and TcpRxBuffer
   480 - Bug 2046 - set Block Ack timeout when SetStandard is called
   481 - Bug 2047 - Ipv6EndPointDemux::Lookup may crash
   482 - Bug 2049 - CQI feedback should always use the same calculation method
   483 - Bug 2053 - In tcp-socket-base.cc, NotifyDataSent incorrectly called with retransmits
   484 - Bug 2055 - TCP TxBuffer and RxBuffer traces don't work
   485 - Nix-vector routing implementation now uses a lazy flush mechanism,
   486   which dramatically speeds up the creation of large topologies.
   487 
   488 Known issues
   489 ------------
   490 In general, known issues are tracked on the project tracker available
   491 at http://www.nsnam.org/bugzilla/
   492 
   493 Release 3.21
   494 ============
   495 
   496 Availability
   497 ------------
   498 This release is available from:
   499 http://www.nsnam.org/release/ns-allinone-3.21.tar.bz2
   500 
   501 Supported platforms
   502 -------------------
   503 - Fedora Core 20 (32/64 bit) with g++-4.8.2
   504 - Ubuntu 14.04 (32/64 bit) with g++-4.8.2
   505 - Ubuntu 12.04.4 (64 bit) with g++-4.6.3
   506 - Ubuntu 10.04.4 LTS (64 bit) with g++-4.4.3
   507 - CentOS/RHEL 6.5 (64-bit) with g++-4.4.7
   508 - OS X Mavericks 10.9 with Xcode 5.1.1 and clang-503.0.40
   509 - FreeBSD 9.2-RELEASE (64 bit) with clang-3.3
   510 
   511 New user-visible features
   512 -------------------------
   513 
   514 - The LTE module now supports the transport of the S1-U, X2-U and X2-C
   515   interfaces over emulated links via the new helper class EmuEpcHelper.
   516 - CommandLine can now provide a shorthand argument name for any
   517   Attribute.
   518 - Implemented support for Frequency Reuse algorithms in LTE module, as the 
   519   outcome of GSoC 2014 project. 
   520   The project also includes several sub-features, such as:
   521    - implementation of Downlink Power Control
   522    - implementation of Uplink Power Control
   523    - new DL-CQI generation approach, which increases throughput if FR algorithms 
   524      are used
   525    - seven options of Frequency Reuse algorithms: LteFrNoOpAlgorithm, 
   526      LteFrHardAlgorithm, LteFrStrictAlgorithm, LteFrSoftAlgorithm, 
   527      LteFfrSoftAlgorithm, LteFfrEnhancedAlgorithm, LteFfrDistributedAlgorithm
   528    - updated RadioEnvironmentMapHelper. Now RadioEnvironmentMap can be generated 
   529      for Data or Control channel and for specified RbId, what is helpful when 
   530      using FR algorithms
   531 - Added a CoDel queue model.  CoDel queues measure and control the queue
   532   traversal delay.  The ns-3 implementation is a port of the Linux 
   533   implementation.
   534 - Added support for TCP timestamp and window scale options, and added
   535   ability to trace the TCP slow start threshold value.
   536 - SimpleNetDevice and SimpleChannel (used for adding basic link effects
   537   for testing of higher-layer protocols) have been extended to support 
   538   the option of broadcast or PointToPoint link semantics.  The bandwidth
   539   and link delay can be constrained, and it uses an output queue.
   540 - SimpleNetDevice and SimpleChannel can be installed in a node through 
   541   a new helper: SimpleNetDeviceHelper.
   542 - Implemented new PacketSocketServer and PacketSocketClient applications.
   543   The primary use is in tests, to avoid using the ones from the 
   544   application module that also bring in a dependency on the internet module.
   545   
   546 Bugs fixed
   547 ----------
   548 
   549 - Bug 1673 - Config::Set/Connect does not search for attributes in parent class
   550 - Bug 1762 - UE stuck in IDLE_CONNECTING because RRC CONN REQ is not transmitted
   551 - Bug 1811 - basic traffic generator for network module 
   552 - Bug 1824 - L4 protocol sockets should support BindToNetDevice over IPv6
   553 - Bug 1831 - TcpSocket SlowStartThreshold is not a TraceSource
   554 - Bug 1851 - WifiRadioEnergyModel energy consumption values are taken from a 802.15.4 chip
   555 - Bug 1854 - std::out_of_range Problem
   556 - Bug 1858 - wireless examples not correctly recording packet reception
   557 - Bug 1860 - TCP needs the Window Scale option
   558 - Bug 1893 - issue in DoSchedUlTriggerReq with harq
   559 - Bug 1911 - AODV cannot work on nodes with more than one netdevice
   560 - Bug 1921 - Icmpv6L4Protocol::ForgeEchoRequest returns a malformed packet
   561 - Bug 1930 - Use of invalid reference in OLSR RemoveLinkTuple
   562 - Bug 1932 - NdiscCache entry is not failsafe on double neighbor probing.
   563 - Bug 1937 - FlowMonitor fails to track multiplexed packets
   564 - Bug 1942 - refactoring of lte-sinr-chunk-processor -> lte-chunk-processor
   565 - Bug 1943 - Waveform generator signal duration calc error
   566 - Bug 1951 - AODV does not update nexthop for 1-hop nodes
   567 - Bug 1955 - The IPv4 identification field should be unique per (source, destination, protocol) tuple
   568 - Bug 1960 - Wrong information on index range, about Node::GetDevice
   569 - Bug 1961 - planetlab-tap-creator "variable set but not used"
   570 - Bug 1963 - AODV can tag the same packet twice (and raise an assert)
   571 - Bug 1964 - Integer overflow on UniformRandomVariable::GetInteger()
   572 - Bug 1967 - LL Multicast is not compressed in the right way in IPHC
   573 - Bug 1981 - PyViz shell not compatible with ipython >= 0.11
   574 
   575 Known issues
   576 ------------
   577 - Bug 1770 - The mesh module will crash if used for g++ version >= 4.8.1
   578 in optimized mode, on a 32-bit Linux machine.  Lowering the optimization
   579 level to -O1 in this case can be used as a workaround.
   580 
   581 Release 3.20
   582 =============
   583 
   584 Availability
   585 ------------
   586 This release is available from:
   587 http://www.nsnam.org/release/ns-allinone-3.20.tar.bz2
   588 
   589 Supported platforms
   590 -------------------
   591 - Fedora Core 20 (32/64 bit) with g++-4.8.2
   592 - Ubuntu 14.04 (32/64 bit) with g++-4.8.2
   593 - Ubuntu 12.04.4 (64 bit) with g++-4.6.3
   594 - Ubuntu 10.04.4 LTS (64 bit) with g++-4.4.3
   595 - CentOS/RHEL 6.5 (64-bit) with g++-4.4.7
   596 - OS X Mavericks 10.9 with Xcode 5.1.1 and clang-503.0.40
   597 - FreeBSD 9.2-RELEASE (64 bit) with clang-3.3
   598 
   599 New user-visible features
   600 -------------------------
   601 
   602 - A new LrWpan model, providing initial support for IEEE 802.15.4 networks
   603 - A new IPv6 routing protocol has been added: RIPng. This protocol is
   604   an Interior Gateway Protocol and it is available in the Internet module.
   605 - A new LTE MAC downlink scheduling algorithm named Channel and QoS Aware (CQA) 
   606   Scheduler is provided by the new ``ns3::CqaFfMacScheduler`` object.
   607 - The Internet FlowMonitor can now track IPv6 packets.
   608 - FlowMonitor no longer tracks multicast/broadcast packets, reflecting
   609   its original design.
   610 - FlowMonitor "SerializeToXml" functions are now directly available 
   611   from the helper.
   612 - The SixLowPan model can now use uncompressed IPv6 headers. An option to
   613   define the minimum compressed packet size has been added. 
   614 - Simplify output of Times in a specific unit; see Time::As ()
   615 - Ipv6Extension::m_dropTrace has been removed. Ipv6L3Protocol::m_dropTrace 
   616   is now fired when appropriate.
   617 - IPv4 identification field value is now dependent on the protocol field.
   618 - Fixes to support Python >= 3.3 in ns3 Python bindings
   619 - Enable selection of high precision int64x64_t implementation
   620   at configure time, for debugging purposes.
   621 
   622 Bugs fixed
   623 ----------
   624 - Bug 1276 - optimize NistErrorRateModel
   625 - Bug 1294 - New PeekU8 () and Read (Buffer::Iterator start, uint32_t size) methods in Buffer::Iterator
   626 - Bug 1443 - MinDistance replaced by MinLoss in FriisPropagationLossModel, to
   627   better handle conditions outside of the assumed far field region.
   628 - Bug 1653 - Extension of CommandLine interface: restored operator << (CommandLine)
   629 - Bug 1717 - Detect unsettable attributes
   630 - Bug 1730 - no model library documentation for spectrum module
   631 - Bug 1739 - The endpoint is not deallocated for UDP sockets
   632 - Bug 1786 - os << int64x64_t prints un-normalized fractional values
   633 - Bug 1787 - Runtime error when using AnimationInterface::EnablePacketMetadata() to fetch metadata of CSMA packet
   634 - Bug 1792 - Parameter logger constructor
   635 - Bug 1808 - FlowMon relies on IPv4's Identification field to trace packets
   636 - Bug 1817 - IPv4 Identification field should consider protocol as well.
   637 - Bug 1818 - FlowMonitor needs IPv6 support
   638 - Bug 1820 - models library doc: make should not rm -rf figures
   639 - Bug 1821 - Setting an interface to Down state will cause various asserts in IPv6
   640 - Bug 1829 - Multiple TCP socket entries
   641 - Bug 1837 - AODV crashes when using multiple interfaces
   642 - Bug 1838 - FlowMonitorHelper must not be copied.
   643 - Bug 1841 - FlowMonitor fails to install if IPv4 is not installed in the node
   644 - Bug 1842 - FlowMonitor SerializeToXml<Something> should be called by the helper
   645 - Bug 1843 - IPv6 extensions dropped packets do not fire L3 drop trace
   646 - Bug 1845 - FlowMonitor should discard any broadcast/multicast packet
   647 - Bug 1846 - IPv6 should send Destination Unreachable if no route is available
   648 - Bug 1850 - TCP NewReno loss behavior
   649 - Bug 1852 - cairo-wideint-private.h error cannot find definitions for fixed-width integral types
   650 - Bug 1853 - NS_LOG_FUNCTION broken on OSX 10.9
   651 - Bug 1855 - SixLowPanNetDevice is not correctly indexed
   652 - Bug 1857 - Detect location of installed boost libraries
   653 - Bug 1862 - NS_LOG="Time=*|prefix_time" causes stack overflow
   654 - Bug 1868 - Optimized builds are sensitive to -fstrict-overflow
   655 - Bug 1870 - Remove unnecessary AsInt functions
   656 - Bug 1872 - Inside RREQ processing, in case of IP duplication, packet dropped instead of being forwarded
   657 - Bug 1873 - Energy source checked to be aggregated to the node
   658 - Bug 1874 - Ipv4L3Protocol::ProcessFragment: addressCombination and idProto identifiers not properly computed
   659 - Bug 1876 - enable OLSR HNA table access
   660 - Bug 1877 - constructors missing for PropagationLossModels
   661 - Bug 1882 - int64x64 tests trigger valgrind bug
   662 - Bug 1883 - IPv6 don't consider the prefix and network when choosing output address
   663 - Bug 1885 - WifiSpectrumValue5MhzFactory::CreateRfFilter does not align with the used 5Mhz SpectrumModel
   664 - Bug 1887 - Point-to-point traces should contain PPP headers
   665 - Bug 1888 - COST231 propagation loss model: corrections
   666 - Bug 1889 - PointToPointNetDevice: In some cases MacTxDrop trace is not called
   667 - Bug 1890 - UdpClientTrace: MPEG frame size is squeezed into (insufficient) 16 bit integer
   668 - Bug 1891 - UdpSocketImpl::GetSockName doesn't return the IPv6 address
   669 - Bug 1894 - CqaFfMacScheduler needs an update
   670 - Bug 1895 - IP header Source Address changed while forwarding RREQ
   671 - Bug 1900 - Avoid floating point differences across platforms in test outputs
   672 - Bug 1903 - Namespace usage in olsr-state.cc/h
   673 - Bug 1907 - Add IsSupportedMcs method in YansWifiPhy
   674 - Bug 1912 - Avoid multiple Wifi MacTxMiddle instances
   675 - Bug 1913 - Avoid crash in Wifi BlockAckManager::GetNextPacket()
   676 - Bug 1915 - BRITE channel delay is rounded to an integer
   677 - Bug 1916 - RandomWalk2dMobilityMode default "Bounds" attribute is not a rectangle
   678 - Bug 1919 - Strip trailing semi-colons from mobility trace files
   679 - Bug 1920 - Remove DSR attributes so file can be re-loaded by config-store
   680 - Bug 1922 - WAVE GetSsid should not be fatal
   681 - Bug 1923 - Setting Active Probing to false in Wifi Sta has no effect
   682 - Bug 1924 - sensing radius and CCA
   683 
   684 Known issues
   685 ------------
   686 - Bug 1770 - The mesh module will crash if used for g++ version >= 4.8.1
   687 in optimized mode, on a 32-bit Linux machine.  Lowering the optimization
   688 level to -O1 in this case can be used as a workaround.
   689 
   690 Release 3.19
   691 =============
   692 
   693 Availability
   694 ------------
   695 This release is available from:
   696 http://www.nsnam.org/release/ns-allinone-3.19.tar.bz2
   697 
   698 Supported platforms
   699 -------------------
   700 These platforms have been tested; others may work also:
   701 - Fedora Core 20 (32 bit) with g++-4.8.2
   702 - Fedora Core 19 (32/64 bit) with g++-4.8.1
   703 - Ubuntu 13.10 (64 bit) with g++-4.8.1
   704 - Ubuntu 12.04.3 (32/64 bit) with g++-4.6.3
   705 - Ubuntu 10.04.4 LTS (64 bit) with g++-4.4.3
   706 - OS X Mavericks 10.9 with Xcode 5.0.1 and clang-500.2.79
   707 - OS X Mountain Lion 10.8.5 with Xcode 5 and g++-4.2.1
   708 - FreeBSD 9.2-RELEASE (64 bit) with clang-3.3
   709 
   710 New user-visible features
   711 -------------------------
   712 - Extension to UE measurements and improved handover algorithm models in LTE
   713   module, as the outcome of GSoC 2013 project. The project also includes several
   714   sub-features, such as:
   715    - implementation of System Information Block Type 1 (SIB1);
   716    - a new option for automatic UE attachment using Idle mode cell selection
   717      procedure;
   718    - improved configurability of UE measurements; and
   719    - two options of handover algorithms for enabling automatic handover trigger
   720      in LTE simulation: A2-A4-RSRQ and strongest cell (A3-RSRP).
   721 
   722 - A new FixedRoomPositionAllocator has been added to the buildings
   723   module. It allows one to generate a random position uniformly
   724   distributed in the volume of a chosen room inside a chosen building.  
   725 
   726 - A new attribute ns3::LteRlcAm::TxOpportunityForRetxAlwaysBigEnough
   727   allows to overcome the lack for re-segmentation in the RLC AM
   728   implementation by assuming that the size of a TxOpportunity is
   729   always big enough for the RLC AM PDU to be retransmitted.
   730 
   731 - After some profiling, the code of LteMiErrorModel has been optimized
   732   for speed, resulting in a significantly lower execution time of the
   733   LTE model when used with the error model enabled.
   734 
   735 - A new WiFi extension for vehicular simulation support is available in 
   736   the src/wave directory.  The current code represents an interim capability 
   737   to realize an IEEE 802.11p-compliant device, but without the WAVE 
   738   extensions (which are planned for a later patch).  The WaveNetDevice 
   739   modelled herein enforces that a WAVE-compliant physical layer (at 5.9 GHz)
   740   is selected, and does not require any association between devices (similar 
   741   to an adhoc WiFi MAC), but is otherwise similar (at this time) to a 
   742   WifiNetDevice.  WAVE capabililties of switching between control and 
   743   service channels, or using multiple radios, are not yet modelled.
   744 
   745 - A new IPv6 over Low power Wireless Personal Area Networks (6LoWPAN) model
   746   is available.  Using ns-3's naming convention, the acronym is expanded
   747   to SixLowPanNetDevice.   The SixLowPanNetDevice is able to act as a 
   748   shim between IPv6 and a NetDevice, compressing IPv6 headers according 
   749   to RFCs 4944 and 6262.  The SixLowPanNetDevice is meant to be used over 
   750   IEEE 802.15.4 NetDevices, but it can be used on other NetDevices as 
   751   well (see the manual for full details).  This model precedes the
   752   general availability of an 802.15.4 model, so must be run in conjunction
   753   with a wired NetDevice model for now, or with experimental versions of
   754   802.15.4 models.
   755 
   756 - It is now possible to use Ipv6PacketInfoTag from UDP applications in the
   757   same way as with Ipv4PacketInfoTag. See Doxygen for current limitations in
   758   using Ipv[4,6]PacketInfoTag to set IP properties.
   759   
   760 - Ipv[4,6]Interfaces not respecting the minimum MTU requirements (68 octects
   761   for IPv4 and 1280 octects for IPv6) will be automatically set as Down.
   762   
   763 - IPv6 addresses and routing tables are printed in a more conventional way,
   764   closely matching the Linux "route -A inet6" command.
   765 
   766 - Additional time units (Year, Day, Hour, Minute) were added to the time
   767   value class that represents simulation time; the largest unit prior to 
   768   this addition was Second.
   769 
   770 - A new parallel scheduling algorithm based on null messages, a common 
   771   parallel DES scheduling algorithm, has been added.  The null message 
   772   scheduler has better scaling properties when running on some scenarios
   773   with large numbers of nodes since it does not require a global 
   774   communication.
   775   
   776 Bugs fixed
   777 ----------
   778 - Bug 1496 - Option to print log level in NS_LOG messages, and documentation.
   779 - Bug 1592 - Parsing bug in FlowMonitor example script
   780 - Bug 1756 - RLC AM Mode State Variable Bug
   781 - Bug 1763 - Message 3 should be sent using the UL GRANT in the RAR
   782 - Bug 1778 - Implement TapBridge::IsLinkUp() function
   783 - Bug 1777 - Implement the more direct way of "using" configuration of existing tap interface
   784 - Bug 1776 - Improve CRC performance for CsmaNetDevice in emulation modes
   785 - Bug 1788 - unused private field warning
   786 - Bug 1789 - missing test condition for sigma in buildings-shadowing-test
   787 - Bug 1796 - Ipv6PacketInfoTag is not filled by UdpSocketImpl::ForwardUp6
   788 - Bug 1798 - Changing the rate of onOffApplication might stop transmission
   789 - Bug 1802 - FlowMon header deserialization problem with IPv4 fragments
   790 - Bug 1803 - Lookup /NodeList/4/DeviceList/0/LteEnbRrc/UeMap/0 got no matches
   791 - Bug 1807 - Multiple bugs in Ipv4L3Protocol::LocalDeliver
   792 - Bug 1810 - IP packets can be sent on NetDevices not respecting the minimum MTU requirements
   793 - Bug 1814 - IPv6 Packet with length not multiple of 8 bytes are fragmented incorrectly.
   794 - Bug 1815 - Python bindings compilation with clang compiler toolchain
   795 - Bug 1816 - IPv4 fragmentation loses Packet tags
   796 - Bug 1877 - constructor missing for <something>PropagationLossModels
   797 
   798 Release 3.18.2
   799 ==============
   800 
   801 ns-allinone-3.18.2 was released to include a bake configuration file update
   802 for Direct Code Execution.  The ns-3 code in this release was unchanged
   803 from that of ns-3.18.1.
   804 
   805 Release 3.18.1
   806 ==============
   807 
   808 This release is mainly to provide updated compiler support (clang/LLVM)
   809 and fix the Python API scanning facility.  A few additional bug fixes
   810 and new features are described below.
   811 
   812 Availability
   813 ------------
   814 This release is available from:
   815 http://www.nsnam.org/release/ns-allinone-3.18.1.tar.bz2
   816 
   817 Supported platforms
   818 -------------------
   819 These platforms have been tested; others may work also:
   820 - Fedora Core 19 (32/64 bit) with g++-4.8.1
   821 - Ubuntu 13.10 (64 bit) with g++-4.8.1
   822 - Ubuntu 12.04.3 (32/64 bit) with g++-4.6.3
   823 - Ubuntu 10.04.4 LTS (64 bit) with g++-4.4.3
   824 - OS X Mavericks 10.9 with Xcode 5.0.1 and clang-500.2.79
   825 - OS X Mountain Lion 10.8.5 with Xcode 5 and g++-4.2.1
   826 - FreeBSD 9.2-RELEASE (64 bit) with clang-3.3
   827 
   828 New user-visible features
   829 -------------------------
   830 - It is now possible to randomize the time of the first beacon from an 
   831   access point.  Use an attribute "EnableBeaconJitter" to enable/disable 
   832   this feature.
   833 - A new FixedRoomPositionAllocator helper class is available; it
   834   allows one to generate a random position uniformly distributed in the
   835   volume of a chosen room inside a chosen building.
   836 - Logging wildcards:  allow "***" as synonym for "*=**" to turn on all logging.
   837 - The log component list ("NS_LOG=print-list") is now printed alphabetically.
   838 
   839 Bugs fixed
   840 ----------
   841 - Bug 1779 - NS_UNUSED_GLOBAL not working in attribute test class declaration
   842 - Bug 1766 - Fixes to wifi-hidden-terminal.cc example
   843 - Bug 1722 - Avoid transmitting beacons concurrently
   844 - Bug 1691 - RTS/CTS NAV reset prematurely
   845 - Bug 1622 - Avoid waf hanging during apiscan
   846 - Bug 1616 - WifiPhyStateHelper reports false CCA_BUSY times at State trace source
   847 - Bug 1552 - Storing log name inside LogComponent class (NS_LOG) as std::string
   848 - Bug 1011 - assert failed. file=../src/devices/wifi/dcf-manager.cc
   849 - bug 945 - remove deprecated IEEE 802.11p code from wifi module
   850 - Fix aliasing bug in optimized static builds
   851 - Fix memory leak due to circular reference in MPI module
   852 - Make wifi tests more robust to random variable perturbations
   853 - Fix Time class doxygen
   854 - Fix compilation with Clang 3.2 and newer versions, including Apple Xcode 5
   855 - Miscellaneous NetAnim fixes
   856 
   857 Release 3.18
   858 =============
   859 
   860 Availability
   861 ------------
   862 This release is available from: 
   863 http://www.nsnam.org/release/ns-allinone-3.18.tar.bz2
   864 
   865 Supported platforms
   866 -------------------
   867 These platforms have been tested; others may work also:
   868 - Fedora Core 18 (32/64 bit) with g++-4.7.2
   869 - Fedora Core 17 (32/64 bit) with g++-4.7.0
   870 - Ubuntu 13.04 (32/64 bit) with g++-4.7.3
   871 - Ubuntu 12.04 (32/64 bit) with g++-4.6.3
   872 - Ubuntu 10.04.4 LTS (64 bit) with g++-4.4.3
   873 - OS X Mountain Lion 10.8.3 with g++-4.2.1
   874 - FreeBSD 9.1-RELEASE (64 bit) with g++-4.2.1
   875 
   876 New user-visible features
   877 -------------------------
   878 - Time attributes can now be bounded.  See attribute-test-suite.cc for an
   879   example.
   880 - Data collection components have been added to the stats module.  These
   881   components can be used to generate time series data in files and plots.
   882 - IPv6 address class 2001:db8::/32 is now dropped by routers (RFC 3849).
   883 - New generic hash function interface.  Two hash functions are provided:
   884   murmur3 (default), and the venerable FNV1a.  See the Hash Functions
   885   section in the Manual.
   886 - New Mac16Address has been added, Mac64Address is now in-line with 
   887   Mac48Address and all the three can be used in IPv6 autoconfigure. 
   888 - Previously, the use of Building models was limited to the use of the
   889   companion BuildingsMobilityModel. Now, any MobilityModel can be
   890   used with Building models. 
   891 - The latest LTE module code by the LENA project has been merged,
   892   including the following new features: 
   893    - PHY support for UE measurements (RSRP and RSRQ)
   894    - RRC support for UE measurements (configuration, execution, reporting)
   895    - Automatic Handover trigger based on RRC UE measurement reports
   896 - IPv6 can now detect and use Path-MTU. See 
   897   examples/ipv6/fragmentation-ipv6-two-MTU.cc for an example.
   898 - Radvd application have a new Helper. See the updated 
   899   examples/ipv6/radvd.cc for an example.
   900 - 11n- It is now possible to create a high throughput (HT) node that used the new 11n data rates and preambles.
   901 - It is now possible to request printing command line arguments to the
   902   desired output stream using PrintHelp or operator <<
   903 
   904 Bugs fixed
   905 ----------
   906 - Bug  760 - IP address removal can be painful
   907 - Bug 1190 - Suppress hello if bcast was sent within the last hello interval
   908 - Bug 1296 - Enhancement in Ipv[4,6]RoutingHelper
   909 - Bug 1390 - ICMPv6 Redirect are handled correctly only for /64 networks
   910 - Bug 1522 - Hidden node scenario leads to ARP failure
   911 - Bug 1584 - Old Association Request Timeouts are not canceled
   912 - Bug 1629 - Make AODV Default to Disable Hello
   913 - Bug 1643 - NdiscCache creation and existence checks
   914 - Bug 1646 - ICMPv6 Redirect are sent from global address instead of link-local
   915 - Bug 1662 - m_type not set for Ipv6OptionRouterAlertHeader
   916 - Bug 1678 - C++11 compliance problem with std::pair"
   917 - Bug 1682 - ./waf crashes on FC10
   918 - Bug 1683 - IPv6 autoconfigured don't use *infinite* lifetimes
   919 - Bug 1669 - ns-3 should support binding two and three (possibly more) arguments
   920 - Bug 1675 - Throughput computation error in Wireless examples
   921 - Bug 1687 - wscript features report doesn't respect NOCOLOR
   922 - Bug 1688 - Routers should advertise themselves from the link-local address
   923 - Bug 1689 - IPv6 shouldn't add a default gateway without checking the Router lifetime
   924 - Bug 1690 - missing header files from wifi wscript
   925 - Bug 1697 - ICMPv6 Redirect trigger contains multiple bugs
   926 - Bug 1698 - mobility.SetPositionAllocator misses prefix "ns3::"
   927 - Bug 1700 - Ipv6RawSocket does not honor the bound address when sending packets
   928 - Bug 1701 - Ipv6StaticRouting: the source address should match the destination scope
   929 - Bug 1702 - Ipv6InterfaceContainer::SetRouter should not always add the router as the default router.
   930 - Bug 1703 - Nodes don't react to a DAD
   931 - Bug 1712 - The IP (v4 and v6) forwarding needs a test
   932 - Bug 1718 - Ipv4StaticRouting log component is misspelled
   933 - Bug 1720 - IPv6 Fragmentation cause crashes
   934 - Bug 1721 - Path MTU isn't handled properly
   935 - Bug 1723 - name clash in ipv4-header.h with <termios.h>
   936 - Bug 1727 - Ping6 should use a proper source address
   937 - Bug 1728 - Radvd application is missing an Helper
   938 - Bug 1731 - lte-phy-error-model passes unexpectedly
   939 - Bug 1738 - strict aliasing compiler bug
   940 - Bug 1742 - IPv6 HbH and Dst Extension Header size is not correctly calculated
   941 - Bug 1752 - RadvdInterface m_defaultLifeTime is set to milliseconds instead of seconds
   942 - Bug 1753 - Halting Issue with DistributedSimulatorImpl
   943 - Bug 1754 - Missing GIL lock in generated callback destructor
   944 
   945 Known issues
   946 ------------
   947 In general, known issues are tracked on the project tracker available
   948 at http://www.nsnam.org/bugzilla/
   949 
   950 Release 3.17
   951 ============
   952 
   953 Availability
   954 ------------
   955 This release is available from: 
   956 http://www.nsnam.org/release/ns-allinone-3.17.tar.bz2
   957 
   958 Supported platforms
   959 -------------------
   960 These platforms have been tested; others may work also:
   961 - Fedora Core 18 (32/64 bit) with g++-4.7.2
   962 - Fedora Core 17 (32/64 bit) with g++-4.7.0
   963 - Ubuntu 13.04 (32/64 bit) with g++-4.7.3
   964 - Ubuntu 12.10 (32/64 bit) with g++-4.6.3
   965 - Ubuntu 12.04 (32/64 bit) with g++-4.6.3
   966 - Ubuntu 10.04.4 LTS (64 bit) with g++-4.4.3
   967 - OS X Mountain Lion 10.8.3 with g++-4.2.1
   968 - FreeBSD 9.1-RELEASE (64 bit) with g++-4.2.1
   969 
   970 New user-visible features
   971 -------------------------
   972 - new TCP Westwood and Westwood+ models
   973 - new FdNetDevice model and associated helpers.  The FdNetDevice is able
   974   to read and write from a file descriptor.  Various helpers are provided
   975   to associate this descriptor with underlying devices or sockets on the 
   976   host operating system, including a packet socket for emulation, and
   977   tap devices including a version specialized for use on PlanetLab.
   978 - ns-3-click: it's now possible to (i) have Click pull random numbers from
   979   ns-3 and (ii) have ns-3 set "defines" in Click via the simulation file 
   980   (see src/click/examples/nsclick-defines.cc).
   981 - Waf shipped with ns-3 has been upgraded to version 1.7.10 and custom
   982   pkg-config generator has been replaced by Waf's builtin tool.
   983 - create-module.py script has been updated to work with waf 1.7 and support
   984   for creating modules with names containing dashes has been added.
   985 - the M5 release of the LTE module by the LENA project has been
   986   merged; please see src/lte/RELEASE_NOTES for more detailed info 
   987 
   988 Bugs fixed
   989 ----------
   990 - bug 1256 - Unnecessary SND.NXT advance, missing ACK for Out of Order segments
   991 - bug 1318 - Ipv6L3Protocol::LocalDeliver can get stuck in an infinte loop
   992 - bug 1409 - Add an attribute "SystemId" to configure the ID for MPI
   993 - bug 1421 - Frequency dependent propagation loss models need uniform Frequency / Lambda attribute
   994 - bug 1434 - DSR throughput not comparable to other protocols for manet example
   995 - bug 1502 - Shutdown on tcp socket seems to misbehave
   996 - bug 1503 - BlockAckManager infine loop
   997 - bug 1517 - Waf clean/distclean doesn't remove the doc/html directory
   998 - bug 1540 - Waf not finding click libraries
   999 - bug 1549 - Test for NS_LOG
  1000 - bug 1556 - Uses of htonl making OpenFlow's match field error
  1001 - bug 1563 - Reduce valgrind test scope
  1002 - bug 1564 - Packet meta data isn't shown in dumbbell-animation.xml
  1003 - bug 1566 - WiFi SNR tag improvements
  1004 - bug 1568 - Deserialized addresses are implicity marked as Mac48Address
  1005 - bug 1569 - droptail_vs_red example doesn't run
  1006 - bug 1570 - Valgrind errors in new test examples
  1007 - bug 1574 - Node color overwritten, by mobility updates in netanim
  1008 - bug 1575 - Invert the y-axis in netanim
  1009 - bug 1576 - Frequency units HERTZ and MEGAHERTZ mix up
  1010 - bug 1577 - Typo in ascii picture in example aodv script
  1011 - bug 1579 - edca-txop-n fragmentation causes segfault
  1012 - bug 1582 - IPv6 raw socket return value is not like Linux socket
  1013 - bug 1585 - Length field of A-MSDU subframe header endianness
  1014 - bug 1586 - Building documentation fails if make runs in parallel
  1015 - bug 1588 - UdpEchoServer::HandleRead logs fail when using Ipv6
  1016 - bug 1589 - Bake - support pre-2.7 version of python
  1017 - bug 1590 - Bake - more autotools version support
  1018 - bug 1595 - Function declarations without implementations cause problems with dsr module's python bindings
  1019 - bug 1596 - Inet TopologyReader is skipping one link and duplicating another one
  1020 - bug 1600 - Icmpv6OptionLinkLayerAddress can only carry 48 bit addresses correctly
  1021 - bug 1601 - RttEstimator doesn't set the m_currentEstimatedRtt to m_initialEstimatedRtt on creation
  1022 - bug 1602 - waf build can break due to file collisions in higher-level directory
  1023 - bug 1603 - random-variable-stream-helper - this unavalable for static member functions
  1024 - bug 1607 - OnOffApplication over TCP with IPv6 support
  1025 - bug 1608 - DSR Network ACK is not handled correctly
  1026 - bug 1609 - Route Request table is needed
  1027 - bug 1612 - pyviz (visualizer) will not be installed
  1028 - bug 1613 - Can't build ns-3-dev with g++ 4.7.2
  1029 - bug 1615 - Adjusting OLSR HelloInterval Attribute results in no links
  1030 - bug 1618 - bake.py not detecting install of libxml2-dev on ubuntu
  1031 - bug 1623 - pybindgen rev809 is not able to build after Ubuntu 1210
  1032 - bug 1625 - ns-3-dev fails to build on Debian wheezy amd64
  1033 - bug 1626 - ipv6-only network can't use UDP or TCP
  1034 - bug 1632 - Prepend bake build directory to the guessed locations
  1035              that waf will look to find libraries
  1036 - bug 1633 - Bake - should not report that it is downloading qt4 when it is already installed
  1037 - bug 1635 - Small bug without Simulator::Destroy()
  1038 - bug 1636 - Compilation error flagged as unmet dependency
  1039 - bug 1637 - Bake calling apt-get for unpriviledged user
  1040 - bug 1639 - bake.py support for linux mint
  1041 - bug 1640 - bake needs to test for g++
  1042 - bug 1641 - bake reports autotools dependency, but needs automake
  1043 - bug 1661 - Variable ub1 defined but not used in ipv6-address.cc
  1044 
  1045 Known issues
  1046 ------------
  1047 In general, known issues are tracked on the project tracker available
  1048 at http://www.nsnam.org/bugzilla/
  1049 
  1050 Release 3.16
  1051 ============
  1052 
  1053 Availability
  1054 ------------
  1055 This release is available from: 
  1056 http://www.nsnam.org/release/ns-allinone-3.16.tar.bz2
  1057 
  1058 Supported platforms
  1059 -------------------
  1060 - Fedora Core 17 (32/64 bit) with g++-4.7.0
  1061 - Fedora Core 15 (64 bit) with g++-4.6.3
  1062 - Ubuntu 12.10 (32/64 bit) with g++-4.6.3
  1063 - Ubuntu 12.04 (32/64 bit) with g++-4.6.3
  1064 - Ubuntu 10.04.4 LTS (64 bit) with g++-4.4.3
  1065 - OS X Mountain Lion 10.8.3 with g++-4.2.1
  1066 - FreeBSD 8.2 (32 bit) with g++-4.2.1
  1067 - Cygwin 1.7.9-1 with g++-4.5.3
  1068 
  1069 New user-visible features
  1070 -------------------------
  1071 - Support several new LTE MAC schedulers developed in GSoC 2012 project. 
  1072   Those schedulers include FD-MT, TD-MT, TTA, FD-BET, TD-BET, FD-TBFQ,
  1073   TD-TBFQ, PSS. Here, FD and TD mean frequency domain and time domain 
  1074   respectively.
  1075 - It's now possible to use distcc when building ns-3 by using
  1076   $ CXX='distcc g++' ./waf configure
  1077   $ ./waf build
  1078 - Support topology generation with the (external) BRITE topology generation 
  1079   tool
  1080 
  1081 Bugs fixed
  1082 ----------
  1083 - bug  555 - DCF immediate access
  1084 - bug  976 - wifi-wired-bridging regression test fails because of 
  1085              rounding errors in mobility model
  1086 - bug 1055:  Wrong UAN's Thorp absorption loss model formula
  1087 - bug 1284 - ./test.py performance tests do not exist
  1088 - bug 1324 - ns3tcp-cwnd-test-suite.cc test failing
  1089 - bug 1340 - ns3tcp-loss-suite.cc tests failing
  1090 - bug 1342 - ns3tcp-cwnd-test-suite.cc tests failing
  1091 - bug 1345 - ns-3 builds with clang compiler >= 3.0
  1092 - bug 1359 - TCP cannot receive ICMP
  1093 - bug 1361 - Set TOS from Application level (sockets)
  1094 - bug 1463 - ./test.py --example should automatically detect the path
  1095 - bug 1479 - When the Ipv4RawSocket "IpHeaderInclude" Attribute set true,
  1096              Ip Checksum error
  1097 - bug 1485 - Setting global properties in config file (raw text) does
  1098              not have any effect
  1099 - bug 1493 - test.py --list should show the test type default tip
  1100 - bug 1493 - test.py --list should show the test type 
  1101 - bug 1494 - test.py --constrain doesn't work
  1102 - bug 1495 - test.py claims test passed when no test was run
  1103 - bug 1506:  TCP data segment piggybacking acknowledgment
  1104 - bug 1509 - RttEstimator returns invalid value in presence of errors
  1105 - bug 1516 - GtkConfigStore does not show read-only attributes
  1106 - bug 1520 - Config paths not fully documented (partial fix)
  1107 - bug 1524 - Fragmentation Threshold equals to Packet Size at MAC Layer 
  1108              (Data + IP + UDP) crash the reception
  1109 - bug 1525 - Linker error with mpi on Mac 10.8
  1110 - bug 1526:  Wrong calculation of pathloss within 
  1111              UanPropModelThorp::GetPathLossDb
  1112 - bug 1527 - Ipv4RawSocket's BindToNetDevice not working
  1113 - bug 1528 - BindToNetDevice not working for IPv6 sockets
  1114 - bug 1531 - Crash when using NS_LOG in destructors of static objects
  1115 - bug 1532 - unimplemented LTE Scheduler methods
  1116 
  1117 Known issues
  1118 ------------
  1119 In general, known issues are tracked on the project tracker available
  1120 at http://www.nsnam.org/bugzilla/
  1121 
  1122 Release 3.15
  1123 ============
  1124 
  1125 Availability
  1126 ------------
  1127 This release is available from: 
  1128 http://www.nsnam.org/release/ns-allinone-3.15.tar.bz2
  1129 
  1130 Supported platforms
  1131 -------------------
  1132 - Fedora Core 17 (32/64 bit) with g++-4.7.0
  1133 - Fedora Core 15 (64 bit) with g++-4.6.3
  1134 - Ubuntu 12.04 (32/64 bit) with g++-4.6.3
  1135 - Ubuntu 10.04.4 LTS (64 bit) with g++-4.4.3
  1136 - OS X Mountain Lion 10.7.4 with g++-4.2.1
  1137 - OS X Snow Leopard 10.6.8 with g++-4.2.1 
  1138 - FreeBSD 8.2 (32 bit) with g++-4.2.1
  1139 - Cygwin 1.7.9-1 with g++-4.5.3
  1140 
  1141 New user-visible features
  1142 -------------------------
  1143 - A new random variable base class called 'RandomVariableStream', has been
  1144   introduced.  This base class derives from ns3::Object, unlike the current 
  1145   'RandomVariable' class which is a special type of object in the ns-3 
  1146   system to date.  By making this class derive from ns3::Object, it can be 
  1147   handled with the Ptr class, can carry attributes, and can have its parameters
  1148   and initial state saved in the config-store subsystem.  A new attribute
  1149   called "Stream" has been introduced for this class, to allow users to
  1150   better control the assignment of underlying pseudo-random sequences to
  1151   the RandomVariableStream objects (bug 101).
  1152 
  1153 Bugs fixed
  1154 ----------
  1155  - bug 101 - random variable initialization
  1156  - bug 1256 - Unnecessary SND.NXT advance, missing ACK for Out of Order segments
  1157  - bug 1308 - Nix-vector; do not process packets to self
  1158  - bug 1386 - assert if PositionAllocator not provided to 
  1159               RandomWaypointMobilityModel
  1160  - bug 1399 - TCP not backing off retransmissions properly
  1161  - bug 1441 - IPv4 header length handling
  1162  - bug 1464 - ConfigStore Save + Load => Could not set default value 
  1163                   for ns3::UdpSocketImpl::IcmpCallback
  1164  - bug 1470 - define default parameter for constructor in .h file
  1165  - bug 1473 - GetQueue/SetQueue missing from Csma python bindings
  1166  - bug 1475 - "test.py --list" should sort the output
  1167  - bug 1476 - TestCase::GetName () should not be private
  1168  - bug 1477 - Click doesn't work with raw sockets
  1169  - bug 1481 - Openflow example doesn't run
  1170  - bug 1486 - Segfaults in nix-vector-routing with bridges
  1171  - bug 1489 - Jakes Log component is missing
  1172  - fixed bug with multiple LCs in UL BSR
  1173  - fixed bug with lena-dual-stripe crashes with --homeUesHomeEnbRatio=2
  1174 
  1175 Known issues
  1176 ------------
  1177 In general, known issues are tracked on the project tracker available
  1178 at http://www.nsnam.org/bugzilla/
  1179 
  1180 Release 3.14.1
  1181 ==============
  1182 
  1183 Availability
  1184 ------------
  1185 This release is available from:
  1186 http://www.nsnam.org/release/ns-allinone-3.14.1.tar.bz2
  1187 
  1188 Bugs fixed
  1189 ----------
  1190 This hotfix release contains a fix for the PyViz visualizer and makes it
  1191 easier to add PyViz support to examples; otherwise it is the same as the
  1192 ns-3.14 release.
  1193 
  1194 Release 3.14
  1195 ============
  1196 
  1197 Availability
  1198 ------------
  1199 This release is available from: 
  1200 http://www.nsnam.org/release/ns-allinone-3.14.tar.bz2
  1201 
  1202 Supported platforms
  1203 -------------------
  1204 ns-3.14 has been tested on the following platforms.  Not all features are
  1205 available on all platforms; check the Installation page on the project wiki.
  1206 
  1207 - Fedora Core 17 (32/64 bit) with g++-4.7.0
  1208 - Fedora Core 16 (32/64 bit) with g++-4.6.3
  1209 - Fedora Core 15 (64 bit) with g++-4.6.3
  1210 - Ubuntu 12.04 (32/64 bit) with g++-4.6.3
  1211 - Ubuntu 11.10 (32 bit) with g++-4.6.1
  1212 - Ubuntu 10.04.4 LTS (64 bit) with g++-4.4.3
  1213 - OS X Lion 10.7.4 with g++-4.2.1
  1214 - OS X Snow Leopard 10.6.8 with g++-4.2.1 
  1215 - FreeBSD 8.2 (32 bit) with g++-4.2.1
  1216 - Cygwin 1.7.9-1 with g++-4.5.3
  1217 
  1218 New user-visible features
  1219 -------------------------
  1220 - Transport protocol implementations (TCP, UDP) have been refactored to
  1221   support also IPv6 connections. Dual-stacked IPv6 sockets are implemented. 
  1222   An IPv6 socket can accept an IPv4 connection, returning the sender's 
  1223   address as an IPv4-mapped address (IPV6_V6ONLY socket option is not 
  1224   implemented).
  1225 - The LTE code from the LENA project has been merged, bringing in a
  1226   significant redesign of the LTE module as well as many new features.
  1227 - An antenna module is now included, which includes different
  1228   radiation pattern models. See the corresponding new section of the
  1229   ns-3 models library documentation for details.
  1230 - A new buildings module is introduced which allows to model the
  1231   presence of buildings in a wireless network topology.  
  1232 - New propagation models (OkumuraHata, ITU-R P.1411, ITU-R P.1238)
  1233   have been added
  1234 - The Dynamic Source Routing (DSR) MANET routing protocol for IPv4 was added.
  1235 - A Random Early Detection (RED) queue model has been added.
  1236 - Ipv6RoutingHelper is now in-line with Ipv4RoutingHelper concerning the RT 
  1237   print functions. Various minor changes were made in Ipv6RoutingProtocol and 
  1238   derived classes to make this possible.
  1239 - New "SendIcmpv6Redirect" attribute (and getter/setter functions) to 
  1240   Ipv6L3Protocol. The behavior is similar to Linux's conf "send_redirects",
  1241   i.e., enable/disable the ICMPv6 Redirect sending.
  1242 - Longer and more descriptive names are used for error units in RateErrorModel
  1243   class and queue mode in Queue class. Attributes in those classes are also
  1244   changed for consistency. See API documentation for details.
  1245 - The netanim animator is now bundled with the release.
  1246 
  1247 Bugs fixed
  1248 ----------
  1249  - bug 603 - Simulator::Next is useless
  1250  - bug 631 - RealtimeSimulatorImpl does not handle Ctrl-C with python bindings
  1251  - bug 962 - list of paths to reach objects contains bogus entries
  1252  - bug 1000 - Make RealtimeSimulatorImpl last until stop
  1253  - bug 1053 - Need better error diagnostics in ns2-mobility-trace example
  1254  - bug 1109 - Point out the effects of ArpCache::PendingQueueSize
  1255  - bug 1179 - Add LTE trace hooks for supporting visualizer
  1256  - bug 1180 - LTE: Add TX/RX trace support
  1257  - bug 1273 - Better error message on missing Python development files
  1258  - bug 1282 - Sleep state and CCA
  1259  - bug 1283 - PacketSocket::SendTo should return number of bytes 
  1260  - bug 1302 - Flow monitor bug
  1261  - bug 1304 - Tag information changed after transmission
  1262  - bug 1313 - Stddev (average.h) returning NaN
  1263  - bug 1318 - Asserts for IPv6 malformed packets
  1264  - bug 1319 - Fix Ipv6RawSocketImpl Icmpv6 filter
  1265  - bug 1325 - Python examples get valgrind errors when build subdirectories 
  1266               are specified in waf
  1267  - bug 1339 - test.py uses the old name for the test runner
  1268  - bug 1348 - python bindings: deprecated conversion from string constant 
  1269               to ‘char*’
  1270  - bug 1349 - TypeId.LookupAttributeByName Python bindings missing
  1271  - bug 1350 - Simulator.ScheduleWithContext Python binding missing
  1272  - bug 1351 and 1333 - TCP not able to take RTT samples on long delay network
  1273  - bug 1352 - Fixed MapAttributes, previously was mapped to a vector in 
  1274               ObjectPtrContainer and (and key information was dropped). 
  1275               Now the container is a map.
  1276  - bug 1354 - Building scratch subdir programs is broken
  1277  - bug 1355 - Visualizer dependencies not detected at buildtime
  1278  - bug 1357 - IPv6 fragmentation fails due to checks about malformed extensions
  1279  - bug 1362 - ICMPv6 does not forward ICMPs to upper layers (and minor 
  1280               fixes to ICMPv6)
  1281  - bug 1376 - wrong wind variable's name
  1282  - bug 1378 - UdpEchoClient::SetFill () does not set packet size correctly
  1283  - bug 1379 - lte-multiple-flows example crashes
  1284  - bug 1380 - lte-phy-uplink example crashes
  1285  - bug 1391 - .ns3rc does not allow comments as expected
  1286  - bug 1392 - Modules built report does not clarify C++ or Python
  1287  - bug 1393 - IPv6 Routing Helper RT Print functions
  1288  - bug 1395 - AODV DeferredRouteOutputTag missing constructor
  1289  - bug 1396 - ARP with hardware addresses longer than 6 bytes
  1290  - bug 1399 - TCP not backing off retransmissions properly
  1291  - bug 1404 - Bound user input in tutorial third.cc program
  1292  - bug 1406 - waf exits with maximum recursion depth exceeded 
  1293  - bug 1415 - examples-to-run.py doesn't work with command line arguments
  1294  - bug 1420 - no python bindings for csma-layout
  1295  - bug 1441 - IPv4 header length handling
  1296  
  1297 Known issues
  1298 ------------
  1299 In general, known issues are tracked on the project tracker available
  1300 at http://www.nsnam.org/bugzilla/
  1301 
  1302 Release 3.13
  1303 ==============
  1304 
  1305 Availability
  1306 ------------
  1307 This release is available from: 
  1308 http://www.nsnam.org/release/ns-allinone-3.13.tar.bz2
  1309 
  1310 Supported platforms
  1311 -------------------
  1312 ns-3.13 has been tested on the following platforms.  Not all features are
  1313 available on all platforms; check the Installation page on the project wiki.
  1314 
  1315 - Ubuntu 11.10 (32 bit) with g++-4.5.2
  1316 - Ubuntu 11.04 (32/64 bit) with g++-4.5.2 
  1317 - Ubuntu 10.04.3 LTS (64 bit) with g++-4.4.3, g++-3.4.6 
  1318 - OS X Lion with g++-4.2.1
  1319 - OS X Snow Leopard with g++-4.2.1 
  1320 - Fedora Core 16 (32/64 bit) with g++-4.6.2
  1321   --  however, g++-3.4.6 fails on Fedora 16 i686 
  1322 - Fedora Core 14 (64 bit) with g++-4.5.1
  1323 - FreeBSD 9.0-RC1 (AMD64) with g++-4.2.1
  1324 
  1325 New user-visible features
  1326 -------------------------
  1327 - IPv6 address generator with support for duplicate address detection
  1328 
  1329 Bugs fixed
  1330 ----------
  1331  - bug 962 - list of paths to reach objects contains bogus entries
  1332  - bug 1001 - Buffer::CopyData() doesn't return the number of bytes copied
  1333  - bug 1010 - Uan model sleep patch
  1334  - bug 1020 - Wrong usage of the originator sequence number in HWMP PREP
  1335  - bug 1021 - Beacon collision avoidance in Mesh module works incorrectly
  1336  - bug 1039 - Nagle's algorithm in TCP 
  1337  - bug 1055 - Wrong UAN's Thorp absorption loss model formula
  1338  - bug 1059 - Unable to load trace files created from SUMO and TraNS Lite
  1339  - bug 1112 - Advance m_nextTxSequence upon retransmit after RTO 
  1340  - bug 1137 - mpi module is hard-coded for openmpi
  1341  - bug 1166 - IPV4 TCP failed to send a RST when connect arrives before listen
  1342  - bug 1186 - Ipv4Header lacks DSCP and ECN
  1343  - bug 1204 - Can't Parse Time +100000000.0ns
  1344  - bug 1219 - Coding style of ns2-mobility-helper-test-suite.cc is fixed
  1345  - bug 1257 - waf install __init__ Python files even with --disable-python
  1346  - bug 1263 - waf configure fails on FreeBSD 9.0-BETA2 amd64
  1347  - bug 1266 - gdb cannot be loaded
  1348  - bug 1227 - Spurious RTO due to low min RTO
  1349  - bug 1229 - Multiplication overflow in WaypointMobilityModel::EndMobility
  1350  - bug 1242 - m_lastRtt in tcp-socket-base.cc not implemented
  1351  - bug 1256 - TCP unnecessary snd.nxt advance
  1352  - bug 1265 - Make ns-3 directory "movable"
  1353  - bug 1269 - sqlite3 not found on FreeBSD
  1354  - bug 1270 - "Checking boost includes" weirdness
  1355  - bug 1278 - Ipv4ClickRouting::HandleScheduleFromClick bug
  1356  - bug 1281 - Checksum not calculated when doing IP fragmentation
  1357  - bug 1285 - IPv6 Localhost is marked as GLOBAL instead of HOST
  1358  - bug 1290 - buffer-test.cc gets a valgrind error
  1359  - bug 1295 - Missing const qualifiers in TopologyRead 
  1360  - bug 1299 - EnableAsciiIpv4All tracing doesn't show transmitted/recvd packets
  1361  - bug 1300 - HalfDuplexIdealPhy notify SpectrumInterference of AbortRx 
  1362  - bug 1301 - Ns2MobilityHelper causes Node GetPosition() to return NaN
  1363  - bug 1305 - do not list modules built upon exiting waf shell
  1364  - bug 1312: TopologyRead Assert condition fix
  1365  - IPv4 packets double fragmentation was broken 
  1366  - Fix wifi-clear-channel-cmu.cc example
  1367  - NetAnim: fix for bcast packet reuse
  1368  - Missing PropagationLossModel.CalcRxPower in Python bindings
  1369  - Corrected compilation behavior in Ubuntu 11.10 due to ldd behavior change
  1370  - Added required PTHREAD dependency to RT library check.
  1371 
  1372 Known issues
  1373 ------------
  1374 In general, known issues are tracked on the project tracker available
  1375 at http://www.nsnam.org/bugzilla/
  1376 
  1377 Release 3.12.1
  1378 ==============
  1379 
  1380 Availability
  1381 ------------
  1382 This release is available from: 
  1383 http://www.nsnam.org/release/ns-allinone-3.12.1.tar.bz2
  1384 
  1385 Bugs fixed
  1386 ----------
  1387 This release fixes PyViz visualizer's python bindings; otherwise, it
  1388 is the same as the ns-3.12 release.
  1389 
  1390 Release 3.12
  1391 ===========
  1392 
  1393 Availability
  1394 ------------
  1395 This release is available from: 
  1396 http://www.nsnam.org/release/ns-allinone-3.12.tar.bz2
  1397 
  1398 Supported platforms
  1399 -------------------
  1400 ns-3.12 has been tested on the following platforms.  Not all features are
  1401 available on all platforms; check the Installation page on the project wiki.
  1402 
  1403 - Fedora Core 15 (32/64 bit) with g++-4.6.0 
  1404 - Ubuntu 11.04 (32/64 bit) with g++-4.5.2 
  1405 - OS X Lion with g++-4.2.1 
  1406 - Fedora Core 14 (64 bit) with g++-4.3.4, g++-4.5.3, g++-4.4.6 
  1407 - Fedora Core 12 (64 bit) with g++-4.4.4 
  1408 - OS X Snow Leopard with g++-4.2.1 
  1409 - Ubuntu 10.04.3 LTS (64 bit) with g++-4.4.3, g++-3.4.6 
  1410 
  1411 New user-visible features
  1412 -------------------------
  1413 
  1414 - SpectrumChannel models now support the usage of single-frequency
  1415   propagation loss models based on the PropagationLossModel
  1416   class. These model can be used in conjunction with
  1417   the frequency-dependent propagation loss model based on the
  1418   SpectrumPropagationLossModel class already supported by
  1419   SpectrumChannel. 
  1420 
  1421 - Extend the attribute system extend the attribute system to store map
  1422   container objects in addition to vector containers.  The ObjectMap
  1423   and related classes are patterned after ObjectVector.
  1424 
  1425 - Support for IPv4 fragmentation has been added.
  1426 
  1427 - Significant performance improvement for AODV in dense mobile scenarios
  1428   due to a fixed bug in RERR processing.
  1429 
  1430 - WiFi traces that were named promiscuous are now renamed monitor, and
  1431   a separate flag for setting the interface to promiscuous mode has been
  1432   introduced.  This disambiguates monitor mode from promiscuous mode.
  1433 
  1434 - Monolithic Python bindings have been removed
  1435 
  1436 Bugs fixed
  1437 ----------
  1438  - bug 845  - fix ConfigStore output for changing default values
  1439  - bug 1010 - Uan model Sleep patch
  1440  - bug 1033 - Mesh airtime-metric fixed
  1441  - bug 1043 - lte-spectrum-value-helper.cc file swapped uplink/downlink freq.
  1442  - bug 1050 - ISO C++ forbids variable length array; remove all instances
  1443  - bug 1057 - LTE bearers differentiation issue
  1444  - bug 1082 - Check that log component names are correct when taken from NS_LOG
  1445  - bug 1100 - IPv6 fragmentation enhancements
  1446  - bug 1102 - IPv4 header fragment offset field not set correctly
  1447  - bug 1123 - class MinMaxAvgTotalCalculator does not implement all methods
  1448  - bug 1134 - Fix LiIonEnergySource attribute spelling for InitialCellVoltage
  1449  - bug 1139 - Broadcast packets issue in uan cw mac
  1450  - bug 1141 - MeshWifiInterfaceMac adds supported modes to wrong remote station
  1451  - bug 1163 - Ipv4EndPointDemux::AllocateEphemeralPort forget to increment port
  1452  - bug 1164 - IPV4 TCP Bind already used port failed, but without setting errno
  1453  - bug 1168 - BridgeNetDevice: default expiration time not realistic
  1454  - bug 1174 - Ns-3 does not generate static libraries
  1455  - bug 1175 - shared libraries are not versioned
  1456  - bug 1193 - AODV Hello timers scheduling skewed when RREP, RREQ are processed
  1457  - bug 1194 - AODV Incorrect RERR processing
  1458  - bug 1201 - UDP sockets need to set connected state before notifying the ConnectionSucceeded callback
  1459  - bug 1208 - Spectrum module example causing valgrind errors
  1460  - bug 1209 - ns-3-click fails to build on Fedora 15 when tests are enabled
  1461  - bug 1220 - FdReader always stops with NS_FATAL_ERROR
  1462  - bug 1222 - Incomplete PointToPointNetDevice Python bindings
  1463  - bug 1224 - ns-3-allinone fails to compile on OS X Lion
  1464  - bug 1226 - Incomplete YansWifiChannel Python bindings
  1465  - bug 1234 - GetAttributeChecker is not defined anymore but still used
  1466  - bug 1239 - Add assertion that reference count never overflows
  1467  - bug 1244 - Seg Faults in optimized builds due to missing Logging components
  1468  - Fix ARP issue in nsclick-ip-router.click and static route in nsclick-routing-node2.click
  1469 
  1470 Known issues
  1471 ------------
  1472 In general, known issues are tracked on the project tracker available
  1473 at http://www.nsnam.org/bugzilla/
  1474 
  1475 Release 3.11
  1476 ===========
  1477 
  1478 Availability
  1479 ------------
  1480 This release is available from: 
  1481 http://www.nsnam.org/release/ns-allinone-3.11.tar.bz2
  1482 
  1483 Supported platforms
  1484 -------------------
  1485 ns-3.11 has been tested on the following platforms.  Not all features are
  1486 available on all platforms; check the Installation page on the project wiki.
  1487 
  1488 - Linux x86_64 Ubuntu 11.04
  1489   - g++-4.5.2
  1490 - Linux i686 Ubuntu 11.04
  1491   - g++-4.5.2, g++-4.4.5
  1492 - Linux x86_64 Fedora Core 15
  1493   - g++-4.6.0
  1494 - Linux x86_64 Fedora Core 14
  1495   - g++-4.5.3, g++-4.4.6, g++-4.3.4
  1496 - Linux x86_64 Fedora Core 10
  1497   - g++-3.4.6, 4.0.4, 4.1.2, 4.2.4, 4.3.2, 4.4.0
  1498 - OS X Snow Leopard
  1499   - g++-4.2.1 
  1500 
  1501 New user-visible features
  1502 -------------------------
  1503 
  1504   - The build system has been modularized, and the source code reorganized,
  1505     to allow for modular libraries instead of a single monolithic ns-3
  1506     library.   User programs now link a number of smaller, per-module
  1507     libraries depending on the dependencies expressed to the build system.  
  1508     Source code is now being maintained in individual modules with
  1509     consistent directory structures.
  1510 
  1511   - Python bindings have also been modularized, and the bindings are now
  1512     generated into a 'ns' namespace instead of 'ns3' for the old
  1513     (monolithic) bindings.  By default the bindings are now modular, with
  1514     a backward compatibility layer for older programs.  
  1515 
  1516   - By default, example and test programs are disabled from the build.
  1517     Users can enable them via the use of a waf command at configure time,
  1518     or automatically through the use of a new .ns3rc file.
  1519 
  1520   - int64x64_t is a new type which allows portable and easy to write arithmetic
  1521     calculations that require a high degree of fractional precision.
  1522 
  1523   - An interface to the Click Modular Router and an Ipv4ClickRouting
  1524     class has been added, to allow a node to use Click for external routing.
  1525 
  1526   - An interface to an OpenFlow software implementation distribution has
  1527     been added to allow the simulation of OpenFlow switches in ns-3.
  1528 
  1529   - ns-3 coding style requirements have been applied to the entire coding
  1530     base, resulting in a large number of whitespace changes.  The coding 
  1531     style has been automatically enforced by running a style checking 
  1532     program (utils/check-style.py) that uses the uncrustify (v. 0.58)
  1533     program to apply changes. 
  1534 
  1535   - Some documentation reorganization to split documentation between
  1536     the ns-3 manual (primarily focusing on the ns-3 core) and a new 
  1537     "model library" document has been started.
  1538 
  1539 Bugs fixed
  1540 ----------
  1541 The following lists many of the bugs fixed or small feature additions
  1542 since ns-3.10, in many cases referencing the Bugzilla bug number.
  1543 
  1544    - bugfix: CsmaNetDevice ErrorModel not discarding packet
  1545    - bugfix: do not call RouteOutput() twice 
  1546    - Workaround gccxml bug scanning Seconds(0) as default value 
  1547    - Copy a bug fix from ns3modulescan.py into ns3modulescan-modular.py 
  1548    - Modular Python bindings work (many bug fixes, more modules tested) 
  1549    - Modular bindings: bug fixes, more verbose scanning 
  1550    - ./waf --apiscan: fix bug in detection of whether the per-module
  1551    - Remove the 'Modules to build' debug print 
  1552    - CsmaNetDevice ReceiveErrorModel was not dropping the packet
  1553    - Several "set but not used" bugs for newer compilers quick-fixed
  1554 
  1555    - bug 445 - Is the class name Scalar in nstime.h appropriate?
  1556    - bug 699 - TestCase::DoRun probably should not return a bool
  1557    - bug 823 - Need finer-grained control over what goes into libns3
  1558    - bug 957 - Issue with test.py
  1559    - bug 1017 - node --> internet-stack --> node
  1560    - bug 1018 - mobility --> helper --> mobility circular dependency
  1561    - bug 1019 - common --> node --> common circular dependency
  1562    - bug 1038 - Time::Get*Seconds () return signed integer while actually returning unsigned.
  1563    - bug 1040 - Olsr and multiple interfaces
  1564    - bug 1042 - AODV RERR implosion (missing RERR_RATELIMIT) 
  1565    - bug 1044 - Seconds (1e-9) creates Time that is not IsPositive ()
  1566    - bug 1047 - Multicast routes on nodes with >16 interfaces
  1567    - bug 1048 - suggested MatrixPropagationLossModel::SetLoss() API change
  1568    - bug 1049 - Issues with OLSR HNA messages sent by multiple gateways
  1569    - bug 1052 - olsr::RoutingProtocol::LinkTupleUpdated incorrect detection of asymetric link with multiple interface nodes
  1570    - bug 1054 - ipv6 InternetStackHelper EnablePcapIpv6All() broken
  1571    - bug 1056 - CSMA: padding not handled correctly for LLC encapsulation
  1572    - bug 1058 - InternetStackHelper pitfall: calling Install before adding routing protocols
  1573    - bug 1060 - Setting NqStaWifiMac Active Probing true, crashes simulation
  1574    - bug 1061 - Title level inconsistent in click.rst
  1575    - bug 1062 - rescale-pdf not working
  1576    - bug 1064 - Correct Friis propagation loss equation in spectrum module
  1577    - bug 1066 - Set Radiotap modulation type flags correctly
  1578    - bug 1069 - ApWifiMac unduly calls RegularWifiMac::Receive and crashes
  1579    - bug 1070 - csma/ipv6 examples duplicate NS_LOG_COMPONENT_DEFINE
  1580    - bug 1072 - crash upon call to Packet::AddAtEnd of fragmented packets 
  1581    - bug 1075 - Python examples fail when static built is enabled
  1582    - bug 1076 - Waf gives an error if you enable only a single module
  1583    - bug 1078 - PacketTagList::Add performs NS_ASSERT counting one byte too few
  1584    - bug 1079 - MPI code doesn't compile
  1585    - bug 1081 - wutils.py refers to the old directory for visualizer module
  1586    - bug 1083 - scratch doesn't work when only some modules are enabled
  1587    - bug 1085 - Build failed: list index out of range
  1588    - bug 1086 - sanity check for not calling Object::Dispose () twice
  1589    - bug 1087 - Call MPI_Finalize to exit MPI environment
  1590    - bug 1088 - Code in scratch directory assumes all modules are enabled
  1591    - bug 1089 - lwip build issue
  1592    - bug 1090 - WifiMacQueue is not accessible through the attribute path
  1593    - bug 1092 - Problem building FreeBSD stack with g++ 4.5.2 (Ubuntu)
  1594    - bug 1094 - Object::GetObject upon dlopen 
  1595    - bug 1097 - AODV routing entry set to be VALID mistakenly.
  1596    - bug 1098 - when to show users which modules are enabled?
  1597    - bug 1101 - Sqlite stats disappeared from configuration file src/wscript
  1598    - bug 1103 - Useless assignment in omnet-data-output.cc
  1599    - bug 1105 - Move topology helpers into separate per-device modules
  1600    - bug 1106 - Remove "CanvasLocation" dependencies in p2p helpers
  1601    - bug 1108 - test.py -e option needs repair
  1602    - bug 1110 - Sort alphabetically and display "Modules built" in columns
  1603    - bug 1117 - bindings failures on selected platforms
  1604    - bug 1122 - spectrum-value test should check tolerance on a per-value basis
  1605    - bug 1125 - ./waf --enable-modules fails
  1606    - bug 1131 - Bug in Ipv4L3Protocol::RemoveAddress()
  1607    - bug 1133 - DSDV: Possible bug in settling time calc
  1608    - bug 1142 - Wrong 802.11p Slot time
  1609    - bug 1146 - help string for test.py with disabled tests
  1610 
  1611 Known issues
  1612 ------------
  1613 In general, known issues are tracked on the project tracker available
  1614 at http://www.nsnam.org/bugzilla/
  1615 
  1616 Release 3.10
  1617 ===========
  1618 
  1619 Availability
  1620 ------------
  1621 This release is available from: 
  1622 http://www.nsnam.org/release/ns-allinone-3.10.tar.bz2
  1623 
  1624 Supported platforms
  1625 -------------------
  1626 ns-3.10 has been tested on the following platforms.  Not all features are
  1627 available on all platforms; check the Installation page on the project wiki.
  1628 
  1629 - Linux i686 Ubuntu 10.10
  1630   - g++-4.4.5
  1631 - Linux x86_64 Ubuntu 8.04.4
  1632   - g++-3.4.6, g++-4.2.4
  1633 - Linux x86_64 Fedora Core 12
  1634   - g++-4.4.4
  1635 - Linux x86_64 Fedora Core 10
  1636   - g++-3.4.6, 4.0.4, 4.1.2, 4.2.4, 4.3.4, 4.4.0
  1637 - OS X Snow Leopard
  1638   - g++-4.2.1 
  1639 - OS X powerpc Leopard 
  1640   - g++-4.0, g++-4.2
  1641 
  1642 New user-visible features
  1643 -------------------------
  1644 
  1645    - NS-3 PyViz, a live simulation visualizer, has been added.  The 
  1646      visualizer interacts with a running simulation, such that it uses no
  1647      trace files. It can be most useful for debugging purposes, i.e. to
  1648      figure out if mobility models are what you expect, where packets are
  1649      being dropped, etc. There is also a builtin interactive python console
  1650      that can be used to debug the state of the running objects. Although
  1651      it is mostly written in Python, it works both with Python and pure C++
  1652      simulations.
  1653 
  1654    - Wi-Fi MAC high classes have been reorganised in attempt to
  1655      consolidate shared functionality into a single class. This new
  1656      class is RegularWifiMac, and it derives from the abstract
  1657      WifiMac, and is parent of AdhocWifiMac, StaWifiMac, ApWifiMac,
  1658      and MeshWifiInterfaceMac. The QoS and non-QoS class variants are
  1659      no longer, with a RegularWifiMac attribute "QosSupported"
  1660      allowing selection between these two modes of
  1661      operation.
  1662 
  1663    - Support for IEEE 802.11g (specifically, rates with Modulation
  1664      Class ERP-OFDM) has been added to the wifi module. The new
  1665      WifiModes have names of the form ErpOfdmRatexxMbps, where xx is
  1666      the rate in Mbps (one of 6, 9, 12, 18, 24, 36, 48, 54), and a
  1667      WifiPhyStandard enumeration WIFI_PHY_STANDARD_80211g has been
  1668      added to allow configuration of a Wi-Fi STA supporting ERP-OFDM,
  1669      HR/DSSS, and DSSS rates (which some call an "802.11b/g" station).
  1670 
  1671    - Two attributes were added to WaypointMobilityModel.  The first
  1672      "LazyNotify" (default false), if enabled to true, will suppress
  1673      course change notifications if there are no position updates.
  1674      The second, "InitialPositionIsWaypoint" (default false), if enabled,
  1675      will allow an initial call to SetPosition () (before any waypoints
  1676      have been added) to be treated as the first waypoint.
  1677 
  1678    - Regression testing is now completely performed within test.py
  1679      rather than a separate "./waf --regression" that consults
  1680      reference traces in the ns-3.x-ref-traces directory.  In most
  1681      cases, the example programs whose traces were included in 
  1682      ns-3.x-ref-traces have a corresponding test called from the
  1683      test.py program.  It is still possible to write trace-based
  1684      regression tests but they are now called from the test.py
  1685      program.
  1686 
  1687    - New BulkSendApplication sends data as fast as possible up to 
  1688      MaxBytes or unlimited if MaxBytes is zero.  Think OnOff, but 
  1689      without the "off" and without the variable data rate. This 
  1690      application only works with SOCK_STREAM and SOCK_SEQPACKET 
  1691      sockets, for example TCP sockets and not UDP sockets.
  1692 
  1693    - Extensions to the energy models:  1) a new Rakhmatov Vrudhula 
  1694      non-linear battery model, 2) additional support for modeling 
  1695      energy consumption in WiFi devices, 3) an example for how to add 
  1696      energy models to a WiFi-based simulation (in examples/energy/ 
  1697      directory).
  1698 
  1699    - New methods to print IPv4 routing tables to an output stream.
  1700 
  1701    - A replacement implementation for TCP for IPv4.  TcpSocketBase
  1702      now replaces TcpSocketImpl.  There are subclasses defined for
  1703      TCP Tahoe, Reno, NewReno, and the original RFC793 without
  1704      congestion control.
  1705 
  1706    - Energy support for UAN module and Li-Ion energy model.
  1707      Now each network node can have an associated energy source
  1708      from which it consumes energy. The user can specify a custom
  1709      energy model for the underwater transducer, with default values
  1710      set for WHOI acoustic transducer. Li-Ion battery model added
  1711      into energy models folder.
  1712 
  1713    - Destination-Sequenced Distance Vector (DSDV) routing protocol 
  1714      is a proactive, table-driven routing protocol for MANETs 
  1715      developed by Charles E. Perkins and Pravin Bhagwat in 1994. 
  1716      This implementation is for IPv4 routing and was contributed 
  1717      by ResilNets Research Group.
  1718 
  1719    - A novel model to simulate LTE networks has been added.  It focuses 
  1720      mainly on modeling the E-UTRA part of the system, with a particular 
  1721      attention on the aspects related to the channel, PHY and MAC layers. 
  1722      The most important features available at this moment are (i) a basic 
  1723      implementation of both the UE and the eNB devices, (ii) RRC and 
  1724      entities for both the UE and the eNB, (iii) an Adaptive Modulation 
  1725      and Coding (AMC) scheme for the downlink, (iv) the management of the 
  1726      data radio bearers (with their QoS parameters), the MAC queues and 
  1727      the RLC instances, (v) Channel Quality Indicator (CQI) management, 
  1728      (vi) support for both uplink and downlik packet scheduling, 
  1729      (vii) a PHY layer model with Resource Block level granularity, and 
  1730      (viii) a channel model with the outdoor E-UTRAN propagation loss 
  1731      model.
  1732 
  1733    - Project documentation has been converted from GNU Texinfo to Sphinx. 
  1734 
  1735 Bugs fixed
  1736 ----------
  1737 The following lists many of the bugs fixed or small feature additions
  1738 since ns-3.9, in many cases referencing the Bugzilla bug number
  1739 
  1740    - bug 824 - TCP should implement FastRecovery by default
  1741    - bug 852 - Add support for 802.11g devices
  1742    - bug 892 - WaypointMobilityModel incompatible with MobilityHelper::Install
  1743    - bug 893 - Lazy CourseChange notification for WaypointMobilityModel
  1744    - bug 903 - TapBridge does not shut down properly
  1745    - bug 953 - WiMAX channel scanning overflow
  1746    - bug 967 - Need to decouple Ipv4L4Protocols from Ipv4L3Protocol
  1747    - bug 978 - Consolidate Wi-Fi MAC high functionality
  1748    - bug 979 - Multi-octet fields in Wi-Fi headers have wrong endianness
  1749    - bug 981 - use a cache to keep track of received MPDUs under block ack
  1750    - bug 983 - handle correctly ADDBA response action frames in QadhocWifiMac
  1751    - bug 984 - EmuNetDevice should use DIX encapsulation by default
  1752    - bug 985 - WiMAX Invalid management message type on wimax-simple
  1753    - bug 988 - MacRxMiddle::SequenceControlSmaller method
  1754    - bug 990 - Error with an NS_ASSERT at uan-phy-gen.cc
  1755    - bug 991 - InterferenceHelper assertion failure
  1756    - bug 992 - Unusual (possibly incorrect assertion) in Packet::Deserialize
  1757    - bug 993 - MinstrelWifiManager::UpdateStats useless if clause
  1758    - bug 994 - PointToPointGridHelper useless if clauses
  1759    - bug 995 - Useless (possibly incorrect) comparison of unsigned int
  1760    - bug 1004 - module header not rebuilt
  1761    - bug 1005 - GetSocket() methods for OnOffApplication and PacketSink
  1762    - bug 1009 - decouple m_finSequence (TcpSocketImpl) from tx sequence numbers
  1763    - bug 1012 - UAN Throp propagation model bug
  1764    - bug 1015 - GetChannelFrequencyMhz() does not match with standard
  1765    - bug 1022 - inappropriate ASSERT in tcp-socket-impl.cc
  1766    - bug 1025 - wimax-ipv4 script exists with signal SIGSEGV when nbSS>20
  1767    - bug 1027 - RocketfuelTopologyReader is not working at all
  1768    - bug 1029 - v4Ping application endian issues
  1769    - bug 1030 - routing/aodv example fixed
  1770    - bug 1031 - Wifi hidden terminal example does not work
  1771    - bug 1032 - Unable to specify multiple Compiler/Linker flags
  1772 
  1773 Known issues
  1774 ------------
  1775 In general, known issues are tracked on the project tracker available
  1776 at http://www.nsnam.org/bugzilla/
  1777 
  1778 Windows XP 32 bit Cygwin 1.7.7 does not seem to work because of a
  1779 problem (reported elsewhere) in linking large libraries.
  1780 
  1781 Release 3.9
  1782 ===========
  1783 
  1784 Availability
  1785 ------------
  1786 This release is immediately available from:
  1787 http://www.nsnam.org/release/ns-allinone-3.9.tar.bz2
  1788 
  1789 Supported platforms
  1790 -------------------
  1791 ns-3.9 has been tested on the following platforms:
  1792 - Ubuntu 10.04 LTS 32/64-bit gcc-4.4.3
  1793 - Fedora Core 12 64-bit gcc-4.4.3
  1794 - Ubuntu 9.10 32-bit gcc-4.4.1
  1795 - Ubuntu 8.04 LTS 64-bit gcc-4.2.4
  1796 - Fedora Core 5 32-bit gcc-4.1.1
  1797 - Mac OS X Leopard powerpc gcc-4.0.1
  1798 - Windows Cygwin 1.7.5
  1799 
  1800 Not all ns-3 options are available on all platforms; consult the
  1801 wiki for more information:
  1802 http://www.nsnam.org/wiki/Installation
  1803 
  1804 New user-visible features
  1805 -------------------------
  1806 
  1807    - A reorganisation of the construction of Wi-Fi transmit rates has
  1808      been undertaken with the aim of simplifying the task of
  1809      supporting further IEEE 802.11 PHYs. This work has been completed
  1810      under the auspices of Bug 871. A consequence of this work is that
  1811      WifiModes have a new (hopefully future-proof) naming, and
  1812      simulations which specify rates by name will need updating. The
  1813      list of new rate names is given in the error message produced
  1814      when an attempt is made to use any invalid rate name (including
  1815      those that were previously valid).
  1816 
  1817    - A new OFDM error rate model for WiFi (NistErrorRateModel); this model
  1818      has been validated in clear-channel testbed tests.  For 802.11b, it
  1819      uses the same underlying model as the YansErrorRateModel, but it differs
  1820      from YansErrorRateModel for OFDM modes (802.11a/g).  The default
  1821      YansWifiPhyHelper has been changed to use this model.
  1822 
  1823    - A new NS-2 mobility trace reader supports BonnMotion, SUMO, TraNS, 
  1824      etc. traces.
  1825 
  1826    - An energy model for nodes and devices, including an energy source
  1827      model and device energy models allowing energy-aware devices
  1828      to notify the energy source about energy consumption.  
  1829 
  1830    - Rocketfuel topology dataset support for existing topology reader
  1831      Rocketfuel project: 
  1832      http://www.cs.washington.edu/research/networking/rocketfuel/
  1833 
  1834    - Underwater Acoustic Network (UAN) model, split in to three parts, the 
  1835      channel, PHY, and MAC models to enable researchers to model a variety 
  1836      of underwater network scenarios.
  1837 
  1838    - the Spectrum framework, which provides support for spectrum-aware
  1839      Channel and PHY layer modeling. It features a set of classes that
  1840      allows the mathematical representation of frequency dependent
  1841      phenomena. Some example channel, propagation and device
  1842      implementations that make use of this framework are also
  1843      included.  
  1844 
  1845 Bugs fixed
  1846 ----------
  1847 The following lists many of the bugs fixed or small feature additions 
  1848 since ns-3.8, in many cases referencing the Bugzilla bug number
  1849 
  1850    - IPv4 global routing code; stub networks were assumed to be /24
  1851      and added as /24 networks even if the mask is actually different
  1852    - OLSR was generating messages on non-OLSR interfaces
  1853    - ICMPv4 objects not properly registered; affected serialization code
  1854    - bug 231 - SocketAddressTag needs to be removed from a packet before 
  1855                forwarding the packet to the user
  1856    - bug 385 - Add a generic "sequence number" class
  1857    - bug 473 - [PATCH] Alternative ns-2 trace reader
  1858    - bug 665 - Need Tutorial Sectino on Config Path and Tracing Use
  1859    - bug 671 - add packet-info-tag.cc for IP_PKTINFO/IPV6_PKTINFO
  1860    - bug 702 - Global routing doesn't respond to interface events
  1861    - bug 799 - Interference helper is too slow
  1862    - bug 800 - Erroneous packet sender while using aloha or cw mac in uan module
  1863    - bug 802 - Minstrel algorithm causes segmentation fault
  1864    - bug 826 - Using uint64_t instead of Time in DcfManager
  1865    - bug 828 - PacketSocket::Close does not unregister protocol handler
  1866    - bug 842 - ns-3-dev crashes using block acks
  1867    - bug 843 - Most wifi examples change BeaconInterval to unrealistic values
  1868    - bug 844 - YansWifiPhy::GetPowerDbm off-by-one problem when calculating Tx 
  1869                power
  1870    - bug 846 - packet.cc triggers deprecated warning
  1871    - bug 853 - Rates for Wi-Fi control responses are incorrectly selected
  1872    - bug 854 - Support DROP_QUEUE reason-code in Ipv4FlowProbe
  1873    - bug 858 - support MSG_PEEK in IPv4/IPv6 raw socket
  1874    - bug 861 - Forwarding drops (due to no route found) were not being logged 
  1875                in IPv4 or IPv6 ascii traces
  1876    - bug 869 - suggested test framework enhancements
  1877    - bug 871 - naming for WifiPhyStandard
  1878    - bug 873 - Queue occupancy counter not decremented in WifiMacQueue::Remove()
  1879    - bug 874 - wrong modulation type is selected in the forwardBurst method
  1880    - bug 875 - "frame includes FCS" flag should be set in Radiotap frame header
  1881    - bug 879 - source address selection for AODV using DeferredRouteRequest
  1882    - bug 881 - Reorganise to allow wider use of WifiInformationElement
  1883    - bug 890 - several rate adaptation algorithms not tested by test.py
  1884    - bug 900:  RawTextConfigLoad::Default does not load configurations
  1885    - bug 901 - Optimize Mac48Address < != and ==
  1886    - bug 902 - TCP: handle out-of-order packets during connection shutdown
  1887    - bug 905 - WimaxNetDevice loses packet uid, tags, and memory optimization
  1888    - bug 906 - NSC TCP socket fork did not copy txbuffersize over
  1889    - bug 908 - test.py should exit if waf dies
  1890    - bug 910 - Change Wi-Fi "AccessClass" to something closer to the standard
  1891    - bug 911 - IPv4/v6 multicast forwarding not going to all output interfaces
  1892    - bug 913 - Queue Enqueue/Drop trace sources behavior unintuitive
  1893    - bug 916 - EnableAsciiAll ("prefix") does not work for YansWifiPhyHelper
  1894    - bug 918 - samples/main-packet-header.cc is broken
  1895    - bug 919 - minstrel does not pass valgrind tests
  1896    - bug 921 - Inconsistent declaration of class/struct Object in object.h
  1897    - bug 922 - Inconsistent declaration of class/struct in 
  1898                wifi-remote-station-manager.h
  1899    - bug 923 - Inconsistent declaration of class/struct in mac-low.h
  1900    - bug 924 - Inconsistent declaration of class/struct in <xxx>-wifi-managers 
  1901    - bug 925 - Various IPv6 cc files trigger deprecated warning
  1902    - bug 926 - olsr handling of multicast packets 
  1903    - bug 927 - SimpleOfdmWimaxChannel RxPower computation
  1904    - bug 930 - examples/topology-read/topology-example-sim.cc uses variable 
  1905                length array
  1906    - bug 931 - Abnormal exit reports SIGSEGV on failure
  1907    - bug 932 - Support IP_HDRINCL option for Ipv4RawSocket
  1908    - bug 933 - Flushing ostream and files on abnormal program exit 
  1909                (ASSERT, ABORT and FATAL_ERROR)
  1910    - bug 936 - Waf build error for python bindings on "AccessClass"
  1911    - bug 937 - bugs in ns-3 wimax
  1912    - bug 939 - EmuNetDevice uses too much memory when reading packet bursts
  1913    - bug 940 - AODV fails to set up a correct path
  1914    - bug 941 - Wifi Dcf attributes not reachable through configuration namespace
  1915    - bug 943 - Add a SO_BROADCAST socket option
  1916    - bug 944 - change default ErrorRateModel from YansErrorRateModel to 
  1917                NistErrorRateModel
  1918    - bug 946 - Rocketfuel topology dataset support for topology reader
  1919    - bug 949 - Node::NonPromiscReceiveFromDevice reports a meaningless 
  1920                destination address to user callbacks 
  1921    - bug 950 - PointToPointNetDevice says promisc support is not implemented 
  1922                but it is
  1923    - bug 955 - Install NSC for NS3 in a Itanium Architecture (ia64) with Linux 2.6.16.6
  1924    - bug 956 - Bindings failure in core (traced-value) with older gcc
  1925    - bug 958 - WiFi uses wrong default values for MTU, FragmentationThreshold 
  1926                and RtsCtsThreshold
  1927    - bug 959 - Simulation never finishes when using RealtimeSimulatorImpl
  1928    - bug 960 - V4Ping does not generate checksum
  1929    - bug 961 - Problem with MPI activation 
  1930    - bug 964 - AODV does not work with host addressed interfaces
  1931    - bug 965 - Problem building /src/core/callback.cc
  1932    - bug 966 - AODV originates new RREQ on each packet, when doesn't have 
  1933                valid route
  1934    - bug 969 - No SocketList is present in UdpL4Protocol class
  1935    - bug 971 - fix AODV header Print functions 
  1936    - bug 972 - [flow monitor] assertion fails in pv4-flow-probe.cc
  1937 
  1938 Known issues
  1939 ------------
  1940 
  1941 Release 3.8
  1942 ===========
  1943 
  1944 Availability
  1945 ------------
  1946 This release is immediately available from:
  1947 http://www.nsnam.org/release/ns-allinone-3.8.tar.bz2
  1948 
  1949 Supported platforms
  1950 -------------------
  1951 ns-3.8 has been tested on the following platforms:
  1952   - linux x86 gcc 4.4.0, 4.3.2, 4.2, 4.1.1, 4.1 and 3.4.6 (debug and optimized)
  1953   - linux x86_64 gcc 4.4.0, 4.3.2, 4.2.4, 4.2.3, 4.2.1, 4.1.3, 3.4.6 (debug and optimized)
  1954   - MacOS X ppc gcc 4.0.x and 4.2.x (debug and optimized)
  1955   - cygwin gcc 4.3.4 (debug and optimized)
  1956 
  1957 Not all ns-3 options are available on all platforms; consult the
  1958 wiki for more information:
  1959 http://www.nsnam.org/wiki/Installation
  1960 
  1961 New user-visible features
  1962 -------------------------
  1963   a) WiMAX net device: Allow to simulated IEEE 802.16 point to multi-point based networks 
  1964 
  1965   b) Distributed simulation for point-to-point networks using the Message 
  1966      Passing Interface (MPI) standard.
  1967     
  1968   c) Matrix propagation loss model uses a two-dimensional matrix of path loss indexed 
  1969      by source and destination nodes.
  1970 
  1971   d) Topology read system: Allows quick and easy creation of large topologies by reading 
  1972      Inet or Orbis files
  1973 
  1974   e) Gauss-Markov mobility model: Adds 3-d adaptation of Gauss-Markov mobility model which 
  1975      has both memory and variability
  1976 
  1977   f) Steady-state random waypoint mobility model: Based on random waypoint mobility (RWM) model for case when 
  1978      speed, pause and position are uniformly distributed random variables. However, initial values of these 
  1979      parameters are not from uniform distribution but from stationary distribution of RWM model.
  1980 
  1981   g) Two-ray ground propagation loss model: Calculates the crossover distance under which Friis is used. 
  1982      The antenna height is set to the nodes z coordinate, but can be added to using the model parameter 
  1983      SetHeightAboveZ, which will affect ALL stations
  1984 
  1985 
  1986 API changes from ns-3.7
  1987 -----------------------
  1988 API changes for this release are documented in the file CHANGES.html. 
  1989 
  1990 Bugs fixed
  1991 ----------
  1992 The following lists many of the bugs that were fixed since ns-3.7, in
  1993 many cases referencing the Bugzilla bug number
  1994    - bug 155 - std::ostream & os" parameters not Python friendly
  1995    - bug 184 - GtkConfigStore do not support ConfigureDefault
  1996    - bug 407 - OLSR is missing HNA support
  1997    - bug 414 - No ReceiveErrorModel in SimpleNetDevice
  1998    - bug 602 - WifiRemoteStation lacks information about the access class of outgoing packets
  1999    - bug 622 - [PATCH] Friendly names for pcap traces
  2000    - bug 683 - Helper methods for pcap tracing with explicit filenames
  2001    - bug 706 - Backoff counting when starting NS.
  2002    - bug 720 - TapBridge creation fails from a script outside the ns3 tree
  2003    - bug 731 - Send function in point-to-point-net-device fails to check the return value of the Dequeue function
  2004    - bug 747 - Listening TCP socket closes on RST
  2005    - bug 748 - Cloned TCP socket uses wrong source address
  2006    - bug 772 - AODV is unable to correctly buffer packets waiting for route reply
  2007    - bug 777 - AODV ignores specified outgoing interface in RouteOutput()
  2008    - bug 778 - OLSR ignores specified outgoing interface in RouteOutput()
  2009    - bug 787 - Addition of Two Ray Ground model to propagation loss model and tests
  2010    - bug 788 - OLSR_NEIGH_HOLD_TIME should be 3 times OLSR_REFRESH_INTERVAL 
  2011    - bug 789 - [PATCH] Globalrouting externalroutes to use the new GetRootExitDirections()
  2012    - bug 794 - Ipv4Mask constructor for "/yy"-notation is wrong
  2013    - bug 796 - TCP bug in ns-3-dev branch : Crash detected during retesting of Chord on ns-3-dev branch
  2014    - bug 797 - Enhancements to src/core/random-variable.cc/h
  2015    - bug 801 - ns-3.7 and SVN not coexisting nicely
  2016    - bug 802 - Minstrel algorithm causes segmentation fault
  2017    - bug 804 - null-pointer references in 3.7 internet stack
  2018    - bug 806 - TCP doesn't work over a CSMA link
  2019    - bug 807 - ns2-mobility-helper.cc: node id parsed wrong
  2020    - bug 809 - Missing Python binding for Ipv4GlobalRouting::GetRoute
  2021    - bug 810 - In TCP, Socket::GetSockName() does not return the local socket address
  2022    - bug 812 - Assert when getting socket in RecvReply for AODV
  2023    - bug 813 - Nqos AP sends packet to non associated STA
  2024    - bug 814 - Function logging causing assert in wireless examples
  2025    - bug 815 - waf shell file descriptor leak
  2026    - bug 816 - tap-creator deadlock when python bindings enabled
  2027    - bug 817 - Pareto rng constructors using scale and shape instead of mean and shape
  2028    - bug 818 - TCP Socket implementation does not set ACK flag on retransmits
  2029    - bug 819 - Build break when gtk not installed
  2030    - bug 820 - Bad things happen in test.py when logging is enabled
  2031    - bug 821 - AODV asserts with function logging enabled
  2032    - bug 822 - Move Mtu attribute from NetDevice base class to subclasses
  2033    - bug 825 - UDP-Client-server's packet loss counter not properly reset
  2034    - bug 828 - PacketSocket::Close does not unregister protocol handler
  2035    - bug 829 - TCP unbound memory problem (pending data)
  2036    - bug 833 - OnOffApplication with PacketSocket: sniffs all traffic
  2037    - bug 834 - Incorrect signature of Ipv4FlowProbe::DropLogger
  2038    - bug 835 - Unlimited receive queues in sockets == evil
  2039    - bug 836 - Delay is incremented over time with BsUplinkSchedulerSimple and BsUplinkSchedulerRtps
  2040    - bug 838 - ns-3 can't compile on MacOS with 32bit processor
  2041    - bug 839 - TestSuite wimax-ss-mac-layer crashes on Darwin 9.8.0 Power Macintosh
  2042    - bug 840 - BS scheduler does not support fragmentation for UGS flows
  2043    - bug 841 - Multicast transmission breaks with QoS Wifi
  2044    - bug 844 - YansWifiPhy::GetPowerDbm off-by-one problem when calculating Tx power
  2045    - bug 847 - Segfaults on BaseStationNetDevice with OnOffApplication and rtPS sched
  2046    - bug 849 - stray patch files in lwip directory
  2047    - bug 850 - Ipv4GlobalRouting::LookupGlobal bug
  2048    - bug 855 - waf dies badly when switching from debug to optimized build or vice versa
  2049    - bug 856 - initialize vbl
  2050    - bug 857 - Link-Local Multicast handle in Ipv4 Output processing 
  2051    - bug 859 - Output interface estimation for the source address bound socket in IPv4 Raw socket
  2052    - bug 860 - waf sometimes dies while executing ns3header or gen_ns3_module_header tasks in case of 
  2053                parallel jobs
  2054    - bug 862 - NotifyInterfaceUp() Adds network route even when netmask is /32
  2055    - bug 863 - Wrong Scalar arithmetics
  2056    - bug 864 - Invalid return value in UdpSocketImpl::Send and Ipv4RawSocketImpl::Send
  2057    - bug 865 - Ipv4RawSocketImpl::RecvFrom does not return from address all the time.
  2058    - bug 866 - WiMAX mobility models not aggregated to Node
  2059    - bug 867 - Minor bug in Ipv4L3Protocol::Send()
  2060    - bug 868 - invalid packet size after Ipv4L3Protocol::Send
  2061    - bug 872 - ns3::PcapFileWrapper::Write explodes stack
  2062    - bug 873 - Queue occupancy counter not decremented in WifiMacQueue::Remove()
  2063    - bug 876 - Tcp socket does not handle ShutdownRecv correctly
  2064    - bug 877 - python bindings broken with multiple inheritance ?
  2065    - bug 880 - Node sending a packet to itself via 127.0.0.1 aborts
  2066    - bug 885 - Error in Ascii tracing in Python examples
  2067    - bug 888 - Writing ascii trace to addtional tests fails
  2068    - bug 891 - WiMAX device helper does not include propagation loss model by default 
  2069    - bug 894 - ./waf --run error message upon segfault
  2070    - bug 895 - SimpleOfdmWimaxPhy SNR computation
  2071    - bug 899 - EmuNetDevice::SetPromiscReceiveCallback not implemented
  2072 
  2073 Known issues
  2074 ------------
  2075 ns-3 builds have been known to fail on the following platforms:
  2076   - gcc 3.3 and earlier
  2077   - optimized builds on gcc 3.4.4 and 3.4.5
  2078   - optimized builds on linux x86 gcc 4.0.x
  2079 
  2080 
  2081 Release 3.7
  2082 ===========
  2083 
  2084 Availability
  2085 ------------
  2086 This release is immediately available from:
  2087 http://www.nsnam.org/release/ns-allinone-3.7.tar.bz2
  2088 
  2089 Supported platforms
  2090 -------------------
  2091 ns-3.7 has been tested on the following platforms:
  2092   - linux x86 gcc 4.4.0, 4.3.2, 4.2, 4.1.1, 4.1 and 3.4.6 (debug and optimized)
  2093   - linux x86_64 gcc 4.4.0, 4.3.2, 4.2.4, 4.2.3, 4.2.1, 4.1.3, 3.4.6 (debug and optimized)
  2094   - MacOS X ppc gcc 4.0.x and 4.2.x (debug and optimized)
  2095   - cygwin gcc 3.4.4 (debug only), gcc 4.3.2 (debug and optimized)
  2096 
  2097 Unofficially supported platform
  2098 -------------------
  2099 - mingw gcc 3.4.5 (debug only)
  2100 
  2101 Not all ns-3 options are available on all platforms; consult the
  2102 wiki for more information:
  2103 http://www.nsnam.org/wiki/Installation
  2104 
  2105 New user-visible features
  2106 -------------------------
  2107 
  2108   a) Ad hoc On-Demand Distance Vector (AODV) routing model (RFC 3561)
  2109 
  2110   b) IPv6 extensions support to add IPv6 extensions and options.  Two 
  2111      examples (fragmentation and loose routing) are available.
  2112 
  2113   c) NetAnim interface: Provides an interface to the Qt-based NetAnim 
  2114      animator, which supports static, point-to-point topology-based 
  2115      packet animations.
  2116 
  2117   d) New topology helpers have been introduced
  2118      - PointToPointDumbbellHelper
  2119      - PointToPointGridHelper
  2120      - PointToPointStarHelper
  2121      - CsmaStarHelper
  2122 
  2123   e) Equal-cost multipath for global routing: Enables quagga's equal 
  2124      cost multipath for Ipv4GlobalRouting, and adds an attribute that
  2125      can enable it with random packet distribution policy across 
  2126      equal cost routes.
  2127 
  2128   f) Binding sockets to devices:  A method analogous to a SO_BINDTODEVICE
  2129      socket option has been introduced to class Socket
  2130 
  2131   g) Object::DoStart: Users who need to complete their object setup at 
  2132      the start of a simulation can override this virtual method, perform their 
  2133      adhoc setup, and then, must chain up to their parent.
  2134 
  2135   h) Ipv4::IsDestinationAddress method added to support checks of whether a 
  2136      destination address should be accepted as one of the host's own 
  2137      addresses.  
  2138 
  2139   i) UniformDiscPositionAllocator added; distributes uniformly the nodes 
  2140      within a disc of given radius. 
  2141 
  2142   j) ChannelNumber attribute added to YansWifiPhy. Now it is possible to 
  2143      setup wifi channel using WifiPhyHelper::Set() method.
  2144 
  2145   k) WaypointMobilityModel provides a method to add mobility as a set of 
  2146      (time, position) pairs
  2147 
  2148   l) 802.11p WiFi standards 
  2149   
  2150   m) UDP Client/Server application
  2151 
  2152   n) Support transactions in the SQLite output interface, making it usable for larger amounts of data
  2153 
  2154 API changes from ns-3.6
  2155 -----------------------
  2156 API changes for this release are documented in the file CHANGES.html. 
  2157 
  2158 Bugs fixed
  2159 ----------
  2160 The following lists many of the bugs that were fixed since ns-3.6, in
  2161 many cases referencing the Bugzilla bug number
  2162    - bug 752: Object::DoStart is not executed for objects created at t > 0
  2163    - bug 767:  Incorrect modulation for 802.11a modes
  2164    - bug 725: wifi fragmentation and RTS cannot be used at the same time
  2165    - bug 782: CreateTap () requires IP address in modes other than 
  2166      CONFIGURE_LOCAL.
  2167    - bug 769: Queue::GetTotalReceived{Bytes,Packets}() broken
  2168    - bug 738 ReceiveErrorModel called too late
  2169    - Fix NSC improper response to FIN
  2170    - Fixed bug in serialization of PbbAddressBlock.
  2171    - Fix bug 780 (problem in RoutingTableComputation with asymetric links), 
  2172      while adding debugging methods to OLSR.  
  2173    - bug 759: Ipv6 uses wrong outgoing interface.
  2174    - bug 770: IPv6 size calculation for unknown options is wrong.
  2175    - bug 771: Radvd does not set ttl value.
  2176    - Fix bug 606:  Arp depends on IP routing system
  2177    - pad out CSMA payloads to 46 bytes if needed
  2178    - Drop CSMA packets with CRC errors, rescan, dox tweaks
  2179    - Add FCS capability to CSMA
  2180    - Mesh:Dot11s: fixed airtime metric
  2181    - Get emu working again:  Add Dix/Llc option, add and use contextual 
  2182      realtime schedule ops, don't refcount realtime simulator impl
  2183    - bug 695 - DcfManager::UpdateBackoff () uses slow HighPrecision::Div()
  2184    - bug 674 - EIFS is not handled correctly in DcfManager::GetAccessGrantStart
  2185    - bug 739 -  OLSR: Strange HTime value in HELLO messages 
  2186    - bug 746 -  UDP source address is not set to bound address
  2187    - bug 735 Update Olsr for local delivery
  2188    - bug 740 OLSR MprCompute () works wrong: fixed
  2189    - bug 729 Enable IPv6 over PPP.
  2190    - bug 645: fixes for opening stats file with OMNeT++
  2191    - bug 689: default energy detection and CCA thresholds are changed to be 
  2192      more realistic.
  2193    - bug 733: OLSR MPR Computation give incorrect result
  2194    - Mesh: HWMP: fixed proactive routes
  2195    - Mesh: fixed FLAME PATH_UPDATE procedure, fixed mesh.cc 
  2196 
  2197 Known issues
  2198 ------------
  2199 ns-3 builds have been known to fail on the following platforms:
  2200   - gcc 3.3 and earlier
  2201   - optimized builds on gcc 3.4.4 and 3.4.5
  2202   - optimized builds on linux x86 gcc 4.0.x
  2203 
  2204 
  2205 Release 3.6
  2206 ===========
  2207 
  2208 Availability
  2209 ------------
  2210 This release is immediately available from:
  2211 http://www.nsnam.org/release/ns-allinone-3.6.tar.bz2
  2212 
  2213 Supported platforms
  2214 -------------------
  2215 ns-3.6 has been tested on the following platforms:
  2216   - linux x86 gcc 4.4.1, 4.2, 4.1, and, 3.4.6.
  2217   - linux x86_64 gcc 4.4.0, 4.3.2, 4.2.3, 4.2.1, 4.1.3, 3.4.6
  2218   - MacOS X ppc and x86 (gcc 4.0.x and 4.2.x)
  2219   - cygwin gcc 3.4.4 (debug only), gcc 4.3.2 (debug and optimized)
  2220 
  2221 Not all ns-3 options are available on all platforms; consult the
  2222 wiki for more information:
  2223 http://www.nsnam.org/wiki/Installation
  2224 
  2225 New user-visible features
  2226 -------------------------
  2227 
  2228   a) 802.11 models:
  2229      - Add an implementation of the minstrel rate control algorithm 
  2230        (Duy Nguyen for gsoc)
  2231      - AthstatsHelper: enables the wifi device to produce periodic 
  2232        reports similar to the ones generated by madwifi's
  2233        athstats tool (Nicola Baldo)
  2234      - 10MHz and 5MHz channel width supported by 802.11a model 
  2235        (Ramon Bauza and Kirill Andreev)
  2236      - Channel switching support. YansWifiPhy can now switch among 
  2237        different channels (Ramon Bauza and Pavel Boyko)
  2238   
  2239   b) IPv6 models:
  2240     - IPv6 interface;
  2241     - IPv6 layer;
  2242     - IPv6 raw socket;
  2243     - Static IPv6 routing;
  2244     - ICMPv6 layer;
  2245     - Some ICMPv6 error messages (destination unreachable, ...);
  2246     - Neighbor Discovery Protocol (NS/NA, RS/RA, redirection);
  2247     - Ping6 application (send Echo request);
  2248     - Radvd application (send RA);
  2249     - Examples (ping6, simple-routing-ping6, radvd, radvd-two-prefix,
  2250       icmpv6-redirect).
  2251 
  2252   c) Wireless Mesh Networking models:
  2253     - General multi-interface mesh stack infrastructure (devices/mesh module).
  2254     - IEEE 802.11s (Draft 3.0) model including Peering Management Protocol and HWMP.
  2255     - Forwarding Layer for Meshing (FLAME) protocol.
  2256 
  2257   d) Nix-vector routing:  
  2258     - Ipv4NixVectorHelper
  2259     - Examples (nix-simple, nms-p2p-nix)
  2260 
  2261   e) New Test Framework
  2262     - Use test.py instead of ./waf check or ./waf --regression
  2263     - Previous unit tests have been ported to new framework.
  2264     - Examples are tested for run-ability.
  2265 
  2266   f) A new Flow Monitor module
  2267    - To very easily measure flow metrics in a simulation
  2268    - No need to use trace callbacks or parsing trace files
  2269 
  2270 API changes from ns-3.5
  2271 -----------------------
  2272 API changes for this release are documented in the file CHANGES.html. 
  2273 
  2274 Known issues
  2275 ------------
  2276 ns-3.6 build is known to fail on the following platforms:
  2277   - gcc 3.3 and earlier
  2278   - optimized builds on gcc 3.4.4 and 3.4.5
  2279   - optimized builds on linux x86 gcc 4.0.x
  2280 
  2281 Release 3.5
  2282 ===========
  2283 
  2284 Availability
  2285 ------------
  2286 This release is immediately available from:
  2287 http://www.nsnam.org/release/ns-allinone-3.5.tar.bz2
  2288 
  2289 Supported platforms
  2290 -------------------
  2291 ns-3.5 has been tested on the following platforms:
  2292   - linux x86 gcc 4.2, 4.1, and, 3.4.6.
  2293   - linux x86_64 gcc 4.4.0, 4.3.2, 4.2.3, 4.2.1, 4.1.3, 3.4.6
  2294   - MacOS X ppc and x86 (gcc 4.0.x and 4.2.x)
  2295   - cygwin gcc 3.4.4 (debug only), gcc 4.3.2 (debug and optimized)
  2296   - mingw gcc 3.4.5 (debug only)
  2297 
  2298 Not all ns-3 options are available on all platforms; consult the
  2299 wiki for more information:
  2300 http://www.nsnam.org/wiki/Installation
  2301 
  2302 New user-visible features
  2303 -------------------------
  2304 
  2305   a) 802.11 MAC:
  2306      - EDCA multi-qos-class support (Mirko Banchi)
  2307      - 802.11n initial support for A-MSDU frame aggregation (Mirko Banchi)
  2308      - aarf-cd and cara rate control algorithms (Federico Maguolo)
  2309   b) 802.11 PHY:
  2310      - 802.11b PHY support (Gary Pei)
  2311      - Nakagami propagation loss model (Timo Bingmann)
  2312      - radiotap and prism headers for PCAP output (Nicola Baldo)
  2313   c) RandomVariable:
  2314      - GammaVariable and ErlangVariable (Timo Bingmann)
  2315      - ZipfVariable (Francesco Malandrino)
  2316   d) UdpEcho: allows setting the payload of echo packets
  2317   e) Ipv4/Ipv4RoutingProtocol: allow fine-grained control over
  2318      routing policy and arbitrary composition of routing protocols
  2319  
  2320 API changes from ns-3.4
  2321 -----------------------
  2322 API changes for this release are documented in the file CHANGES.html.  The
  2323 internal API and composition of the IPv4 stack underwent significant
  2324 refactoring in this release cycle.
  2325 
  2326 Known issues
  2327 ------------
  2328 ns-3 build is known to fail on the following platforms:
  2329   - gcc 3.3 and earlier
  2330   - optimized builds on gcc 3.4.4 and 3.4.5
  2331   - optimized builds on linux x86 gcc 4.0.x
  2332 
  2333 Future releases
  2334 ---------------
  2335 Our next release, which is expected to happen in 2 to 4 months from now, will
  2336 feature the merging of some of our projects currently in development including
  2337 fuller IPv6 support, some smaller features such as a new Global ARP 
  2338 package, and possibly a new Testing and Validation suite.
  2339 
  2340 Release 3.4
  2341 ===========
  2342 
  2343 Availability
  2344 ------------
  2345 This release is immediately available from:
  2346 http://www.nsnam.org/release/ns-allinone-3.4.tar.bz2
  2347 
  2348 Supported platforms
  2349 -------------------
  2350 ns-3.4 has been tested on the following platforms:
  2351   - linux x86 gcc 4.2, 4.1, and, 3.4.6.
  2352   - linux x86_64 gcc 4.3.2, 4.2.3, 4.2.1, 4.1.3, 3.4.6
  2353   - MacOS X ppc and x86
  2354   - cygwin gcc 3.4.4 (debug only)
  2355 
  2356 Not all ns-3 options are available on all platforms; consult the
  2357 wiki for more information:
  2358 http://www.nsnam.org/wiki/Installation
  2359 
  2360 New user-visible features
  2361 -------------------------
  2362   a) Wifi models: Timo Bingman contributed a ThreeLogDistance and a Nakagami
  2363      propagation loss model based on the ns-2 models. Fabian Mauchle contributed
  2364      multicast support.
  2365 
  2366   b) Object Name Service:  A facility allowing ns-3 Objects to be assigned
  2367      names has been added.
  2368 
  2369   c) Tap Bridge:  A second option for integrating ns-3 with real-world hosts
  2370      has been added.  This allows for real hosts to talk over ns-3 net devices
  2371      and simulated networks.
  2372 
  2373   d) A new build option (ns-3-allinone) has been provided to make it easier for
  2374      users to download and bulid commonly used ns-3 configurations.
  2375 
  2376   e) The ns-3 calendar queue scheduler has been ported to ns-3.
  2377 
  2378   f) XML support has been added to the ConfigStore.
  2379 
  2380 API changes from ns-3.3
  2381 -----------------------
  2382 API changes for this release are documented in the file CHANGES.html
  2383 
  2384 Known issues
  2385 ------------
  2386 ns-3 build is known to fail on the following platforms:
  2387   - gcc 3.3 and earlier
  2388   - optimized builds on gcc 3.4.4 and 3.4.5
  2389   - optimized builds on linux x86 gcc 4.0.x
  2390   - optimized builds on Ubuntu 8.10 alpha 5 x86 gcc4.3.2
  2391   - MinGW
  2392 
  2393 The IPv4 API defined in src/node/ipv4.h is expected to undergo major changes 
  2394 in preparation of the merge of the IPv6 API and implementation.
  2395 
  2396 Future releases
  2397 ---------------
  2398 Our next release, which is expected to happen in 2 to 4 months from now, will
  2399 feature the merging of some of our projects currently in development including
  2400 fuller IPv6 support, and IPv4 and routing protocol refactoring, and some smaller
  2401 features such as a new Global ARP package and possibly a new Testing and Validation
  2402 suite,
  2403 
  2404 Release 3.3
  2405 ===========
  2406 
  2407 Availability
  2408 ------------
  2409 This release is immediately available from:
  2410 http://www.nsnam.org/release/ns-3.3.tar.bz2
  2411 
  2412 Supported platforms
  2413 -------------------
  2414 ns-3.3 has been tested on the following platforms:
  2415   - linux x86 gcc 4.2, 4.1, and, 3.4.6.
  2416   - linux x86_64 gcc 4.3.2, 4.2.3, 4.2.1, 4.1.3, 3.4.6
  2417   - MacOS X ppc and x86
  2418   - cygwin gcc 3.4.4 (debug only)
  2419 
  2420 Not all ns-3 options are available on all platforms; consult the
  2421 wiki for more information:
  2422 http://www.nsnam.org/wiki/Installation
  2423 
  2424 New user-visible features
  2425 -------------------------
  2426   a) Emulated Net Device
  2427      A new net device has been added as enabling technology for ns-3 emulation
  2428      scenarios.  See src/devices/emu and examples/emu-udp-echo.cc for details.
  2429 
  2430   b) ICMP Support
  2431      Support for several ICMP messages has been added to ns-3.  See 
  2432      src/internet-stack/icmpv4.h for details.
  2433 
  2434   c) IPv6 Address Support
  2435      New clases to support IPv6 addresses has been added to the system.  This
  2436      is enabling technology for fuller IPv6 support scheduled for ns-3.4.
  2437 
  2438   d) A flow-id tag has been added to the contributed code section
  2439 
  2440   e) Star topologies can be created from the topology helper functions
  2441 
  2442   f) The global routing code has been made dynamic (not just limited to
  2443      (pre-simulation computation) and supports stub network interfaces and 
  2444      bridge net devices 
  2445 
  2446   g) A MatchContainer has been added to the configuration subsystem
  2447 
  2448 API changes from ns-3.2
  2449 -----------------------
  2450 API changes for this release are documented in the file CHANGES.html
  2451 
  2452 Known issues
  2453 ------------
  2454 ns-3 build is known to fail on the following platforms:
  2455   - gcc 3.3 and earlier
  2456   - optimized builds on gcc 3.4.4 and 3.4.5
  2457   - optimized builds on linux x86 gcc 4.0.x
  2458   - optimized builds on Ubuntu 8.10 alpha 5 x86 gcc4.3.2
  2459   - MinGW
  2460 
  2461 The IPv4 API defined in src/node/ipv4.h is expected to undergo major changes 
  2462 in preparation of the merge of the IPv6 API and implementation.
  2463 
  2464 Future releases
  2465 ---------------
  2466 Our next release, which is expected to happen in 2 to 4 months from now, will
  2467 feature the merging of some of our projects currently in development including
  2468 fuller IPv6 support, and IPv4 and routing protocol refactoring, and some smaller
  2469 features such as an object naming facility and a new Global ARP package.
  2470 
  2471 Release 3.2
  2472 ===========
  2473 
  2474 Availability
  2475 ------------
  2476 This release is immediately available from:
  2477 http://www.nsnam.org/release/ns-3.2.tar.bz2
  2478 
  2479 Supported platforms
  2480 -------------------
  2481 ns-3.2 has been tested on the following platforms:
  2482   - linux x86 gcc 4.2, 4.1, and, 3.4.6.
  2483   - linux x86_64 gcc 4.3.2, 4.2.3, 4.2.1, 4.1.3, 3.4.6
  2484   - MacOS X ppc and x86
  2485   - cygwin gcc 3.4.4 (debug only)
  2486 
  2487 Not all ns-3 options are available on all platforms; consult the
  2488 wiki for more information:
  2489 http://www.nsnam.org/wiki/Installation
  2490 
  2491 New user-visible features
  2492 -------------------------
  2493   a) Learning bridge (IEEE 802.1D)
  2494     It is now possible to bridge together multiple layer 2 devices to
  2495     create larger layer 2 networks. The Wifi and Csma models support
  2496     this new mode of operation. (contributed by Gustavo Carneiro)
  2497 
  2498   b) Python bindings
  2499     It is now possible to write simulation scripts in python using our 
  2500     python bindings (contributed by Gustavo Carneiro).
  2501 
  2502   c) Real-time simulator
  2503     It is now possible to run simulations synchronized on the real-world
  2504     wall-clock time (contributed by Craig Dowell).
  2505 
  2506   d) Network Simulation Cradle
  2507     It is now possible to use the Network Simulation Cradle 
  2508     (http://www.wand.net.nz/~stj2/nsc/) in ns-3 and run simulations 
  2509     using various versions of kernel TCP network stacks. (contributed
  2510     by Florian Westphal as part of his Google Summer of Code work)
  2511 
  2512   e) A statistics framework
  2513     Joseph Kopena contributed a statistics framework which can be used
  2514     keep track of simulation data in persistent storage across multiple 
  2515     runs (database and ascii file backends are available).
  2516     More information on the wiki:
  2517     http://www.nsnam.org/wiki/Statistical_Framework_for_Network_Simulation
  2518 
  2519 API changes from ns-3.1
  2520 -----------------------
  2521 API changes for this release are documented in the file CHANGES.html
  2522 
  2523 Known issues
  2524 ------------
  2525 ns-3 build is known to fail on the following platforms:
  2526   - gcc 3.3 and earlier
  2527   - optimized builds on gcc 3.4.4 and 3.4.5
  2528   - optimized builds on linux x86 gcc 4.0.x
  2529   - optimized builds on Ubuntu 8.10 alpha 5 x86 gcc4.3.2
  2530   - MinGW
  2531 
  2532 The IPv4 API defined in src/node/ipv4.h is expected to undergo major changes 
  2533 in preparation of the merge of the IPv6 API and implementation.
  2534 
  2535 Future releases
  2536 ---------------
  2537 Our next release, which is expected to happen in 2 to 4 months from now, will
  2538 feature the merging of some of our projects currently in development: IPv6, 
  2539 emulation, and synchronous posix sockets.
  2540 
  2541 Release 3.1 (2008/06/30)
  2542 ========================
  2543 
  2544 The first ns-3 stable release
  2545 -----------------------------
  2546 
  2547 This release is immediately available from:
  2548 http://www.nsnam.org/release/ns-3.1.tar.bz2
  2549 
  2550 We dedicate this initial ns-3 release to our late contributor and friend, 
  2551 Federico Maguolo.
  2552 
  2553 What is ns-3 ?
  2554 --------------
  2555 
  2556 ns-3 is a new discrete-event network simulator designed for supporting network
  2557 research and education. ns-3 features a solid, well documented C++ core and 
  2558 models for TCP/IP (IPv4), several link types including WiFi, and mobility 
  2559 models.
  2560 
  2561 ns-3 is an open source project released under the GNU GPLv2 license which 
  2562 allows anyone to use ns-3 without having to pay any license fee or royalties. 
  2563 ns-3 is actively seeking new contributors to extend the range of supported 
  2564 models and/or to maintain existing models.
  2565 
  2566 Where to get more information about ns-3
  2567 ----------------------------------------
  2568 
  2569 All the ns-3 documentation, is accessible from the ns-3 website: 
  2570 http://www.nsnam.org
  2571 
  2572 Including, tutorials:
  2573 http://www.nsnam.org/tutorials.html
  2574 
  2575 Supported platforms
  2576 -------------------
  2577 
  2578 ns-3 is regularly tested on the following platforms:
  2579   - linux x86 gcc 4.2, 4.1, and, 3.4.6.
  2580   - linux x86_64 gcc 4.1.3, 4.2.1, 3.4.6
  2581   - MacOS X ppc and x86
  2582   - cygwin gcc 3.4.4 (debug only)
  2583 
  2584 Known issues
  2585 ------------
  2586 
  2587 ns-3 is known to fail on the following platforms:
  2588   - gcc 3.3 and earlier
  2589   - optimized builds on gcc 3.4.4 and 3.4.5
  2590   - optimized builds on linux x86 gcc 4.0.x
  2591 
  2592 The IPv4 API defined in src/node/ipv4.h is expected to undergo major changes 
  2593 in preparation of the merge of the IPv6 API and implementation.
  2594 
  2595 Future releases
  2596 ---------------
  2597 
  2598 Our next release, which is expected to happen in 2 to 4 months from now, will
  2599 feature the merging of some of our projects currently in development: python 
  2600 scripting, IPv6, emulation, a statistics framework and synchronous posix 
  2601 sockets.
  2602 
  2603 Release 3.0.13 (2008/06/02)
  2604 ===========================
  2605 - point to point links generate ppp pcap traces
  2606 - point to point links support asymmetrical data rates.
  2607 - generate doxygen documentation for all attributes and trace sources
  2608 - add ConfigStore and GtkConfigStore to contrib module
  2609 - socket API now support tx and rx buffers: implemented for UDP and TCP
  2610 - ARP cache now supports per-entry pending queues
  2611 - lots of bugfixes and implementation and API cleanups
  2612 
  2613 Warning: among API changes in this release, Application::Start and 
  2614 Application::Stop now interprets the time argument as a relative
  2615 instead of absolute simulation time, to align with how Simulator::Schedule
  2616 behaves.  Any code that calls these APIs in the middle of the simulation 
  2617 will need to be adapted.  
  2618 
  2619 The API of Simulator::StopAt (time) has also changed.  Now it is 
  2620 called Simulator::Stop (time), and takes a relative time, instead of 
  2621 absolute.
  2622 
  2623 Release 3.0.12 (2008/04/07)
  2624 ===========================
  2625     - Add Attribute support to the TypeId metadata system and add
  2626 attribute support to all in-tree models
  2627     - Add a mid-level helper API to build simulation topologies 
  2628 and perform simple ascii and pcap link-level tracing.
  2629     - Large amount of structural changes to accomodate the needs
  2630 of the upcoming python bindings
  2631     - new rate control algorithm (RRAA) and a jakes propagation model
  2632 in the 802.11 model (Federico Maguolo).
  2633     - regression test framework added
  2634     - TCP delayed acknowledgements and multitasking server
  2635 
  2636 Release 3.0.11 (2008/02/15)
  2637 ===========================
  2638     - Initial port of GTNetS TCP implementation (initial version 
  2639 that does not support multitasking or delayed acknowledgments yet, 
  2640 but supports a reliable stream service)
  2641     - Changes to the ns-3 object model to create a TypeId-based 
  2642 metadata system
  2643     - lots of bug fixes throughout the system
  2644     - tutorial updates
  2645 
  2646 Release 3.0.10 (2008/01/15)
  2647 ===========================
  2648    - Add tutorial document content;
  2649    - Valgrind option for "waf" tool;
  2650    - Doxygen organization changes.
  2651 
  2652 Release 3.0.9 (2007/12/15)
  2653 ==========================
  2654    - A 802.11 model ported from Yans. This model supports:
  2655        * a rather extensive PHY model
  2656        * log-distance and friis propagation model
  2657        * a simple set of rate control algorithms (ARF, Ideal, 
  2658          AARF, constant-rate)
  2659        * adhoc and infrastructure mode (beacon+assoc)
  2660    - Use smart pointer for Packet in the APIs
  2661    - A new contrib directory with helper classes: 
  2662      EventGarbageCollector, Gnuplot
  2663    - Tracing support for Applications
  2664    - many bugs fixed
  2665 
  2666 Release 3.0.8 (2007/11/15)
  2667 ==========================
  2668    - A simple error model
  2669    - Source files for ns-3 tutorial
  2670 
  2671 Release 3.0.7 (2007/10/15)
  2672 ==========================
  2673   - OLSR routing protocol
  2674   - A timer class
  2675   - Additional mobility models (random waypoint, random 2D walk)
  2676   - A mobility visualization tool 
  2677 
  2678 Release 3.0.6 (2007/09/15)
  2679 ==========================
  2680   - Static multicast IPv4 routing
  2681   - Logging overhaul (NS_LOG macros)
  2682   - Refactoring of tracing subsystem
  2683   - Tutorial document started
  2684  
  2685 Release 3.0.5 (2007/08/15)
  2686 ==========================
  2687 
  2688   - Refactoring to support win32-based unix environments (Cygwin, mingw)
  2689   - "Packet socket" for allowing applications to access NetDevices directly
  2690   - Generalized, polymorphic Address class
  2691   - Add CSMA NetDevice model (from Emmanuelle Laprise)
  2692   - Modularize IPv4 routing support (from Gustavo Carneiro)
  2693   - Add mobility framework and basic mobility models 
  2694   - Global unicast centralized routing 
  2695 
  2696 Release 3.0.4 (2007/07/15)
  2697 ==========================
  2698 
  2699   - Enable waf as the default build system.
  2700   - Per-packet metadata:  a system to track which headers and trailers 
  2701     are added to a packet
  2702   - Simplifications to point-to-point devices and channel
  2703 
  2704 Release 3.0.3 (2007/06/15)
  2705 ==========================
  2706 
  2707   - Enable Waf for release tarballs: users can now build ns-3
  2708     with the "waf" tool. See doc/build-waf.txt.
  2709   - Add support for variable time precision: it is now possible
  2710     to run a simulation with an accuracy which is higher or lower
  2711     than a nanosecond: seconds, milliseconds, microseconds, 
  2712     femtoseconds and picoseconds are supported.
  2713   - Optimize and rework the COM framework, solidify the component 
  2714     manager
  2715   - Many small API cleanups
  2716 
  2717 Release 3.0.2 (2007/05/18)
  2718 ==========================
  2719 
  2720   - Implement a new memory management infrastructure based
  2721     on reference counting and smart pointers (the latter being
  2722     optional)
  2723 
  2724   - Implement a COM-like framework with support for QueryInterface
  2725     to provide object extensibility
  2726 
  2727   - Add support for a BSD-style socket API for user applications
  2728 
  2729 Release 3.0.1 (2007/03/31)
  2730 ==========================
  2731 
  2732   - First public release; not yet pre-alpha.
  2733 
  2734   - Simple UDP-based simulation script (examples/simple-p2p.cc)