[ns] segmentation fault in DSR routing protocol
gh
ghada at hasebat.com
Tue Nov 7 01:24:32 PST 2006
Hi,
Just change -ifqType , the variable val(ifq) in your code to CMUPRiQueue
instead of Queue/DropTail/PriQueue.
ghada
----- Original Message -----
From: "xiongqing" <xiongqing at whu.edu.cn>
To: "ns-users" <ns-users at ISI.EDU>
Sent: Tuesday, November 07, 2006 5:53 PM
Subject: [ns] segmentation fault in DSR routing protocol
>
>
--------------------------------------------------------------------------------
> Hello, everyone!
>
> I am new in the ns world.Currently i am learning wireless routing.
>
> I run a sample in chapter 9 (mobile networks) in "NS simulator for
> beginners". The sample code is listed in pp. 117-118. When I set the
> routing protocol as "DSDV", it finished simulation successfully. But when
> I modified the routing protocol from "DSDV" to "DSR", it ran for a while
> and then quit with the message "Segmentaion fault (core dump)".
>
> Can anybody give me an advice or a clue?
>
> Thanks in advance!!
>
> My ns2 version is 2.29 all in one. I installed the ns on the cygwin
> platform.
> The tcl code source is as follows.
>
>
>
> 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(ifqlen) 50 ;# max packet in ifq
> set val(nn) 3 ;# how many nodes are simulated
> set val(adhocRouting) DSR
> set val(x) 500 ;# X dimension of the topography
> set val(y) 400 ;# Y dimension of the topography
> set val(stop) 150.0 ;# simulation time
>
>
> set ns_ [new Simulator]
>
> # setup topography object
>
> set topo [new Topography]
>
> # create trace object for ns and nam
>
> set tracefd [open wireless1-out.tr w]
> set namtrace [open wireless1-out.nam w]
>
> $ns_ trace-all $tracefd
> $ns_ namtrace-all-wireless $namtrace $val(x) $val(y)
>
> # define topology
> $topo load_flatgrid $val(x) $val(y)
>
> #
> # Create God
> #
> set god_ [create-god $val(nn)]
>
> #
> # define how node should be created
> #
>
> #global node setting
>
> $ns_ node-config -adhocRouting $val(adhocRouting) \
> -llType $val(ll) \
> -macType $val(mac) \
> -ifqType $val(ifq) \
> -ifqLen $val(ifqlen) \
> -antType $val(ant) \
> -propType $val(prop) \
> -phyType $val(netif) \
> -channelType $val(chan) \
> -topoInstance $topo \
> -agentTrace ON \
> -routerTrace OFF \
> -macTrace OFF
>
> for {set i 0} {$i < $val(nn) } {incr i} {
> set node_($i) [$ns_ node]
> $node_($i) random-motion 0 ;# disable random motion
> }
>
> $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
>
> $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 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"
>
> for {set i 0} {$i<$val(nn)} {incr i} {
> $ns_ initial_node_pos $node_($i) 30
> }
>
> for {set i 0} {$i<$val(nn)} {incr i} {
> $ns_ at $val(stop) "$node_($i) reset"
> }
>
> $ns_ at $val(stop) "$ns_ nam-end-wireless $val(stop)"
> $ns_ at $val(stop) "stop"
>
> $ns_ at 150.1 "puts \"end simulation \"; $ns_ halt"
>
> proc stop {} {
> global ns_ tracefd namtrace
> $ns_ flush-trace
> close $tracefd
> close $namtrace
> }
>
> $ns_ run
>
>
>
>
>
>
> xiongqing
> 2006-11-07
>
More information about the Ns-users
mailing list