How to Start Zone Protocol Projects Using NS2
To start a Zone Routing Protocol (ZRP) project using NS2 that needs to replicate a hybrid routing within a network, which connects the proactive and reactive routing mechanisms. NS2 doesn’t directly have ZRP, but it can prolong or set up for replicating their behavior. Below is a complete procedure to get started:
Steps to Start Zone Protocol Projects in NS2
- Understand ZRP and NS2 Capabilities
- Zone Routing Protocol (ZRP):
- Hybrid routing protocol, which splits the network to zones.
- It can be utilised proactive routing inside a zone (Intra-zone Routing Protocol, IARP).
- Reactive routing is leveraged among the zones (Inter-zone Routing Protocol, IERP).
- NS2 Features:
- NS2 environment offers flexibility for prolonging their routing components, executing the ZRP.
- We can integrate existing reactive (e.g., AODV, DSR) and proactive (e.g., DSDV) protocols to replicate the ZRP.
- Set Up NS2 Environment
- Install NS2:
sudo apt-get install ns2
- Confirm the installation by executing a simple simulation script.
- Define the Project Scope
- Objectives:
- In a dynamic network, replicate the zone-based routing.
- Estimate the performance parameters like delay, packet delivery ratio, and routing overhead.
- We can equate ZRP including reactive or proactive protocols.
- Examples:
- Experiment ZRP under highly mobile environment.
- Examine the effect of zone radius on the protocol performance.
- Design the Network Topology
- Topology Elements:
- Nodes: It denotes the routers or hosts.
- Links: Connections are denoting the interaction among the nodes.
- Zone Definition:
- Describe the zones by means of setting a radius like 2-hop neighbors.
- Example Topology:
- It has 20 nodes within a 1000m x 1000m area including random mobility.
- Implement ZRP in NS2
- Step 1: Define Zones
- We can be detected nodes inside the zone by leveraging the proximity (number of hops or distance).
- Step 2: Proactive Intra-zone Routing (IARP)
- Make use of an existing proactive protocol such as DSDV for intra-zone routing.
- Step 3: Reactive Inter-zone Routing (IERP)
- For inter-zone routing, we need to utilise an existing reactive protocol such as AODV.
- Step 4: Extend or Combine Protocols
- Fine-tune NS2’s routing agents integrating the proactive and reactive logic.
Example TCL Script for ZRP Simulation:
# Initialize the simulator
set ns [new Simulator]
# Define trace and NAM files
set tracefile [open zrp_trace.tr w]
$ns trace-all $tracefile
set namfile [open zrp_simulation.nam w]
$ns namtrace-all-wireless $namfile 1000 1000
# Configure wireless topology
set val(chan) Channel/WirelessChannel
set val(prop) Propagation/TwoRayGround
set val(netif) Phy/WirelessPhy
set val(mac) Mac/802_11
set val(ifq) Queue/DropTail/PriQueue
set val(ll) LL
set val(ant) Antenna/OmniAntenna
set val(x) 1000
set val(y) 1000
set val(ifqlen) 50
# Create nodes
set num_nodes 20
for {set i 0} {$i < $num_nodes} {incr i} {
set node($i) [$ns node]
$node($i) random-motion 1
}
# Set routing protocol (combine proactive and reactive)
$ns rtproto ZRP
# Define traffic
set udp [new Agent/UDP]
set null [new Agent/Null]
$ns attach-agent $node(0) $udp
$ns attach-agent $node(19) $null
$ns connect $udp $null
# Traffic generation
set cbr [new Application/Traffic/CBR]
$cbr set packetSize_ 512
$cbr set interval_ 0.1
$cbr attach-agent $udp
# Start traffic
$ns at 5.0 “$cbr start”
$ns at 25.0 “$cbr stop”
# Terminate simulation
$ns at 30.0 “finish”
proc finish {} {
global ns tracefile namfile
$ns flush-trace
close $tracefile
close $namfile
exec nam zrp_simulation.nam &
exit 0
}
$ns run
- Simulate Zone Dynamics
- Node Movement: Describe the mobility models for analysing the ZRP within dynamic networks.
$node(0) setdest 500 500 10.0
$node(1) setdest 800 200 15.0
- Zone Radius: Test with various zone radius like 1-hop, 2-hop.
- Run the Simulation
- Now, we run the simulation using TCL script:
ns zrp_simulation.tcl
- Envision the simulation with NAM:
nam zrp_simulation.nam
- Analyze Performance
- Obtain performance parameters from the trace file as zrp_trace.tr:
- Packet Delivery Ratio (PDR): Compute the rate of packets which are effectively distributed.
- Routing Overhead: Count the volume of control packets that are swapped.
- End-to-End Delay: Measure average interval, attaining its destination for packets.
Example AWK Script for PDR:
BEGIN {sent=0; received=0;}
{
if ($1 == “s” && $4 == “UDP”) {
sent++;
} else if ($1 == “r” && $4 == “UDP”) {
received++;
}
}
END {
print “Packet Delivery Ratio:”, received/sent;
}
- Extend ZRP Functionality
- Security Enhancements: Integrate the encryption or authentication for route detection.
- QoS Support: Prolong ZRP that give precedence to certain traffic like VoIP.
- Energy Efficiency: Experiment the ZRP within energy-constrained networks like IoT for power utilization.
- Document the Project
- For research and project purpose, it offers comprehensive details like:
- Project goals and scope.
- Network topology and sets up.
- Simulation outcomes using graphs and tables.
- Observations and references.
To conclude, above provided structure is enriched with NS2-specific insights like simulation setup, analysis, and code snippets for replicating and examining the Zone Protocol Projects. Feel free to ask if you require more information on this project.