author Gustavo J. A. M. Carneiro <>
Fri, 11 Jul 2008 18:15:52 +0100
changeset 3415 5dd595cb7eba
parent 3361 b8db6cd10444
child 3426 108fd72e3291
permissions -rw-r--r--


This file contains ns-3 release notes (most recent releases first).

Release 3.1 (2008/06/30)

The first ns-3 stable release

This release is immediately available from:

We dedicate this initial ns-3 release to our late contributor and friend, 
Federico Maguolo.

What is ns-3 ?

ns-3 is a new discrete-event network simulator designed for supporting network
research and education. ns-3 features a solid, well documented C++ core and 
models for TCP/IP (IPv4), several link types including WiFi, and mobility 

ns-3 is an open source project released under the GNU GPLv2 license which 
allows anyone to use ns-3 without having to pay any license fee or royalties. 
ns-3 is actively seeking new contributors to extend the range of supported 
models and/or to maintain existing models.

Where to get more information about ns-3

All the ns-3 documentation, is accessible from the ns-3 website:

Including, tutorials:

Supported platforms

ns-3 is regularly tested on the following platforms:
  - linux x86 gcc 4.2, 4.1, and, 3.4.6.
  - linux x86_64 gcc 4.1.3, 4.2.1, 3.4.6
  - MacOS X ppc and x86
  - cygwin gcc 3.4.4 (debug only)

Known issues

ns-3 is known to fail on the following platforms:
  - gcc 3.3 and earlier
  - optimized builds on gcc 3.4.4 and 3.4.5
  - optimized builds on linux x86 gcc 4.0.x

The IPv4 API defined in src/node/ipv4.h is expected to undergo major changes 
in preparation of the merge of the IPv6 API and implementation.

Future releases

Our next release, which is expected to happen in 2 to 4 months from now, will
feature the merging of some of our projects currently in development: python 
scripting, IPv6, emulation, a statistics framework and synchronous posix 

Release 3.0.13 (2008/06/02)
- point to point links generate ppp pcap traces
- point to point links support asymmetrical data rates.
- generate doxygen documentation for all attributes and trace sources
- add ConfigStore and GtkConfigStore to contrib module
- socket API now support tx and rx buffers: implemented for UDP and TCP
- ARP cache now supports per-entry pending queues
- lots of bugfixes and implementation and API cleanups

Warning: among API changes in this release, Application::Start and 
Application::Stop now interprets the time argument as a relative
instead of absolute simulation time, to align with how Simulator::Schedule
behaves.  Any code that calls these APIs in the middle of the simulation 
will need to be adapted.  

The API of Simulator::StopAt (time) has also changed.  Now it is 
called Simulator::Stop (time), and takes a relative time, instead of 

Release 3.0.12 (2008/04/07)
    - Add Attribute support to the TypeId metadata system and add
attribute support to all in-tree models
    - Add a mid-level helper API to build simulation topologies 
and perform simple ascii and pcap link-level tracing.
    - Large amount of structural changes to accomodate the needs
of the upcoming python bindings
    - new rate control algorithm (RRAA) and a jakes propagation model
in the 802.11 model (Federico Maguolo).
    - regression test framework added
    - TCP delayed acknowledgements and multitasking server

Release 3.0.11 (2008/02/15)
    - Initial port of GTNetS TCP implementation (initial version 
that does not support multitasking or delayed acknowledgments yet, 
but supports a reliable stream service)
    - Changes to the ns-3 object model to create a TypeId-based 
metadata system
    - lots of bug fixes throughout the system
    - tutorial updates

Release 3.0.10 (2008/01/15)
   - Add tutorial document content;
   - Valgrind option for "waf" tool;
   - Doxygen organization changes.

Release 3.0.9 (2007/12/15)
   - A 802.11 model ported from Yans. This model supports:
       * a rather extensive PHY model
       * log-distance and friis propagation model
       * a simple set of rate control algorithms (ARF, Ideal, 
         AARF, constant-rate)
       * adhoc and infrastructure mode (beacon+assoc)
   - Use smart pointer for Packet in the APIs
   - A new contrib directory with helper classes: 
     EventGarbageCollector, Gnuplot
   - Tracing support for Applications
   - many bugs fixed

Release 3.0.8 (2007/11/15)
   - A simple error model
   - Source files for ns-3 tutorial

Release 3.0.7 (2007/10/15)
  - OLSR routing protocol
  - A timer class
  - Additional mobility models (random waypoint, random 2D walk)
  - A mobility visualization tool 

Release 3.0.6 (2007/09/15)
  - Static multicast IPv4 routing
  - Logging overhaul (NS_LOG macros)
  - Refactoring of tracing subsystem
  - Tutorial document started
Release 3.0.5 (2007/08/15)

  - Refactoring to support win32-based unix environments (Cygwin, mingw)
  - "Packet socket" for allowing applications to access NetDevices directly
  - Generalized, polymorphic Address class
  - Add CSMA NetDevice model (from Emmanuelle Laprise)
  - Modularize IPv4 routing support (from Gustavo Carneiro)
  - Add mobility framework and basic mobility models 
  - Global unicast centralized routing 

Release 3.0.4 (2007/07/15)

  - Enable waf as the default build system.
  - Per-packet metadata:  a system to track which headers and trailers 
    are added to a packet
  - Simplifications to point-to-point devices and channel

Release 3.0.3 (2007/06/15)

  - Enable Waf for release tarballs: users can now build ns-3
    with the "waf" tool. See doc/build-waf.txt.
  - Add support for variable time precision: it is now possible
    to run a simulation with an accuracy which is higher or lower
    than a nanosecond: seconds, milliseconds, microseconds, 
    femtoseconds and picoseconds are supported.
  - Optimize and rework the COM framework, solidify the component 
  - Many small API cleanups

Release 3.0.2 (2007/05/18)

  - Implement a new memory management infrastructure based
    on reference counting and smart pointers (the latter being

  - Implement a COM-like framework with support for QueryInterface
    to provide object extensibility

  - Add support for a BSD-style socket API for user applications

Release 3.0.1 (2007/03/31)

  - First public release; not yet pre-alpha.

  - Simple UDP-based simulation script (examples/