AMAZON

Tuesday, September 18, 2012

Easy steps for Ns2.34 installation with patch and documentation


-->





In short, these extensions aim to provide a more flexible and better integrated support for wireless and mobile networks and to support multi-* networks, that is networks where nodes may have multiple interfaces, possibly of different types, where nodes may communicate over multiple channels, where multiple routes to a destination may be available, where nodes may be interested in reaching a given resource/function/service rather than a specific node.

Examples of such networks include wireless mesh and sensors networks. These extensions provide a generic network layer architecture and a generic framework for implementing routing and forwarding protocols over one or more interfaces and regardless of their type.

All the new objects are integrated in the standard ns-2 Node. A unique object and layout is used regardless of the type of interfaces and the routing/forwarding protocols running on the node. Capabilities (e.g. mobility) are added to the standard ns-2 Node by means of modules.
Documentation

ns-2.34-q2s.20101208.patch

FAQ

How to apply a patch to ns-2.34

Move to ns-2.34 directory.
If you have already installed ns, run:
make distclean
Apply the patch and recompile ns:
patch -p1 < patch_file && ./configure && make
(Re-)Install ns: [Optional. ns is not installed by running the install script provided with ns-allinone.]
make install
To validate the installation, run:
./validate

Other resources

Patch for the dei80211mr library (1.1.4)

Download!
This patch enables to make use of the dei80211mr library (included in ns-allinone-2.34) once the extensions presented above have been installed. This patch also includes corrections of compilation warnings generated when the -Wall option is actually used.
The script q2s_infrastruct_rate_adaptation.tcl in q2s_test shows how to modify the simulation script infrastruct_rate_adaptation.tcl to use the new objects. Run test-infrastruct_rate_adaptation.sh to validate that the outputs of both scripts are equivalent.
Install:
cd path_to_dei80211mr-1.1.4
if [ -f Makefile ]; then make distclean; fi
patch -p1 <
patch_file
./configure --with-ns-allinone=`pwd | sed 's/\/dei80211mr-1.1.4//g'`
make && make install
chmod u+x q2s_test/test-infrastruct_rate_adaptation.sh

Patch for ns-Miracle (1.2.2)

Download!
This patch enables to compile ns-Miracle once the extensions presented above have been installed and the dei80211mr library has been patched. This patch also includes corrections of compilation warnings generated when the -Wall option is actually used.
Install:
cd path_to_nsmiracle-1.2.2
if [ -f Makefile ]; then make distclean; fi
mv mac802_11/802.11-module.cc tmp && awk '{sub("\r$", "");print}' tmp > mac802_11/802.11-module.cc
rm -f tmp
patch -p1 <
patch_file
./configure --with-ns-allinone=
path_to_ns-allinone
make && make install


_______________________________________________________________________________
                                                          end
+++++++++++++++++++++++++++++++++++++++++++++++++
Documentation:
  • the nsmiracle howto is probably the best place to start for people willing to use nsmiracle in their project
  • the nsmiracle doxygen documentation is the documentation generated from the comments in the source code, which is an useful reference when developing code using nsmiracle
  • this version of the nsmiracle/mini-HowTo, provides a guide for the installation of nsmiracle over ns 2.33 or higher; please note that dei80211mr libraries are already included in the standard ns distribution from version 2.33
  • the nsmiracle/dei80211mr mini-HowTo, ( although outdated ), still provides some useful tips for the installation of nsmiracle, especially for versions of ns <= 2.32 (this does not apply to versions 2.33 or higher) , for which the patch for dynamic libraries needs be applied

_______________________________________________________________________________

 Download Beta version: NS-MIRACLE 2.0 Beta

The NS-MIRACLE codebase is kept on a subversion repository. In particular, the development version of nsmiracle is available at this URL:

https://telecom.dei.unipd.it:/tlcrepos/nsmiracle-dev/trunk
The above mentioned subversion repository provides read-only access for guest users using the following account:

