0% found this document useful (0 votes)
89 views11 pages

Date: Study of Network Simulator Tools

This document discusses and compares several network simulation tools, including NS-2, NS-3, OMNeT++, OPNet, QualNet, GloMoSim, J-Sim, and NetSim. It provides an overview of each tool, describing their main features and capabilities. Some of the tools are open source like NS-2 and NS-3 while others are commercial like OPNet. The document aims to help readers choose an appropriate network simulation tool for their specific modeling and analysis needs.

Uploaded by

Ashutosh Gupta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
89 views11 pages

Date: Study of Network Simulator Tools

This document discusses and compares several network simulation tools, including NS-2, NS-3, OMNeT++, OPNet, QualNet, GloMoSim, J-Sim, and NetSim. It provides an overview of each tool, describing their main features and capabilities. Some of the tools are open source like NS-2 and NS-3 while others are commercial like OPNet. The document aims to help readers choose an appropriate network simulation tool for their specific modeling and analysis needs.

Uploaded by

Ashutosh Gupta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

Ex.

No: 1: Date :
Study of Network Simulator Tools.

Aim:
To study of different Network Simulation Tools for constructing and performance
testing in different network.

Introduction:
Simulation is a very important modern technology. It can be applied to different
science, engineering, or other application fields for different purposes. Computer assisted
simulation can model hypothetical and real-life objects or activities on a computer so that it
can be studied to see how the system function. Different variables can be used to predict the
behavior of the system. Computer simulation can be used to assist the modeling and analysis
in many natural systems. Typical application areas include physics, chemistry, biology, and
human-involved systems in economics, finance or even social science. Other important
applications are in the engineering such as civil engineering, structural engineering,
mechanical engineering, and computer engineering. Application of simulation technology
into networking area such as network traffic simulation.

Basic concepts in network simulation


In the area of computer and communications networks, simulation is a useful
technique since the behavior of a network can be modeled by calculating the interaction
between the different network components (they can be end-host or network entities such as
routers, physical links or packets) using mathematical formulas. They can also be modeled by
actually or virtually capturing and playing back experimental observations from a real
production networks. After we get the observation data from simulation experiments, the
behavior of the network and protocols supported can then be observed and analyzed in a
series of offline test experiments. All kinds of environmental attributes can also be modified
in a controlled manner to assess how the network can behave under different parameters
combinations or different configuration conditions. Another characteristic of network
simulation that worth noticing is that the simulation program can be used together with
different applications and services in order to observe end-to-end or other point-to-point
performance in the networks.

Type of network simulators


For network protocol designers, it is often difficult to decide which simulator to
choose for a particular task. Therefore, we conduct a survey to find a network simulator that
provides a good balance between availability of ready to use models, scripting and language
support, extendibility, graphical support, easiness of use, etc. The survey is based on a
collection of a number of criteria including published results, interesting characteristics and
features. From our survey results, we broadly categories network simulators

are Ns-2, Ns-3, GloMoSim, J-Sim, OMNet++, OPNet, and QualNet.

1. OPNET (Optimized Network Evaluation Tool):

OPNET 's software environment is called Modeler, which is specialized for network research
and development. It can be flexibly used to study communication networks, devices,
protocols, and applications. Because of the fact of being a commercial software provider,
OPNET offers relatively much powerful visual or graphical support for the users. The
graphical editor interface can be used to build network topology and entities from the
application layer to the physical layer. Object-oriented programming technique is used to
create the mapping from the graphical design to the implementation of the real systems. An
example of the graphical GUI of OPNET can be seen in Figure 1. We can see all the topology
configuration and simulation results can be presented very intuitively and visually. The
parameters can also be adjusted and the experiments can be repeated easily through easy
operation through the GUI.

Figure 1. OPNET GUI

Main features:
OPNET inherently has three main functions: modeling, simulating and analysis. For
modeling, it provides intuitive graphical environment to create all kinds of models of
protocols. For simulating, it uses three different advanced simulations technologies and can
be used to address a wide range of studies. For analysis, the simulation results and data can
be analyzed and displayed very easily. User friendly graphs, charts, statistics, and even
animation can be generated by OPNET for users ' convenience.

2. Network Simulator 2 (NS2)


