[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ns] TCP and CBQ?



Hi all,
I've been looking to replies about the same question. I understand the problem and I tried to write a simple script to demonstrate how it works. However I.m still getting the same error message:
 
ns: _o26 unknown-flow 1 0 0:
    (_o26 cmd line 1)
    invoked from within
"_o26 cmd unknown-flow 1 0 0"
    invoked from within
"catch "$self cmd $args" ret"
    (procedure "_o26" line 2)
    (SplitObject unknown line 2)
    invoked from within
"_o26 unknown-flow 1 0 0"
I'm attaching my code, please have a look and let me know if I'm doing something wrong. Any help will be appreciated.
BTW: I tried my code with FULL TCP and it works fine. Unfortunately I need to use one way TCP.
 
Thanks in Advance.
Nasser
 
Here is the code:
 
#Create a simulator object
set ns [new Simulator]
 
#Open the ns trace file
set nsf [pen out_test.txt w]
$ns trace-all $nsf
 
#Define the 'finish' procedure
proc finish {} {
 global ns
 $ns flush-trace
 #Close the trace file
 close $nsf
 exit 0
}
 
#Create nodes
set n0 [$ns node]
set n1 [$ns node]
 
#Create CBQ link between the nodes
$ns duplex-link $n0 $n1 10Mb 20ms CBQ
 
#Configure the CBQ
set cbqlink1 [$ns link $n0 $n1]
set cbqlink2 [$ns link $n1 $n0]
 
#Set the CBQClass
set topclass [new CBQClass]
$topclass setparams none 0 1 auto 9 2 0
 
set class_0 [new CBQClass]
set queue_0 [new Queue/DropTail]
$queue_0 set limit_ 40
$class_0 install-queue $queue_0
$class_0 setparams $topclass 1 1 auto 8 1 0
 
set class_1 [new CBQClass]
set queue_1 [new Queue/DropTail]
$queue_1 set limit_ 40
$class_1 install-queue $queue_1
$class_1 setparams $topclass 1 1 auto 0 1 0
 
$cbqlink1 insert $topclass
$cbqlink1 insert $class_0
$cbqlink2 insert $topclass
$cbqlink2 insert $class_1
 
$cbqlink1 bind $class_0 0
$cbqlink2 bind $class_1 1
 
# create a TCP connection between n0 and n1
set tcp [new Agent/TCP]
$ns attach-agent $n0 $tcp
$tcp set fid_ 0
$tcp set window_ 85
set ftp [new Application/FTP]
$ftp attach-agent $tcp
set sink [new Agent/TCPSink]
$ns attach-agent $n1 $sink
$sink set fid_ 1
$ns connect $tcp $sink
 
#Schedule events
puts "... Simulation running ..."
$ns at 0.0 "$ftp start"
$ns at 3.0 "$ftp stop"
$ns at 3.5 "finish"
 
#Run the simulation
$ns run
BEGIN:VCARD
VERSION:2.1
N:Alzeidi;Nasser
FN:Nasser Alzeidi
TEL;HOME;VOICE:(216) 844-0454
ADR;HOME:;;12000 Fairhill Rd. #405;Cleveland;OH;44120;USA
LABEL;HOME;ENCODING=QUOTED-PRINTABLE:12000 Fairhill Rd. #405=0D=0ACleveland, OH 44120=0D=0AUSA
URL:http://vorlon.cwru.edu/~alzidi/
EMAIL;PREF;INTERNET:[email protected]
REV:20010124T220503Z
END:VCARD