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--