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

cwnd bug?



I tried the following little script to log the cwnd of two competing
TCPs. They share a single buffer:

$ns duplex-link $na $nb 0.2Mb 10ms DropTail

Surprisingly the cwnd increases continuously which is quite
strange. Even after simulating it for 1 hour simulation time.

Is it a bug or a 'feature' :) ?

The program logs the windows into 'byte.log'. After 3600s of simulation,
the tail of the file looks like:

Time                cwnd1      cwnd2

3598.5999999989181  300.577296 300.517404
3598.7999999989179  300.577296 300.534042
3598.9999999989177  300.577296 300.550679
3599.1999999989175  300.577296 300.567315
3599.3999999989173  300.583949 300.577296
3599.5999999989172  300.600583 300.577296
3599.799999998917  300.617216 300.577296
3599.9999999989168  300.633848 300.577296

So the amount of packets in the system is >600? It is impossible!


\Andras

ns v2.1b5:
-----------------------------------------------------------------------

set ns [new Simulator]

set na [$ns node]
set nb [$ns node]

$ns duplex-link $na $nb 0.2Mb 10ms DropTail

$ns queue-limit $na $nb 100

set N 2
for {set i 0} {$i<$N} {incr i} {
   set tcp($i) [new Agent/TCP]
   $tcp($i) set class_ $i
   set sink($i) [new Agent/TCPSink]
   $ns attach-agent $na $tcp($i)
   $ns attach-agent $nb $sink($i)
   $ns connect $tcp($i) $sink($i)
   set ftp($i) [new Application/FTP]
   $ftp($i) attach-agent $tcp($i)

   $ns at 0 "$ftp($i) start"
}


set log [open byte.log w]

$ns at 3600 finish
$ns at 0 ize

set dt 0.2
set tt 0


proc ize {} {
   global ns tt dt tcp log N
   
   set str ""
   for {set j 0} {$j<$N} {incr j} {
      set bb [$tcp($j) set cwnd_ ]

      set b($j) $bb

      set str "$str [$tcp($j) set cwnd_ ]"
   }
   puts $log "$tt $str"

   set tt [expr $tt+$dt]
   $ns at $tt ize
}

proc finish {} {
	global log
        close $log
	exit 0
}

$ns run


-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Andras Veres                          [email protected]
TrafficLab ETH/LT                     Tel: +36-1-437-7735
Ericsson Kft.                         Fax: +36-1-437-7219 
P.O.B. 107, 1300 Budapest, Hungary
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~