username: nsmiracle-dev-guest
password: nsmiracleguest
As an example, using the svn command line client you can check out the latest development version using the guest account by typing the following command and add in the path to be copied to at the trail of the command:


svn co --username nsmiracle-dev-guest --password nsmiracleguest https://telecom.dei.unipd.it:/tlcrepos/nsmiracle-dev/trunk

We will also be glad to provide read-write accounts to developers who make repeated contributions to nsmiracle.

___________________________________________________________________________

DESERT Underwater: an NS-Miracle-based framework to DEsign, Simulate, Emulate and Realize Test-beds for Underwater network protocols

DESERT Underwater is a complete set of public C++ libraries that extend the NS-Miracle simulator to support the design and implementation of underwater network protocols. Its creation stems from the will to push the studies on underwater networking beyond simulations. Implementing research solutions on actual devices, in fact, is of key importance to realize a communication and networking architecture that allows heterogeneous nodes to communicate reliably in the underwater environment.
See also the paper describing the library set.

The libraries can be downloaded from the DESERT Underwater web site.

DESERT Underwater v1.0.0 contains the following modules:

  • our implementation of four MAC protocols (CSMA-Aloha, DACAP, Tone-Lohi, UW-Polling) plus a plain version of Aloha;

  • USR, an error-controlled CSMA-Aloha version that uses selective repeat for static and mobile networks;

  • three routing modules (static routing, source routing for underwater networks (SUN), and our implementation of the Information-Carrying Based Routing (ICRP) protocol);

  • two transport modules, including end-to-end error control functions;

  • two application-level modules (for constant and variable bit rate traffic generation);

  • several mobility models for 3D underwater networks;

  • a module to interface the NS-Miracle simulator with acoustic modem hardware; this solution makes it possible to prototype protocols in real deployments, instead of just simulating them.

World Ocean Simulation System (WOSS)

WOSS is a multi-threaded framework that permits the integration of underwater channel simulation tools with network simulators. The present version hinges on Bellhop for computing acoustic propagation in terms of power-delay profiles, and feeds this data into the network simulator NS-Miracle, where physical-layer data are employed for providing a model of link performance.
WOSS provides a set of APIs to automatically feed Bellhop (or other propagation simulators) with all required environmental data (SSPs, bathymetry, bottom sediment geoacoustic coefficients, etc.), so that the user of the network simulator only has to specify the geographical location where the simulated network is operating.


Presently, WOSS takes the required environmental data from the following databases:

The WOSS library is available at the following URL:
http://telecom.dei.unipd.it/ns/woss
Credits: Federico Guerra



dei80211mr: an enhanced 802.11 implementation for ns2 and nsmiracle

The dei80211mr library – nicknamed ‘multirate’ for short – provides a 802.11 implementation for the Network Simulator Version 2. This implementations is derived from the 802.11 implementation included in NS 2.29 and aims at solving some known bugs as well as providing enhanced functionality.
The dei80211mr can be used with NS-Miracle as well as with the original ns2. A release of dei80211mr is included as part of official ns-allinone releases from version 2.33 above.
The following functionalities are provided by the dei80211mr library:
  • support for multiple PHY modes is included; in particolar, dei80211mr simulation of the different transmission rates, modulation and coding schemes defined in the IEEE802.11b/g standards.
  • a SINR-based packet level error model is introduced:
    • the RX Threshold variable which was used in the 802.11 implementation included in standard NS to determine successful receptions has been removed. Instead, Packet Error Rate (PER) is used to determine random packet losses.
    • PER is calculated using pre-determined curves (PER vs SINR and packet size); the curves can be specified by the user via TCL. Some default curves for both 802.11g and 802.11b are provided.
    • SINR is calculated using received signal strength, noise and interference
    • interference is calculated using a gaussian model to account for all transmissions which happen simultaneously to the one which is considered for reception
    • noise power is set via TCL
  • the capture model, i.e. the determination of whether a packet can be received when there are other concurrent transmissions are simultaneously ogoing, is now embedded in the above mentioned interference model (no more Capture Threshold)
  • Some well-known bugs of the 802.11 implementation in NS have been resolved. With reference to [1], we solved the following bugs:
    • direct access denial
    • random backoff time
    • capture model (note: this is different from the point above since, as per the description in [1], it is actually a synchronization issue)
  • In the wireless channel, the affected nodes distance is no more determined using the CS threshold, but we used a fixed value in meters (distInterference_) which can be set at the beginning of the simulation. The reason is that, since we use a gaussian interference model, nodes well below the CS threshold often still provide a non-negligible contribution to interference. The default value for the affected nodes distance (distInterference_) is very conservative, so that all nodes are considered for interference calculation. This default value therefore yields accurate but computationally intensive simulations. The value can be adjusted via TCL to achieve different trade-offs between computational load and simulation accuracy.
