Bonjour,
J'aimerai que quelqu'un m'aide à résoudre mon problème c'est très urgent.
J'ai fait le script mais quand j'execute il ne genere pas les fichiers trace et nan, aussi je n'arrive pas observer ma simulation avec l'outil Nam.
Voici mon script sur la mobilité de IPV6:
# Basic Mobile IPv6 example without using ns-topoman
# Needs proc defined in file proc-mipv6-config.tcl
#Agent/MIPv6/MN set bs_forwarding_ 0
################################################################
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
################################################################
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.
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 $opt(x) $opt(y)
# 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 \
-mipv6 ON \
-mipagent BS \
-mobileIP ON \
-wiredRouting ON \
-adhocRouting DSDV \
-llType LL \
-macType Mac/802_11 \
-ifqType Queue/DropTail/PriQueue \
-ifqLen 50 \
-antType Antenna/OmniAntenna \
-propType Propagation/TwoRayGround \
-phyType Phy/WirelessPhy \
-channelType Channel/WirelessChannel \
-topoInstance $topo \
-agentTrace ON \
-routerTrace ON
# Set NS Addressing
$ns node-config -addressType hierarchical
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 1.1.0 1.0.0 200 200 0]
set bs2_ [create-base-station 1.2.0 1.0.0 200 600 0]
set bs3_ [create-base-station 1.3.0 1.0.0 600 200 0]
set bs4_ [create-base-station 1.4.0 1.0.0 600 600 0]
set mobile_ [create-mobile 1.1.1 1.1.0 190 190 0 1 0.01]
$bs1_ random-motion 0
$bs2_ random-motion 0
$bs3_ random-motion 0
$bs4_ random-motion 0
# Position (fixed) for base-station nodes (HA & FA).
$bs1_ set X_ 250.000000000000
$bs1_ set Y_ 1050.000000000000
$bs1_ set Z_ 0.000000000000
$bs2_ set X_ 950.000000000000
$bs2_ set Y_ 1050.000000000000
$bs2_ set Z_ 0.000000000000
$bs3_ set X_ 950.000000000000
$bs3_ set Y_ 300.000000000000
$bs3_ set Z_ 0.000000000000
$bs4_ set X_ 250.000000000000
$bs4_ set Y_ 300.000000000000
$bs4_ set Z_ 0.000000000000
# 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
# movement of the MH
$mobile_ set Z_ 0.000000000000
$mobile_ set Y_ 1000.000000000000
$mobile_ set X_ 250.000000000000
# 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"
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 Files
# source set-def-options.tcl
# set BASEDIR to your own correct path
source /home/Administrator/ns-allinone-2.1b6/ns-2.1b6/tcl/lib/proc-mipv6-config.tcl
source /home/Administrator/ns-allinone-2.1b6/ns-2.1b6/tcl/lib/proc-tools.tcl
source /home/Administrator/ns-allinone-2.1b6/ns-2.1b6/tcl/lib/proc-topo.tcl
source /home/Administrator/ns-allinone-2.1b6/ns-2.1b6/tcl/lib/ns-topoman.tcl
source /home/Administrator/ns-allinone-2.1b6/ns-2.1b6/tcl/lib/proc-mobi-global.tcl
source /home/Administrator/ns-allinone-2.1b6/ns-2.1b6/tcl/lib/proc-mobi-config.tcl
source /home/Administrator/ns-allinone-2.1b6/ns-2.1b6/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]
#>------------------------ Open trace files ----------------------<
exec rm -f $opt(tracefile)
set tracef [open $opt(tracefile) w]
#... dump the file
$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
set-cbr
# set-ping-int 0.1 $cn_ $mobile_ 10 $opt(stop)
#>----------------------- 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"
}
Afficher la suite