hello again, i think a better way to ask the question is what does these lines mean especially the set bs_ commands. set cn_ [create-router 0.0.0] set router1_ [create-router 0.1.0] set router2_ [create-router 0.2.0] set router3_ [create-router 0.3.0] set bs1_ [create-base-station 1.0.0 0.2.0 250 1050 0] set bs2_ [create-base-station 2.0.0 0.2.0 950 1050 0] set bs3_ [create-base-station 3.0.0 0.3.0 950 300 0] set bs4_ [create-base-station 4.0.0 0.3.0 250 300 0] set mobile_ [create-mobile 1.0.1 1.0.0 250 1000 0 1 0.01]
--- On Wed, 8/26/09, Oladapo Oluwadiya <[email protected]> wrote: From: Oladapo Oluwadiya <[email protected]> Subject: mobile node not moving during simulation of mipv6 To: [email protected] Date: Wednesday, August 26, 2009, 8:00 AM hello, sorry to be a bother again. i solved all the previous problems mentioned earlier.BUT i have a final problem on my simulation. i configured my mobile node to move from bs1 to bs2 to bs3 to bs4 BUT it doesnt move. i have tried all i can but no luck.please does any one know what could be wrong.below is my script. # Basic Mobile IPv6 example without using ns-topoman # Needs proc defined in file proc-mipv6-config.tcl # ====================================================================== # Define options # ====================================================================== set opt(chan) Channel/WirelessChannel ;# channel type set opt(prop) Propagation/TwoRayGround ;# radio-propagation model set opt(netif) Phy/WirelessPhy ;# network interface type set opt(mac) Mac/802_11 ;# MAC type set opt(ifq) Queue/DropTail/PriQueue ;# interface queue type set opt(ll) LL ;# link layer type set opt(ant) Antenna/OmniAntenna ;# antenna model set opt(ifqlen) 50 ;# max packet in ifq set opt(nn) 1 ;# number of mobilenodes set opt(adhocRouting) DSDV ;# routing protocol set opt(cp) "" ;# cp file not used set opt(sc) "" ;# node movement file. set opt(x) 1500 ;# x coordinate of topology set opt(y) 1500 ;# y coordinate of topology set opt(seed) 0.0 ;# random seed set opt(stop) 130 ;# time to stop simulation set opt(ftp1-start) 10.0 set num_wired_nodes 4 #set num_bs_nodes 4 ; this is not really used here. # ====================================================================== Agent/MIPv6/MN set bs_forwarding_ 0 ; # 1 if forwarding from previous BS ################################################################ proc log-mn-movement_no_topo { } { global logtimer ns Class LogTimer -superclass Timer LogTimer instproc timeout {} { global mobile_ $mobile_ log-movement $self sched 1 } set logtimer [new LogTimer] $logtimer sched 1 } ################################################################ # Create Topology ################################################################ proc create-my-topo {} { global ns opt topo mobile_ cn_ mnn_nodes_ # Create and define topography set topo [new Topography] # set prop [new $opt(prop)] # $prop topography $topo $topo load_flatgrid 1500 1500 # god is a necessary object when wireless is used # set to a value equal to the number of mobile nodes create-god 5 # Call node-config $ns node-config \ -addressType hierarchical \ -agentTrace ON \ -routerTrace ON # Set NS Addressing AddrParams set domain_num_ 5 AddrParams set cluster_num_ {4 1 1 1 1 } AddrParams set nodes_num_ {1 1 1 1 2 1 1 1} # Create Nodes set cn_ [create-router 0.0.0] set router1_ [create-router 1.0.0] set router2_ [create-router 2.0.0] set router3_ [create-router 3.0.0] set bs1_ [create-base-station 2.1.0 2.0.0 250 1050 0] set bs2_ [create-base-station 2.2.0 2.0.0 1050 600 0] set bs3_ [create-base-station 3.1.0 3.0.0 950 300 0] set bs4_ [create-base-station 3.2.0 3.0.0 250 300 0] set mobile_ [create-mobile 2.1.1 2.1.0 250 1000 0 1 0.01] $bs1_ random-motion 0 $bs2_ random-motion 0 $bs3_ random-motion 0 $bs4_ random-motion 0 # Create Links $ns duplex-link $cn_ $router1_ 100Mb 2ms DropTail $ns duplex-link $router1_ $router2_ 100Mb 2ms DropTail $ns duplex-link $router1_ $router3_ 100Mb 2ms DropTail $ns duplex-link $router2_ $bs1_ 100Mb 2ms DropTail $ns duplex-link $router2_ $bs2_ 100Mb 2ms DropTail $ns duplex-link $router3_ $bs3_ 100Mb 2ms DropTail $ns duplex-link $router3_ $bs4_ 100Mb 2ms DropTail $ns duplex-link-op $cn_ $router1_ orient down $ns duplex-link-op $router1_ $router2_ orient left-down $ns duplex-link-op $router1_ $router3_ orient right-down $ns duplex-link-op $router2_ $bs1_ orient left-down $ns duplex-link-op $router2_ $bs2_ orient right-down $ns duplex-link-op $router3_ $bs3_ orient down $ns duplex-link-op $router3_ $bs4_ orient right-down display_ns_addr_domain } ################################################################ # End of Simulation ################################################################ proc finish { } { global tracef ns namf opt mobile_ cn_ puts "Simulation finished" # Dump the Binding Update List of MN and Binding Cache of HA [[$mobile_ set ha_] set regagent_] dump [$cn_ set regagent_] dump [$mobile_ set regagent_] dump $ns flush-trace flush $tracef close $tracef close $namf #puts "running nam with $opt(namfile) ... " #exec nam $opt(namfile) & exit 0 } ################################################################ # Main ################################################################ proc main { } { global opt ns TOPOM namf n tracef mobile_ cn_ source ../../tcl/mobility/timer.tcl set NAMF out.nam set TRACEF out.tr set INFOF out.info set opt(mactrace) ON set opt(NAM) 1 set opt(namfile) $NAMF set opt(stop) 130 set opt(tracefile) $TRACEF #>--------------- Extract options from command line ---------------< #Getopt ; # Get option from the command line #DisplayCommandLine #>---------------------- Simulator Settings ----------------------< set ns [new Simulator] # Global mobility needs special settings: # normal interface (ALL) or dual (DUAL) if { [info exists opt(global)] && $opt(global) == "ON" } { $ns node-config -net-iface-type "DUAL" } #>------------------------ Open trace files ----------------------< exec rm -f $opt(tracefile) set tracef [open $opt(tracefile) w] #... dump the file $ns use-newtrace $ns trace-all $tracef set namf [open $opt(namfile) w] $ns namtrace-all $namf #>------------- Protocol and Topology Settings -------------------< create-my-topo log-mn-movement_no_topo # MH starts to move towards FA1 $ns at 10.000000000000 "$mobile_ setdest 950.000000000000 1000.000000000000 20.000000000000" # MH move from FA1 towards FA2 $ns at 50.000000000000 "$mobile_ setdest 950.000000000000 350.000000000000 20.000000000000" # MH move from FA2 towards FA3 $ns at 85.000000000000 "$mobile_ setdest 250.000000000000 350.000000000000 20.000000000000" #>----------------------- Run Simulation -------------------------< $ns at $opt(stop) "finish" $ns run $ns dump-topology $namf close $namf #puts "running nam with $opt(namfile) ... " #exec nam $opt(namfile) & } proc set-cbr { } { global ns cn_ mobile_ set tcp1 [new Agent/TCP] $ns attach-agent $cn_ $tcp1 set dst [new Agent/TCPSink] $ns attach-agent $mobile_ $dst $ns connect $tcp1 $dst set ftp1 [new Application/FTP] $ftp1 set packetSize_ 1040 $ftp1 set rate_ 100k $ftp1 set interval_ 0.05 $ftp1 attach-agent $tcp1 $ns at 10.0 "$ftp1 start" } main
