Hi you all
Anyone can help about my simulation. I run a two clusters simulation
with two mobile nodes each and one AP for each cluster. I would like to
send a packet from one mobile in cluster A to another node in cluster B
using AODV. However, When I run the simulation, there is always a
Segmentation fault: code dumped. Here is my tcl code shown below:
Thanks.
global opt
set opt(chan) Channel/WirelessChannel
set opt(prop) Propagation/TwoRayGround
set opt(netif) Phy/WirelessPhy
set opt(mac) Mac/802_11
set opt(ifq) Queue/DropTail/PriQueue
set opt(ll) LL
set opt(ant) Antenna/OmniAntenna
set opt(x) 670
set opt(y) 670
set opt(ifqlen) 50
set opt(tr) wired-and-wireless.tr
set opt(namtr) wired-and-wireless.nam
set opt(nn) 4
set opt(adhocRouting) AODV
set opt(cp) ""
set opt(sc) "scen-3-test"
set opt(stop) 250
#set num_wired_nodes 2
set num_bs_nodes 2
set ns_ [new Simulator]
# set up for hierarchical routing
$ns_ node-config -addressType hierarchical
AddrParams set domain_num_ 1
lappend cluster_num 2
AddrParams set cluster_num_ $cluster_num
lappend eilastlevel 3 3
AddrParams set nodes_num_ $eilastlevel
set tracefd [open $opt(tr) w]
$ns_ trace-all $tracefd
set namtracefd [open $opt(namtr) w]
$ns_ namtrace-all-wireless $namtracefd $opt(x) $opt(y)
set topo [new Topography]
$topo load_flatgrid $opt(x) $opt(y)
# god needs to know the number of all wireless interfaces
create-god [expr $opt(nn) + $num_bs_nodes]
#create wired nodes
# set temp {0.0.0 0.1.0}
#for {set i 0} {$i < $num_wired_nodes} {incr i} {
# set W($i) [$ns_ node [lindex $temp $i]]
#}
$ns_ node-config -adhocRouting $opt(adhocRouting) \
-llType $opt(ll) \
-macType $opt(mac) \
-ifqType $opt(ifq) \
-ifqLen $opt(ifqlen) \
-antType $opt(ant) \
-propInstance [new $opt(prop)] \
-phyType $opt(netif) \
-channel [new $opt(chan)] \
-topoInstance $topo \
-wiredRouting ON \
-agentTrace ON \
-routerTrace OFF \
-macTrace OFF
#set BS1 is the first node of 0.0.0 of the cluster list
set temp {1.0.0 1.0.1 1.0.2}
set BS(0) [$ns_ node [lindex $temp 0]]
set temp2 {0.0.0 0.0.1 0.0.2}
set BS(1) [$ns_ node [lindex $temp2 0]]
$BS(0) random-motion 0
$BS(1) random-motion 0
$BS(0) set X_ 1.0
$BS(0) set Y_ 2.0
$BS(0) set Z_ 0.0
$BS(1) set X_ 650.0
$BS(1) set Y_ 600.0
$BS(1) set Z_ 0.0
#configure for mobilenodes
$ns_ node-config -wiredRouting OFF
for {set j 0} {$j < $opt(nn)} {incr j} {
if ($j%2==0) {
set node_($j) [ $ns_ node [lindex $temp \
[expr $j / 2 +1]] ]
$node_($j) base-station [AddrParams addr2id [$BS(0) node-addr]]
puts $j
puts [lindex $temp \
[expr $j / 2 +1]]
} else {
set node_($j) [ $ns_ node [lindex $temp2 \
[expr $j / 2 +1]] ]
$node_($j) base-station [AddrParams addr2id [$BS(1) node-addr]]
puts $j
puts [lindex $temp2 \
[expr $j / 2 +1]]
}
}
#create links between BS and BS nodes
$ns_ duplex-link $BS(0) $BS(1) 5Mb 2ms DropTail
$ns_ duplex-link-op $BS(0) $BS(1) orient left-down
puts "aaa"
# setup TCP connections
set tcp1 [new Agent/TCP]
$tcp1 set class_ 2
set sink1 [new Agent/TCPSink]
$ns_ attach-agent $node_(0) $tcp1
$ns_ attach-agent $node_(2) $sink1
$ns_ connect $tcp1 $sink1
set ftp1 [new Application/FTP]
$ftp1 attach-agent $tcp1
$ns_ at 120 "$ftp1 start"
puts "aab"
for {set i 0} {$i < $opt(nn)} {incr i} {
$ns_ initial_node_pos $node_($i) 20
}
puts "aac"
for {set i } {$i < $opt(nn) } {incr i} {
$ns_ at $opt(stop).0000010 "$node_($i) reset";
}
puts "aad"
$ns_ at $opt(stop).0000010 "$BS(0) reset";
$ns_ at $opt(stop).0000020 "$BS(1) reset";
$ns_ at $opt(stop).1 "puts \"NS EXITING...\" ; $ns_ halt"
puts "Starting Simulation..."
$ns_ run
This message is intended for the addressee(s) only and should not be read,
copied or disclosed to anyone else outwith the University without the
permission of the sender.
It is your responsibility to ensure that this message and any attachments are
scanned for viruses or other defects. Napier University does not accept
liability for any loss
or damage which may result from this email or any attachment, or for errors or
omissions arising after it was sent. Email is not a secure medium. Email
entering the
University's system is subject to routine monitoring and filtering by the
University.