532 lines
18 KiB
Plaintext
532 lines
18 KiB
Plaintext
|
|
ns-3 RELEASE NOTES
|
|
|
|
This file contains ns-3 release notes (most recent releases first).
|
|
|
|
All of the ns-3 documentation is accessible from the ns-3 website:
|
|
http://www.nsnam.org including tutorials: http://www.nsnam.org/tutorials.html
|
|
|
|
Release 3.6
|
|
===========
|
|
|
|
Availability
|
|
------------
|
|
This release is immediately available from:
|
|
http://www.nsnam.org/releases/ns-allinone-3.6.tar.bz2
|
|
|
|
Supported platforms
|
|
-------------------
|
|
ns-3.6 has been tested on the following platforms:
|
|
- linux x86 gcc 4.2, 4.1, and, 3.4.6.
|
|
- linux x86_64 gcc 4.4.0, 4.3.2, 4.2.3, 4.2.1, 4.1.3, 3.4.6
|
|
- MacOS X ppc and x86 (gcc 4.0.x and 4.2.x)
|
|
- cygwin gcc 3.4.4 (debug only), gcc 4.3.2 (debug and optimized)
|
|
- mingw gcc 3.4.5 (debug only)
|
|
|
|
Not all ns-3 options are available on all platforms; consult the
|
|
wiki for more information:
|
|
http://www.nsnam.org/wiki/index.php/Installation
|
|
|
|
New user-visible features
|
|
-------------------------
|
|
|
|
a) 802.11 models:
|
|
- Add an implementation of the minstrel rate control algorithm
|
|
(Duy Nguyen for gsoc)
|
|
- AthstatsHelper: enables the wifi device to produce periodic
|
|
reports similar to the ones generated by madwifi's
|
|
athstats tool (Nicola Baldo)
|
|
- 10MHz and 5MHz channel width supported by 802.11a model
|
|
(Ramon Bauza and Kirill Andreev)
|
|
- Channel switching support. YansWifiPhy can now switch among
|
|
different channels (Ramon Bauza and Pavel Boyko)
|
|
|
|
b) IPv6 models:
|
|
- IPv6 interface;
|
|
- IPv6 layer;
|
|
- IPv6 raw socket;
|
|
- Static IPv6 routing;
|
|
- ICMPv6 layer;
|
|
- Some ICMPv6 error messages (destination unreachable, ...);
|
|
- Neighbor Discovery Protocol (NS/NA, RS/RA, redirection);
|
|
- Ping6 application (send Echo request);
|
|
- Radvd application (send RA);
|
|
- Examples (ping6, simple-routing-ping6, radvd, radvd-two-prefix,
|
|
icmpv6-redirect).
|
|
|
|
c) Wireless Mesh Networking models:
|
|
- General multi-interface mesh stack infrastructure (devices/mesh module).
|
|
- IEEE 802.11s (Draft 3.0) model including Peering Management Protocol and HWMP.
|
|
- Forwarding Layer for Meshing (FLAME) protocol.
|
|
|
|
API changes from ns-3.5
|
|
-----------------------
|
|
API changes for this release are documented in the file CHANGES.html.
|
|
XXX
|
|
|
|
Known issues
|
|
------------
|
|
ns-3 build 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
|
|
|
|
Future releases
|
|
---------------
|
|
XXX
|
|
|
|
Release 3.5
|
|
===========
|
|
|
|
Availability
|
|
------------
|
|
This release is immediately available from:
|
|
http://www.nsnam.org/releases/ns-allinone-3.5.tar.bz2
|
|
|
|
Supported platforms
|
|
-------------------
|
|
ns-3.5 has been tested on the following platforms:
|
|
- linux x86 gcc 4.2, 4.1, and, 3.4.6.
|
|
- linux x86_64 gcc 4.4.0, 4.3.2, 4.2.3, 4.2.1, 4.1.3, 3.4.6
|
|
- MacOS X ppc and x86 (gcc 4.0.x and 4.2.x)
|
|
- cygwin gcc 3.4.4 (debug only), gcc 4.3.2 (debug and optimized)
|
|
- mingw gcc 3.4.5 (debug only)
|
|
|
|
Not all ns-3 options are available on all platforms; consult the
|
|
wiki for more information:
|
|
http://www.nsnam.org/wiki/index.php/Installation
|
|
|
|
New user-visible features
|
|
-------------------------
|
|
|
|
a) 802.11 MAC:
|
|
- EDCA multi-qos-class support (Mirko Banchi)
|
|
- 802.11n initial support for A-MSDU frame aggregation (Mirko Banchi)
|
|
- aarf-cd and cara rate control algorithms (Federico Maguolo)
|
|
b) 802.11 PHY:
|
|
- 802.11b PHY support (Gary Pei)
|
|
- Nakagami propagation loss model (Timo Bingmann)
|
|
- radiotap and prism headers for PCAP output (Nicola Baldo)
|
|
c) RandomVariable:
|
|
- GammaVariable and ErlangVariable (Timo Bingmann)
|
|
- ZipfVariable (Francesco Malandrino)
|
|
d) UdpEcho: allows setting the payload of echo packets
|
|
e) Ipv4/Ipv4RoutingProtocol: allow fine-grained control over
|
|
routing policy and arbitrary composition of routing protocols
|
|
|
|
API changes from ns-3.4
|
|
-----------------------
|
|
API changes for this release are documented in the file CHANGES.html. The
|
|
internal API and composition of the IPv4 stack underwent significant
|
|
refactoring in this release cycle.
|
|
|
|
Known issues
|
|
------------
|
|
ns-3 build 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
|
|
|
|
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 including
|
|
fuller IPv6 support, some smaller features such as a new Global ARP
|
|
package, and possibly a new Testing and Validation suite.
|
|
|
|
Release 3.4
|
|
===========
|
|
|
|
Availability
|
|
------------
|
|
This release is immediately available from:
|
|
http://www.nsnam.org/releases/ns-allinone-3.4.tar.bz2
|
|
|
|
Supported platforms
|
|
-------------------
|
|
ns-3.4 has been tested on the following platforms:
|
|
- linux x86 gcc 4.2, 4.1, and, 3.4.6.
|
|
- linux x86_64 gcc 4.3.2, 4.2.3, 4.2.1, 4.1.3, 3.4.6
|
|
- MacOS X ppc and x86
|
|
- cygwin gcc 3.4.4 (debug only)
|
|
|
|
Not all ns-3 options are available on all platforms; consult the
|
|
wiki for more information:
|
|
http://www.nsnam.org/wiki/index.php/Installation
|
|
|
|
New user-visible features
|
|
-------------------------
|
|
a) Wifi models: Timo Bingman contributed a ThreeLogDistance and a Nakagami
|
|
propagation loss model based on the ns-2 models. Fabian Mauchle contributed
|
|
multicast support.
|
|
|
|
b) Object Name Service: A facility allowing ns-3 Objects to be assigned
|
|
names has been added.
|
|
|
|
c) Tap Bridge: A second option for integrating ns-3 with real-world hosts
|
|
has been added. This allows for real hosts to talk over ns-3 net devices
|
|
and simulated networks.
|
|
|
|
d) A new build option (ns-3-allinone) has been provided to make it easier for
|
|
users to download and bulid commonly used ns-3 configurations.
|
|
|
|
e) The ns-3 calendar queue scheduler has been ported to ns-3.
|
|
|
|
f) XML support has been added to the ConfigStore.
|
|
|
|
API changes from ns-3.3
|
|
-----------------------
|
|
API changes for this release are documented in the file CHANGES.html
|
|
|
|
Known issues
|
|
------------
|
|
ns-3 build 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
|
|
- optimized builds on Ubuntu 8.10 alpha 5 x86 gcc4.3.2
|
|
- MinGW
|
|
|
|
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 including
|
|
fuller IPv6 support, and IPv4 and routing protocol refactoring, and some smaller
|
|
features such as a new Global ARP package and possibly a new Testing and Validation
|
|
suite,
|
|
|
|
Release 3.3
|
|
===========
|
|
|
|
Availability
|
|
------------
|
|
This release is immediately available from:
|
|
http://www.nsnam.org/releases/ns-3.3.tar.bz2
|
|
|
|
Supported platforms
|
|
-------------------
|
|
ns-3.3 has been tested on the following platforms:
|
|
- linux x86 gcc 4.2, 4.1, and, 3.4.6.
|
|
- linux x86_64 gcc 4.3.2, 4.2.3, 4.2.1, 4.1.3, 3.4.6
|
|
- MacOS X ppc and x86
|
|
- cygwin gcc 3.4.4 (debug only)
|
|
|
|
Not all ns-3 options are available on all platforms; consult the
|
|
wiki for more information:
|
|
http://www.nsnam.org/wiki/index.php/Installation
|
|
|
|
New user-visible features
|
|
-------------------------
|
|
a) Emulated Net Device
|
|
A new net device has been added as enabling technology for ns-3 emulation
|
|
scenarios. See src/devices/emu and examples/emu-udp-echo.cc for details.
|
|
|
|
b) ICMP Support
|
|
Support for several ICMP messages has been added to ns-3. See
|
|
src/internet-stack/icmpv4.h for details.
|
|
|
|
c) IPv6 Address Support
|
|
New clases to support IPv6 addresses has been added to the system. This
|
|
is enabling technology for fuller IPv6 support scheduled for ns-3.4.
|
|
|
|
d) A flow-id tag has been added to the contributed code section
|
|
|
|
e) Star topologies can be created from the topology helper functions
|
|
|
|
f) The global routing code has been made dynamic (not just limited to
|
|
(pre-simulation computation) and supports stub network interfaces and
|
|
bridge net devices
|
|
|
|
g) A MatchContainer has been added to the configuration subsystem
|
|
|
|
API changes from ns-3.2
|
|
-----------------------
|
|
API changes for this release are documented in the file CHANGES.html
|
|
|
|
Known issues
|
|
------------
|
|
ns-3 build 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
|
|
- optimized builds on Ubuntu 8.10 alpha 5 x86 gcc4.3.2
|
|
- MinGW
|
|
|
|
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 including
|
|
fuller IPv6 support, and IPv4 and routing protocol refactoring, and some smaller
|
|
features such as an object naming facility and a new Global ARP package.
|
|
|
|
Release 3.2
|
|
===========
|
|
|
|
Availability
|
|
------------
|
|
This release is immediately available from:
|
|
http://www.nsnam.org/releases/ns-3.2.tar.bz2
|
|
|
|
Supported platforms
|
|
-------------------
|
|
ns-3.2 has been tested on the following platforms:
|
|
- linux x86 gcc 4.2, 4.1, and, 3.4.6.
|
|
- linux x86_64 gcc 4.3.2, 4.2.3, 4.2.1, 4.1.3, 3.4.6
|
|
- MacOS X ppc and x86
|
|
- cygwin gcc 3.4.4 (debug only)
|
|
|
|
Not all ns-3 options are available on all platforms; consult the
|
|
wiki for more information:
|
|
http://www.nsnam.org/wiki/index.php/Installation
|
|
|
|
New user-visible features
|
|
-------------------------
|
|
a) Learning bridge (IEEE 802.1D)
|
|
It is now possible to bridge together multiple layer 2 devices to
|
|
create larger layer 2 networks. The Wifi and Csma models support
|
|
this new mode of operation. (contributed by Gustavo Carneiro)
|
|
|
|
b) Python bindings
|
|
It is now possible to write simulation scripts in python using our
|
|
python bindings (contributed by Gustavo Carneiro).
|
|
|
|
c) Real-time simulator
|
|
It is now possible to run simulations synchronized on the real-world
|
|
wall-clock time (contributed by Craig Dowell).
|
|
|
|
d) Network Simulation Cradle
|
|
It is now possible to use the Network Simulation Cradle
|
|
(http://www.wand.net.nz/~stj2/nsc/) in ns-3 and run simulations
|
|
using various versions of kernel TCP network stacks. (contributed
|
|
by Florian Westphal as part of his Google Summer of Code work)
|
|
|
|
e) A statistics framework
|
|
Joseph Kopena contributed a statistics framework which can be used
|
|
keep track of simulation data in persistent storage across multiple
|
|
runs (database and ascii file backends are available).
|
|
More information on the wiki:
|
|
http://www.nsnam.org/wiki/index.php/Statistical_Framework_for_Network_Simulation
|
|
|
|
API changes from ns-3.1
|
|
-----------------------
|
|
API changes for this release are documented in the file CHANGES.html
|
|
|
|
Known issues
|
|
------------
|
|
ns-3 build 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
|
|
- optimized builds on Ubuntu 8.10 alpha 5 x86 gcc4.3.2
|
|
- MinGW
|
|
|
|
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: IPv6,
|
|
emulation, and synchronous posix sockets.
|
|
|
|
Release 3.1 (2008/06/30)
|
|
========================
|
|
|
|
The first ns-3 stable release
|
|
-----------------------------
|
|
|
|
This release is immediately available from:
|
|
http://www.nsnam.org/releases/ns-3.1.tar.bz2
|
|
|
|
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
|
|
models.
|
|
|
|
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:
|
|
http://www.nsnam.org
|
|
|
|
Including, tutorials:
|
|
http://www.nsnam.org/tutorials.html
|
|
|
|
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
|
|
sockets.
|
|
|
|
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
|
|
absolute.
|
|
|
|
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
|
|
manager
|
|
- 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
|
|
optional)
|
|
|
|
- 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/simple-p2p.cc)
|