[ns] Ns AODV Tutorial example Not Working

2010-02-26 Thread Ariel Bello


I downloaded the AODV tutorial which was sent over the mailing list a couple of 
weeks ago.  I cannot get errors whenever I try to compile the example under 
NS2.34.  The tutorial is by Mubashir Rehmani for AODV implementation details 
and can be found at 
 http://www-npa.lip6.fr/~rehmani/aodv_v2.pdf.  After copying and pasting the 
examples, the underscore character didn't copy so I had to manually add it.  
The code is included below for convenience: 

# wireless-aodv.tcl
# A 3 nodes example for ad hoc simulation with AODV
# Define options
set val(chan)Channel/WirelessChannel;# channel type
set val(prop)   Propagation/TwoRayGround;# radio-propagation model
set val(netif)   Phy/WirelessPhy ;# network interface type
set val(mac) Mac/802_11 ;# MAC type
set val(ifq)   Queue/DropTail/PriQueue ;# interface queue type
set val(ll)LL ;# link layer type
set val(ant)Antenna/OmniAntenna ;# antenna model
set val(ifqlen) 50 ;# max packet in ifq
set val(nn) 3 ;# number of mobilenodes
set val(rp)AODV ;# routing protocol
set val(x)500 ;# X dimension of topography
set val(y)400 ;# Y dimension of topography
set val(stop)  150 ;# time of simulation end
set ns [new Simulator]
set tracefd [open simple.tr w]
set namtrace[open simwrls.nam w]
$ns trace-all $tracefd
$ns namtrace-all-wireless $namtrace $val(x) $val(y)

proc stop {} {
global ns tracefd namtrace
$ns flush-trace
close $tracefd
close $namtrace
}


# set up topography object
set topo [new Topography]
$topo load_flatgrid $val(x) $val(y)
create-god $val(nn)
# Create nn mobilenodes [$val(nn)] and attach them to the channel.
set chan_1_ [new $val(chan)]
# configure the nodes
$ns node-config -adhocRouting $val(rp) \
-llType $val(ll) \
-macType $val(mac) \
-channel $chan_1_ \
-ifqType $val(ifq) \
-ifqLen $val(ifqlen) \
-antType $val(ant) \
-propType $val(prop) \
-phyType $val(netif) \
-topoInstance $topo \
-agentTrace ON \
-routerTrace ON \
-macTrace OFF \
-movementTrace ON \
   
for {set i 0} {$i $val(nn) } { incr i } {
set node_($i) [$ns node]
}
# Provide initial location of mobilenodes
$node_(0) set X_ 5.0
$node_(0) set Y_ 5.0
$node_(0) set Z_ 0.0
$node_(1) set X_ 490.0
$node_(1) set Y_ 285.0
$node_(1) set Z_ 0.0
$node_(2) set X_ 150.0
$node_(2) set Y_ 240.0
$node_(2) set Z_ 0.0
# Generation of movements
#$ns at 10.0 “$node_(0) setdest 250.0 250.0 3.0”
#$ns at 15.0 “$node_(1) setdest 45.0 285.0 5.0”
#$ns at 110.0 “$node_(0) setdest 480.0 300.0 5.0”
# Set a TCP connection between node (0) and node (1)
set tcp [new Agent/TCP/Newreno]
$tcp set class_ 2
set sink [new Agent/TCPSink]
$ns attach-agent $node_(0) $tcp
$ns attach-agent $node_(1) $sink
$ns connect $tcp $sink
set ftp [new Application/FTP]
$ftp attach-agent $tcp
$ns at 10.0 “$ftp start”
# Define node initial position in nam
for {set i 0} {$i $val(nn)} { incr i } {
# 30 defines the node size for nam
$ns initial_node_pos $node_($i) 30
}
# Telling nodes when the simulation ends
for {set i 0} {$i $val(nn) } { incr i } {
$ns at $val(stop) “$node_($i) reset”;
}
# ending nam and the simulation
$ns at $val(stop) “$ns nam-end-wireless $val(stop)”
$ns at $val(stop) “stop”
$ns at 150.01“puts “end simulation” ; $ns halt”

$ns run

  
_
Your E-mail and More On-the-Go. Get Windows Live Hotmail Free.
http://clk.atdmt.com/GBL/go/201469229/direct/01/


[ns] How does AODV detect Link Failures?

2010-02-26 Thread Ariel Bello


I used Marc Greis's tutorial (example 3) and tried to apply AODV and commented 
out the rtproto DV to disable dynamic routing.  To add AODV functionality I 
simply put $ns node-config -adhocRouting AODV after the for loop that has the 
set ns node...  When I simulate the tutorial, AODV doesn't seem to be doing 
anything since a new route isn't discovered during the link failure.  I even 
tried enabling Hello Packets but to no avail.  Could it be the way that AODV is 
unable to detect a link failure by the command $ns rtmodel-at 1.0 down $n(1) 
$n(2)?  Is there any other way to manually or automatically define link 
failures?  

Also if anyone has any working NAM simulation involving AODV it would be 
extremely helpful as I have spent months trying to learn NS2 and have hit so 
many roadblocks with non-working examples.  

Any additional tutorials would also be appreciated.

Thanks in advance,

Ariel Bello

  
_
Hotmail: Powerful Free email with security by Microsoft.
http://clk.atdmt.com/GBL/go/201469230/direct/01/


[ns] Help configuring simple AODV routing example

2010-02-16 Thread Ariel Bello


I am a new user to ns-2 and have read through just about every tutorial
I could find.  I used the example3.tcl script from Marc Greis' tutorial
(ring architecture that illustrates the use the of the dynamic routing
by using $ns rtproto DV command).  This file works fine on its own,
however when I add the line $ns node-config -adhocRouting AODV right
before I enter the for loop for instantiating the nodes, I get the
following error:

can't read chan: no such variable
while executing
$node
add-interface $chan $propInstance_ $llType_ $macType_  $ifqType_
$ifqlen_ $phyType_ $antType_ $topoInstance_  $inerrProc_ $outerrProc_
$FECProc_
(procedure _o3 line 77)
(Simulator create-wireless-node line 77)
invoked from within
_o3 create-wireless-node
(eval body line 1)
invoked from within
eval $self create-wireless-node $args
(procedure _o3 line 23)
(Simulator node line 23)
invoked from within
$ns node
(for body line 2)
invoked from within
for {set i 0} {$i  12} {incr i} {
set n($i) [$ns node]
}

I am assuming that ns wants me to instantiate/declare all of the variables 
listed after $node add-interface ... however I do not know how.  I looked at 
the NS-2 AODV tutorial which was sent over the mailing list a couple weeks ago, 
however the example in that tutorial fails to compile as well.  If I am leaving 
anything out, please do not hesitate to ask.

Thanks in advance for any help.

Ariel Bello
  
_
Hotmail: Free, trusted and rich email service.
http://clk.atdmt.com/GBL/go/201469228/direct/01/