Credits: SIGNET lab: Federico Maguolo, Nicola Baldo, Simone Merlin, TS lab: Matteo Trivellato
Download dei80211mr
[1] Ilango Purushotaman and Sumit Roy, IEEE802.11 implementation Issues in Network Simulator 2



NS2 Simulation Code for Wireless Network Coding

The package below provides the random network coding modules for ns2.27.
ns2 Simulation Code for Wireless Network Coding
Network coding is a packet delivery scheme for distributed networks. It differs from the classical “receive and forward” paradigm as information packets are encoded at intermediate nodes in the network and subsequently forwarded according to a store, code, and forward approach. The strength of this strategy consists of the coding phase which improves the dissemination efficiency and reduces the number of transmissions required to deliver the data. Although network coding schemes require some data processing at intermediate nodes to code/decode packets, it has been proven that simple coding operations, e.g., linear coding, are sufficient to achieve close to optimal performance. Installation instructions and copyright notice are included in the above package.__________________________________________________________
UPDATES PROBLEM FOR  NS MIRACLE S
Problem:
/usr/bin/ld: cannot find -lMiracle collect2: ld returned 1 exit status
Solution:
install libtool package
$sudo apt-get install libtool

Error occured during "./configure" of addons:
1. configure: error: Could not find boost graph header files, please install the boost graph library.
Solution:
yum install -y boost-devel
yum install boost

Error occured during "make" of addons:
1. error:

/usr/include/boost/pending/relaxed_heap.hpp:102: error: 'CHAR_BIT' was not declared in this scope
Solution:
This is a bug in the standard header. Apparently, an include of is missing in that header. Adding the following header to the problematic code fix the problem.

#include // for CHAR_BIT
__________________________________________________


NSMIRACLE SVN repository Installation procedures:

1. Go to the "main" directory
command:
cd main
2. Execute the autogen.sh
command:
sh autogen.sh
3. Configure script will be generated and do the following:
command:
./configure --with-ns-allinone=/home/username/ns-allinone-2.33 --prefix=/home/username --disable-static --with-dei80211mr=/home/username/ns-allinone-2.33/dei80211mr-1.1.4
4. command:
make
5. command:
make install

NSMIRACLE ADDONS installation procedure:
1. Go to the "addons" directory and access to the addon need to be install
command:
cd addons
cd addontobeinstall
2. Execute the autogen.sh
command:
sh autogen.sh
3. Configure script will be generated and do the following:
command:
./configure --with-ns-allinone=/home/username/ns-allinone-2.33 --prefix=/home/username --disable-static --with-nsmiracle=/home/username/nsmiracledir/main
4. command:
make
5. command:
make install
____________________________________________________________________________________


nsmiracle/dei80211mr mini-HowTo

Index

  1. Introduction
  2. Requirements
  3. Installation
    1. ns-allinone with patch for dynamic libraries
    2. dei80211mr
    3. nsmiracle

1. Introduction

Here is a very brief tutorial for the installation of the nsmiracle and dei80211mr extensions for the NS simulator.
This tutorial has been written by Nicola Baldo — baldo at dei.unipd.it

2. Requirements

