⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test-suite-links.tcl

📁 跑leach需要的
💻 TCL
📖 第 1 页 / 共 2 页
字号:
Test/delayPacket1 instproc init {} {	$self instvar net_ test_	set net_	net4	set test_	delayPacket1	Agent/TCP set minrto_ 1	$self next pktTraceFile}Test/delayPacket1 instproc run {} {	global wrap wrap1        $self instvar ns_ node_ testName_	$self setTopo	$self June01defaults	set tcp1 [$ns_ create-connection TCP $node_(s1) TCPSink $node_(k1) 1]        $tcp1 set window_ 8        set ftp1 [$tcp1 attach-app FTP]        $ns_ at 0.0 "$ftp1 start"        $self dropPkts [$ns_ link $node_(r1) $node_(k1)] 1 {20} true 0.3	$self dropPkts [$ns_ link $node_(r1) $node_(k1)] 1 {22} true 0.4	# dropPkts is in support.tcl        $self tcpDump $tcp1 5.0	$ns_ at 5.0 "$self cleanupAll $testName_"        $ns_ run}##################################################### Delayer module ##################################################### Link r1-k1 blocked at time 2, unblocked at time 4.Class Test/delaySpike -superclass TestSuiteTest/delaySpike instproc init {} {	$self instvar net_ test_	set net_	net4	set test_	delaySpike	$self next pktTraceFile}Test/delaySpike instproc run {} {	global wrap wrap1        $self instvar ns_ node_ testName_ 	$self setTopo	set d1 [new Delayer]	set d2 [new Delayer]	$ns_ insert-delayer $node_(k1) $node_(r1) $d2	$ns_ insert-delayer $node_(r1) $node_(k1) $d1	$ns_ at 2.0 "$d1 block"	$ns_ at 2.0 "$d2 block"	$ns_ at 4.0 "$d1 unblock"	$ns_ at 4.0 "$d2 unblock"	set fid 1	set tcp1 [$ns_ create-connection TCP/Sack1 $node_(s1) TCPSink/Sack1 $node_(k1) $fid]        $tcp1 set window_ 1        set ftp1 [$tcp1 attach-app FTP]        $ns_ at 0.0 "$ftp1 start"        $self tcpDump $tcp1 5.0	$ns_ at 10.0 "$self cleanupAll $testName_"        $ns_ run}## Link r1-k1 blocked at time 2, unblocked at time 4.## TCP connection has a window of 8.Class Test/delaySpike1 -superclass TestSuiteTest/delaySpike1 instproc init {} {	$self instvar net_ test_	set net_	net4	set test_	delaySpike1	$self next pktTraceFile}Test/delaySpike1 instproc run {} {	global wrap wrap1        $self instvar ns_ node_ testName_ 	$self setTopo	set d1 [new Delayer]	set d2 [new Delayer]	$ns_ insert-delayer $node_(k1) $node_(r1) $d2	$ns_ insert-delayer $node_(r1) $node_(k1) $d1	$ns_ at 2.0 "$d1 block"	$ns_ at 2.0 "$d2 block"	$ns_ at 4.0 "$d1 unblock"	$ns_ at 4.0 "$d2 unblock"	set fid 1	set tcp1 [$ns_ create-connection TCP/Sack1 $node_(s1) TCPSink/Sack1 $node_(k1) $fid]        $tcp1 set window_ 8        set ftp1 [$tcp1 attach-app FTP]        $ns_ at 0.0 "$ftp1 start"        $self tcpDump $tcp1 5.0	$ns_ at 10.0 "$self cleanupAll $testName_"        $ns_ run}## link r1-k1 has delay spikes, on average for 0.1 seconds, every 0.5 secondsClass Test/delaySpikes -superclass TestSuiteTest/delaySpikes instproc init {} {	$self instvar net_ test_	set net_	net4	set test_	delaySpikes	$self next pktTraceFile}Test/delaySpikes instproc run {} {	global wrap wrap1        $self instvar ns_ node_ testName_	$self setTopo	set d1 [new Delayer]	$ns_ insert-delayer $node_(r1) $node_(k1) $d1	set len [new RandomVariable/Exponential]	$len set avg_ 0.1	set int [new RandomVariable/Exponential]	$int set avg_ 0.5	$d1 spike $int $len	set fid 1	set tcp1 [$ns_ create-connection TCP/Sack1 $node_(s1) TCPSink/Sack1 $node_(k1) $fid]        $tcp1 set window_ 1        set ftp1 [$tcp1 attach-app FTP]        $ns_ at 0.0 "$ftp1 start"        $self tcpDump $tcp1 5.0	$ns_ at 10.0 "$self cleanupAll $testName_"        $ns_ run}## link r1-k1 has delay spikes, on average for 0.1 seconds, every 0.5 seconds## TCP connection has a window of 8.Class Test/delaySpikes1 -superclass TestSuiteTest/delaySpikes1 instproc init {} {	$self instvar net_ test_	set net_	net4	set test_	delaySpikes1	$self next pktTraceFile}Test/delaySpikes1 instproc run {} {	global wrap wrap1        $self instvar ns_ node_ testName_	$self setTopo	set d1 [new Delayer]	$ns_ insert-delayer $node_(r1) $node_(k1) $d1	set len [new RandomVariable/Exponential]	$len set avg_ 0.1	set int [new RandomVariable/Exponential]	$int set avg_ 0.5	$d1 spike $int $len	set fid 1	set tcp1 [$ns_ create-connection TCP/Sack1 $node_(s1) TCPSink/Sack1 $node_(k1) $fid]        $tcp1 set window_ 8        set ftp1 [$tcp1 attach-app FTP]        $ns_ at 0.0 "$ftp1 start"        $self tcpDump $tcp1 5.0	$ns_ at 10.0 "$self cleanupAll $testName_"        $ns_ run}## Channel channelAllocDelayation delay when the queue is empty.Class Test/channelAllocDelay -superclass TestSuiteTest/channelAllocDelay instproc init {} {	$self instvar net_ test_	set net_	net4	set test_	channelAllocDelay	$self next pktTraceFile}Test/channelAllocDelay instproc run {} {	global wrap wrap1        $self instvar ns_ node_ testName_	$self setTopo	set d1 [new Delayer]	set d2 [new Delayer]	$ns_ insert-delayer $node_(k1) $node_(r1) $d1	$ns_ insert-delayer $node_(r1) $node_(k1) $d2	set len_dl [new RandomVariable/Uniform]	$len_dl set min_ 0.16	$len_dl set max_ 0.19	set int_dl [new RandomVariable/Uniform]	$int_dl set min_ 2	$int_dl set max_ 5	set len_ul [new RandomVariable/Uniform]	$len_ul set min_ 0.5	$len_ul set max_ 0.6	set int_ul [new RandomVariable/Uniform]	$int_ul set min_ 0.01	$int_ul set max_ 0.4	$d1 alloc $int_ul $len_ul	$d2 alloc $int_dl $len_dl	set fid 1	set tcp1 [$ns_ create-connection TCP/Sack1 $node_(s1) TCPSink/Sack1 $node_(k1) $fid]        $tcp1 set window_ 1        set ftp1 [$tcp1 attach-app FTP]        $ns_ at 0.0 "$ftp1 start"        $self tcpDump $tcp1 5.0	$ns_ at 10.0 "$self cleanupAll $testName_"	$ns_ run}## Channel allocation delay when the queue is empty.## Add a second connection on the reverse path.Class Test/channelAllocDelay1 -superclass TestSuiteTest/channelAllocDelay1 instproc init {} {	$self instvar net_ test_	set net_	net4	set test_	channelAllocDelay1	$self next pktTraceFile}Test/channelAllocDelay1 instproc run {} {	global wrap wrap1        $self instvar ns_ node_ testName_	$self setTopo	set d1 [new Delayer]	set d2 [new Delayer]	$ns_ insert-delayer $node_(k1) $node_(r1) $d1	$ns_ insert-delayer $node_(r1) $node_(k1) $d2	set len_dl [new RandomVariable/Uniform]	$len_dl set min_ 0.16	$len_dl set max_ 0.19	set int_dl [new RandomVariable/Uniform]	$int_dl set min_ 2	$int_dl set max_ 5	$d2 alloc $int_dl $len_dl	set len_ul [new RandomVariable/Uniform]	$len_ul set min_ 0.5	$len_ul set max_ 0.6	set int_ul [new RandomVariable/Uniform]	$int_ul set min_ 0.01	$int_ul set max_ 0.4	$d1 alloc $int_ul $len_ul	# int: time of keeping a channel without data. 	# len: delay in allocating a new channel.	set fid 1	set tcp1 [$ns_ create-connection TCP/Sack1 $node_(s1) TCPSink/Sack1 $node_(k1) $fid]        $tcp1 set window_ 1        set ftp1 [$tcp1 attach-app FTP]        $ns_ at 0.0 "$ftp1 start"	set fid 2	set tcp2 [$ns_ create-connection TCP/Sack1 $node_(k1) TCPSink/Sack1 $node_(s1) $fid]        $tcp2 set window_ 3        set ftp2 [$tcp2 attach-app FTP]        $ns_ at 3.0 "$ftp2 start"        $self tcpDump $tcp1 5.0	$ns_ at 10.0 "$self cleanupAll $testName_"	$ns_ run}## Does not drop extra packets immediately when queue size is lowered.#Class Test/change_queue -superclass TestSuiteTest/change_queue instproc init {} {        $self instvar net_ test_        set net_        net4        set test_       change_queue        $self next pktTraceFile}Test/change_queue instproc run {} {        global wrap wrap1        $self instvar ns_ node_ testName_        $self setTopo        set fid 1        set tcp1 [$ns_ create-connection TCP $node_(s1) TCPSink $node_(k1) $fid]	$tcp1 set window_ 8        set ftp1 [$tcp1 attach-app FTP]        $ns_ at 0.0 "$ftp1 start"        set link1 [$ns_ link $node_(r1) $node_(k1)]        set queue1 [$link1 queue]        $ns_ at 5.0 "$ns_ queue-limit $node_(r1) $node_(k1) 5"        $self tcpDump $tcp1 5.0        $ns_ at 10.0 "$self cleanupAll $testName_"        $ns_ run}## Drops extra packets when queue size is lowered.# Validation test from Andrei Gurtov.#Class Test/queue_shrink -superclass TestSuiteTest/queue_shrink instproc init {} {        $self instvar net_ test_        set net_        net4        set test_       queue_shrink        $self next pktTraceFile}Test/queue_shrink instproc run {} {        global wrap wrap1        $self instvar ns_ node_ testName_        $self setTopo        set fid 1        set tcp1 [$ns_ create-connection TCP $node_(s1) TCPSink $node_(k1) $fid]	$tcp1 set window_ 8        set ftp1 [$tcp1 attach-app FTP]        $ns_ at 0.0 "$ftp1 start"        set link1 [$ns_ link $node_(r1) $node_(k1)]        set queue1 [$link1 queue]        $ns_ at 5.0 "$ns_ queue-limit $node_(r1) $node_(k1) 5; $queue1 shrink-queue"        $self tcpDump $tcp1 5.0        $ns_ at 10.0 "$self cleanupAll $testName_"        $ns_ run}TestSuite runTest

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -