在Ns2中查找链接的队列大小

时间:2014-04-03 08:19:17

标签: queue size ns2

模拟代码

 set ns [new Simulator]
 set nf [open out.nam w]
 $ns namtrace-all $nf

 proc finish {} {
global ns nf
$ns flush-trace
close $nf
exec nam out.nam &
exit 0
 }

set n0 [$ns node]
set n1 [$ns node]

$ns duplex-link $n0 $n1 1Mb 10ms DropTail


set udp0 [new Agent/UDP]
$ns attach-agent $n0 $udp0

set cbr0 [new Application/Traffic/CBR]
$cbr0 set packetSize_ 500
$cbr0 set interval_ 0.0005
$cbr0 attach-agent $udp0


set null0 [new Agent/Null] 
$ns attach-agent $n1 $null0

$ns connect $udp0 $null0


$ns at 0.5 "$cbr0 start"
$ns at 4.5 "$cbr0 stop"


$ns at 5.0 "finish"
$ns run

此代码生成两个节点n0,n1并在它们之间建立链接。 我想找到n0和n1之间链接的当前队列大小。 任何人都可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

如果未指定,则在ns-default.tcl文件(位于/ tcl / lib /中)中确定模拟参数。对于队列大小,默认值为s,设置为50个数据包:

Queue set limit_ 50

如果您有多个链接,并且希望所有链接具有相同的队列大小,则可以在.tcl文件中添加以下内容:

Queue set limit_ $queuesize

如果您有多个链接,但希望每个链接都具有给定的队列大小,您可以:

$ns duplex-link $n0 $n1 1Mb 10ms DropTail
$ns queue-limit $n0 $n1 $queuesize1

$ns duplex-link $n2 $n3 1Mb 10ms DropTail
$ns queue-limit $n2 $n3 $queuesize2

希望这有帮助

尼古拉斯