Skip to main content

Network Simulators for Education and Research

There are various real hardware tools and emulators are available in the market for measuring the performance of a network, wireless network. But one cannot invest much in terms of money and time. Hence there should be some tools that helps the researchers to do their research to measure the performance and find the results. Here are some of the tools that are free and easily avaialble to everyone at the cost of Time (you need to invest time thats what a researcher is supposed to do)
1. Network Simulator 2 (NS2)
Link : http://www.isi.edu/nsnam/ns/
Ns is a discrete event simulator targeting for networking research. This simulator provides support for simulation of Wired networks like TCP, routing, and multicast protocols over wired and wireless  networks. In short it is called as NS2.
Languages Used: Tcl, OTcl, C++, Simple AWK Script to analyze the results (freely available in the web)
Pros:
  • It is free and Open Source 
  • Simulate almost any type of networks which are in great demand by the industry/Academia
  • It runs on all Operating Systems like Linux, Solaris, Windows (using cygwin), MacOS and FreeBSD
  • Possible for deeper insights and need to make some assumptions.
  • There are huge number of helping hands(forums) to help.
  • Documentation is perfect and there are some books from leading publishers like Springer, etc.
Cons:
  • Should know the Concepts of TCL/TK and C++
  • Should be strong enough in C++ and its Object oriented Concepts
To know more about NS2, visit http://pradeepkumar.org/category/network-simulator-2
Installation of Network Simulator 2 in Fedora 12, Audio by Pradeepkumar
2. GloMoSim
Link: http://pcl.cs.ucla.edu/projects/glomosim/
GloMoSim is just Global Mobile Simulator, which says that it is targeting mainly for wireless networks, but the wired and hybrid network capability will be added soon. This is developed based on the PARSEC Compiler. Glomosim Supports various layers like Mobility, Radio Propagation, Radio Model, Packet reception models, Data Link, Network (Routing), Transport, Application.
The software can be obtained based on the request, it is free only for Academic Research. For others, QualNet has to be purchased.
Languages Used: Basic knowledge on Parsec, C programming
Pros
  • It is free for educational and academic research
  • It supports almost all the OSI layers with limited benefits
Cons
  • Parsec support for Redhat 7.2 which is outdated
  • The team is targeting mainly on QualNet which is the commercial Version GloMoSim
3. OpNet
Link: http://www.opnet.com/
Opnet is a graduate project of Alain Cohen while he was at MIT. Now the entire product is commercialized. This tool performs the performance comparison of for computer networks and applications. This tool addresses application performance management, network performance management and Research & Development in Network
Pros
  • used to enhance existing protocols
  • to develop proprietary protocol
  • test and demonstrate technology designs
Cons
  • Cost of the product is high