You need the following things:
  • the ns-allinone package. Version 2.31 can be downloaded here.
  • the patch for dynamic libraries in ns. You can download the patch for ns-allinone-2.31 from here (right-click and "save as").
  • the dei80211mr package, which can be found here.
  • the nsmiracle package, which can be found here.
Back to Index

3. Installation

We will now explain step-by-step the installation process. In this tutorial, we will assume that all downloaded packages have been put in the directory /locale/ns, as shown here below:
baldo@pcsignet08:/locale/ns$ ls -l
total 69820
-rw-r--r--  1 baldo dottor   363882 Apr 23 13:53 dei80211mr-1.0.tar.gz
-rw-r--r--  1 baldo dottor 70466306 Apr 17 19:45 ns-allinone-2.31.tar.gz
-rw-r--r--  1 baldo dottor   558144 Apr 23 13:53 nsmiracle-1.0.tar.gz
-rw-r--r--  1 baldo dottor    19681 Apr 17 19:46 patch-dl-ns-2.31
Furthermore, we assume that the user has write permission on the directory /locale/ns/ — this is needed e.g. to create the directory /locale/ns/lib in which dynamic libraries will be installed.
Of course, your mileage may vary — just adjust the paths to your needs.
Back to Index

3.1 ns-allinone with patch for dynamic libraries

Unpack the ns-allinone package:
baldo@pcsignet08:/locale/ns$ tar xzf ns-allinone-2.31.tar.gz
Apply the patch for dynamic libraries:
baldo@pcsignet08:/locale/ns$ patch -p0 < patch-dl-ns-2.31
patching file ns-allinone-2.31/ns-2.31/common/packet.cc
patching file ns-allinone-2.31/ns-2.31/common/packet.h
patching file ns-allinone-2.31/ns-2.31/common/ptypes2tcl.cc
patching file ns-allinone-2.31/ns-2.31/trace/cmu-trace.cc
patching file ns-allinone-2.31/ns-2.31/trace/cmu-trace.h
patching file ns-allinone-2.31/ns-2.31/tcl/lib/ns-default.tcl
patching file ns-allinone-2.31/ns-2.31/tcl/lib/ns-lib.tcl
patching file ns-allinone-2.31/ns-2.31/Makefile.in
Build NS:
baldo@pcsignet08:/locale/ns$ cd ns-allinone-2.31
baldo@pcsignet08:/locale/ns/ns-allinone-2.31$ ./install
The build process will generate a lot of output and will last something between 5 minutes and half an hour, depending on how fast is your hardware.
If the build process has been successful, you will see the following message:
Ns-allinone package has been installed successfully.
Here are the installation places:
tcl8.4.14:      /locale/ns/ns-allinone-2.31/{bin,include,lib}
tk8.4.14:               /locale/ns/ns-allinone-2.31/{bin,include,lib}
otcl:           /locale/ns/ns-allinone-2.31/otcl-1.13
tclcl:          /locale/ns/ns-allinone-2.31/tclcl-1.19
ns:             /locale/ns/ns-allinone-2.31/ns-2.31/ns
nam:    /locale/ns/ns-allinone-2.31/nam-1.13/nam
xgraph: /locale/ns/ns-allinone-2.31/xgraph-12.1
gt-itm:   /locale/ns/ns-allinone-2.31/itm, edriver, sgb2alt, sgb2ns, sgb2comns, sgb2hierns

----------------------------------------------------------------------------------

Please put /locale/ns/ns-allinone-2.31/bin:/locale/ns/ns-allinone-2.31/tcl8.4.14/unix:/locale/ns/ns-allinone-2.31/tk8.4.14/unix
into your PATH environment; so that you'll be able to run itm/tclsh/wish/xgraph.

IMPORTANT NOTICES:

(1) You MUST put /locale/ns/ns-allinone-2.31/otcl-1.13, /locale/ns/ns-allinone-2.31/lib,
    into your LD_LIBRARY_PATH environment variable.
    If it complains about X libraries, add path to your X libraries
    into LD_LIBRARY_PATH.
    If you are using csh, you can set it like:
                setenv LD_LIBRARY_PATH 
    If you are using sh, you can set it like:
                export LD_LIBRARY_PATH=

