У меня есть топология, подобная этой:
[bunch of TCP/Reno sources]<---->Router1<---->Router2<---->[bunch of TCPSinks]
есть 20 пар соединений через эти два маршрутизатора.
например с соединением TCP1-Sink1 У меня есть window_, установленный в 32, и затем я запустите симуляцию и построите значения cwnd _.
Проблема в том, что cwnd_ иногда больше, чем window _,
Например, если я установил window_ в 5, я получу это:
, а в случае 30 это:
Почему это происходит, и почему cwnd_ не падает, когда оно превышает window_?
вот код, который собирает данные
$ns at 0.5 "activateSources"
$ns at 1.5 "startRecordingWindow"
$ns at 20.0 "finish"
proc plotWindow {tcpSource file} {
global ns
set time 0.01
set now [$ns now]
set cwnd [$tcpSource set cwnd_]
puts $file "$now $cwnd"
$ns at [expr $now+$time] "plotWindow $tcpSource $file"
}