hi i am a new user in NS-2, i'm using version NS-2.34 based on windows xp. 
i try simulate routing protocol ;example for ad-hoc simulation with AODV from 
this website 
http://read.pudn.com/downloads93/sourcecode/windows/comm/364468/aodv/wrls-aodv.tcl__.htm
i got error when run the simulation on cygwin, in the other hand i have checked 
the warning that led me to example of tcl/wireless-mitf.tcl, 

runs the simulations it works well but i tried to compare with what i did it's 
quite different.

 wrls1.tcl file

# wrls1.tcl
# A 3-node 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)                5                            ;# 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 windowVsTime2    [open win.tr w]
set namtrace        [open simwrls.nam w]

$ns trace-all $tracefd
$ns namtrace-all-wireless $namtrace $val(x) $val(y)

# 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.
#

# configure the nodes
        $ns node-config -adhocRouting $val(rp) \
                        -llType $val(ll) \
                        -macType $val(mac) \
                        -ifqType $val(ifq) \
                        -antType $val(ant) \
                        -propType $val(prop) \
                        -phyType $val(netif) \
                        -channelType $val(chan) \
                        -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_(0) set Z_ 0.0

$node_(2) set X_ 150.0
$node_(2) set Y_ 240.0
$node_(2) set Z_ 0.0

$node_(3) set X_ 250.0
$node_(3) set Y_ 240.0
$node_(3) set Z_ 0.0

$node_(4) set X_ 100.0
$node_(4) set Y_ 70.0
$node_(4) set Z_ 0.0

# Generation of movements
$ns at 10.0 "$node_(0) setdest 250.0 250.0 10.0"
$ns at 15.0 "$node_(1) setdest 45.0 285.0 10.0"
$ns at 110.0 "$node_(0) setdest 480.0 300.0 10.0"
$ns at 70.0 "$node_(3) setdest 180.0 30.0 10.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"

# Printing the window size
proc plotWindow {tcpSource file} {
global ns
set time 0.01
set now [$ns now]
set cwnd [$tcpSource set cwnd_]
puts $file "$now $cwnd"
$ns at [expr $now+$time] "plotWindow $tcpSource $file" }
$ns at 10.1 "plotWindow $tcp $windowVsTime2"

# define node intial 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"
proc stop {} {
        global ns tracefd namtrace
        $ns flush-trace
        close $tracefd
        close $namtrace
        #Execute nam on the trace file
        exec nam simwrls.nam &
        exit 0
        }
# call the finish procedure after 5 seconds of simulation time
$ns run
 
when run my works on ns-2.34 
the error shows :

$ns wrlsl.tcl
num_nodes is set 5 
warning: please use -channel as shown in tcl/wireless-mitf.tcl
syntax error in expression "$i $val(nn) ": extra tokens at end of expression
while executing
"for {set i 0 } {$i $val(nn) } { incr i } { 
set node_($i) [$ns node]
}
(file "wrlsl.tcl" line 51)

i went through to line 51 but  found nothing to change there

please help to get the result. i really need your help to understand well about 
AODV 

thank you very much

best

Bety Barreto Soares 

Reply via email to