(2) You MUST put /locale/ns/ns-allinone-2.31/tcl8.4.14/library into your TCL_LIBRARY environmental
    variable. Otherwise ns/nam will complain during startup.


After these steps, you can now run the ns validation suite with
cd ns-2.31; ./validate

For trouble shooting, please first read ns problems page
http://www.isi.edu/nsnam/ns/ns-problems.html. Also search the ns mailing list archive
for related posts.
The above mentioned update of the environment variables PATH, LD_LIBRARY_PATH and TCL_LIBRARY is needed for the simulator to work. For the common case of bash users, the preferred way of accomplishing this is to edit the ~/.bashrc file. At this point we anticipate that later on we will need to add also /locale/ns/lib to LD_LIBRARY_PATH in order for the NS simulator to find the nsmiracle and dei80211mr libraries (cygwin users will need to add /locale/ns/bin to their PATH for the same purpose). We suggest to perform all this modifications now so that we need to edit ~/.bashrc only once.
A long story short, all you need to do is to add the following at the end of your ~/.bashrc:
export LD_LIBRARY_PATH=/locale/ns/ns-allinone-2.31/otcl-1.13:/locale/ns/ns-allinone-2.31/lib:/locale/ns/lib:$LD_LIBRARY_PATH
export PATH=/locale/ns/ns-allinone-2.31/bin:/locale/ns/ns-allinone-2.31/tcl8.4.14/unix:/locale/ns/ns-allinone-2.31/tk8.4.14/unix:/locale/ns/bin:$PATH
export TCL_LIBRARY=/locale/ns/ns-allinone-2.31/tcl8.4.14/library
Please note that the paths to be added vary according to the NS version you're installing; in all cases, stick to the path suggested by the message appearing at the end of the ns-allinone build. Furthermore, rember to reload ~/.bashrc on all open console sessions, so that the environment variables are updated:
baldo@pcsignet08:/locale/ns$ source ~/.bashrc
Now, check if the ns executable can be found:
baldo@pcsignet08:/locale/ns$ which ns
/locale/ns/ns-allinone-2.31/bin/ns
Finally, we need to test if NS can successfully run simulations. I personally suggest not to run the validate script suggested at the end of the NS build — it is a quite long process, and we can be satisfied with a much simpler test. Just download the ns-simple.tcl script, save it somewhere (e.g., in /locale/ns/) and run it:
baldo@pcsignet08:/locale/ns$ ns ns-simple.tcl
CBR packet size = 1000
CBR interval = 0.0080000000000000002
baldo@pcsignet08:/locale/ns$
If your ns installation was successful, the simulation will run correctly in a few seconds, and at the end the Network Animator (NAM) will pop up in a new window showing you a nice animation of what you simulated. If you're not familiar with ns, this is the good time to have a look at the NS by Example web page to understand NS basics.
If you had problems with your ns-2 installation, check out the ns-2 installation problems, bug fixes, and help page.
Back to Index

3.2 dei80211mr

Unpack the dei80211mr package and cd into the newly created directory:
baldo@pcsignet08:/locale/ns$ tar xzf dei80211mr-1.0.tar.gz
baldo@pcsignet08:/locale/ns$ cd dei80211mr-1.0
baldo@pcsignet08:/locale/ns/dei80211mr-1.0$
The build process follows the well-known ./configure; make; make install paradigm found in the vast majority of open source software. However we need to pass some additional parameters to ./configure:
  • --with-ns-allinone=<directory>, which is needed to make NS C++ header files (.h) available to the compilation of dei80211mr;
  • --prefix=<directory>, which is convenient so that the dei80211mr library will be installed in directory/lib;
  • --disable-static, which is convenient so that only dynamic libraries are built — we don't need static libraries since they cannot be used within NS, and we can just save the time by not building them.
