Hi,all. Has anybody used RED/PD queue before? how to configure the redpd
queue to make it work?
I wrote a simple script to testify the simulation mentioned by Ratul. M. in
section 5.2 "Fairness" of his original red-pd paper, "RED-PD: Controlling
High Bandwidth Flows at the Congested Router". The scenario has a congested
link of 10Mbps and 9 TCP flows and 3 UDP flows.
I first implemented the RED version of this simulation, it works well. But
when I switch the queue to RED/PD, and make some corresponding changes as
below, it works (outputs) just like the RED version, why? Need the
$redpdfmon to be configured someway?
I know there are files in ~ns/tcl/ex and ~ns/tcl/test, but those files are
too complex, and just for some additional functions I don't need, I have
been focus on those files for 2 days and only get the 6 configure parameters
for the RED/PD queue, as I had added in the below script.

PLZ, anyone could help me!

set bandwidth 10
set delay 10
set tcpflows 9
set udpflows 3
set addupflows [expr $tcpflows+$udpflows]

$ns simplex-link $n1 $n2 [expr $bandwidth]Mb [expr $delay]ms RED/PD
$ns simplex-link $n2 $n1 [expr $bandwidth]Mb [expr $delay]ms DropTail
set redpdlink [$ns link $n1 $n2]
set redpdq [$redpdlink queue]
$redpdq set auto_ true
$redpdq set global_target_ true
$redpdq set targetBW_ 0.8Mb
$redpdq set noMonitored $addupflows
set redpdfmon [$redpdq makeflowmon $redpdlink]

...

foreach flow [$redpdfmon flows] {
 if {[$flow set flowid_] == $fid} {
  ...
 }
}

Reply via email to