RELEASE_NOTES
author Tom Henderson <tomh@tomh.org>
Thu, 02 Jul 2009 21:57:00 -0700
changeset 4646 c25ca2e38845
parent 4634 a4a7eae14a02
child 4652 eace836a61a4
permissions -rw-r--r--
some fixes to the manual for IPv4 refactoring
     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
     8 including tutorials:
     9 http://www.nsnam.org/tutorials.html
    10 
    11 Release 3.5
    12 ===========
    13 
    14 Availability
    15 ------------
    16 This release is immediately available from:
    17 http://www.nsnam.org/releases/ns-allinone-3.5.tar.bz2
    18 
    19 Supported platforms
    20 -------------------
    21 ns-3.5 has been tested on the following platforms:
    22   - linux x86 gcc 4.2, 4.1, and, 3.4.6.
    23   - linux x86_64 gcc 4.4.0, 4.3.2, 4.2.3, 4.2.1, 4.1.3, 3.4.6
    24   - MacOS X ppc and x86 (gcc 4.0.x and 4.2.x)
    25   - cygwin gcc 3.4.4 (debug only), gcc 4.3.2 (debug and optimized)
    26   - mingw gcc 3.4.5 (debug only)
    27 
    28 Not all ns-3 options are available on all platforms; consult the
    29 wiki for more information:
    30 http://www.nsnam.org/wiki/index.php/Installation
    31 
    32 New user-visible features
    33 -------------------------
    34 
    35   a) 802.11 MAC:
    36      - EDCA multi-qos-class support (Mirko Banchi)
    37      - 802.11n initial support for A-MSDU frame aggregation (Mirko Banchi)
    38      - aarf-cd and cara rate control algorithms (Federico Maguolo)
    39   b) 802.11 PHY:
    40      - 802.11b PHY support (Gary Pei)
    41      - Nakagami propagation loss model (Timo Bingmann)
    42      - radiotap and prism headers for PCAP output (Nicola Baldo)
    43   c) RandomVariable:
    44      - GammaVariable and ErlangVariable (Timo Bingmann)
    45      - ZipfVariable (Francesco Malandrino)
    46   d) UdpEcho: allows setting the payload of echo packets
    47   e) Ipv4/Ipv4RoutingProtocol: allow fine-grained control over
    48      routing policy and arbitrary composition of routing protocols
    49  
    50 API changes from ns-3.4
    51 -----------------------
    52 API changes for this release are documented in the file CHANGES.html.  The
    53 internal API and composition of the IPv4 stack underwent significant
    54 refactoring in this release cycle.
    55 
    56 Known issues
    57 ------------
    58 ns-3 build is known to fail on the following platforms:
    59   - gcc 3.3 and earlier
    60   - optimized builds on gcc 3.4.4 and 3.4.5
    61   - optimized builds on linux x86 gcc 4.0.x
    62 
    63 Future releases
    64 ---------------
    65 Our next release, which is expected to happen in 2 to 4 months from now, will
    66 feature the merging of some of our projects currently in development including
    67 fuller IPv6 support, and some smaller features such as a new Global ARP package 
    68 and possibly a new Testing and Validation suite.
    69 
    70 Release 3.4
    71 ===========
    72 
    73 Availability
    74 ------------
    75 This release is immediately available from:
    76 http://www.nsnam.org/releases/ns-allinone-3.4.tar.bz2
    77 
    78 Supported platforms
    79 -------------------
    80 ns-3.4 has been tested on the following platforms:
    81   - linux x86 gcc 4.2, 4.1, and, 3.4.6.
    82   - linux x86_64 gcc 4.3.2, 4.2.3, 4.2.1, 4.1.3, 3.4.6
    83   - MacOS X ppc and x86
    84   - cygwin gcc 3.4.4 (debug only)
    85 
    86 Not all ns-3 options are available on all platforms; consult the
    87 wiki for more information:
    88 http://www.nsnam.org/wiki/index.php/Installation
    89 
    90 New user-visible features
    91 -------------------------
    92   a) Wifi models: Timo Bingman contributed a ThreeLogDistance and a Nakagami
    93      propagation loss model based on the ns-2 models. Fabian Mauchle contributed
    94      multicast support.
    95 
    96   b) Object Name Service:  A facility allowing ns-3 Objects to be assigned
    97      names has been added.
    98 
    99   c) Tap Bridge:  A second option for integrating ns-3 with real-world hosts
   100      has been added.  This allows for real hosts to talk over ns-3 net devices
   101      and simulated networks.
   102 
   103   d) A new build option (ns-3-allinone) has been provided to make it easier for
   104      users to download and bulid commonly used ns-3 configurations.
   105 
   106   e) The ns-3 calendar queue scheduler has been ported to ns-3.
   107 
   108   f) XML support has been added to the ConfigStore.
   109 
   110 API changes from ns-3.3
   111 -----------------------
   112 API changes for this release are documented in the file CHANGES.html
   113 
   114 Known issues
   115 ------------
   116 ns-3 build is known to fail on the following platforms:
   117   - gcc 3.3 and earlier
   118   - optimized builds on gcc 3.4.4 and 3.4.5
   119   - optimized builds on linux x86 gcc 4.0.x
   120   - optimized builds on Ubuntu 8.10 alpha 5 x86 gcc4.3.2
   121   - MinGW
   122 
   123 The IPv4 API defined in src/node/ipv4.h is expected to undergo major changes 
   124 in preparation of the merge of the IPv6 API and implementation.
   125 
   126 Future releases
   127 ---------------
   128 Our next release, which is expected to happen in 2 to 4 months from now, will
   129 feature the merging of some of our projects currently in development including
   130 fuller IPv6 support, and IPv4 and routing protocol refactoring, and some smaller
   131 features such as a new Global ARP package and possibly a new Testing and Validation
   132 suite,
   133 
   134 Release 3.3
   135 ===========
   136 
   137 Availability
   138 ------------
   139 This release is immediately available from:
   140 http://www.nsnam.org/releases/ns-3.3.tar.bz2
   141 
   142 Supported platforms
   143 -------------------
   144 ns-3.3 has been tested on the following platforms:
   145   - linux x86 gcc 4.2, 4.1, and, 3.4.6.
   146   - linux x86_64 gcc 4.3.2, 4.2.3, 4.2.1, 4.1.3, 3.4.6
   147   - MacOS X ppc and x86
   148   - cygwin gcc 3.4.4 (debug only)
   149 
   150 Not all ns-3 options are available on all platforms; consult the
   151 wiki for more information:
   152 http://www.nsnam.org/wiki/index.php/Installation
   153 
   154 New user-visible features
   155 -------------------------
   156   a) Emulated Net Device
   157      A new net device has been added as enabling technology for ns-3 emulation
   158      scenarios.  See src/devices/emu and examples/emu-udp-echo.cc for details.
   159 
   160   b) ICMP Support
   161      Support for several ICMP messages has been added to ns-3.  See 
   162      src/internet-stack/icmpv4.h for details.
   163 
   164   c) IPv6 Address Support
   165      New clases to support IPv6 addresses has been added to the system.  This
   166      is enabling technology for fuller IPv6 support scheduled for ns-3.4.
   167 
   168   d) A flow-id tag has been added to the contributed code section
   169 
   170   e) Star topologies can be created from the topology helper functions
   171 
   172   f) The global routing code has been made dynamic (not just limited to
   173      (pre-simulation computation) and supports stub network interfaces and 
   174      bridge net devices 
   175 
   176   g) A MatchContainer has been added to the configuration subsystem
   177 
   178 API changes from ns-3.2
   179 -----------------------
   180 API changes for this release are documented in the file CHANGES.html
   181 
   182 Known issues
   183 ------------
   184 ns-3 build is known to fail on the following platforms:
   185   - gcc 3.3 and earlier
   186   - optimized builds on gcc 3.4.4 and 3.4.5
   187   - optimized builds on linux x86 gcc 4.0.x
   188   - optimized builds on Ubuntu 8.10 alpha 5 x86 gcc4.3.2
   189   - MinGW
   190 
   191 The IPv4 API defined in src/node/ipv4.h is expected to undergo major changes 
   192 in preparation of the merge of the IPv6 API and implementation.
   193 
   194 Future releases
   195 ---------------
   196 Our next release, which is expected to happen in 2 to 4 months from now, will
   197 feature the merging of some of our projects currently in development including
   198 fuller IPv6 support, and IPv4 and routing protocol refactoring, and some smaller
   199 features such as an object naming facility and a new Global ARP package.
   200 
   201 Release 3.2
   202 ===========
   203 
   204 Availability
   205 ------------
   206 This release is immediately available from:
   207 http://www.nsnam.org/releases/ns-3.2.tar.bz2
   208 
   209 Supported platforms
   210 -------------------
   211 ns-3.2 has been tested on the following platforms:
   212   - linux x86 gcc 4.2, 4.1, and, 3.4.6.
   213   - linux x86_64 gcc 4.3.2, 4.2.3, 4.2.1, 4.1.3, 3.4.6
   214   - MacOS X ppc and x86
   215   - cygwin gcc 3.4.4 (debug only)
   216 
   217 Not all ns-3 options are available on all platforms; consult the
   218 wiki for more information:
   219 http://www.nsnam.org/wiki/index.php/Installation
   220 
   221 New user-visible features
   222 -------------------------
   223   a) Learning bridge (IEEE 802.1D)
   224     It is now possible to bridge together multiple layer 2 devices to
   225     create larger layer 2 networks. The Wifi and Csma models support
   226     this new mode of operation. (contributed by Gustavo Carneiro)
   227 
   228   b) Python bindings
   229     It is now possible to write simulation scripts in python using our 
   230     python bindings (contributed by Gustavo Carneiro).
   231 
   232   c) Real-time simulator
   233     It is now possible to run simulations synchronized on the real-world
   234     wall-clock time (contributed by Craig Dowell).
   235 
   236   d) Network Simulation Cradle
   237     It is now possible to use the Network Simulation Cradle 
   238     (http://www.wand.net.nz/~stj2/nsc/) in ns-3 and run simulations 
   239     using various versions of kernel TCP network stacks. (contributed
   240     by Florian Westphal as part of his Google Summer of Code work)
   241 
   242   e) A statistics framework
   243     Joseph Kopena contributed a statistics framework which can be used
   244     keep track of simulation data in persistent storage across multiple 
   245     runs (database and ascii file backends are available).
   246     More information on the wiki:
   247     http://www.nsnam.org/wiki/index.php/Statistical_Framework_for_Network_Simulation
   248 
   249 API changes from ns-3.1
   250 -----------------------
   251 API changes for this release are documented in the file CHANGES.html
   252 
   253 Known issues
   254 ------------
   255 ns-3 build is known to fail on the following platforms:
   256   - gcc 3.3 and earlier
   257   - optimized builds on gcc 3.4.4 and 3.4.5
   258   - optimized builds on linux x86 gcc 4.0.x
   259   - optimized builds on Ubuntu 8.10 alpha 5 x86 gcc4.3.2
   260   - MinGW
   261 
   262 The IPv4 API defined in src/node/ipv4.h is expected to undergo major changes 
   263 in preparation of the merge of the IPv6 API and implementation.
   264 
   265 Future releases
   266 ---------------
   267 Our next release, which is expected to happen in 2 to 4 months from now, will
   268 feature the merging of some of our projects currently in development: IPv6, 
   269 emulation, and synchronous posix sockets.
   270 
   271 Release 3.1 (2008/06/30)
   272 ========================
   273 
   274 The first ns-3 stable release
   275 -----------------------------
   276 
   277 This release is immediately available from:
   278 http://www.nsnam.org/releases/ns-3.1.tar.bz2
   279 
   280 We dedicate this initial ns-3 release to our late contributor and friend, 
   281 Federico Maguolo.
   282 
   283 What is ns-3 ?
   284 --------------
   285 
   286 ns-3 is a new discrete-event network simulator designed for supporting network
   287 research and education. ns-3 features a solid, well documented C++ core and 
   288 models for TCP/IP (IPv4), several link types including WiFi, and mobility 
   289 models.
   290 
   291 ns-3 is an open source project released under the GNU GPLv2 license which 
   292 allows anyone to use ns-3 without having to pay any license fee or royalties. 
   293 ns-3 is actively seeking new contributors to extend the range of supported 
   294 models and/or to maintain existing models.
   295 
   296 Where to get more information about ns-3
   297 ----------------------------------------
   298 
   299 All the ns-3 documentation, is accessible from the ns-3 website: 
   300 http://www.nsnam.org
   301 
   302 Including, tutorials:
   303 http://www.nsnam.org/tutorials.html
   304 
   305 Supported platforms
   306 -------------------
   307 
   308 ns-3 is regularly tested on the following platforms:
   309   - linux x86 gcc 4.2, 4.1, and, 3.4.6.
   310   - linux x86_64 gcc 4.1.3, 4.2.1, 3.4.6
   311   - MacOS X ppc and x86
   312   - cygwin gcc 3.4.4 (debug only)
   313 
   314 Known issues
   315 ------------
   316 
   317 ns-3 is known to fail on the following platforms:
   318   - gcc 3.3 and earlier
   319   - optimized builds on gcc 3.4.4 and 3.4.5
   320   - optimized builds on linux x86 gcc 4.0.x
   321 
   322 The IPv4 API defined in src/node/ipv4.h is expected to undergo major changes 
   323 in preparation of the merge of the IPv6 API and implementation.
   324 
   325 Future releases
   326 ---------------
   327 
   328 Our next release, which is expected to happen in 2 to 4 months from now, will
   329 feature the merging of some of our projects currently in development: python 
   330 scripting, IPv6, emulation, a statistics framework and synchronous posix 
   331 sockets.
   332 
   333 Release 3.0.13 (2008/06/02)
   334 ===========================
   335 - point to point links generate ppp pcap traces
   336 - point to point links support asymmetrical data rates.
   337 - generate doxygen documentation for all attributes and trace sources
   338 - add ConfigStore and GtkConfigStore to contrib module
   339 - socket API now support tx and rx buffers: implemented for UDP and TCP
   340 - ARP cache now supports per-entry pending queues
   341 - lots of bugfixes and implementation and API cleanups
   342 
   343 Warning: among API changes in this release, Application::Start and 
   344 Application::Stop now interprets the time argument as a relative
   345 instead of absolute simulation time, to align with how Simulator::Schedule
   346 behaves.  Any code that calls these APIs in the middle of the simulation 
   347 will need to be adapted.  
   348 
   349 The API of Simulator::StopAt (time) has also changed.  Now it is 
   350 called Simulator::Stop (time), and takes a relative time, instead of 
   351 absolute.
   352 
   353 Release 3.0.12 (2008/04/07)
   354 ===========================
   355     - Add Attribute support to the TypeId metadata system and add
   356 attribute support to all in-tree models
   357     - Add a mid-level helper API to build simulation topologies 
   358 and perform simple ascii and pcap link-level tracing.
   359     - Large amount of structural changes to accomodate the needs
   360 of the upcoming python bindings
   361     - new rate control algorithm (RRAA) and a jakes propagation model
   362 in the 802.11 model (Federico Maguolo).
   363     - regression test framework added
   364     - TCP delayed acknowledgements and multitasking server
   365 
   366 Release 3.0.11 (2008/02/15)
   367 ===========================
   368     - Initial port of GTNetS TCP implementation (initial version 
   369 that does not support multitasking or delayed acknowledgments yet, 
   370 but supports a reliable stream service)
   371     - Changes to the ns-3 object model to create a TypeId-based 
   372 metadata system
   373     - lots of bug fixes throughout the system
   374     - tutorial updates
   375 
   376 Release 3.0.10 (2008/01/15)
   377 ===========================
   378    - Add tutorial document content;
   379    - Valgrind option for "waf" tool;
   380    - Doxygen organization changes.
   381 
   382 Release 3.0.9 (2007/12/15)
   383 ==========================
   384    - A 802.11 model ported from Yans. This model supports:
   385        * a rather extensive PHY model
   386        * log-distance and friis propagation model
   387        * a simple set of rate control algorithms (ARF, Ideal, 
   388          AARF, constant-rate)
   389        * adhoc and infrastructure mode (beacon+assoc)
   390    - Use smart pointer for Packet in the APIs
   391    - A new contrib directory with helper classes: 
   392      EventGarbageCollector, Gnuplot
   393    - Tracing support for Applications
   394    - many bugs fixed
   395 
   396 Release 3.0.8 (2007/11/15)
   397 ==========================
   398    - A simple error model
   399    - Source files for ns-3 tutorial
   400 
   401 Release 3.0.7 (2007/10/15)
   402 ==========================
   403   - OLSR routing protocol
   404   - A timer class
   405   - Additional mobility models (random waypoint, random 2D walk)
   406   - A mobility visualization tool 
   407 
   408 Release 3.0.6 (2007/09/15)
   409 ==========================
   410   - Static multicast IPv4 routing
   411   - Logging overhaul (NS_LOG macros)
   412   - Refactoring of tracing subsystem
   413   - Tutorial document started
   414  
   415 Release 3.0.5 (2007/08/15)
   416 ==========================
   417 
   418   - Refactoring to support win32-based unix environments (Cygwin, mingw)
   419   - "Packet socket" for allowing applications to access NetDevices directly
   420   - Generalized, polymorphic Address class
   421   - Add CSMA NetDevice model (from Emmanuelle Laprise)
   422   - Modularize IPv4 routing support (from Gustavo Carneiro)
   423   - Add mobility framework and basic mobility models 
   424   - Global unicast centralized routing 
   425 
   426 Release 3.0.4 (2007/07/15)
   427 ==========================
   428 
   429   - Enable waf as the default build system.
   430   - Per-packet metadata:  a system to track which headers and trailers 
   431     are added to a packet
   432   - Simplifications to point-to-point devices and channel
   433 
   434 Release 3.0.3 (2007/06/15)
   435 ==========================
   436 
   437   - Enable Waf for release tarballs: users can now build ns-3
   438     with the "waf" tool. See doc/build-waf.txt.
   439   - Add support for variable time precision: it is now possible
   440     to run a simulation with an accuracy which is higher or lower
   441     than a nanosecond: seconds, milliseconds, microseconds, 
   442     femtoseconds and picoseconds are supported.
   443   - Optimize and rework the COM framework, solidify the component 
   444     manager
   445   - Many small API cleanups
   446 
   447 Release 3.0.2 (2007/05/18)
   448 ==========================
   449 
   450   - Implement a new memory management infrastructure based
   451     on reference counting and smart pointers (the latter being
   452     optional)
   453 
   454   - Implement a COM-like framework with support for QueryInterface
   455     to provide object extensibility
   456 
   457   - Add support for a BSD-style socket API for user applications
   458 
   459 Release 3.0.1 (2007/03/31)
   460 ==========================
   461 
   462   - First public release; not yet pre-alpha.
   463 
   464   - Simple UDP-based simulation script (examples/simple-p2p.cc)