NS2 is one of the most popular open source network simulators. The original NS is a
discrete event simulator targeted at networking research. NS2 is the second version of NS
(Network Simulator). NS is originally based on REAL network simulator. The first version of
NS was developed in 1989 and evolved a lot over the past few years. The current NS project
is supported through DARPA. The current second version NS2 is widely used in academic
research and it has a lot of packages contributed by different non-benefit groups. An example
of the graphical GUI of NS2 can be seen in Figure 2.
3. Network Simulator 3 (NS3)
Similar to NS2, NS3 is also an open sourced discrete-event network simulator which
targets primarily for research and educational use. NS3 is licensed under the GNU GPLv2
license, and is available for research and development. NS3 is designed to replace the current
popular NS2. However, NS3 is not an updated version of NS2 since that NS3 is a new
simulator and it is not backward-compatible with NS2.

4. OMNeT++
OMNeT++ has generic and flexible architecture which makes it successful also in
other areas like the IT systems, queuing networks, hardware architectures, or even business
processes as well. It is similar with NS2 and NS3, OMNeT++ is also a public-source,
component-based network simulator with GUI support. Its primary application area is
communication networks. Like NS2 and NS3, OMNeT++ is also a discrete event simulator.
It is a component-based architecture. Components are also called modules and are
programmed in C++. The components are then assembled into larger components and models
by using a high-level language. Its function is similar to that of OTcl in NS2 and Python in
NS3. OMNeT++ also provides GUI support, and due to its modular architecture, the
simulation kernel can be embedded into all kinds of different user s' applications. Figure 5 is
an OMNeT++ GUI screenshot.

Figure 5. OMNeT++ GUI

Main features:
Since OMNeT++ is designed to provide a component-based architecture, the models
or modules of OMNeT++ are assembled from reusable components. Modules are reusable
and can be combined in various ways which is one of the main features of OMNeT++.
5. Global Mobile Information System Simulator (Glo-MoSim)
It is a parallel discrete event simulation soft-ware[4] that simulates wireless and wired
network sys-tems. It is designed as a set of library modules, each of which simulates a
specific wireless communication pro-tocol in the protocol stack. It assumes that the network
is decomposed into a number of partitions and a single entity is defined to simulate a single
layer of the com-plete protocol stack for all the network nodes that be-long to the partition.
The parallel implementation of GloMoSim can be executed using variety of conservative
synchronization protocols, which include the null mes-sage and conditional event algorithm.
The library has been developed using PARSEC, a C based parallel simulation language. It
uses the Parsec compiler to com-pile the simulation protocols. It has been designed to be
extensible and comprehensible. GloMoSim aims to de-velop a modular simulation
environment for protocol stack that is capable of scaling up networks with thou-sands of
heterogeneous nodes. GloMoSim currently supports protocols for a purely wireless network.
Features:
GloMoSim is a library-based sequential and parallel simulator for wireless networks.
GloMoSim facilitates the ability to use in a parallel environment which distinguishes
it from most other wireless network simulators.
It allows the simulation Scalability to simulate net-works with a hundred and
thousand of nodes.
It supports various layers like Mobility, Radio Propagation, Radio Model, Packet
reception models, Data Link, Network (Routing), Transport and Ap-plication. i.e. (It
supports almost all the OSI layers with limited benefits).
GloMoSim supports direct satellite communication, multi-hop wireless
communication and most of the traditional internet protocols.
It facilitates to build a library of parallelized mod-els that can be used for the
evaluation of a varie-ty of wireless network protocols.