(Source: http://campus.murraystate.edu)
4. Omnet++
Link: http://www.omnetpp.org/
Omnet++ is a discrete event simulator that concentrates on wired and wireless networks. Languages used are Java, C++, SystemC.
Pros
  • It is free for academics
  • useful for wired and wireless networks
  • Recently a new horizon, a parallel simulation extension of Omnet++ for multicore/multiprocessor is developed and released.
  • So many frameworks free to download
  • Best documentation
Cons
  • some of the frameworks are version compatible (if a framework developed for 3.3 version, it may not work under version 4.0)

(Source: cs.uni-paderborn.de)
5. NS3
Link: http://www.nsnam.org/
This is also a discrete event simulator that concentrates on network research. It is written in C++ and Python. So a basic knowledge of python is needed to learn this tool. It supports Linux, Windows (cygwin) and also under visual studio 2010.
Pros:
  • Proper documentation is available
  • it is free
  • support for wired and wireless networks
Cons
  • to learn a new scripting python
  • online forums are there much

(source: http://www.nsnam.org)
6. QualNet
Link: http://www.scalable-networks.com/products/qualnet/
QualNet Developer is a network evaluation software that analyze the performance of wired, wireless and hybrid network. QualNet supports thousands of nodes for simulation and also supports for 64 bit Operating system.
It works on Unix, Linux, MacOS and even can be deployed in live networks.
This tool is an extension of GloMoSim which is being commercialized. They have separate licenses for Academics and others. Refer the link above for pricing and support.
7. NetSim
Link: http://tetcos.com/software.html
NetSim is a comprehensive tool for studying computer networks. NetSim features state of the art network simulation technology, and comes with additional offerings that enhance and quicken students’ learning, and prepare them better for their career.
  • Model networks with various technologies, protocols, devices and traffic types.
  • Study Performance metrics at network, link by link and packet levels
  • Analyze and graph, inter and intra protocol performance by varying modeling attributes
  • Learn from detailed simulation lab experiments
C/C++ is supported. Only a demo version is available for download, contact the above link for pricing and support for academic or standard
8. TOSSIM
Link:http://www.cs.berkeley.edu/~pal/research/tossim.html
This simulator is mainly for sensor networks. TOSSIM is an extension for TinyOS Mote SIMulator.
  • It is free of cost and can scale upto 1000 of nodes
  • one can test the algorithm as well as implementation (validation can also be done)
  • It includes physical layer design to application layer design
  • Hardware in the loop is possible
  • it also has a GUI called TinyViz which can be visualized for running simulations of sensor networks.
(Source: tinyos.net)
and there are more number of tools in the market either for Free or limited Cost.

Comments

  1. Its very useful and crisp information about network simulators, thanks

    ReplyDelete

Post a Comment

Popular posts from this blog

Installing ns-3.34 in Ubuntu 20.04

This post shows how to install ns 3.34 in Ubuntu 20.04 LTS Prerequisites: Fresh installation of Ubuntu Version 20.04 LTS  ns3.34 can be downloaded from here Follow the video link for complete step by step instructions on the installation.  This version fixes the compilation issues of vanet-routing-compare.cc (bug in ns3.33)  Issue the following commands after opening a terminal  $ sudo apt update $ sudo apt install g++ python3 python3-dev python-dev pkg-config sqlite3 python3-setuptools git qt5-default gir1.2-goocanvas-2.0 python3-gi python3-gi-cairo python3-pygraphviz gir1.2-gtk-3.0 ipython3 openmpi-bin openmpi-common openmpi-doc libopenmpi-dev autoconf cvs bzr unrar openmpi-bin openmpi-common openmpi-doc libopenmpi-dev tcpdump wireshark libxml2 libxml2-dev Unzip or untar the ns-allinone-3.34.tar.bz2 in the home folder (in my case its /home/pradeepkumar) $ cd ns-allinone-3.34/ $ ./build.py --enable-examples --enable-tests  Once the installation is completed, you may get an output show

Installation of ns3 in Windows 10 and Windows 11 OS using WSL (Windows Subsystem for Linux)

This post shows how to install ns-3.33 in Windows 10 through WSL (Windows Subsystem for Linux) This posts works for Windows 11 also (I have tested it on a Windows 11 ISO and it works the Same way as mentioned in the following post.) This post will work for ns-3.3x version. Prerequisites : Install Windows Subsystem for Linux with GUI: Please refer the following video  System Information: OS used: Windows 10 and WSL (Ubuntu 20.04) GUI: XServer for Windows NS3 Version: ns-3.33 See the following complete video on how to install ns3 in Windows 10 Step 0 : Open XLaunch Step 1 :  Open WSL using PowerShell and open it as Administrator Command:/  wsl $ xfce4-session The GUI of Ubuntu Opens within Windows 10 OS. Step 2 : Download ns3 from nsnam.org website through Mozilla Firefox browser Step 3: Open a Terminal  $ sudo apt update $ sudo apt install build-essential autoconf automake libxmu-dev python3-pygraphviz cvs mercurial bzr git cmake p7zip-full python3-matplotlib python-tk python3-dev qt5-q

Installing NS-3.32 in Ubuntu 20.04

This is about installing ns version 3.32 in Ubuntu 20.04 LTS. #ns3 #ns3 .32 #networksimulation The commands used in the video are given here. $] sudo apt update $] sudo apt install build-essential autoconf automake libxmu-dev python3-pygraphviz cvs mercurial bzr git cmake p7zip-full python3-matplotlib python-tk python3-dev qt5-qmake qt5-default gnuplot-x11 wireshark Download the ns-allinone-3.32.tar.bz2 package from nsnam.org and copy it to /home/ folder See the full video for detailed instructions Extract it either in GUI or using command $] tar jxvf ns-allinone-3.32.tar.bz2 $] cd ns-allinone-3.32/ $] ./build.py --enable-examples --enable-tests The above command will take some time to install all the packages  You can see the output as shown below ns3 To check whether ns3 installed successfully, use the following commands. $] cd ns-3.32/ $] ./waf --run hello-simulator You should get the output as Hello Simulator $] ./waf --run first This is the example from the ns-3.32/exa