dropped packet in nam
Sarah Liu
softrel9@nortelnetworks.com
Tue, 2 Mar 1999 13:26:16 -0600
This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.
------_=_NextPart_000_01BE64E2.8D6F6C4E
Content-Type: text/plain;
charset="iso-8859-1"
Hi, Haobo,
Thanks for your quick reply. I have followed your suggestion to modify the
code, but unfortunately, it doesn't work. I don't know if I did it right?
The error message is following:
(_o208 cmd line 1)
invoked from within
"_o208 cmd drop-target_o211"
invoked from within
"catch "$self cmd $args" ret"
(procedure "_o208" line 2)
(SplitObject unknown line 2)
invoked from within
"$loss_module1 drop-target[$ns create-trace Drop [$ns get-nam-traceall] $n0
$n1 "nam"]"
(file "fault4.tcl" line 132)
But if I changed this line to :
$ns create-trace Drop [$ns get-nam-traceall] $n0 $n1 "nam"
and keep the original drop-target command line. The test runs well just as
before -- still without the "d" in the nam file and can't see any rotating
square dropped.
For fear that I didn't put the drop-target command line in the right place,
I attached the test file for your reference.
Best Regards,
Sarah
------_=_NextPart_000_01BE64E2.8D6F6C4E
Content-Type: application/octet-stream;
name="fault4.tcl"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
filename="fault4.tcl"
Content-Location: ATT-0-E19E5B91D0D0D211A19D0000F81ABA04-F
AULT4.TCL
# tests/fault4.tcl=0A=
# 0=0A=
# +-+--+=0A=
# 1 2=0A=
# +--+-+--+--+=0A=
# 3 4 5=0A=
#=0A=
set ns [new Simulator -multicast on]=0A=
=0A=
$ns trace-all [open results/fault4.tr w]=0A=
$ns namtrace-all [open results/fault4.nam w]=0A=
=0A=
=0A=
set n0 [$ns node]=0A=
set n1 [$ns node]=0A=
set n2 [$ns node]=0A=
set n3 [$ns node]=0A=
set n4 [$ns node]=0A=
set n5 [$ns node]=0A=
=0A=
$ns duplex-link $n0 $n1 1.5Mb 10ms DropTail=0A=
$ns duplex-link $n0 $n2 1.5Mb 10ms DropTail=0A=
$ns duplex-link $n1 $n3 1.5Mb 10ms DropTail=0A=
$ns duplex-link $n1 $n4 1.5Mb 10ms DropTail=0A=
$ns duplex-link $n2 $n4 1.5Mb 10ms DropTail=0A=
$ns duplex-link $n2 $n5 1.5Mb 10ms DropTail=0A=
$ns duplex-link-op $n0 $n1 orient left-down=0A=
$ns duplex-link-op $n0 $n2 orient down-right=0A=
$ns duplex-link-op $n1 $n3 orient left-down=0A=
$ns duplex-link-op $n1 $n4 orient right-down=0A=
$ns duplex-link-op $n2 $n4 orient left-down=0A=
$ns duplex-link-op $n2 $n5 orient right-down=0A=
=0A=
### Start multicast configuration:=0A=
source ../src/CBTtimers.tcl=0A=
=0A=
CBT set Core_([expr 0x8003]) $n0=0A=
=0A=
CBT set JoinRtxTimeout_ 0.1=0A=
CBT set TransTimeout_ 0.1=0A=
CBT set EchoTimeout_ 0.15=0A=
CBT set DownstreamTimeout_ 0.1=0A=
=0A=
$ns rtproto Algorithmic=0A=
set mproto CBT=0A=
set mrthandle [$ns mrtproto $mproto {}]=0A=
if {$mrthandle !=3D ""} {=0A=
$mrthandle set_c_rp [list $n2]=0A=
}=0A=
=0A=
### End of multicast configuration=0A=
=0A=
### set the colour of packets generated by the constant bit rate =
agents=0A=
### and of control messages=0A=
=0A=
$ns color 30 purple ;#prunes=0A=
$ns color 34 red ;#joinreqs=0A=
$ns color 35 yellow ;#joinacks=0A=
$ns color 36 orange ;#echoreqs=0A=
$ns color 37 cyan ;#echoreplys=0A=
$ns color 38 green ;#flushtrees=0A=
=0A=
$n0 color blue ;#Core=0A=
$n1 color Navy=0A=
$n2 color BlueViolet=0A=
=0A=
$ns color 101 Navy ;#cbrs =0A=
$ns color 102 BlueViolet =0A=
=0A=
set cbr1 [new Agent/CBR]=0A=
#$cbr1 set ttl_ 3=0A=
$cbr1 set dst_ 0x8003=0A=
$cbr1 set class_ 101 =0A=
$cbr1 set interval_ 20ms=0A=
$ns attach-agent $n1 $cbr1=0A=
=0A=
set cbr2 [new Agent/CBR]=0A=
#$cbr2 set ttl_ 3=0A=
$cbr2 set dst_ 0x8003=0A=
$cbr2 set class_ 102=0A=
$cbr2 set interval_ 20ms=0A=
$ns attach-agent $n2 $cbr2=0A=
=0A=
set rcvr0 [new Agent/LossMonitor]=0A=
set rcvr1 [new Agent/LossMonitor]=0A=
set rcvr2 [new Agent/LossMonitor] =0A=
set rcvr3 [new Agent/LossMonitor]=0A=
set rcvr4 [new Agent/LossMonitor]=0A=
set rcvr5 [new Agent/LossMonitor]=0A=
$ns attach-agent $n0 $rcvr0=0A=
$ns attach-agent $n1 $rcvr1=0A=
$ns attach-agent $n2 $rcvr2=0A=
$ns attach-agent $n3 $rcvr3=0A=
$ns attach-agent $n4 $rcvr4=0A=
$ns attach-agent $n5 $rcvr5=0A=
=0A=
=0A=
$ns at 0.2 "$n0 join-group $rcvr0 0x8003"=0A=
$ns at 0.2 "$n1 join-group $rcvr1 0x8003"=0A=
$ns at 0.3 "$n2 join-group $rcvr2 0x8003"=0A=
$ns at 0.2 "$n3 join-group $rcvr3 0x8003"=0A=
$ns at 0.2 "$n4 join-group $rcvr4 0x8003"=0A=
$ns at 0.3 "$n5 join-group $rcvr5 0x8003"=0A=
$ns at 0.6 "$n3 leave-group $rcvr3 0x8003"=0A=
$ns at 0.8 "$n2 leave-group $rcvr2 0x8003"=0A=
$ns at 1.0 "$n5 leave-group $rcvr5 0x8003"=0A=
=0A=
set loss_module1 [new SelectErrorModel]=0A=
$loss_module1 drop-packet 2 200 1 ;# drop one PT_CBR packet every =
200 packets=0A=
#$loss_module1 drop-target [$ns set nullAgent_] ;# <--- modified =
here=0A=
=0A=
set loss_module2 [new SelectErrorModel]=0A=
$loss_module2 drop-packet 2 100 1 ;# drop one PT_CBR packet every =
100 packets=0A=
$loss_module2 drop-target [$ns set nullAgent_]=0A=
=0A=
set loss_module3 [new SelectErrorModel]=0A=
$loss_module3 drop-packet 2 100 1 ;# drop one PT_CBR packet every =
100 packets=0A=
$loss_module3 drop-target [$ns set nullAgent_]=0A=
=0A=
# insert the loss module; must be done before receivers join groups=0A=
$ns lossmodel $loss_module1 $n0 $n1=0A=
#$ns create-trace Drop [$ns get-nam-traceall] $n0 $n1 "nam" ;# =
<--- modified here=0A=
=0A=
# the line you suggested=0A=
$loss_module1 drop-target[$ns create-trace Drop [$ns get-nam-traceall] =
$n0 $n1 "nam"] =0A=
=0A=
$ns lossmodel $loss_module2 $n1 $n3=0A=
$ns lossmodel $loss_module3 $n2 $n5=0A=
=0A=
$ns at 0.1 "$cbr1 start"=0A=
$ns at 0.15 "$cbr2 start"=0A=
=0A=
$ns at 1.2 "finish"=0A=
=0A=
proc finish {} {=0A=
global rcvr3 rcvr4 rcvr5 n0 rcvr2 rcvr1 rcvr0 ns=0A=
$ns flush-trace=0A=
puts "rcvr 0 lost [$rcvr0 set nlost_] pkt, rcv [$rcvr0 set =
npkts_]"=0A=
puts "rcvr 1 lost [$rcvr1 set nlost_] pkt, rcv [$rcvr1 set =
npkts_]"=0A=
puts "rcvr 2 lost [$rcvr2 set nlost_] pkt, rcv [$rcvr2 set =
npkts_]"=0A=
puts "rcvr 3 lost [$rcvr3 set nlost_] pkt, rcv [$rcvr3 set npkts=
_]"=0A=
puts "rcvr 4 lost [$rcvr4 set nlost_] pkt, rcv [$rcvr4 set =
npkts_]"=0A=
puts "rcvr 5 lost [$rcvr5 set nlost_] pkt, rcv [$rcvr5 set =
npkts_]"=0A=
exec nam results/fault4.nam &=0A=
exit 0=0A=
}=0A=
=0A=
$ns run=0A=
=0A=
=0A=
------_=_NextPart_000_01BE64E2.8D6F6C4E--