6. NetSim
NetSim is a stochastic discrete event network simula-tiontool used for network lab
experimentation and research. Its leading network simulation software for protocol modeling
and simulation, allowing us to ana-lyze computer networks with unmatched depth, power and
flexibility. NetSim comes with an in-built develop-ment environment, which serves as the
interface be- raries and simulation kernel. It
provides network performance metrics at various abstraction levels such as Network, sub-
network, Node and a detailed packet trace. It has unique features and functionality. NetSimis
available as Standard or Academic versions and is built on a com-mon design framework of
high level architecture and code. In a word, NetSim is truly a fantastic product that is not only
versatile, but also robust and provides those features that are hard to come with any
simulators.
Features:
NetSim modeling and simulation are supported for Aloha, Slotted Aloha, Token
Ring/Bus, Ethernet CSMA/CD, Fast and Gigabit Ethernet, WLAN - IEEE 802.11
a/b/g/n and e, X.25, Frame Relay, TCP, UDP, IPv4 and IPv6, Routing - RIP, OSPF,
BGP,MPLS, Wi-Max, MANET, GSM, CDMA, Wire-less Sensor Network, Zigbee,
Cognitive radio.
It simulates a wide variety of Cisco routers, including 2500 series, 2600 series, 2800
series, and 3600 series routers, as well as the Cisco Catalyst 1900 series, 2900 series,
and 3500 series switches.
Protocol libraries are available as open C code for user modification. This can help
avoid the time consuming process of programming, customization and configuration
commercial simulators to meet customer specific needs.
Along with the Boson Virtual P
proprietary Network Simulator, Router Simulator, and EROUTER soft-ware
technologies, to create individual packets. These packets are routed and switched
through the simulated network, allowing NetSim to build an appropriate virtual
routing table and simulate true networking. Other simulation products on the mar-ket
do not support this level of functionality.
It can be used to create a simulation of the topology of corporate network and help
practice trouble-shooting without using devices on the production network.

Comparison of simulators based on General Information

SI. Name License Type Language Supported Operating GUI


# port
1 Ns2 Open source C++ and GNU/Linux,FreeBS Limited
OTCL D, Mac OS X, Win-
dows XP, Windows
Vista and Win. 7.
2 Ns3 Open source C++and GNU/Linux,FreeBS Yes
Optional D, Mac OS X, Win-
Python dows XP, Windows
Bindings Vista and Win. 7.
3 QualNet Commercial C++ UNIX, Window, MAC, Yes
(Separate license Linux
for academicians
and others)
4 GloMoSim Open source C Windows, Linux, Limited
Sun SPARC Solaris

5 NetSim Proprietary C and Windows (7, Vista) Yes


Java and windows XP