For the test case we're considering, the build process of dei80211mr will then become the following. First we run configure, and we check the last lines of output:
baldo@pcsignet08:/locale/ns/dei80211mr-1.0$ ./configure --with-ns-allinone=/locale/ns/ns-allinone-2.31 --prefix=/locale/ns
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for g++... g++

<a lot of output snipped here>

checking for ns-allinone installation... ok
checking if ns-allinone installation has been patched for dynamic libraries... yes
checking for tcl2c++... /locale/ns/ns-allinone-2.31/tclcl-1.19/tcl2c++
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating src/adt/Makefile
config.status: creating m4/Makefile
config.status: creating samples/Makefile
config.status: executing depfiles commands

please make sure that the last three checks have been succesful — if not, it's likely you have an error either in your NS installation or in the parameters passed to ./configure. Also remember to adapt all paths to your needs, unless you happen to use the same base path of this tutorial (/locale/ns).
You can now compile and install dei80211mr:
baldo@pcsignet08:/locale/ns/dei80211mr-1.0$ make

<a lot of compilation output here>

baldo@pcsignet08:/locale/ns/dei80211mr-1.0$ make install

<more output here... we report only the following message:>

----------------------------------------------------------------------
Libraries have been installed in:
   /locale/ns/lib

If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
   - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
     during execution
   - add LIBDIR to the `LD_RUN_PATH' environment variable
     during linking
   - use the `-Wl,--rpath -Wl,LIBDIR' linker flag
   - have your system administrator add LIBDIR to `/etc/ld.so.conf'

See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
The above reported message is just a warning: if you already added /locale/ns/lib to the LD_LIBRARY_PATH environment variable in your ~/.bashrc, as we suggested in section 3.1, then no further action is needed.
The installation of the dei80211mr library is now completed. You can run a sample simulation script to check if everything is OK:
baldo@pcsignet08:/locale/ns/dei80211mr-1.0$ cd samples
baldo@pcsignet08:/locale/ns/dei80211mr-1.0/samples$ ns adhoc_tcp.tcl
num_nodes is set 8
INITIALIZE THE LIST xListHead
 node 0 is at   X =  4.0954   Y =  1.9806
 node 1 is at   X =  8.6853   Y =  5.6842
 node 2 is at   X =  6.4658   Y =  9.0669
 node 3 is at   X =  1.5670   Y =  0.6503
 node 4 is at   X =  1.0323   Y =  3.3795
 node 5 is at   X =  7.1602   Y =  0.3843
 node 6 is at   X =  6.8063   Y =  8.6544
 node 7 is at   X =  8.3480   Y =  5.7466
SORTING LISTS ...DONE!
printing stats
 TCP throughput node 0 --> node 4 : 1224800.0 bps
 TCP throughput node 1 --> node 5 : 26400.0 bps
 TCP throughput node 2 --> node 6 : 1258400.0 bps
 TCP throughput node 3 --> node 7 : 991200.0 bps 

statsfile: /tmp/stats_4_10_Mode6Mb_10s.pcsignet08.log

Tracefile: /tmp/trace_4_10_Mode6Mb_10s.pcsignet08.tr
If you encounter some problems while building the dei80211mr library, you can refer to the nsmiracle-users mailing list.
Back to Index

3.3 nsmiracle

Unpack the nsmiracle package and cd into the newly created directory:
baldo@pcsignet08:/locale/ns$ tar xzf nsmiracle-1.0.tar.gz
baldo@pcsignet08:/locale/ns$ cd nsmiracle-1.0
baldo@pcsignet08:/locale/ns/nsmiracle-1.0$    
As we did for the dei80211mr package, we need to pass some additional parameters to ./configure:
  • --with-ns-allinone=<directory>, which is needed to make NS C++ header files (.h) available to the compilation of nsmiracle;
  • --prefix=<directory>, which is convenient so that the nsmiracle library will be installed in directory/lib;
  • --disable-static, which is convenient so that only dynamic libraries are built — we don't need static libraries since they cannot be used within NS, and we can just save the time by not building them.
  • --with-dei80211mr=<directory>, which enables the build of some nsmiracle extensions designed specifically for the dei80211mr library.
  • In this last case, <directory> is the path in which the dei80211mr package resides, e.g., /locale/ns/dei80211mr-1.0.
To summarize, the build process is almost identical to that of the dei80211mr package, with the only addition of the --with-dei80211mr switch. The commands to be executed are reported below:
baldo@pcsignet08:/locale/ns/nsmiracle-1.0$ ./configure --with-ns-allinone=/locale/ns/ns-allinone-2.31 --prefix=/locale/ns --disable-static --with-dei80211mr=/locale/ns/dei80211mr-1.0
baldo@pcsignet08:/locale/ns/nsmiracle-1.0$ make
baldo@pcsignet08:/locale/ns/nsmiracle-1.0$ make install
The same suggestions provided for the dei80211mr build process apply here — we summarize them here, somebody might have forgotten them ;-)
  • remember to adapt all paths to your needs, unless you're using /locale/ns.
  • make sure that the tests run by ./configure have been successful, in particular the tests for ns-allinone
  • after running make install, make sure that the path in which library have been installed is in your LD_LIBRARY_PATH environment variable.
If everything was OK, you will be able to run the provided sample simulation scripts, e.g.:
baldo@pcsignet08:/locale/ns/nsmiracle-1.0$ cd samples
baldo@pcsignet08:/locale/ns/nsmiracle-1.0/samples$ ns link_with_errors_cbr.tcl
Simulating........................................done!
Packet Error Ratio  :   0.050000
Throughput          :   68360.897567
Tracefile     : /tmp/link_with_errors_cbr.tcl.tr
baldo@pcsignet08:/locale/ns/nsmiracle-1.0/samples$ 
baldo@pcsignet08:/locale/ns/nsmiracle-1.0/samples$ 
baldo@pcsignet08:/locale/ns/nsmiracle-1.0/samples$ ns dei80211mr_infrastruct_plus_wired_voip.tcl
num_nodes is set 5
Simulating...done!

Tracefile     : /tmp/voip_wlan_infrastruct_wired.tr
Results file  : /tmp/stats_dei80211mr_infrastruct_plus_wired_voip.tcl_4_6Mbps.pcsensori03.log
_________________________________________________________________________


Technical description and documentation

WOSS - presented at WUWNet 2009
WOSS - presented at OCEANS 2009 Biloxi
Technical description
CHANGELOG

Installation Guidelines

Installation guidelines

WOSS source files

WOSS v1.3.3
WOSS v1.2.0 for DESERT compatibility
WOSS databases
WOSS reference manual (PDF version)

__________________________________________________

 

NS-MIRACLE Library: Multi InteRfAce Cross Layer Extension for NS

ns-miracle-doxygen-doc 

pdf 

Schematic Description of the Modules

nsmiracle-2.0-beta.tar.gz

_________________________________________________

MIRACLE docum


_________________________________________________________________________

Abstract:

All you have to know about main features of ns-MIRACLE in order to develop a simple project.





5 comments:

  1. hi
    i installed nsmiracle successfully but i need a good documentation that describes how to make tcl script in nsmiracle

    can anyone recommended to me a good documentation about nsmiracle?

    thanks

    ReplyDelete
    Replies
    1. This comment has been removed by the author.

      Delete
  2. dear ragaei

    visit

    http://vinotdtechsimulator.blogspot.com/2012/09/collect-all-ns2-documents-for-download.html

    ReplyDelete
    Replies
    1. http://telecom.dei.unipd.it/ns/miracle/nsmiracle-howto/

      Delete
    2. thanks a lot for replaying

      i know i can do two interface in a node by using nsmiracle but i need to know can i make two interface one from module that it exists in nsmiracle (umts module) with 802.11p (using mac_802.11EXt and wireless_phyEXT) which it exists in standard ns2 code and not in nsmiracle ??

      if i cant, is there method let me able to use what it exists in standard ns2 (like mac/phy, dsdv ..) with nsmiracle ??

      thanks in advance

      Delete