1. Network Simulator
using inetmanet for OMNeT++ 4.2.2
AODV as an Ad-Hoc Routing Protocol
November 14, 2012
Ahmed A. Nour, Ahmed ElSaher, Ehab ElShafei, Tarek Mohamed
Nile University – CIT623 – Security in Wireless Ad-Hoc Networks
2. Introduction to OMNeT++ 4.2.2 (1/3)
› OMNeT++ is a discrete event simulation environment:
– Extensible and Modular, Component-based C++ simulation library and
framework, Primarily for building network simulators
– Source code publicly available
– Free for academic use
Based on documentation from www.omnetpp.org
2/20
3. Introduction to OMNeT++ 4.2.2 (2/3)
› Components
– Simulation kernel library
– Compiler for the NED topology description language
– OMNeT++ IDE based on the Eclipse platform
– GUI for simulation execution, links into simulation executable (Tkenv)
– Command-line user interface for simulation execution (Cmdenv)
– Utilities (makefile creation tool, etc.)
– Documentation, sample simulations, etc.
Based on documentation from www.omnetpp.org
3/20
4. Introduction to OMNeT++ 4.2.2 (3/3)
› OMNeT++ does not provide any components specifically for
network simulations
› various simulation models and frameworks such as
INET/INETMANET, MiXiM, or Castalia - developed completely
independent of OMNeT++ - provide support for:
– computer network simulations
– queuing network simulations
– system architecture simulations
4/20
5.
6.
7. Build OMNeT++ Project (1/2)
› Download inetmanet https://github.com/aarizaq/inetmanet-2.0
- needed for the Ad-Hoc networks
› Import projects to OmNetpp
– Create "projects" folder under "c:omnetpp"
– Extract the downloaded files to the created folder using winrar
– Import the projects using [File -> Import -> General -> Exist projects into
workspace]
– Build the projects using [Project -> Build all]
– try to run samples projects - under "examples" folder - to be sure that
previous steps are done
7/20
8. Build OMNeT++ Project (2/2)
› Create new Project
– choose inetmanet as a reference in the new project properties
– be sure that inetmanet project is opened
› Create new empty network description file (.ned)
– in [Design] mode add [network]
– if we're going to use regular device add it to the network
– to create a new device based on existing - to add extra functions - one
add another ned file, in design mode add compound module
› Create an initialization file (.ini)
– use Wizard of Adhoc Mobility wireless network
– edit the parameters
8/20
9. AODV Network Simulator (1/4)
› We will generate an Ad-Hoc Network contains variable number
of hosts (100,150,250,350,450,500) host .
› In all Scenarios, node number 0 will send packages to the fixed
node
› We will measure the End-To-End Delay for first 700 packet
arrives to the fixed host
› The source and destination at the same for all scenarios
9/20
10. AODV Network Simulator (2/4)
› Network Description file (ned)
– Add reference to network components
› import inet.nodes.inet.AdhocHost;
› import inet.networklayer.autorouting.ipv4.IPv4NetworkConfigurator;
› import inet.world.radio.ChannelControl;
– Network Parameters
› int numHosts; // in our presentation will be (100,150,250,350,450,500)
› int numFixHosts;//in our presenatation will be 1
› connections allowunconnected:
– components Parameters (submodules)
› fixhost[numFixHosts]: AdhocHost
› host[numHosts]: AdhocHost
› channelControl: ChannelControl
› configurator: IPv4NetworkConfigurator
– interface hosts='*' address='145.236.x.x' netmask='255.255.0.0'
10/20