6 OMNET++ Open source (for C++ Windows XP or Later, Yes


study and Linux, Mac OS X,
research
Comparison of simulators based on the properties of simulators

SI. # Name Simulation Available Module Scalability Number Paral-


Event of node lelism
Type support
1 NS2 Discrete- Wired,Wireless, Limited Up No
event AdHoc and Wireless to
Sensor Networks 3000

2 NS3 Discrete- Wired,Wireless, Limited Up No


event Adhoc and Wireless to
Sensor Networks 3000
3 QualNet Discrete- event Wired &Wireless(like Large 500-20000 Yes(S MP/Be
WiFi, Sensor net- owulf
work,MANET,WI
MAX)network
4 GloMoSim Discrete- Wired, Wireless & Large Up to Yes(S
event Ad-Hoc Networks. But 10,000 MP/Be
currently pure owulf
wireless support
5 NetSim Stochastic Wired &Wireless, Large ------- -------
Discrete- sensor network Event Enough
6 OMNET++ Discrete- Wired, Wireless, Ad- Enough -------- MPI/P
(wireless LAN, hoc and WSN.
WiMAX)

Result:

Various Network Simulators has been successfully studied.


Ex. No: 2 Date:

Installation of Network Simulator (NS2).

Aim:
To install the NS2 software and test it with simple example on Ubuntu Operating
System.

Steps for Installing Network Simulator 2 (NS2) on Ubuntu

Step 1: Download and Extract ns2

Download the all in one package for ns2 from internet. The package downloaded will
be named "ns-allinone-2.35.tar.gz". Copy it to the home folder. Then in a terminal use the
following two commands to extract the contents of the package:

tar -xvzf ns-allinone-2.35.tar.gz

All the files will be extracted into a folder called "ns-allinone-2.35".

Step 2: Building the dependencies

1. Ns2 requires a few packages to be pre installed. It also requires the GCC- version
4.3 to work correctly. So install all of them by using the following command:

sudo apt-get install build-essential autoconf automake libxmu-dev

2. One of the dependencies mentioned is the compiler GCC-4.3, which is no longer


available, and thus we have to install GCC-4.4 version. The version 4.4 is the
oldest we can get. To do that, use the follwoing command:

sudo apt-get install gcc-4.4

3. Once the installation is over, we have to make a change in the "ls.h" file. Use the
following steps to make the changes: Navigate to the folder "linkstate", use the
following command. Here it is assumed that the ns folder extracted is in the home
folder of your system.

cd ~/ns-allinone-2.35/ns-2.35/linkstate

4. Now open the file named "ls.h" and scroll to the 137th line. In that change the
word "error" to "this->error". The image below shows the line 137 (highlighted
in the image below) after making the changes to the ls.h file. To open the file use
the following command:

gedit ls.h
5. Save that file and close it.
6. Now there is one more step that has to be done. We have to tell the ns which
version of GCC will be used. To do so, go to your ns folder and type the following
command:

sudo gedit ns-allinone-2.34/otcl-1.13/Makefile.in

7. In the file, change Change CC= @CC@ to CC=gcc-4.4, as shown in the image
below:

8. Save that file and close it.

Step 3: Installation

1. Now we are ready to install ns2. To do so we first require root privileges and then
we can run the install script. Use the following two commands:

cd ns-allinone-2.35
./install
2. After successful installation following message will be shown on the screen.
Ns-allinone package has been installed successfully.
Ns-allinone package has been installed successfully.
Here are the installation places:
tcl8.5.10: /home/sitams/ns-allinone-2.35/{bin,include,lib}
tk8.5.10: /home/sitams/ns-allinone-2.35/{bin,include,lib}
otcl: /home/sitams/ns-allinone-2.35/otcl-1.14
tclcl: /home/sitams/ns-allinone-2.35/tclcl-1.20
ns: /home/sitams/ns-allinone-2.35/ns-2.35/ns
nam: /home/sitams/ns-allinone-2.35/nam-1.15/nam
xgraph: /home/sitams/ns-allinone-2.35/xgraph-12.2
gt-itm: /home/sitams/ns-allinone-2.35/itm, edriver, sgb2alt, sgb2ns,
sgb2comns, sgb2hierns
----------------------------------------------------------------------------------
Please put /home/sitams/ns-allinone-2.35/bin:/home/sitams/ns-allinone-
2.35/tcl8.5.10/unix:/home/sitams/ns-allinone-2.35/tk8.5.10/unix
into your PATH environment; so that you'll be able to run
itm/tclsh/wish/xgraph.

IMPORTANT NOTICES:

(1) You MUST put /home/sitams/ns-allinone-2.35/otcl-1.14, /home/sitams/ns-


allinone-2.35/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 /home/sitams/ns-allinone-2.35/tcl8.5.10/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.35; ./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.

Step 4: Setting the Environment Path


The final step is to tell the system, where the files for ns2 are installed or present.
To do that, we have to set the environment path using the ".bashrc" file. In that
file, we need to add a few lines at the bottom. The things to be added are given
below:
sudo gedit ~/.bashrc

2. Lines to be added:
# LD_LIBRARY_PATH
OTCL_LIB=/home/sitams/ns-allinone-2.35/otcl-1.14
NS2_LIB=/home/sitams/ns-allinone-2.35/lib
X11_LIB=/usr/X11R6/lib
USR_LOCAL_LIB=/usr/local/lib
export
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$OTCL_LIB:$NS2_LIB:$X11_
LIB:$USR_LOCAL_LIB
# TCL_LIBRARY
TCL_LIB=/home/sitams/ns-allinone-2.35/tcl8.5.10/library
USR_LIB=/usr/lib
export TCL_LIBRARY=$TCL_LIB:$USR_LIB
# PATH
XGRAPH=/home/sitams/ns-allinone-2.35/bin:/home/sitams/ns-allinone-
2.35/tcl8.5.10/unix:/home/sitams/ns-allinone-2.35/tk8.5.10/unix
#the above two lines beginning from xgraph and ending with unix should come
on the same line
NS=/home/sitams/ns-allinone-2.35/ns-2.35/
NAM=/home/sitams/ns-allinone-2.35/nam-1.15/
PATH=$PATH:$XGRAPH:$NS:$NAM

3. Once the changes have been made, save the file and restart the system.

Step 5: Running ns2


1. Once the system has restarted, open a terminal and start ns2 by using the
following command:

ns

2. System returns

%
Step 6: Testing ns2
Test the addition of two integer numbers.
% set a 10
10
% set b 20
20
% expr $a+$b
30
%

Result :

NS2 software has been successfully installed and tested with simple example on
Ubuntu Operating System.

You might also like