[ns] Classifier error...
Rajesh Badveti
rajesh.badveti at gmail.com
Mon Apr 20 01:09:46 PDT 2009
Hello Users...
Can any detail me how to overcvome this error
message...!
This actually occurs when am simulating a
wired-cum-wireless scenario using hierarchical routing.
2 TCP and 2 udp sources (wired nodes) connected
to a router and router to a BaseStationNode.
Then 2 tcp sinks and 2 null nodes( acts as UDP
sinks) virtual coinnection to a BaseStation.
Please provide me the solution.. the script is
mentioned below to error message.
Error Message ;
--- Classfier::no-slot{} default handler (tcl/lib/ns-lib.tcl) ---
_o36: no target for slot 1023
_o36 type: Classifier/Addr
content dump:
classifier _o36
0 offset
22 shift
1023 mask
1 slots
slot 0: _o37 (Classifier/Addr)
---------- Finished standard no-slot{} default handler ----------
Script :
.
### This simulation is an example of combination of wired and wireless
### topologies.
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-udp.tr
set opt(namtr) wired-and-wireless-udp.nam
set opt(nn) 4
set opt(adhocRouting) DSDV
set opt(cp) ""
set opt(sc) "../mobility/scene/scen-3-test"
set opt(stop) 50
set num_wired_nodes 5
set num_bs_nodes 1
set data_interval 0.2 ;# CBR Traffic Interval
set ns_ [new Simulator]
# set up for hierarchical routing
$ns_ node-config -addressType hierarchical
AddrParams set domain_num_ 2
lappend cluster_num 1 1
AddrParams set cluster_num_ $cluster_num
lappend eilastlevel 5 5
AddrParams set nodes_num_ $eilastlevel
$ns_ use-newtrace
set tracefd [open $opt(tr) w]
$ns_ trace-all $tracefd
set namtracefd [open $opt(namtr) w]
$ns_ namtrace-all $namtracefd
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.0.1 0.0.2 0.0.3 0.0.4}
for {set i 0} {$i < $num_wired_nodes} {incr i} {
set W($i) [$ns_ node [lindex $temp $i]]
}
#create a router node
#set r0 [$ns_ node]
$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 temp {1.0.0 1.0.1 1.0.2 1.0.3 1.0.4}
set BS(0) [$ns_ node [lindex $temp 0]]
$BS(0) random-motion 0
$BS(0) set X_ 1.0
$BS(0) set Y_ 2.0
$BS(0) set Z_ 0.0
#configure for mobilenodes
$ns_ node-config -wiredRouting OFF
for {set j 0} {$j < $opt(nn)} {incr j} {
set node_($j) [ $ns_ node [lindex $temp \
[expr $j+1]] ]
$node_($j) base-station [AddrParams addr2id [$BS(0) node-addr]]
}
#create links between wired and BS nodes
$ns_ duplex-link $W(0) $W(4) 5Mb 2ms DropTail
$ns_ duplex-link $W(1) $W(4) 5Mb 2ms DropTail
$ns_ duplex-link $W(2) $W(4) 5Mb 2ms DropTail
$ns_ duplex-link $W(3) $W(4) 5Mb 2ms DropTail
$ns_ duplex-link $W(4) $BS(0) 5Mb 2ms DropTail
#$ns_ duplex-link-op $W(3) $W(1) orient down
#$ns_ duplex-link-op $W(4) $BS(0) orient left-down
#$ns_ duplex-link-op $W(5) $BS(1) orient right-down
# setup TCP connections
set tcp0 [new Agent/TCP]
$tcp0 set class_ 2
set sink0 [new Agent/TCPSink]
$ns_ attach-agent $W(0) $tcp0
$ns_ attach-agent $node_(0) $sink0
$ns_ connect $tcp0 $sink0
set ftp0 [new Application/FTP]
$ftp0 attach-agent $tcp0
$ns_ at 4.0 "$ftp0 start"
#set up UDP connections
set udp0 [new Agent/UDP]
$udp0 set class_ 1
set null0 [new Agent/Null]
$ns_ attach-agent $W(2) $udp0
$ns_ attach-agent $node_(2) $null0
set cbr0 [new Application/Traffic/CBR]
$cbr0 set packetSize_ 1024
$cbr0 set interval_ $data_interval
$cbr0 set random_ 0
$cbr0 set maxpkts_ 10000
$cbr0 attach-agent $udp0
$ns_ at 8.0 "$cbr0 start"
# setup TCP connections
set tcp1 [new Agent/TCP]
$tcp0 set class_ 2
set sink1 [new Agent/TCPSink]
$ns_ attach-agent $W(1) $tcp1
$ns_ attach-agent $node_(1) $sink1
$ns_ connect $tcp1 $sink1
set ftp1 [new Application/FTP]
$ftp1 attach-agent $tcp1
$ns_ at 12.0 "$ftp1 start"
#set up UDP connections
set udp1 [new Agent/UDP]
$udp1 set class_ 1
set null1 [new Agent/Null]
$ns_ attach-agent $W(3) $udp1
$ns_ attach-agent $node_(3) $null1
set cbr1 [new Application/Traffic/CBR]
$cbr1 set packetSize_ 1024
$cbr1 set interval_ $data_interval
$cbr1 set random_ 0
$cbr1 set maxpkts_ 10000
$cbr1 attach-agent $udp1
$ns_ at 16.0 "$cbr1 start"
for {set i 0} {$i < $opt(nn)} {incr i} {
$ns_ initial_node_pos $node_($i) 20
}
for {set i } {$i < $opt(nn) } {incr i} {
$ns_ at $opt(stop).0000010 "$node_($i) reset";
}
$ns_ at $opt(stop).0000010 "$BS(0) reset";
$ns_ at $opt(stop).1 "puts \"NS EXITING...\" ; $ns_ halt"
puts "Starting Simulation..."
$ns_ at 0.0 "$W(0) label TCPSource1"
$ns_ at 0.1 "$W(1) label TCPSource2"
$ns_ at 0.2 "$W(2) label UDPSource1"
$ns_ at 0.3 "$W(3) label UDPSource2"
$ns_ at 0.4 "$W(4) label Router"
$ns_ at 0.5 "$BS(0) label BS"
$ns_ at 0.6 "$node_(0) label TCPSink1"
$ns_ at 0.7 "$node_(1) label TCPSink2"
$ns_ at 0.8 "$node_(2) label UDPnull1"
$ns_ at 0.9 "$node_(3) label UDPnull2"
$ns_ run
More information about the Ns-users
mailing list