test-suite-sctp.tcl
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:129k
源码类别:

通讯编程

开发平台:

Visual C++

  1. $sctp0 trace cwnd_
  2. $sctp0 trace rto_
  3. $sctp0 trace errorCount_
  4. $sctp0 attach $trace_ch
  5.     }
  6.     set sctp1 [new Agent/SCTP]
  7.     $ns attach-agent $n1 $sctp1
  8.     $sctp1 set mtu_ 1500
  9.     $sctp1 set initialRwnd_ 131072
  10.     $sctp1 set useDelayedSacks_ 0
  11.    
  12.     if {$quiet == 0} {
  13. $sctp1 set debugMask_ -1 
  14. $sctp1 set debugFileIndex_ 1
  15.     }
  16.    
  17.     $ns connect $sctp0 $sctp1
  18.     
  19.     set ftp0 [new Application/FTP]
  20.     $ftp0 attach-agent $sctp0
  21. }
  22. Test/sctp-multipleRtx-early instproc run {} {
  23.     $self instvar ns ftp0
  24.     $ns at 0.5 "$ftp0 start"
  25.     $ns at 10.0 "$self finish"
  26.     $ns run
  27. }
  28. Test/sctp-newReno instproc init {} {
  29.     $self instvar ns testName ftp0
  30.     global quiet
  31.     set testName newReno
  32.     $self next
  33.     set n0 [$ns node]
  34.     set n1 [$ns node]
  35.     $ns duplex-link $n0 $n1 .5Mb 200ms DropTail
  36.     $ns duplex-link-op $n0 $n1 orient right
  37.     set err [new ErrorModel/List]
  38.     $err droplist {17 29 31}
  39.     $ns lossmodel $err $n0 $n1
  40.     set sctp0 [new Agent/SCTP]
  41.     $ns attach-agent $n0 $sctp0
  42.     $sctp0 set mtu_ 1500
  43.     $sctp0 set dataChunkSize_ 1468
  44.     $sctp0 set numOutStreams_ 1
  45.     $sctp0 set initialCwnd_ 1
  46.     if {$quiet == 0} {
  47. $sctp0 set debugMask_ -1 
  48. $sctp0 set debugFileIndex_ 0
  49. set trace_ch [open trace.sctp w]
  50. $sctp0 set trace_all_ 1
  51. $sctp0 trace cwnd_
  52. $sctp0 trace rto_
  53. $sctp0 trace errorCount_
  54. $sctp0 attach $trace_ch
  55.     }
  56.     
  57.     set sctp1 [new Agent/SCTP]
  58.     $ns attach-agent $n1 $sctp1
  59.     $sctp1 set mtu_ 1500
  60.     $sctp1 set initialRwnd_ 131072
  61.     $sctp1 set useDelayedSacks_ 0
  62.    
  63.     if {$quiet == 0} {
  64. $sctp1 set debugMask_ -1 
  65. $sctp1 set debugFileIndex_ 1
  66.     }
  67.     
  68.     $ns connect $sctp0 $sctp1
  69.     
  70.     set ftp0 [new Application/FTP]
  71.     $ftp0 attach-agent $sctp0
  72. }
  73. Test/sctp-newReno instproc run {} {
  74.     $self instvar ns ftp0
  75.     $ns at 0.5 "$ftp0 start"
  76.     $ns at 7.0 "$ftp0 stop"
  77.     $ns at 10.0 "$self finish"
  78.     $ns run
  79. }
  80. Test/sctp-noEarlyHBs instproc init {} {
  81.     $self instvar ns testName ftp0
  82.     global quiet
  83.     set testName noEarlyHBs
  84.     $self next
  85.     set n0 [$ns node]
  86.     set n1 [$ns node]
  87.     $ns duplex-link $n0 $n1 .5Mb 200ms DropTail
  88.     $ns duplex-link-op $n0 $n1 orient right
  89.     
  90.     set sctp0 [new Agent/SCTP]
  91.     $ns attach-agent $n0 $sctp0
  92.     $sctp0 set mtu_ 1500
  93.     $sctp0 set dataChunkSize_ 1468
  94.     $sctp0 set numOutStreams_ 1
  95.    
  96.     if {$quiet == 0} {
  97. $sctp0 set debugMask_ -1 
  98. $sctp0 set debugFileIndex_ 0
  99. set trace_ch [open trace.sctp w]
  100. $sctp0 set trace_all_ 1
  101. $sctp0 trace cwnd_
  102. $sctp0 trace rto_
  103. $sctp0 trace errorCount_
  104. $sctp0 attach $trace_ch
  105.     }
  106.     
  107.     set sctp1 [new Agent/SCTP]
  108.     $ns attach-agent $n1 $sctp1
  109.     $sctp1 set mtu_ 1500
  110.     $sctp1 set initialRwnd_ 131072
  111.     $sctp1 set useDelayedSacks_ 0
  112.    
  113.     if {$quiet == 0} {
  114. $sctp1 set debugMask_ -1 
  115. $sctp1 set debugFileIndex_ 1
  116.     }
  117.     
  118.     $ns connect $sctp0 $sctp1
  119.     
  120.     set ftp0 [new Application/FTP]
  121.     $ftp0 attach-agent $sctp0
  122. }
  123. Test/sctp-noEarlyHBs instproc run {} {
  124.     $self instvar ns ftp0
  125.     $ns at 50.0 "$ftp0 start"
  126.     $ns at 55.0 "$self finish"
  127.     $ns run
  128. }
  129. Test/sctp-smallRwnd instproc init {} {
  130.     $self instvar ns testName ftp0
  131.     global quiet
  132.     set testName smallRwnd
  133.     $self next
  134.     set n0 [$ns node]
  135.     set n1 [$ns node]
  136.     $ns duplex-link $n0 $n1 .5Mb 300ms DropTail
  137.     $ns duplex-link-op $n0 $n1 orient right
  138.     $ns queue-limit $n0 $n1 10000
  139.     
  140.     set err [new ErrorModel/List]
  141.     
  142.     set sctp0 [new Agent/SCTP]
  143.     $ns attach-agent $n0 $sctp0
  144.     $sctp0 set mtu_ 1500
  145.     $sctp0 set dataChunkSize_ 724
  146.     $sctp0 set numOutStreams_ 1
  147.    
  148.     if {$quiet == 0} {
  149. $sctp0 set debugMask_ -1 
  150. $sctp0 set debugFileIndex_ 0
  151. set trace_ch [open trace.sctp w]
  152. $sctp0 set trace_all_ 1
  153. $sctp0 trace cwnd_
  154. $sctp0 trace rto_
  155. $sctp0 trace errorCount_
  156. $sctp0 attach $trace_ch
  157.     }
  158.     
  159.     set sctp1 [new Agent/SCTP]
  160.     $ns attach-agent $n1 $sctp1
  161.     $sctp1 set mtu_ 1500
  162.     $sctp1 set initialRwnd_ 4096
  163.     $sctp1 set useDelayedSacks_ 0
  164.    
  165.     if {$quiet == 0} {
  166. $sctp1 set debugMask_ -1 
  167. $sctp1 set debugFileIndex_ 1
  168.     }
  169.     
  170.     $ns connect $sctp0 $sctp1
  171.     
  172.     set ftp0 [new Application/FTP]
  173.     $ftp0 attach-agent $sctp0
  174. }
  175. Test/sctp-smallRwnd instproc run {} {
  176.     $self instvar ns ftp0
  177.     $ns at 0.5 "$ftp0 start"
  178.     $ns at 10.0 "$self finish"
  179.     $ns run
  180. }
  181. Test/sctp-zeroRtx instproc init {} {
  182.     $self instvar ns testName ftp0
  183.     global quiet
  184.     set testName zeroRtx 
  185.     $self next
  186.     set n0 [$ns node]
  187.     set n1 [$ns node]
  188.     $ns duplex-link $n0 $n1 .5Mb 200ms DropTail
  189.     $ns duplex-link-op $n0 $n1 orient right
  190.     
  191.     set err [new ErrorModel/List]
  192.     $err droplist {31}
  193.         
  194.     $ns lossmodel $err $n0 $n1
  195.     
  196.     set sctp0 [new Agent/SCTP]
  197.     $ns attach-agent $n0 $sctp0
  198.     $sctp0 set mtu_ 1500
  199.     $sctp0 set dataChunkSize_ 1468
  200.     $sctp0 set numOutStreams_ 1
  201.     $sctp0 set numUnrelStreams_ 1
  202.    
  203.     if {$quiet == 0} {
  204. $sctp0 set debugMask_ -1 
  205. $sctp0 set debugFileIndex_ 0
  206. set trace_ch [open trace.sctp w]
  207. $sctp0 set trace_all_ 1
  208. $sctp0 trace cwnd_
  209. $sctp0 trace rto_
  210. $sctp0 trace errorCount_
  211. $sctp0 attach $trace_ch
  212.     }
  213.     set sctp1 [new Agent/SCTP]
  214.     $ns attach-agent $n1 $sctp1
  215.     $sctp1 set mtu_ 1500
  216.     $sctp1 set initialRwnd_ 131072
  217.     $sctp1 set useDelayedSacks_ 1
  218.    
  219.     if {$quiet == 0} {
  220. $sctp1 set debugMask_ -1 
  221. $sctp1 set debugFileIndex_ 1
  222.     }
  223.     
  224.     $ns connect $sctp0 $sctp1
  225.     
  226.     set ftp0 [new Application/FTP]
  227.     $ftp0 attach-agent $sctp0
  228. }
  229. Test/sctp-zeroRtx instproc run {} {
  230.     $self instvar ns ftp0
  231.     $ns at 0.5 "$ftp0 start"
  232.     $ns at 6.0 "$self finish"
  233.     $ns run
  234. }
  235. Test/sctp-zeroRtx-burstLoss instproc init {} {
  236.     $self instvar ns testName ftp0
  237.     global quiet
  238.     set testName zeroRtx-burstLoss
  239.     $self next
  240.     set n0 [$ns node]
  241.     set n1 [$ns node]
  242.     $ns duplex-link $n0 $n1 .5Mb 200ms DropTail
  243.     $ns duplex-link-op $n0 $n1 orient right
  244.     
  245.     set err [new ErrorModel/List]
  246.     $err droplist {17 18 19 20 21}
  247.     $ns lossmodel $err $n0 $n1
  248.     set sctp0 [new Agent/SCTP]
  249.     $ns attach-agent $n0 $sctp0
  250.     $sctp0 set mtu_ 1500
  251.     $sctp0 set dataChunkSize_ 1468
  252.     $sctp0 set numOutStreams_ 1
  253.     $sctp0 set numUnrelStreams_ 1
  254.    
  255.     if {$quiet == 0} {
  256. $sctp0 set debugMask_ -1 
  257. $sctp0 set debugFileIndex_ 0
  258. set trace_ch [open trace.sctp w]
  259. $sctp0 set trace_all_ 1
  260. $sctp0 trace cwnd_
  261. $sctp0 trace rto_
  262. $sctp0 trace errorCount_
  263. $sctp0 attach $trace_ch
  264.     }
  265.     
  266.     set sctp1 [new Agent/SCTP]
  267.     $ns attach-agent $n1 $sctp1
  268.     $sctp1 set mtu_ 1500
  269.     $sctp1 set initialRwnd_ 131072
  270.     $sctp1 set useDelayedSacks_ 0
  271.    
  272.     if {$quiet == 0} {
  273. $sctp1 set debugMask_ -1 
  274. $sctp1 set debugFileIndex_ 1
  275.     }
  276.     
  277.     $ns connect $sctp0 $sctp1
  278.     
  279.     set ftp0 [new Application/FTP]
  280.     $ftp0 attach-agent $sctp0
  281. }
  282. Test/sctp-zeroRtx-burstLoss instproc run {} {
  283.     $self instvar ns ftp0
  284.     $ns at 0.5 "$ftp0 start"
  285.     $ns at 5.0 "$self finish"
  286.     $ns run
  287. }
  288. Test/sctp-hbAfterRto-2packetsTimeout instproc init {} {
  289.     $self instvar ns testName ftp0
  290.     global quiet
  291.     set testName hbAfterRto-2packetsTimeout
  292.     $self next
  293.     set n0 [$ns node]
  294.     set n1 [$ns node]
  295.     $ns duplex-link $n0 $n1 .5Mb 200ms DropTail
  296.     $ns duplex-link-op $n0 $n1 orient right
  297.     set err [new ErrorModel/List]
  298.     $err droplist {15 16 32 33}
  299.     $ns lossmodel $err $n0 $n1
  300.     set sctp0 [new Agent/SCTP/HbAfterRto]
  301.     $ns attach-agent $n0 $sctp0
  302.     $sctp0 set mtu_ 1500
  303.     $sctp0 set dataChunkSize_ 1468
  304.     $sctp0 set numOutStreams_ 1
  305.    
  306.     if {$quiet == 0} {
  307. $sctp0 set debugMask_ -1 
  308. $sctp0 set debugFileIndex_ 0
  309. set trace_ch [open trace.sctp w]
  310. $sctp0 set trace_all_ 1
  311. $sctp0 trace cwnd_
  312. $sctp0 trace rto_
  313. $sctp0 trace errorCount_
  314. $sctp0 attach $trace_ch
  315.     }
  316.     
  317.     set sctp1 [new Agent/SCTP/HbAfterRto]
  318.     $ns attach-agent $n1 $sctp1
  319.     $sctp1 set mtu_ 1500
  320.     $sctp1 set initialRwnd_ 131072
  321.     $sctp1 set useDelayedSacks_ 0
  322.    
  323.     if {$quiet == 0} {
  324. $sctp1 set debugMask_ -1 
  325. $sctp1 set debugFileIndex_ 1
  326.     }
  327.     
  328.     $ns connect $sctp0 $sctp1
  329.     
  330.     set ftp0 [new Application/FTP]
  331.     $ftp0 attach-agent $sctp0
  332. }
  333. Test/sctp-hbAfterRto-2packetsTimeout instproc run {} {
  334.     $self instvar ns ftp0
  335.     $ns at 0.5 "$ftp0 start"
  336.     $ns at 4.5 "$ftp0 stop"
  337.     $ns at 10.0 "$self finish"
  338.     $ns run
  339. }
  340. Test/sctp-hbAfterRto-multihome2-2Timeout instproc init {} {
  341.     $self instvar ns testName ftp0
  342.     global quiet
  343.     set testName hbAfterRto-multihome2-2Timeout
  344.     $self next
  345.     set host0_core [$ns node]
  346.     set host0_if0 [$ns node]
  347.     set host0_if1 [$ns node]
  348.     $host0_core color Red
  349.     $host0_if0 color Red
  350.     $host0_if1 color Red
  351.     $ns multihome-add-interface $host0_core $host0_if0
  352.     $ns multihome-add-interface $host0_core $host0_if1
  353.     set host1_core [$ns node]
  354.     set host1_if0 [$ns node]
  355.     set host1_if1 [$ns node]
  356.     $host1_core color Blue
  357.     $host1_if0 color Blue
  358.     $host1_if1 color Blue
  359.     $ns multihome-add-interface $host1_core $host1_if0
  360.     $ns multihome-add-interface $host1_core $host1_if1
  361.     $ns duplex-link $host0_if0 $host1_if0 .5Mb 200ms DropTail
  362.     $ns duplex-link $host0_if1 $host1_if1 .5Mb 200ms DropTail
  363.     set err0 [new ErrorModel/List]
  364.     $err0 droplist {16}
  365.     $ns lossmodel $err0 $host0_if0 $host1_if0
  366.     set err1 [new ErrorModel/List]
  367.     $err1 droplist {1}
  368.     $ns lossmodel $err1 $host0_if1 $host1_if1
  369.     set sctp0 [new Agent/SCTP/HbAfterRto]
  370.     $ns multihome-attach-agent $host0_core $sctp0
  371.     $sctp0 set mtu_ 1500
  372.     $sctp0 set dataChunkSize_ 1468
  373.     $sctp0 set numOutStreams_ 1
  374.     if {$quiet == 0} {
  375. $sctp0 set debugMask_ -1 
  376. $sctp0 set debugFileIndex_ 0
  377. set trace_ch [open trace.sctp w]
  378. $sctp0 set trace_all_ 1
  379. $sctp0 trace cwnd_
  380. $sctp0 trace rto_
  381. $sctp0 trace errorCount_
  382. $sctp0 attach $trace_ch
  383.     }
  384.     
  385.     set sctp1 [new Agent/SCTP/HbAfterRto]
  386.     $ns multihome-attach-agent $host1_core $sctp1
  387.     $sctp1 set mtu_ 1500
  388.     $sctp1 set initialRwnd_ 131072 
  389.     $sctp1 set useDelayedSacks_ 1
  390.    
  391.     if {$quiet == 0} {
  392. $sctp1 set debugMask_ -1 
  393. $sctp1 set debugFileIndex_ 1
  394.     }
  395.     
  396.     $ns connect $sctp0 $sctp1
  397.     $sctp0 set-primary-destination $host1_if0
  398.     
  399.     set ftp0 [new Application/FTP]
  400.     $ftp0 attach-agent $sctp0
  401. }
  402. Test/sctp-hbAfterRto-multihome2-2Timeout instproc run {} {
  403.     $self instvar ns ftp0
  404.     $ns at 0.5 "$ftp0 start"
  405.     $ns at 9.0 "$ftp0 stop"
  406.     $ns at 12.0 "$self finish"
  407.     $ns run
  408. }
  409. Test/sctp-multipleFastRtx-2packetsTimeout instproc init {} {
  410.     $self instvar ns testName ftp0
  411.     global quiet
  412.     set testName multipleFastRtx-2packetsTimeout
  413.     $self next
  414.     set n0 [$ns node]
  415.     set n1 [$ns node]
  416.     $ns duplex-link $n0 $n1 .5Mb 200ms DropTail
  417.     $ns duplex-link-op $n0 $n1 orient right
  418.     set err [new ErrorModel/List]
  419.     $err droplist {15 16 32 33}
  420.     $ns lossmodel $err $n0 $n1
  421.     set sctp0 [new Agent/SCTP/MultipleFastRtx]
  422.     $ns attach-agent $n0 $sctp0
  423.     $sctp0 set mtu_ 1500
  424.     $sctp0 set dataChunkSize_ 1468
  425.     $sctp0 set numOutStreams_ 1
  426.    
  427.     if {$quiet == 0} {
  428. $sctp0 set debugMask_ -1 
  429. $sctp0 set debugFileIndex_ 0
  430. set trace_ch [open trace.sctp w]
  431. $sctp0 set trace_all_ 1
  432. $sctp0 trace cwnd_
  433. $sctp0 trace rto_
  434. $sctp0 trace errorCount_
  435. $sctp0 attach $trace_ch
  436.     }
  437.     
  438.     set sctp1 [new Agent/SCTP/MultipleFastRtx]
  439.     $ns attach-agent $n1 $sctp1
  440.     $sctp1 set mtu_ 1500
  441.     $sctp1 set initialRwnd_ 131072
  442.     $sctp1 set useDelayedSacks_ 0
  443.    
  444.     if {$quiet == 0} {
  445. $sctp1 set debugMask_ -1 
  446. $sctp1 set debugFileIndex_ 1
  447.     }
  448.     
  449.     $ns connect $sctp0 $sctp1
  450.     
  451.     set ftp0 [new Application/FTP]
  452.     $ftp0 attach-agent $sctp0
  453. }
  454. Test/sctp-multipleFastRtx-2packetsTimeout instproc run {} {
  455.     $self instvar ns ftp0
  456.     $ns at 0.5 "$ftp0 start"
  457.     $ns at 4.5 "$ftp0 stop"
  458.     $ns at 10.0 "$self finish"
  459.     $ns run
  460. }
  461. Test/sctp-multipleFastRtx-multihome2-2Timeout instproc init {} {
  462.     $self instvar ns testName ftp0
  463.     global quiet
  464.     set testName multipleFastRtx-multihome2-2Timeout
  465.     $self next
  466.     set host0_core [$ns node]
  467.     set host0_if0 [$ns node]
  468.     set host0_if1 [$ns node]
  469.     $host0_core color Red
  470.     $host0_if0 color Red
  471.     $host0_if1 color Red
  472.     $ns multihome-add-interface $host0_core $host0_if0
  473.     $ns multihome-add-interface $host0_core $host0_if1
  474.     set host1_core [$ns node]
  475.     set host1_if0 [$ns node]
  476.     set host1_if1 [$ns node]
  477.     $host1_core color Blue
  478.     $host1_if0 color Blue
  479.     $host1_if1 color Blue
  480.     $ns multihome-add-interface $host1_core $host1_if0
  481.     $ns multihome-add-interface $host1_core $host1_if1
  482.     $ns duplex-link $host0_if0 $host1_if0 .5Mb 200ms DropTail
  483.     $ns duplex-link $host0_if1 $host1_if1 .5Mb 200ms DropTail
  484.     set err0 [new ErrorModel/List]
  485.     $err0 droplist {16}
  486.     $ns lossmodel $err0 $host0_if0 $host1_if0
  487.     set err1 [new ErrorModel/List]
  488.     $err1 droplist {1}
  489.     $ns lossmodel $err1 $host0_if1 $host1_if1
  490.     set sctp0 [new Agent/SCTP/MultipleFastRtx]
  491.     $ns multihome-attach-agent $host0_core $sctp0
  492.     $sctp0 set mtu_ 1500
  493.     $sctp0 set dataChunkSize_ 1468
  494.     $sctp0 set numOutStreams_ 1
  495.     if {$quiet == 0} {
  496. $sctp0 set debugMask_ -1 
  497. $sctp0 set debugFileIndex_ 0
  498. set trace_ch [open trace.sctp w]
  499. $sctp0 set trace_all_ 1
  500. $sctp0 trace cwnd_
  501. $sctp0 trace rto_
  502. $sctp0 trace errorCount_
  503. $sctp0 attach $trace_ch
  504.     }
  505.     
  506.     set sctp1 [new Agent/SCTP/MultipleFastRtx]
  507.     $ns multihome-attach-agent $host1_core $sctp1
  508.     $sctp1 set mtu_ 1500
  509.     $sctp1 set initialRwnd_ 131072 
  510.     $sctp1 set useDelayedSacks_ 1
  511.    
  512.     if {$quiet == 0} {
  513. $sctp1 set debugMask_ -1 
  514. $sctp1 set debugFileIndex_ 1
  515.     }
  516.     
  517.     $ns connect $sctp0 $sctp1
  518.     $sctp0 set-primary-destination $host1_if0
  519.     
  520.     set ftp0 [new Application/FTP]
  521.     $ftp0 attach-agent $sctp0
  522. }
  523. Test/sctp-multipleFastRtx-multihome2-2Timeout instproc run {} {
  524.     $self instvar ns ftp0
  525.     $ns at 0.5 "$ftp0 start"
  526.     $ns at 9.0 "$ftp0 stop"
  527.     $ns at 12.0 "$self finish"
  528.     $ns run
  529. }
  530. Test/sctp-mfrHbAfterRto-Rta2-2FRsTimeout instproc init {} {
  531.     $self instvar ns testName ftp0
  532.     global quiet
  533.     set testName mfrHbAfterRto-Rta2-2FRsTimeout
  534.     $self next
  535.     set host0_core [$ns node]
  536.     set host0_if0 [$ns node]
  537.     set host0_if1 [$ns node]
  538.     $host0_core color Red
  539.     $host0_if0 color Red
  540.     $host0_if1 color Red
  541.     $ns multihome-add-interface $host0_core $host0_if0
  542.     $ns multihome-add-interface $host0_core $host0_if1
  543.     set host1_core [$ns node]
  544.     set host1_if0 [$ns node]
  545.     set host1_if1 [$ns node]
  546.     $host1_core color Blue
  547.     $host1_if0 color Blue
  548.     $host1_if1 color Blue
  549.     $ns multihome-add-interface $host1_core $host1_if0
  550.     $ns multihome-add-interface $host1_core $host1_if1
  551.     $ns duplex-link $host0_if0 $host1_if0 .5Mb 200ms DropTail
  552.     $ns duplex-link $host0_if1 $host1_if1 .5Mb 200ms DropTail
  553.     set err0 [new ErrorModel/List]
  554.     $err0 droplist {16 29 37 38 39 40 41}
  555.     $ns lossmodel $err0 $host0_if0 $host1_if0
  556.     set sctp0 [new Agent/SCTP/MultipleFastRtx]
  557.     $ns multihome-attach-agent $host0_core $sctp0
  558.     $sctp0 set mtu_ 1500
  559.     $sctp0 set dataChunkSize_ 1468
  560.     $sctp0 set numOutStreams_ 1
  561.     $sctp0 set rtxToAlt_ 2
  562.     if {$quiet == 0} {
  563. $sctp0 set debugMask_ -1 
  564. $sctp0 set debugFileIndex_ 0
  565. set trace_ch [open trace.sctp w]
  566. $sctp0 set trace_all_ 1
  567. $sctp0 trace cwnd_
  568. $sctp0 trace rto_
  569. $sctp0 trace errorCount_
  570. $sctp0 attach $trace_ch
  571.     }
  572.     
  573.     set sctp1 [new Agent/SCTP/MultipleFastRtx]
  574.     $ns multihome-attach-agent $host1_core $sctp1
  575.     $sctp1 set mtu_ 1500
  576.     $sctp1 set initialRwnd_ 131072 
  577.     $sctp1 set useDelayedSacks_ 1
  578.    
  579.     if {$quiet == 0} {
  580. $sctp1 set debugMask_ -1 
  581. $sctp1 set debugFileIndex_ 1
  582.     }
  583.     
  584.     $ns connect $sctp0 $sctp1
  585.     $sctp0 set-primary-destination $host1_if0
  586.     
  587.     set ftp0 [new Application/FTP]
  588.     $ftp0 attach-agent $sctp0
  589. }
  590. Test/sctp-mfrHbAfterRto-Rta2-2FRsTimeout instproc run {} {
  591.     $self instvar ns ftp0
  592.     $ns at 0.5 "$ftp0 start"
  593.     $ns at 9.0 "$ftp0 stop"
  594.     $ns at 12.0 "$self finish"
  595.     $ns run
  596. }
  597. Test/sctp-timestamp-multihome2-2Rtx3 instproc init {} {
  598.     $self instvar ns testName ftp0
  599.     global quiet
  600.     set testName timestamp-multihome2-2Rt3
  601.     $self next
  602.     set host0_core [$ns node]
  603.     set host0_if0 [$ns node]
  604.     set host0_if1 [$ns node]
  605.     $host0_core color Red
  606.     $host0_if0 color Red
  607.     $host0_if1 color Red
  608.     $ns multihome-add-interface $host0_core $host0_if0
  609.     $ns multihome-add-interface $host0_core $host0_if1
  610.     set host1_core [$ns node]
  611.     set host1_if0 [$ns node]
  612.     set host1_if1 [$ns node]
  613.     $host1_core color Blue
  614.     $host1_if0 color Blue
  615.     $host1_if1 color Blue
  616.     $ns multihome-add-interface $host1_core $host1_if0
  617.     $ns multihome-add-interface $host1_core $host1_if1
  618.     $ns duplex-link $host0_if0 $host1_if0 .5Mb 200ms DropTail
  619.     $ns duplex-link $host0_if1 $host1_if1 .5Mb 200ms DropTail
  620.     set err [new ErrorModel/List]
  621.     $err droplist {16 17 18}
  622.     $ns lossmodel $err $host0_if0 $host1_if0
  623.     set sctp0 [new Agent/SCTP/Timestamp]
  624.     $ns multihome-attach-agent $host0_core $sctp0
  625.     $sctp0 set mtu_ 1500
  626.     $sctp0 set dataChunkSize_ 1456  # sctp/ip = 32, timestamp = 12
  627.     $sctp0 set numOutStreams_ 1
  628.     if {$quiet == 0} {
  629. $sctp0 set debugMask_ -1 
  630. $sctp0 set debugFileIndex_ 0
  631. set trace_ch [open trace.sctp w]
  632. $sctp0 set trace_all_ 1
  633. $sctp0 trace cwnd_
  634. $sctp0 trace rto_
  635. $sctp0 trace errorCount_
  636. $sctp0 attach $trace_ch
  637.     }
  638.     
  639.     set sctp1 [new Agent/SCTP/Timestamp]
  640.     $ns multihome-attach-agent $host1_core $sctp1
  641.     $sctp1 set mtu_ 1500
  642.     $sctp1 set dataChunkSize_ 512
  643.     $sctp1 set initialRwnd_ 131072 
  644.     $sctp1 set useDelayedSacks_ 1
  645.    
  646.     if {$quiet == 0} {
  647. $sctp1 set debugMask_ -1 
  648. $sctp1 set debugFileIndex_ 1
  649.     }
  650.     
  651.     $ns connect $sctp0 $sctp1
  652.     $sctp0 set-primary-destination $host1_if0
  653.     
  654.     set ftp0 [new Application/FTP]
  655.     $ftp0 attach-agent $sctp0
  656. }
  657. Test/sctp-timestamp-multihome2-2Rtx3 instproc run {} {
  658.     $self instvar ns ftp0
  659.     $ns at 0.5 "$ftp0 start"
  660.     $ns at 4.5 "$ftp0 stop"
  661.     $ns at 10.0 "$self finish"
  662.     $ns run
  663. }
  664. Test/sctp-timestamp-multihome2-2Timeout instproc init {} {
  665.     $self instvar ns testName ftp0
  666.     global quiet
  667.     set testName timestamp-multihome2-2Timeout
  668.     $self next
  669.     set host0_core [$ns node]
  670.     set host0_if0 [$ns node]
  671.     set host0_if1 [$ns node]
  672.     $host0_core color Red
  673.     $host0_if0 color Red
  674.     $host0_if1 color Red
  675.     $ns multihome-add-interface $host0_core $host0_if0
  676.     $ns multihome-add-interface $host0_core $host0_if1
  677.     set host1_core [$ns node]
  678.     set host1_if0 [$ns node]
  679.     set host1_if1 [$ns node]
  680.     $host1_core color Blue
  681.     $host1_if0 color Blue
  682.     $host1_if1 color Blue
  683.     $ns multihome-add-interface $host1_core $host1_if0
  684.     $ns multihome-add-interface $host1_core $host1_if1
  685.     $ns duplex-link $host0_if0 $host1_if0 .5Mb 200ms DropTail
  686.     $ns duplex-link $host0_if1 $host1_if1 .5Mb 200ms DropTail
  687.     set err0 [new ErrorModel/List]
  688.     $err0 droplist {16}
  689.     $ns lossmodel $err0 $host0_if0 $host1_if0
  690.     set err1 [new ErrorModel/List]
  691.     $err1 droplist {1}
  692.     $ns lossmodel $err1 $host0_if1 $host1_if1
  693.     set sctp0 [new Agent/SCTP/Timestamp]
  694.     $ns multihome-attach-agent $host0_core $sctp0
  695.     $sctp0 set mtu_ 1500
  696.     $sctp0 set dataChunkSize_ 1456  # sctp/ip = 32, timestamp = 12
  697.     $sctp0 set numOutStreams_ 1
  698.     if {$quiet == 0} {
  699. $sctp0 set debugMask_ -1 
  700. $sctp0 set debugFileIndex_ 0
  701. set trace_ch [open trace.sctp w]
  702. $sctp0 set trace_all_ 1
  703. $sctp0 trace cwnd_
  704. $sctp0 trace rto_
  705. $sctp0 trace errorCount_
  706. $sctp0 attach $trace_ch
  707.     }
  708.     
  709.     set sctp1 [new Agent/SCTP/Timestamp]
  710.     $ns multihome-attach-agent $host1_core $sctp1
  711.     $sctp1 set mtu_ 1500
  712.     $sctp1 set dataChunkSize_ 512
  713.     $sctp1 set initialRwnd_ 131072 
  714.     $sctp1 set useDelayedSacks_ 1
  715.    
  716.     if {$quiet == 0} {
  717. $sctp1 set debugMask_ -1 
  718. $sctp1 set debugFileIndex_ 1
  719.     }
  720.     
  721.     $ns connect $sctp0 $sctp1
  722.     $sctp0 set-primary-destination $host1_if0
  723.     
  724.     set ftp0 [new Application/FTP]
  725.     $ftp0 attach-agent $sctp0
  726. }
  727. Test/sctp-timestamp-multihome2-2Timeout instproc run {} {
  728.     $self instvar ns ftp0
  729.     $ns at 0.5 "$ftp0 start"
  730.     $ns at 9.0 "$ftp0 stop"
  731.     $ns at 12.0 "$self finish"
  732.     $ns run
  733. }
  734. Test/sctp-packet-loss-dest-conf instproc init {} {
  735.     $self instvar ns testName ftp0
  736.     global quiet
  737.     set testName packet-loss-dest-conf
  738.     $self next
  739.     
  740.     set host0_core [$ns node]
  741.     set host0_if0 [$ns node]
  742.     set host0_if1 [$ns node]
  743.     set host0_if2 [$ns node]
  744.     $host0_core color Red
  745.     $host0_if0 color Red
  746.     $host0_if1 color Red
  747.     $host0_if2 color Red
  748.     $ns multihome-add-interface $host0_core $host0_if0
  749.     $ns multihome-add-interface $host0_core $host0_if1
  750.     $ns multihome-add-interface $host0_core $host0_if2
  751.     set host1_core [$ns node]
  752.     set host1_if0 [$ns node]
  753.     set host1_if1 [$ns node]
  754.     set host1_if2 [$ns node]
  755.     $host1_core color Blue
  756.     $host1_if0 color Blue
  757.     $host1_if1 color Blue
  758.     $host1_if2 color Blue
  759.     $ns multihome-add-interface $host1_core $host1_if0
  760.     $ns multihome-add-interface $host1_core $host1_if1
  761.     $ns multihome-add-interface $host1_core $host1_if2
  762.     $ns duplex-link $host0_if0 $host1_if0 10Mb 45ms DropTail
  763.     [[$ns link $host0_if0 $host1_if0] queue] set limit_ 50
  764.     $ns duplex-link $host0_if1 $host1_if1 10Mb 45ms DropTail
  765.     [[$ns link $host0_if1 $host1_if1] queue] set limit_ 50
  766.     $ns duplex-link $host0_if2 $host1_if2 10Mb 45ms DropTail
  767.     [[$ns link $host0_if2 $host1_if2] queue] set limit_ 50
  768.     set err0 [new ErrorModel/List]
  769.     $err0 droplist {2 3}
  770.     $ns lossmodel $err0 $host0_if0 $host1_if0
  771.     set sctp0 [new Agent/SCTP]
  772.     $ns multihome-attach-agent $host0_core $sctp0
  773.     $sctp0 set mtu_ 1500
  774.     $sctp0 set dataChunkSize_ 1468
  775.     $sctp0 set numOutStreams_ 1
  776.     if {$quiet == 0} {
  777. $sctp0 set debugMask_ -1 
  778. $sctp0 set debugFileIndex_ 0
  779. set trace_ch [open trace.sctp w]
  780. $sctp0 set trace_all_ 1
  781. $sctp0 trace cwnd_
  782. $sctp0 trace rto_
  783. $sctp0 trace errorCount_
  784. $sctp0 attach $trace_ch
  785.     }
  786.     set sctp1 [new Agent/SCTP]
  787.     $ns multihome-attach-agent $host1_core $sctp1
  788.     $sctp1 set mtu_ 1500
  789.     $sctp1 set initialRwnd_ 131072 
  790.     $sctp1 set useDelayedSacks_ 1
  791.     if {$quiet == 0} {
  792. $sctp1 set debugMask_ -1 
  793. $sctp1 set debugFileIndex_ 1
  794.     }
  795.     $ns connect $sctp0 $sctp1
  796.     $sctp0 set-primary-destination $host1_if0
  797.     set ftp0 [new Application/FTP]
  798.     $ftp0 attach-agent $sctp0
  799. }
  800. Test/sctp-packet-loss-dest-conf instproc run {} {
  801.     $self instvar ns ftp0
  802.     $ns at 0.5 "$ftp0 start"
  803.     $ns at 20.0 "$self finish"
  804.     $ns run
  805. }
  806. Test/sctp-cmt-2paths-64K instproc init {} {
  807.     $self instvar ns testName ftp0
  808.     global quiet
  809.     set testName cmt-2paths-64K
  810.     $self next
  811.     set host0_core [$ns node]
  812.     set host0_if0 [$ns node]
  813.     set host0_if1 [$ns node]
  814.     set host0_if2 [$ns node]
  815.     $host0_core color Red
  816.     $host0_if0 color Red
  817.     $host0_if1 color Red
  818.     $host0_if2 color Red
  819.     $ns multihome-add-interface $host0_core $host0_if0
  820.     $ns multihome-add-interface $host0_core $host0_if1
  821.     set host1_core [$ns node]
  822.     set host1_if0 [$ns node]
  823.     set host1_if1 [$ns node]
  824.     $host1_core color Blue
  825.     $host1_if0 color Blue
  826.     $host1_if1 color Blue
  827.     $ns multihome-add-interface $host1_core $host1_if0
  828.     $ns multihome-add-interface $host1_core $host1_if1
  829.     
  830.     $ns duplex-link $host0_if0 $host1_if0 10Mb 45ms DropTail
  831.     [[$ns link $host0_if0 $host1_if0] queue] set limit_ 50
  832.     $ns duplex-link $host0_if1 $host1_if1 10Mb 45ms DropTail
  833.     [[$ns link $host0_if1 $host1_if1] queue] set limit_ 50
  834.     
  835.     set cmt_snd [new Agent/SCTP/CMT] 
  836.     $ns multihome-attach-agent $host0_core $cmt_snd
  837.     $cmt_snd set initialSsthresh_ 16000
  838.     $cmt_snd set mtu_ 1500
  839.     $cmt_snd set dataChunkSize_ 1468
  840.     $cmt_snd set numOutStreams_ 1
  841.     $cmt_snd set useCmtReordering_ 1
  842.     $cmt_snd set useCmtCwnd_ 1
  843.     $cmt_snd set useCmtDelAck_ 1
  844.     $cmt_snd set eCmtRtxPolicy_ 2 ; #RTX-SSTHRESH
  845.     if {$quiet == 0} {
  846. $cmt_snd set debugMask_ -1 
  847. $cmt_snd set debugFileIndex_ 0
  848. set trace_ch [open trace.sctp w]
  849. $cmt_snd set trace_all_ 1
  850. $cmt_snd trace cwnd_
  851. $cmt_snd trace rto_
  852. $cmt_snd trace errorCount_
  853. $cmt_snd attach $trace_ch
  854.     }
  855.     set cmt_rcv [new Agent/SCTP/CMT]
  856.     $ns multihome-attach-agent $host1_core $cmt_rcv
  857.     # MTU of 1500 = 1452 data bytes
  858.     $cmt_rcv set mtu_ 1500
  859.     $cmt_rcv set initialRwnd_ 65536
  860.     $cmt_rcv set useDelayedSacks_ 1
  861.     $cmt_rcv set useCmtDelAck_ 1
  862.     if {$quiet == 0} {
  863. $cmt_rcv set debugMask_ -1 
  864. $cmt_rcv set debugFileIndex_ 1
  865.     }
  866.     $ns connect $cmt_snd $cmt_rcv
  867.     set ftp0 [new Application/FTP]
  868.     $ftp0 attach-agent $cmt_snd
  869.     $cmt_snd set-primary-destination $host1_if0
  870. }
  871. Test/sctp-cmt-2paths-64K instproc run {} {
  872.     $self instvar ns ftp0
  873.     $ns at 0.0 "$ftp0 send 1452000"
  874.     $ns at 20.0 "$self finish"
  875.     $ns run
  876. }
  877. Test/sctp-cmt-2paths-64K-withloss instproc init {} {
  878.     $self instvar ns testName ftp0
  879.     global quiet
  880.     set testName cmt-2paths-64K-withloss
  881.     $self next
  882.     set host0_core [$ns node]
  883.     set host0_if0 [$ns node]
  884.     set host0_if1 [$ns node]
  885.     $host0_core color Red
  886.     $host0_if0 color Red
  887.     $host0_if1 color Red
  888.     $ns multihome-add-interface $host0_core $host0_if0
  889.     $ns multihome-add-interface $host0_core $host0_if1
  890.     set host1_core [$ns node]
  891.     set host1_if0 [$ns node]
  892.     set host1_if1 [$ns node]
  893.     $host1_core color Blue
  894.     $host1_if0 color Blue
  895.     $host1_if1 color Blue
  896.     $ns multihome-add-interface $host1_core $host1_if0
  897.     $ns multihome-add-interface $host1_core $host1_if1
  898.     
  899.     $ns duplex-link $host0_if0 $host1_if0 10Mb 30ms DropTail
  900.     [[$ns link $host0_if0 $host1_if0] queue] set limit_ 50
  901.     $ns duplex-link $host0_if1 $host1_if1 10Mb 45ms DropTail
  902.     [[$ns link $host0_if1 $host1_if1] queue] set limit_ 50
  903.     
  904.     set err [new ErrorModel/List]
  905.     $err droplist {16 17 18}
  906.     $ns lossmodel $err $host0_if0 $host1_if0
  907.     set cmt_snd [new Agent/SCTP/CMT] 
  908.     $ns multihome-attach-agent $host0_core $cmt_snd
  909.     $cmt_snd set initialSsthresh_ 16000
  910.     $cmt_snd set mtu_ 1500
  911.     $cmt_snd set dataChunkSize_ 1468
  912.     $cmt_snd set numOutStreams_ 1
  913.     $cmt_snd set useCmtReordering_ 1
  914.     $cmt_snd set useCmtCwnd_ 1
  915.     $cmt_snd set useCmtDelAck_ 1
  916.     $cmt_snd set eCmtRtxPolicy_ 2 ; #RTX-SSTHRESH
  917.     if {$quiet == 0} {
  918. $cmt_snd set debugMask_ -1 
  919. $cmt_snd set debugFileIndex_ 0
  920. set trace_ch [open trace.sctp w]
  921. $cmt_snd set trace_all_ 1
  922. $cmt_snd trace cwnd_
  923. $cmt_snd trace rto_
  924. $cmt_snd trace errorCount_
  925. $cmt_snd attach $trace_ch
  926.     }
  927.     set cmt_rcv [new Agent/SCTP/CMT]
  928.     $ns multihome-attach-agent $host1_core $cmt_rcv
  929.     # MTU of 1500 = 1452 data bytes
  930.     $cmt_rcv set mtu_ 1500
  931.     $cmt_rcv set initialRwnd_ 65536
  932.     $cmt_rcv set useDelayedSacks_ 1
  933.     $cmt_rcv set useCmtDelAck_ 1
  934.     
  935.     if {$quiet == 0} {
  936. $cmt_rcv set debugMask_ -1 
  937. $cmt_rcv set debugFileIndex_ 1
  938.     }
  939.     $ns connect $cmt_snd $cmt_rcv
  940.     set ftp0 [new Application/FTP]
  941.     $ftp0 attach-agent $cmt_snd
  942.     $cmt_snd set-primary-destination $host1_if0
  943. }
  944. Test/sctp-cmt-2paths-64K-withloss instproc run {} {
  945.     $self instvar ns ftp0
  946.     $ns at 0.0 "$ftp0 send 1452000"
  947.     $ns at 20.0 "$self finish"
  948.     $ns run
  949. }
  950. Test/sctp-cmt-3paths-64K instproc init {} {
  951.     $self instvar ns testName ftp0
  952.     global quiet
  953.     set testName cmt-3paths-64K
  954.     $self next
  955.     set host0_core [$ns node]
  956.     set host0_if0 [$ns node]
  957.     set host0_if1 [$ns node]
  958.     set host0_if2 [$ns node]
  959.     $host0_core color Red
  960.     $host0_if0 color Red
  961.     $host0_if1 color Red
  962.     $host0_if2 color Red
  963.     $ns multihome-add-interface $host0_core $host0_if0
  964.     $ns multihome-add-interface $host0_core $host0_if1
  965.     $ns multihome-add-interface $host0_core $host0_if2
  966.     set host1_core [$ns node]
  967.     set host1_if0 [$ns node]
  968.     set host1_if1 [$ns node]
  969.     set host1_if2 [$ns node]
  970.     $host1_core color Blue
  971.     $host1_if0 color Blue
  972.     $host1_if1 color Blue
  973.     $host1_if2 color Blue
  974.     $ns multihome-add-interface $host1_core $host1_if0
  975.     $ns multihome-add-interface $host1_core $host1_if1
  976.     $ns multihome-add-interface $host1_core $host1_if2
  977.     
  978.     $ns duplex-link $host0_if0 $host1_if0 10Mb 45ms DropTail
  979.     [[$ns link $host0_if0 $host1_if0] queue] set limit_ 50
  980.     $ns duplex-link $host0_if1 $host1_if1 10Mb 45ms DropTail
  981.     [[$ns link $host0_if1 $host1_if1] queue] set limit_ 50
  982.     $ns duplex-link $host0_if2 $host1_if2 10Mb 45ms DropTail
  983.     [[$ns link $host0_if2 $host1_if2] queue] set limit_ 50
  984.     
  985.     set cmt_snd [new Agent/SCTP/CMT] 
  986.     $ns multihome-attach-agent $host0_core $cmt_snd
  987.     $cmt_snd set initialSsthresh_ 16000
  988.     $cmt_snd set mtu_ 1500
  989.     $cmt_snd set dataChunkSize_ 1468
  990.     $cmt_snd set numOutStreams_ 1
  991.     $cmt_snd set useCmtReordering_ 1
  992.     $cmt_snd set useCmtCwnd_ 1
  993.     $cmt_snd set useCmtDelAck_ 1
  994.     $cmt_snd set eCmtRtxPolicy_ 2 ; #RTX-SSTHRESH
  995.     if {$quiet == 0} {
  996. $cmt_snd set debugMask_ -1 
  997. $cmt_snd set debugFileIndex_ 0
  998. set trace_ch [open trace.sctp w]
  999. $cmt_snd set trace_all_ 1
  1000. $cmt_snd trace cwnd_
  1001. $cmt_snd trace rto_
  1002. $cmt_snd trace errorCount_
  1003. $cmt_snd attach $trace_ch
  1004.     }
  1005.     set cmt_rcv [new Agent/SCTP/CMT]
  1006.     $ns multihome-attach-agent $host1_core $cmt_rcv
  1007.     # MTU of 1500 = 1452 data bytes
  1008.     $cmt_rcv set mtu_ 1500
  1009.     $cmt_rcv set initialRwnd_ 65536
  1010.     $cmt_rcv set useDelayedSacks_ 1
  1011.     $cmt_rcv set useCmtDelAck_ 1
  1012.     
  1013.     if {$quiet == 0} {
  1014. $cmt_rcv set debugMask_ -1 
  1015. $cmt_rcv set debugFileIndex_ 1
  1016.     }
  1017.     $ns connect $cmt_snd $cmt_rcv
  1018.     set ftp0 [new Application/FTP]
  1019.     $ftp0 attach-agent $cmt_snd
  1020.     $cmt_snd set-primary-destination $host1_if0
  1021. }
  1022. Test/sctp-cmt-3paths-64K instproc run {} {
  1023.     $self instvar ns ftp0
  1024.     $ns at 0.0 "$ftp0 send 1452000"
  1025.     $ns at 20.0 "$self finish"
  1026.     $ns run
  1027. }
  1028. Test/sctp-cmt-2paths-1path-fails instproc init {} {
  1029.     $self instvar ns testName ftp0
  1030.     global quiet
  1031.     set testName cmt-2paths-1path-fails
  1032.     $self next
  1033.     set host0_core [$ns node]
  1034.     set host0_if0 [$ns node]
  1035.     set host0_if1 [$ns node]
  1036.     $host0_core color Red
  1037.     $host0_if0 color Red
  1038.     $host0_if1 color Red
  1039.     $ns multihome-add-interface $host0_core $host0_if0
  1040.     $ns multihome-add-interface $host0_core $host0_if1
  1041.     set host1_core [$ns node]
  1042.     set host1_if0 [$ns node]
  1043.     set host1_if1 [$ns node]
  1044.     $host1_core color Blue
  1045.     $host1_if0 color Blue
  1046.     $host1_if1 color Blue
  1047.     $ns multihome-add-interface $host1_core $host1_if0
  1048.     $ns multihome-add-interface $host1_core $host1_if1
  1049.     
  1050.     $ns duplex-link $host0_if0 $host1_if0 10Mb 45ms DropTail
  1051.     [[$ns link $host0_if0 $host1_if0] queue] set limit_ 50
  1052.     $ns duplex-link $host0_if1 $host1_if1 10Mb 45ms DropTail
  1053.     [[$ns link $host0_if1 $host1_if1] queue] set limit_ 50
  1054.     
  1055.     set cmt_snd [new Agent/SCTP/CMT] 
  1056.     $ns multihome-attach-agent $host0_core $cmt_snd
  1057.     $cmt_snd set initialSsthresh_ 16000
  1058.     $cmt_snd set mtu_ 1500
  1059.     $cmt_snd set dataChunkSize_ 1468
  1060.     $cmt_snd set numOutStreams_ 1
  1061.     $cmt_snd set useCmtReordering_ 1
  1062.     $cmt_snd set useCmtCwnd_ 1
  1063.     $cmt_snd set useCmtDelAck_ 1
  1064.     $cmt_snd set eCmtRtxPolicy_ 2 ; #RTX-SSTHRESH
  1065.     if {$quiet == 0} {
  1066. $cmt_snd set debugMask_ -1 
  1067. $cmt_snd set debugFileIndex_ 0
  1068. set trace_ch [open trace.sctp w]
  1069. $cmt_snd set trace_all_ 1
  1070. $cmt_snd trace cwnd_
  1071. $cmt_snd trace rto_
  1072. $cmt_snd trace errorCount_
  1073. $cmt_snd attach $trace_ch
  1074.     }
  1075.     set cmt_rcv [new Agent/SCTP/CMT]
  1076.     $ns multihome-attach-agent $host1_core $cmt_rcv
  1077.     # MTU of 1500 = 1452 data bytes
  1078.     $cmt_rcv set mtu_ 1500
  1079.     $cmt_rcv set initialRwnd_ 65536
  1080.     $cmt_rcv set useDelayedSacks_ 1
  1081.     $cmt_rcv set useCmtDelAck_ 1
  1082.     if {$quiet == 0} {
  1083. $cmt_rcv set debugMask_ -1 
  1084. $cmt_rcv set debugFileIndex_ 1
  1085.     }
  1086.     $ns connect $cmt_snd $cmt_rcv
  1087.     set ftp0 [new Application/FTP]
  1088.     $ftp0 attach-agent $cmt_snd
  1089.     $cmt_snd set-primary-destination $host1_if0
  1090.     $ns rtmodel-at 10.0 down $host0_if1 $host1_if1
  1091. }
  1092. Test/sctp-cmt-2paths-1path-fails instproc run {} {
  1093.     $self instvar ns ftp0
  1094.     $ns at 0.0 "$ftp0 send 14520000"
  1095.     $ns at 120.0 "$self finish"
  1096.     $ns run
  1097. }
  1098. Test/sctp-cmt-3paths-1path-fails instproc init {} {
  1099.     $self instvar ns testName ftp0
  1100.     global quiet
  1101.     set testName cmt-3paths-1path-fails
  1102.     $self next
  1103.     set host0_core [$ns node]
  1104.     set host0_if0 [$ns node]
  1105.     set host0_if1 [$ns node]
  1106.     set host0_if2 [$ns node]
  1107.     $host0_core color Red
  1108.     $host0_if0 color Red
  1109.     $host0_if1 color Red
  1110.     $host0_if2 color Red
  1111.     
  1112.     $ns multihome-add-interface $host0_core $host0_if0
  1113.     $ns multihome-add-interface $host0_core $host0_if1
  1114.     $ns multihome-add-interface $host0_core $host0_if2
  1115.     set host1_core [$ns node]
  1116.     set host1_if0 [$ns node]
  1117.     set host1_if1 [$ns node]
  1118.     set host1_if2 [$ns node]
  1119.     $host1_core color Blue
  1120.     $host1_if0 color Blue
  1121.     $host1_if1 color Blue
  1122.     $host1_if2 color Blue
  1123.     $ns multihome-add-interface $host1_core $host1_if0
  1124.     $ns multihome-add-interface $host1_core $host1_if1
  1125.     $ns multihome-add-interface $host1_core $host1_if2
  1126.     
  1127.     $ns duplex-link $host0_if0 $host1_if0 10Mb 45ms DropTail
  1128.     [[$ns link $host0_if0 $host1_if0] queue] set limit_ 50
  1129.     $ns duplex-link $host0_if1 $host1_if1 10Mb 45ms DropTail
  1130.     [[$ns link $host0_if1 $host1_if1] queue] set limit_ 50
  1131.     $ns duplex-link $host0_if2 $host1_if2 10Mb 45ms DropTail
  1132.     [[$ns link $host0_if2 $host1_if2] queue] set limit_ 50
  1133.     
  1134.     set cmt_snd [new Agent/SCTP/CMT] 
  1135.     $ns multihome-attach-agent $host0_core $cmt_snd
  1136.     $cmt_snd set initialSsthresh_ 16000
  1137.     $cmt_snd set mtu_ 1500
  1138.     $cmt_snd set dataChunkSize_ 1468
  1139.     $cmt_snd set numOutStreams_ 1
  1140.     $cmt_snd set useCmtReordering_ 1
  1141.     $cmt_snd set useCmtCwnd_ 1
  1142.     $cmt_snd set useCmtDelAck_ 1
  1143.     $cmt_snd set eCmtRtxPolicy_ 2 ; #RTX-SSTHRESH
  1144.     if {$quiet == 0} {
  1145. $cmt_snd set debugMask_ -1 
  1146. $cmt_snd set debugFileIndex_ 0
  1147. set trace_ch [open trace.sctp w]
  1148. $cmt_snd set trace_all_ 1
  1149. $cmt_snd trace cwnd_
  1150. $cmt_snd trace rto_
  1151. $cmt_snd trace errorCount_
  1152. $cmt_snd attach $trace_ch
  1153.     }
  1154.     set cmt_rcv [new Agent/SCTP/CMT]
  1155.     $ns multihome-attach-agent $host1_core $cmt_rcv
  1156.     # MTU of 1500 = 1452 data bytes
  1157.     $cmt_rcv set mtu_ 1500
  1158.     $cmt_rcv set initialRwnd_ 65536
  1159.     $cmt_rcv set useDelayedSacks_ 1
  1160.     $cmt_rcv set useCmtDelAck_ 1
  1161.     if {$quiet == 0} {
  1162. $cmt_rcv set debugMask_ -1 
  1163. $cmt_rcv set debugFileIndex_ 1
  1164.     }
  1165.     $ns connect $cmt_snd $cmt_rcv
  1166.     set ftp0 [new Application/FTP]
  1167.     $ftp0 attach-agent $cmt_snd
  1168.     $cmt_snd set-primary-destination $host1_if0
  1169.     $ns rtmodel-at 10.0 down $host0_if1 $host1_if1
  1170. }
  1171. Test/sctp-cmt-3paths-1path-fails instproc run {} {
  1172.     $self instvar ns ftp0
  1173.     $ns at 0.0 "$ftp0 send 14520000"
  1174.     $ns at 100.0 "$self finish"
  1175.     $ns run
  1176. }
  1177. Test/sctp-cmt-packet-loss-dest-conf instproc init {} {
  1178.     $self instvar ns testName ftp0
  1179.     global quiet
  1180.     set testName cmt-packet-loss-dest-conf
  1181.     $self next
  1182.     set host0_core [$ns node]
  1183.     set host0_if0 [$ns node]
  1184.     set host0_if1 [$ns node]
  1185.     $host0_core color Red
  1186.     $host0_if0 color Red
  1187.     $host0_if1 color Red
  1188.     $ns multihome-add-interface $host0_core $host0_if0
  1189.     $ns multihome-add-interface $host0_core $host0_if1
  1190.     set host1_core [$ns node]
  1191.     set host1_if0 [$ns node]
  1192.     set host1_if1 [$ns node]
  1193.     $host1_core color Blue
  1194.     $host1_if0 color Blue
  1195.     $host1_if1 color Blue
  1196.     $ns multihome-add-interface $host1_core $host1_if0
  1197.     $ns multihome-add-interface $host1_core $host1_if1
  1198.     
  1199.     $ns duplex-link $host0_if0 $host1_if0 10Mb 45ms DropTail
  1200.     [[$ns link $host0_if0 $host1_if0] queue] set limit_ 50
  1201.     $ns duplex-link $host0_if1 $host1_if1 10Mb 45ms DropTail
  1202.     [[$ns link $host0_if1 $host1_if1] queue] set limit_ 50
  1203.     
  1204.     set err [new ErrorModel/List]
  1205.     $err droplist {2 3}
  1206.     $ns lossmodel $err $host0_if0 $host1_if0
  1207.     set cmt_snd [new Agent/SCTP/CMT] 
  1208.     $ns multihome-attach-agent $host0_core $cmt_snd
  1209.     $cmt_snd set initialSsthresh_ 16000
  1210.     $cmt_snd set mtu_ 1500
  1211.     $cmt_snd set dataChunkSize_ 1468
  1212.     $cmt_snd set numOutStreams_ 1
  1213.     $cmt_snd set useCmtReordering_ 1
  1214.     $cmt_snd set useCmtCwnd_ 1
  1215.     $cmt_snd set useCmtDelAck_ 1
  1216.     $cmt_snd set eCmtRtxPolicy_ 2  #RTX-SSTHRESH
  1217.     if {$quiet == 0} {
  1218. $cmt_snd set debugMask_ -1 
  1219. $cmt_snd set debugFileIndex_ 0
  1220. set trace_ch [open trace.sctp w]
  1221. $cmt_snd set trace_all_ 1
  1222. $cmt_snd trace cwnd_
  1223. $cmt_snd trace rto_
  1224. $cmt_snd trace errorCount_
  1225. $cmt_snd attach $trace_ch
  1226.     }
  1227.     set cmt_rcv [new Agent/SCTP/CMT]
  1228.     $ns multihome-attach-agent $host1_core $cmt_rcv
  1229.     # MTU of 1500 = 1452 data bytes
  1230.     $cmt_rcv set mtu_ 1500
  1231.     $cmt_rcv set initialRwnd_ 65536
  1232.     $cmt_rcv set useDelayedSacks_ 1
  1233.     $cmt_rcv set useCmtDelAck_ 1
  1234.     
  1235.     if {$quiet == 0} {
  1236. $cmt_rcv set debugMask_ -1 
  1237. $cmt_rcv set debugFileIndex_ 1
  1238.     }
  1239.     $ns connect $cmt_snd $cmt_rcv
  1240.     set ftp0 [new Application/FTP]
  1241.     $ftp0 attach-agent $cmt_snd
  1242.     $cmt_snd set-primary-destination $host1_if0
  1243. }
  1244. Test/sctp-cmt-packet-loss-dest-conf instproc run {} {
  1245.     $self instvar ns ftp0
  1246.     $ns at 0.0 "$ftp0 send 1452000"
  1247.     $ns at 20.0 "$self finish"
  1248.     $ns run
  1249. }
  1250. Test/sctp-cmt-Rtx-ssthresh instproc init {} {
  1251.     $self instvar ns testName ftp0
  1252.     global quiet
  1253.     set testName cmt-Rtx-ssthresh
  1254.     $self next
  1255.     set host0_core [$ns node]
  1256.     set host0_if0 [$ns node]
  1257.     set host0_if1 [$ns node]
  1258.     $host0_core color Red
  1259.     $host0_if0 color Red
  1260.     $host0_if1 color Red
  1261.     $ns multihome-add-interface $host0_core $host0_if0
  1262.     $ns multihome-add-interface $host0_core $host0_if1
  1263.     set host1_core [$ns node]
  1264.     set host1_if0 [$ns node]
  1265.     set host1_if1 [$ns node]
  1266.     $host1_core color Blue
  1267.     $host1_if0 color Blue
  1268.     $host1_if1 color Blue
  1269.     $ns multihome-add-interface $host1_core $host1_if0
  1270.     $ns multihome-add-interface $host1_core $host1_if1
  1271.     
  1272.     $ns duplex-link $host0_if0 $host1_if0 10Mb 45ms DropTail
  1273.     [[$ns link $host0_if0 $host1_if0] queue] set limit_ 50
  1274.     $ns duplex-link $host0_if1 $host1_if1 10Mb 45ms DropTail
  1275.     [[$ns link $host0_if1 $host1_if1] queue] set limit_ 50
  1276.     
  1277.     set err [new ErrorModel/List]
  1278.     $err droplist {5 6 7 8}
  1279.     $ns lossmodel $err $host0_if0 $host1_if0
  1280.     set cmt_snd [new Agent/SCTP/CMT] 
  1281.     $ns multihome-attach-agent $host0_core $cmt_snd
  1282.     $cmt_snd set initialSsthresh_ 16000
  1283.     $cmt_snd set mtu_ 1500
  1284.     $cmt_snd set dataChunkSize_ 1468
  1285.     $cmt_snd set numOutStreams_ 1
  1286.     $cmt_snd set useCmtReordering_ 1
  1287.     $cmt_snd set useCmtCwnd_ 1
  1288.     $cmt_snd set useCmtDelAck_ 1
  1289.     $cmt_snd set eCmtRtxPolicy_ 2  #RTX-SSTHRESH
  1290.     if {$quiet == 0} {
  1291. $cmt_snd set debugMask_ -1 
  1292. $cmt_snd set debugFileIndex_ 0
  1293. set trace_ch [open trace.sctp w]
  1294. $cmt_snd set trace_all_ 1
  1295. $cmt_snd trace cwnd_
  1296. $cmt_snd trace rto_
  1297. $cmt_snd trace errorCount_
  1298. $cmt_snd attach $trace_ch
  1299.     }
  1300.     set cmt_rcv [new Agent/SCTP/CMT]
  1301.     $ns multihome-attach-agent $host1_core $cmt_rcv
  1302.     # MTU of 1500 = 1452 data bytes
  1303.     $cmt_rcv set mtu_ 1500
  1304.     $cmt_rcv set initialRwnd_ 65536
  1305.     $cmt_rcv set useDelayedSacks_ 1
  1306.     $cmt_rcv set useCmtDelAck_ 1
  1307.     
  1308.     if {$quiet == 0} {
  1309. $cmt_rcv set debugMask_ -1 
  1310. $cmt_rcv set debugFileIndex_ 1
  1311.     }
  1312.     $ns connect $cmt_snd $cmt_rcv
  1313.     set ftp0 [new Application/FTP]
  1314.     $ftp0 attach-agent $cmt_snd
  1315.     $cmt_snd set-primary-destination $host1_if0
  1316. }
  1317. Test/sctp-cmt-Rtx-ssthresh instproc run {} {
  1318.     $self instvar ns ftp0
  1319.     $ns at 0.0 "$ftp0 send 1452000"
  1320.     $ns at 20.0 "$self finish"
  1321.     $ns run
  1322. }
  1323. Test/sctp-cmt-Rtx-cwnd instproc init {} {
  1324.     $self instvar ns testName ftp0
  1325.     global quiet
  1326.     set testName cmt-Rtx-cwnd
  1327.     $self next
  1328.     set host0_core [$ns node]
  1329.     set host0_if0 [$ns node]
  1330.     set host0_if1 [$ns node]
  1331.     $host0_core color Red
  1332.     $host0_if0 color Red
  1333.     $host0_if1 color Red
  1334.     $ns multihome-add-interface $host0_core $host0_if0
  1335.     $ns multihome-add-interface $host0_core $host0_if1
  1336.     set host1_core [$ns node]
  1337.     set host1_if0 [$ns node]
  1338.     set host1_if1 [$ns node]
  1339.     $host1_core color Blue
  1340.     $host1_if0 color Blue
  1341.     $host1_if1 color Blue
  1342.     $ns multihome-add-interface $host1_core $host1_if0
  1343.     $ns multihome-add-interface $host1_core $host1_if1
  1344.     
  1345.     $ns duplex-link $host0_if0 $host1_if0 10Mb 35ms DropTail
  1346.     [[$ns link $host0_if0 $host1_if0] queue] set limit_ 50
  1347.     $ns duplex-link $host0_if1 $host1_if1 10Mb 45ms DropTail
  1348.     [[$ns link $host0_if1 $host1_if1] queue] set limit_ 50
  1349.     
  1350.     set err [new ErrorModel/List]
  1351.     $err droplist {30}
  1352.     $ns lossmodel $err $host0_if0 $host1_if0
  1353.     set cmt_snd [new Agent/SCTP/CMT] 
  1354.     $ns multihome-attach-agent $host0_core $cmt_snd
  1355.     $cmt_snd set initialSsthresh_ 16000
  1356.     $cmt_snd set mtu_ 1500
  1357.     $cmt_snd set dataChunkSize_ 1468
  1358.     $cmt_snd set numOutStreams_ 1
  1359.     $cmt_snd set useCmtReordering_ 1
  1360.     $cmt_snd set useCmtCwnd_ 1
  1361.     $cmt_snd set useCmtDelAck_ 1
  1362.     $cmt_snd set eCmtRtxPolicy_ 4  #RTX-CWND
  1363.     if {$quiet == 0} {
  1364. $cmt_snd set debugMask_ -1 
  1365. $cmt_snd set debugFileIndex_ 0
  1366. set trace_ch [open trace.sctp w]
  1367. $cmt_snd set trace_all_ 1
  1368. $cmt_snd trace cwnd_
  1369. $cmt_snd trace rto_
  1370. $cmt_snd trace errorCount_
  1371. $cmt_snd attach $trace_ch
  1372.     }
  1373.     set cmt_rcv [new Agent/SCTP/CMT]
  1374.     $ns multihome-attach-agent $host1_core $cmt_rcv
  1375.     # MTU of 1500 = 1452 data bytes
  1376.     $cmt_rcv set mtu_ 1500
  1377.     $cmt_rcv set initialRwnd_ 65536
  1378.     $cmt_rcv set useDelayedSacks_ 1
  1379.     $cmt_rcv set useCmtDelAck_ 1
  1380.     
  1381.     if {$quiet == 0} {
  1382. $cmt_rcv set debugMask_ -1 
  1383. $cmt_rcv set debugFileIndex_ 1
  1384.     }
  1385.     $ns connect $cmt_snd $cmt_rcv
  1386.     set ftp0 [new Application/FTP]
  1387.     $ftp0 attach-agent $cmt_snd
  1388.     $cmt_snd set-primary-destination $host1_if0
  1389. }
  1390. Test/sctp-cmt-Rtx-cwnd instproc run {} {
  1391.     $self instvar ns ftp0
  1392.     $ns at 0.0 "$ftp0 send 1452000"
  1393.     $ns at 20.0 "$self finish"
  1394.     $ns run
  1395. }
  1396. Test/sctp-cmt-Timeout-pmr instproc init {} {
  1397.     $self instvar ns testName ftp0
  1398.     global quiet
  1399.     set testName cmt-Timeout-pmr
  1400.     $self next
  1401.     set host0_core [$ns node]
  1402.     set host0_if0 [$ns node]
  1403.     set host0_if1 [$ns node]
  1404.     $host0_core color Red
  1405.     $host0_if0 color Red
  1406.     $host0_if1 color Red
  1407.     $ns multihome-add-interface $host0_core $host0_if0
  1408.     $ns multihome-add-interface $host0_core $host0_if1
  1409.     set host1_core [$ns node]
  1410.     set host1_if0 [$ns node]
  1411.     set host1_if1 [$ns node]
  1412.     $host1_core color Blue
  1413.     $host1_if0 color Blue
  1414.     $host1_if1 color Blue
  1415.     $ns multihome-add-interface $host1_core $host1_if0
  1416.     $ns multihome-add-interface $host1_core $host1_if1
  1417.     
  1418.     $ns duplex-link $host0_if0 $host1_if0 10Mb 45ms DropTail
  1419.     [[$ns link $host0_if0 $host1_if0] queue] set limit_ 50
  1420.     $ns duplex-link $host0_if1 $host1_if1 10Mb 45ms DropTail
  1421.     [[$ns link $host0_if1 $host1_if1] queue] set limit_ 50
  1422.     
  1423.     set err [new ErrorModel/List]
  1424.     $err droplist {3 4 5 6 7 8 9 10}
  1425.     $ns lossmodel $err $host0_if0 $host1_if0
  1426.     set cmt_snd [new Agent/SCTP/CMT] 
  1427.     $ns multihome-attach-agent $host0_core $cmt_snd
  1428.     $cmt_snd set initialSsthresh_ 16000
  1429.     $cmt_snd set mtu_ 1500
  1430.     $cmt_snd set dataChunkSize_ 1468
  1431.     $cmt_snd set numOutStreams_ 1
  1432.     $cmt_snd set useCmtReordering_ 1
  1433.     $cmt_snd set useCmtCwnd_ 1
  1434.     $cmt_snd set useCmtDelAck_ 1
  1435.     $cmt_snd set eCmtRtxPolicy_ 2  #RTX-SSTHRESH
  1436.     if {$quiet == 0} {
  1437. $cmt_snd set debugMask_ -1 
  1438. $cmt_snd set debugFileIndex_ 0
  1439. set trace_ch [open trace.sctp w]
  1440. $cmt_snd set trace_all_ 1
  1441. $cmt_snd trace cwnd_
  1442. $cmt_snd trace rto_
  1443. $cmt_snd trace errorCount_
  1444. $cmt_snd attach $trace_ch
  1445.     }
  1446.     set cmt_rcv [new Agent/SCTP/CMT]
  1447.     $ns multihome-attach-agent $host1_core $cmt_rcv
  1448.     # MTU of 1500 = 1452 data bytes
  1449.     $cmt_rcv set mtu_ 1500
  1450.     $cmt_rcv set initialRwnd_ 65536
  1451.     $cmt_rcv set useDelayedSacks_ 1
  1452.     $cmt_rcv set useCmtDelAck_ 1
  1453.     
  1454.     if {$quiet == 0} {
  1455. $cmt_rcv set debugMask_ -1 
  1456. $cmt_rcv set debugFileIndex_ 1
  1457.     }
  1458.     $ns connect $cmt_snd $cmt_rcv
  1459.     set ftp0 [new Application/FTP]
  1460.     $ftp0 attach-agent $cmt_snd
  1461.     $cmt_snd set-primary-destination $host1_if0
  1462. }
  1463. Test/sctp-cmt-Timeout-pmr instproc run {} {
  1464.     $self instvar ns ftp0
  1465.     $ns at 0.0 "$ftp0 send 14520000"
  1466.     $ns at 100.0 "$self finish"
  1467.     $ns run
  1468. }
  1469. Test/sctp-cmt-multihome2-2Timeout instproc init {} {
  1470.     $self instvar ns testName ftp0
  1471.     global quiet
  1472.     set testName cmt-multihome2-2Timeout
  1473.     $self next
  1474.     
  1475.     set host0_core [$ns node]
  1476.     set host0_if0 [$ns node]
  1477.     set host0_if1 [$ns node]
  1478.     $host0_core color Red
  1479.     $host0_if0 color Red
  1480.     $host0_if1 color Red
  1481.     $ns multihome-add-interface $host0_core $host0_if0
  1482.     $ns multihome-add-interface $host0_core $host0_if1
  1483.     
  1484.     set host1_core [$ns node]
  1485.     set host1_if0 [$ns node]
  1486.     set host1_if1 [$ns node]
  1487.     $host1_core color Blue
  1488.     $host1_if0 color Blue
  1489.     $host1_if1 color Blue
  1490.     $ns multihome-add-interface $host1_core $host1_if0
  1491.     $ns multihome-add-interface $host1_core $host1_if1
  1492.     
  1493.     $ns duplex-link $host0_if0 $host1_if0 .5Mb 200ms DropTail
  1494.     $ns duplex-link $host0_if1 $host1_if1 .5Mb 200ms DropTail
  1495.     
  1496.     set err0 [new ErrorModel/List]
  1497.     $err0 droplist {4}
  1498.     $ns lossmodel $err0 $host0_if0 $host1_if0
  1499.     
  1500.     set err1 [new ErrorModel/List]
  1501.     $err1 droplist {16}
  1502.     $ns lossmodel $err1 $host0_if1 $host1_if1
  1503.     
  1504.     set sctp0 [new Agent/SCTP/CMT]
  1505.     $ns multihome-attach-agent $host0_core $sctp0
  1506.     $sctp0 set initialSsthresh_ 16000
  1507.     $sctp0 set mtu_ 1500
  1508.     $sctp0 set dataChunkSize_ 1468
  1509.     $sctp0 set numOutStreams_ 1
  1510.     $sctp0 set useCmtReordering_ 1
  1511.     $sctp0 set useCmtCwnd_ 1
  1512.     $sctp0 set useCmtDelAck_ 1
  1513.     $sctp0 set eCmtRtxPolicy_ 2 ; #RTX-SSTHRESH
  1514.     if {$quiet == 0} {
  1515. $sctp0 set debugMask_ -1 
  1516. $sctp0 set debugFileIndex_ 0
  1517. set trace_ch [open trace.sctp w]
  1518. $sctp0 set trace_all_ 1
  1519. $sctp0 trace cwnd_
  1520. $sctp0 trace rto_
  1521. $sctp0 trace errorCount_
  1522. $sctp0 attach $trace_ch
  1523.     }
  1524.     
  1525.     set sctp1 [new Agent/SCTP/CMT]
  1526.     $ns multihome-attach-agent $host1_core $sctp1
  1527.     # MTU of 1500 = 1452 data bytes
  1528.     $sctp1 set mtu_ 1500
  1529.     $sctp1 set initialRwnd_ 65536
  1530.     $sctp1 set useDelayedSacks_ 1
  1531.     $sctp1 set useCmtDelAck_ 1
  1532.     
  1533.     if {$quiet == 0} {
  1534. $sctp1 set debugMask_ -1
  1535. $sctp1 set debugFileIndex_ 1
  1536.     }
  1537.     
  1538.     $ns connect $sctp0 $sctp1
  1539.     $sctp0 set-primary-destination $host1_if0
  1540.     
  1541.     set ftp0 [new Application/FTP]
  1542.     $ftp0 attach-agent $sctp0
  1543. }
  1544. Test/sctp-cmt-multihome2-2Timeout instproc run {} {
  1545.     $self instvar ns ftp0
  1546.     $ns at 0.5 "$ftp0 start"
  1547.     $ns at 12.0 "$self finish"
  1548.     $ns run
  1549. }
  1550. Test/sctp-cmt-pf-2paths-1path-fails instproc init {} {
  1551.     $self instvar ns testName ftp0
  1552.     global quiet
  1553.     set testName cmt-pf-2paths-1path-fails
  1554.     $self next
  1555.     set host0_core [$ns node]
  1556.     set host0_if0 [$ns node]
  1557.     set host0_if1 [$ns node]
  1558.     $host0_core color Red
  1559.     $host0_if0 color Red
  1560.     $host0_if1 color Red
  1561.     $ns multihome-add-interface $host0_core $host0_if0
  1562.     $ns multihome-add-interface $host0_core $host0_if1
  1563.     set host1_core [$ns node]
  1564.     set host1_if0 [$ns node]
  1565.     set host1_if1 [$ns node]
  1566.     $host1_core color Blue
  1567.     $host1_if0 color Blue
  1568.     $host1_if1 color Blue
  1569.     $ns multihome-add-interface $host1_core $host1_if0
  1570.     $ns multihome-add-interface $host1_core $host1_if1
  1571.     
  1572.     $ns duplex-link $host0_if0 $host1_if0 10Mb 45ms DropTail
  1573.     [[$ns link $host0_if0 $host1_if0] queue] set limit_ 50
  1574.     $ns duplex-link $host0_if1 $host1_if1 10Mb 45ms DropTail
  1575.     [[$ns link $host0_if1 $host1_if1] queue] set limit_ 50
  1576.     
  1577.     set cmt_snd [new Agent/SCTP/CMT] 
  1578.     $ns multihome-attach-agent $host0_core $cmt_snd
  1579.     $cmt_snd set initialSsthresh_ 16000
  1580.     $cmt_snd set mtu_ 1500
  1581.     $cmt_snd set dataChunkSize_ 1468
  1582.     $cmt_snd set numOutStreams_ 1
  1583.     $cmt_snd set useCmtReordering_ 1
  1584.     $cmt_snd set useCmtCwnd_ 1
  1585.     $cmt_snd set useCmtDelAck_ 1
  1586.     $cmt_snd set eCmtRtxPolicy_ 2 ; #RTX-SSTHRESH
  1587.     $cmt_snd set useCmtPF_ 1
  1588.     $cmt_snd set cmtPFCwnd 2
  1589.     if {$quiet == 0} {
  1590. $cmt_snd set debugMask_ -1 
  1591. $cmt_snd set debugFileIndex_ 0
  1592. set trace_ch [open trace.sctp w]
  1593. $cmt_snd set trace_all_ 1
  1594. $cmt_snd trace cwnd_
  1595. $cmt_snd trace rto_
  1596. $cmt_snd trace errorCount_
  1597. $cmt_snd attach $trace_ch
  1598.     }
  1599.     set cmt_rcv [new Agent/SCTP/CMT]
  1600.     $ns multihome-attach-agent $host1_core $cmt_rcv
  1601.     # MTU of 1500 = 1452 data bytes
  1602.     $cmt_rcv set mtu_ 1500
  1603.     $cmt_rcv set initialRwnd_ 65536
  1604.     $cmt_rcv set useDelayedSacks_ 1
  1605.     $cmt_rcv set useCmtDelAck_ 1
  1606.     if {$quiet == 0} {
  1607. $cmt_rcv set debugMask_ -1 
  1608. $cmt_rcv set debugFileIndex_ 1
  1609.     }
  1610.     $ns connect $cmt_snd $cmt_rcv
  1611.     set ftp0 [new Application/FTP]
  1612.     $ftp0 attach-agent $cmt_snd
  1613.     $cmt_snd set-primary-destination $host1_if0
  1614.     $ns rtmodel-at 10.0 down $host0_if1 $host1_if1
  1615. }
  1616. Test/sctp-cmt-pf-2paths-1path-fails instproc run {} {
  1617.     $self instvar ns ftp0
  1618.     $ns at 0.0 "$ftp0 send 14520000"
  1619.     $ns at 100.0 "$self finish"
  1620.     $ns run
  1621. }
  1622. Test/sctp-cmt-pf-3paths-1path-fails instproc init {} {
  1623.     $self instvar ns testName ftp0
  1624.     global quiet
  1625.     set testName cmt-pf-3paths-1path-fails
  1626.     $self next
  1627.     set host0_core [$ns node]
  1628.     set host0_if0 [$ns node]
  1629.     set host0_if1 [$ns node]
  1630.     set host0_if2 [$ns node]
  1631.     $host0_core color Red
  1632.     $host0_if0 color Red
  1633.     $host0_if1 color Red
  1634.     $host0_if2 color Red
  1635.     
  1636.     $ns multihome-add-interface $host0_core $host0_if0
  1637.     $ns multihome-add-interface $host0_core $host0_if1
  1638.     $ns multihome-add-interface $host0_core $host0_if2
  1639.     set host1_core [$ns node]
  1640.     set host1_if0 [$ns node]
  1641.     set host1_if1 [$ns node]
  1642.     set host1_if2 [$ns node]
  1643.     $host1_core color Blue
  1644.     $host1_if0 color Blue
  1645.     $host1_if1 color Blue
  1646.     $host1_if2 color Blue
  1647.     $ns multihome-add-interface $host1_core $host1_if0
  1648.     $ns multihome-add-interface $host1_core $host1_if1
  1649.     $ns multihome-add-interface $host1_core $host1_if2
  1650.     
  1651.     $ns duplex-link $host0_if0 $host1_if0 10Mb 45ms DropTail
  1652.     [[$ns link $host0_if0 $host1_if0] queue] set limit_ 50
  1653.     $ns duplex-link $host0_if1 $host1_if1 10Mb 45ms DropTail
  1654.     [[$ns link $host0_if1 $host1_if1] queue] set limit_ 50
  1655.     $ns duplex-link $host0_if2 $host1_if2 10Mb 45ms DropTail
  1656.     [[$ns link $host0_if2 $host1_if2] queue] set limit_ 50
  1657.     
  1658.     set cmt_snd [new Agent/SCTP/CMT] 
  1659.     $ns multihome-attach-agent $host0_core $cmt_snd
  1660.     $cmt_snd set initialSsthresh_ 16000
  1661.     $cmt_snd set mtu_ 1500
  1662.     $cmt_snd set dataChunkSize_ 1468
  1663.     $cmt_snd set numOutStreams_ 1
  1664.     $cmt_snd set useCmtReordering_ 1
  1665.     $cmt_snd set useCmtCwnd_ 1
  1666.     $cmt_snd set useCmtDelAck_ 1
  1667.     $cmt_snd set eCmtRtxPolicy_ 2 ; #RTX-SSTHRESH
  1668.     $cmt_snd set useCmtPF_ 1
  1669.     $cmt_snd set cmtPFCwnd 2
  1670.     if {$quiet == 0} {
  1671. $cmt_snd set debugMask_ -1 
  1672. $cmt_snd set debugFileIndex_ 0
  1673. set trace_ch [open trace.sctp w]
  1674. $cmt_snd set trace_all_ 1
  1675. $cmt_snd trace cwnd_
  1676. $cmt_snd trace rto_
  1677. $cmt_snd trace errorCount_
  1678. $cmt_snd attach $trace_ch
  1679.     }
  1680.     set cmt_rcv [new Agent/SCTP/CMT]
  1681.     $ns multihome-attach-agent $host1_core $cmt_rcv
  1682.     # MTU of 1500 = 1452 data bytes
  1683.     $cmt_rcv set mtu_ 1500
  1684.     $cmt_rcv set initialRwnd_ 65536
  1685.     $cmt_rcv set useDelayedSacks_ 1
  1686.     $cmt_rcv set useCmtDelAck_ 1
  1687.     if {$quiet == 0} {
  1688. $cmt_rcv set debugMask_ -1 
  1689. $cmt_rcv set debugFileIndex_ 1
  1690.     }
  1691.     $ns connect $cmt_snd $cmt_rcv
  1692.     set ftp0 [new Application/FTP]
  1693.     $ftp0 attach-agent $cmt_snd
  1694.     $cmt_snd set-primary-destination $host1_if0
  1695.     $ns rtmodel-at 10.0 down $host0_if1 $host1_if1
  1696. }
  1697. Test/sctp-cmt-pf-3paths-1path-fails instproc run {} {
  1698.     $self instvar ns ftp0
  1699.     $ns at 0.0 "$ftp0 send 14520000"
  1700.     $ns at 100.0 "$self finish"
  1701.     $ns run
  1702. }
  1703. Test/sctp-cmt-pf-packet-loss-dest-conf instproc init {} {
  1704.     $self instvar ns testName ftp0
  1705.     global quiet
  1706.     set testName cmt-pf-packet-loss-dest-conf
  1707.     $self next
  1708.     set host0_core [$ns node]
  1709.     set host0_if0 [$ns node]
  1710.     set host0_if1 [$ns node]
  1711.     $host0_core color Red
  1712.     $host0_if0 color Red
  1713.     $host0_if1 color Red
  1714.     $ns multihome-add-interface $host0_core $host0_if0
  1715.     $ns multihome-add-interface $host0_core $host0_if1
  1716.     set host1_core [$ns node]
  1717.     set host1_if0 [$ns node]
  1718.     set host1_if1 [$ns node]
  1719.     $host1_core color Blue
  1720.     $host1_if0 color Blue
  1721.     $host1_if1 color Blue
  1722.     $ns multihome-add-interface $host1_core $host1_if0
  1723.     $ns multihome-add-interface $host1_core $host1_if1
  1724.     
  1725.     $ns duplex-link $host0_if0 $host1_if0 10Mb 45ms DropTail
  1726.     [[$ns link $host0_if0 $host1_if0] queue] set limit_ 50
  1727.     $ns duplex-link $host0_if1 $host1_if1 10Mb 45ms DropTail
  1728.     [[$ns link $host0_if1 $host1_if1] queue] set limit_ 50
  1729.     set err [new ErrorModel/List]
  1730.     $err droplist {2 3}
  1731.     $ns lossmodel $err $host0_if0 $host1_if0
  1732.     
  1733.     set cmt_snd [new Agent/SCTP/CMT] 
  1734.     $ns multihome-attach-agent $host0_core $cmt_snd
  1735.     $cmt_snd set initialSsthresh_ 16000
  1736.     $cmt_snd set mtu_ 1500
  1737.     $cmt_snd set dataChunkSize_ 1468
  1738.     $cmt_snd set numOutStreams_ 1
  1739.     $cmt_snd set useCmtReordering_ 1
  1740.     $cmt_snd set useCmtCwnd_ 1
  1741.     $cmt_snd set useCmtDelAck_ 1
  1742.     $cmt_snd set eCmtRtxPolicy_ 2 ; #RTX-SSTHRESH
  1743.     $cmt_snd set useCmtPF_ 1
  1744.     $cmt_snd set cmtPFCwnd 2
  1745.     if {$quiet == 0} {
  1746. $cmt_snd set debugMask_ -1 
  1747. $cmt_snd set debugFileIndex_ 0
  1748. set trace_ch [open trace.sctp w]
  1749. $cmt_snd set trace_all_ 1
  1750. $cmt_snd trace cwnd_
  1751. $cmt_snd trace rto_
  1752. $cmt_snd trace errorCount_
  1753. $cmt_snd attach $trace_ch
  1754.     }
  1755.     set cmt_rcv [new Agent/SCTP/CMT]
  1756.     $ns multihome-attach-agent $host1_core $cmt_rcv
  1757.     # MTU of 1500 = 1452 data bytes
  1758.     $cmt_rcv set mtu_ 1500
  1759.     $cmt_rcv set initialRwnd_ 65536
  1760.     $cmt_rcv set useDelayedSacks_ 1
  1761.     $cmt_rcv set useCmtDelAck_ 1
  1762.     if {$quiet == 0} {
  1763. $cmt_rcv set debugMask_ -1 
  1764. $cmt_rcv set debugFileIndex_ 1
  1765.     }
  1766.     $ns connect $cmt_snd $cmt_rcv
  1767.     set ftp0 [new Application/FTP]
  1768.     $ftp0 attach-agent $cmt_snd
  1769.     $cmt_snd set-primary-destination $host1_if0
  1770. }
  1771. Test/sctp-cmt-pf-packet-loss-dest-conf instproc run {} {
  1772.     $self instvar ns ftp0
  1773.     $ns at 0.0 "$ftp0 send 1452000"
  1774.     $ns at 20.0 "$self finish"
  1775.     $ns run
  1776. }
  1777. Test/sctp-cmt-pf-Rtx-ssthresh instproc init {} {
  1778.     $self instvar ns testName ftp0
  1779.     global quiet
  1780.     set testName cmt-pf-Rtx-ssthresh
  1781.     $self next
  1782.     set host0_core [$ns node]
  1783.     set host0_if0 [$ns node]
  1784.     set host0_if1 [$ns node]
  1785.     $host0_core color Red
  1786.     $host0_if0 color Red
  1787.     $host0_if1 color Red
  1788.     $ns multihome-add-interface $host0_core $host0_if0
  1789.     $ns multihome-add-interface $host0_core $host0_if1
  1790.     set host1_core [$ns node]
  1791.     set host1_if0 [$ns node]
  1792.     set host1_if1 [$ns node]
  1793.     $host1_core color Blue
  1794.     $host1_if0 color Blue
  1795.     $host1_if1 color Blue
  1796.     $ns multihome-add-interface $host1_core $host1_if0
  1797.     $ns multihome-add-interface $host1_core $host1_if1
  1798.     
  1799.     $ns duplex-link $host0_if0 $host1_if0 10Mb 45ms DropTail
  1800.     [[$ns link $host0_if0 $host1_if0] queue] set limit_ 50
  1801.     $ns duplex-link $host0_if1 $host1_if1 10Mb 45ms DropTail
  1802.     [[$ns link $host0_if1 $host1_if1] queue] set limit_ 50
  1803.     set err [new ErrorModel/List]
  1804.     $err droplist {23}
  1805.     $ns lossmodel $err $host0_if0 $host1_if0
  1806.     
  1807.     set cmt_snd [new Agent/SCTP/CMT] 
  1808.     $ns multihome-attach-agent $host0_core $cmt_snd
  1809.     $cmt_snd set initialSsthresh_ 16000
  1810.     $cmt_snd set mtu_ 1500
  1811.     $cmt_snd set dataChunkSize_ 1468
  1812.     $cmt_snd set numOutStreams_ 1
  1813.     $cmt_snd set useCmtReordering_ 1
  1814.     $cmt_snd set useCmtCwnd_ 1
  1815.     $cmt_snd set useCmtDelAck_ 1
  1816.     $cmt_snd set eCmtRtxPolicy_ 2 ; #RTX-SSTHRESH
  1817.     $cmt_snd set useCmtPF_ 1
  1818.     $cmt_snd set cmtPFCwnd 2
  1819.     if {$quiet == 0} {
  1820. $cmt_snd set debugMask_ -1 
  1821. $cmt_snd set debugFileIndex_ 0
  1822. set trace_ch [open trace.sctp w]
  1823. $cmt_snd set trace_all_ 1
  1824. $cmt_snd trace cwnd_
  1825. $cmt_snd trace rto_
  1826. $cmt_snd trace errorCount_
  1827. $cmt_snd attach $trace_ch
  1828.     }
  1829.     set cmt_rcv [new Agent/SCTP/CMT]
  1830.     $ns multihome-attach-agent $host1_core $cmt_rcv
  1831.     # MTU of 1500 = 1452 data bytes
  1832.     $cmt_rcv set mtu_ 1500
  1833.     $cmt_rcv set initialRwnd_ 65536
  1834.     $cmt_rcv set useDelayedSacks_ 1
  1835.     $cmt_rcv set useCmtDelAck_ 1
  1836.     if {$quiet == 0} {
  1837. $cmt_rcv set debugMask_ -1 
  1838. $cmt_rcv set debugFileIndex_ 1
  1839.     }
  1840.     $ns connect $cmt_snd $cmt_rcv
  1841.     set ftp0 [new Application/FTP]
  1842.     $ftp0 attach-agent $cmt_snd
  1843.     $cmt_snd set-primary-destination $host1_if0
  1844. }
  1845. Test/sctp-cmt-pf-Rtx-ssthresh instproc run {} {
  1846.     $self instvar ns ftp0
  1847.     $ns at 0.0 "$ftp0 send 1452000"
  1848.     $ns at 20.0 "$self finish"
  1849.     $ns run
  1850. }
  1851. Test/sctp-cmt-pf-Rtx-cwnd instproc init {} {
  1852.     $self instvar ns testName ftp0
  1853.     global quiet
  1854.     set testName cmt-pf-Rtx-cwnd
  1855.     $self next
  1856.     set host0_core [$ns node]
  1857.     set host0_if0 [$ns node]
  1858.     set host0_if1 [$ns node]
  1859.     $host0_core color Red
  1860.     $host0_if0 color Red
  1861.     $host0_if1 color Red
  1862.     $ns multihome-add-interface $host0_core $host0_if0
  1863.     $ns multihome-add-interface $host0_core $host0_if1
  1864.     set host1_core [$ns node]
  1865.     set host1_if0 [$ns node]
  1866.     set host1_if1 [$ns node]
  1867.     $host1_core color Blue
  1868.     $host1_if0 color Blue
  1869.     $host1_if1 color Blue
  1870.     $ns multihome-add-interface $host1_core $host1_if0
  1871.     $ns multihome-add-interface $host1_core $host1_if1
  1872.     
  1873.     $ns duplex-link $host0_if0 $host1_if0 10Mb 45ms DropTail
  1874.     [[$ns link $host0_if0 $host1_if0] queue] set limit_ 50
  1875.     $ns duplex-link $host0_if1 $host1_if1 10Mb 45ms DropTail
  1876.     [[$ns link $host0_if1 $host1_if1] queue] set limit_ 50
  1877.     set err [new ErrorModel/List]
  1878.     $err droplist {23}
  1879.     $ns lossmodel $err $host0_if0 $host1_if0
  1880.     
  1881.     set cmt_snd [new Agent/SCTP/CMT] 
  1882.     $ns multihome-attach-agent $host0_core $cmt_snd
  1883.     $cmt_snd set initialSsthresh_ 16000
  1884.     $cmt_snd set mtu_ 1500
  1885.     $cmt_snd set dataChunkSize_ 1468
  1886.     $cmt_snd set numOutStreams_ 1
  1887.     $cmt_snd set useCmtReordering_ 1
  1888.     $cmt_snd set useCmtCwnd_ 1
  1889.     $cmt_snd set useCmtDelAck_ 1
  1890.     $cmt_snd set eCmtRtxPolicy_ 4 ; #RTX-CWND
  1891.     $cmt_snd set useCmtPF_ 1
  1892.     $cmt_snd set cmtPFCwnd 2
  1893.     if {$quiet == 0} {
  1894. $cmt_snd set debugMask_ -1 
  1895. $cmt_snd set debugFileIndex_ 0
  1896. set trace_ch [open trace.sctp w]
  1897. $cmt_snd set trace_all_ 1
  1898. $cmt_snd trace cwnd_
  1899. $cmt_snd trace rto_
  1900. $cmt_snd trace errorCount_
  1901. $cmt_snd attach $trace_ch
  1902.     }
  1903.     set cmt_rcv [new Agent/SCTP/CMT]
  1904.     $ns multihome-attach-agent $host1_core $cmt_rcv
  1905.     # MTU of 1500 = 1452 data bytes
  1906.     $cmt_rcv set mtu_ 1500
  1907.     $cmt_rcv set initialRwnd_ 65536
  1908.     $cmt_rcv set useDelayedSacks_ 1
  1909.     $cmt_rcv set useCmtDelAck_ 1
  1910.     if {$quiet == 0} {
  1911. $cmt_rcv set debugMask_ -1 
  1912. $cmt_rcv set debugFileIndex_ 1
  1913.     }
  1914.     $ns connect $cmt_snd $cmt_rcv
  1915.     set ftp0 [new Application/FTP]
  1916.     $ftp0 attach-agent $cmt_snd
  1917.     $cmt_snd set-primary-destination $host1_if0
  1918. }
  1919. Test/sctp-cmt-pf-Rtx-cwnd instproc run {} {
  1920.     $self instvar ns ftp0
  1921.     $ns at 0.0 "$ftp0 send 1452000"
  1922.     $ns at 20.0 "$self finish"
  1923.     $ns run
  1924. }
  1925. Test/sctp-cmt-pf-Timeout-pmr instproc init {} {
  1926.     $self instvar ns testName ftp0
  1927.     global quiet
  1928.     set testName cmt-pf-Timeout-pmr
  1929.     $self next
  1930.     set host0_core [$ns node]
  1931.     set host0_if0 [$ns node]
  1932.     set host0_if1 [$ns node]
  1933.     $host0_core color Red
  1934.     $host0_if0 color Red
  1935.     $host0_if1 color Red
  1936.     $ns multihome-add-interface $host0_core $host0_if0
  1937.     $ns multihome-add-interface $host0_core $host0_if1
  1938.     set host1_core [$ns node]
  1939.     set host1_if0 [$ns node]
  1940.     set host1_if1 [$ns node]
  1941.     $host1_core color Blue
  1942.     $host1_if0 color Blue
  1943.     $host1_if1 color Blue
  1944.     $ns multihome-add-interface $host1_core $host1_if0
  1945.     $ns multihome-add-interface $host1_core $host1_if1
  1946.     
  1947.     $ns duplex-link $host0_if0 $host1_if0 10Mb 35ms DropTail
  1948.     [[$ns link $host0_if0 $host1_if0] queue] set limit_ 50
  1949.     $ns duplex-link $host0_if1 $host1_if1 10Mb 45ms DropTail
  1950.     [[$ns link $host0_if1 $host1_if1] queue] set limit_ 50
  1951.     
  1952.     set err [new ErrorModel/List]
  1953.     $err droplist {3 4 5 6 7 8 9}
  1954.     $ns lossmodel $err $host0_if0 $host1_if0
  1955.     set cmt_snd [new Agent/SCTP/CMT] 
  1956.     $ns multihome-attach-agent $host0_core $cmt_snd
  1957.     $cmt_snd set initialSsthresh_ 16000
  1958.     $cmt_snd set mtu_ 1500
  1959.     $cmt_snd set dataChunkSize_ 1468
  1960.     $cmt_snd set numOutStreams_ 1
  1961.     $cmt_snd set useCmtReordering_ 1
  1962.     $cmt_snd set useCmtCwnd_ 1
  1963.     $cmt_snd set useCmtDelAck_ 1
  1964.     $cmt_snd set eCmtRtxPolicy_ 2  #RTX-SSTHRESH
  1965.     $cmt_snd set useCmtPF_ 1
  1966.     $cmt_snd set cmtPFCwnd 2
  1967.     if {$quiet == 0} {
  1968. $cmt_snd set debugMask_ -1 
  1969. $cmt_snd set debugFileIndex_ 0
  1970. set trace_ch [open trace.sctp w]
  1971. $cmt_snd set trace_all_ 1
  1972. $cmt_snd trace cwnd_
  1973. $cmt_snd trace rto_
  1974. $cmt_snd trace errorCount_
  1975. $cmt_snd attach $trace_ch
  1976.     }
  1977.     set cmt_rcv [new Agent/SCTP/CMT]
  1978.     $ns multihome-attach-agent $host1_core $cmt_rcv
  1979.     # MTU of 1500 = 1452 data bytes
  1980.     $cmt_rcv set mtu_ 1500
  1981.     $cmt_rcv set initialRwnd_ 65536
  1982.     $cmt_rcv set useDelayedSacks_ 1
  1983.     $cmt_rcv set useCmtDelAck_ 1
  1984.     
  1985.     if {$quiet == 0} {
  1986. $cmt_rcv set debugMask_ -1 
  1987. $cmt_rcv set debugFileIndex_ 1
  1988.     }
  1989.     $ns connect $cmt_snd $cmt_rcv
  1990.     set ftp0 [new Application/FTP]
  1991.     $ftp0 attach-agent $cmt_snd
  1992.     $cmt_snd set-primary-destination $host1_if0
  1993. }
  1994. Test/sctp-cmt-pf-Timeout-pmr instproc run {} {
  1995.     $self instvar ns ftp0
  1996.     $ns at 0.0 "$ftp0 send 58080000"
  1997.     $ns at 100.0 "$self finish"
  1998.     $ns run
  1999. }
  2000. proc runtest {arg} {
  2001.     global quiet
  2002.     set quiet 0
  2003.     
  2004.     set b [llength $arg]
  2005.     if {$b == 1} {
  2006. set test $arg
  2007.     } elseif {$b == 2} {
  2008. set test [lindex $arg 0]
  2009. set q [lindex $arg 1]
  2010. if { $q == "QUIET" } {
  2011.     set quiet 1
  2012. } else { usage }
  2013.     } else { usage }
  2014.     
  2015.     switch $test {
  2016. sctp-2packetsTimeout -
  2017. sctp-AMR-Exceeded -
  2018. sctp-Rel1-Loss2  -
  2019. sctp-burstAfterFastRtxRecovery  -
  2020. sctp-burstAfterFastRtxRecovery-2  -
  2021. sctp-cwndFreeze  -
  2022. sctp-cwndFreeze-multistream  -
  2023. sctp-hugeRwnd  -
  2024. sctp-initRtx  -
  2025. sctp-multihome1-2  -
  2026. sctp-multihome2-1 -
  2027. sctp-multihome2-2AMR-Exceeded -
  2028. sctp-multihome2-2Failover  -
  2029. sctp-multihome2-2Failover0 -
  2030. sctp-multihome2-2Failover1 -
  2031. sctp-multihome2-2Rtx1   -
  2032. sctp-multihome2-2Rtx3  -
  2033. sctp-multihome2-2Timeout -
  2034. sctp-multihome2-2TimeoutRta0 -
  2035. sctp-multihome2-2TimeoutRta2 -
  2036. sctp-multihome2-R-2 -
  2037. sctp-multihome3-3Timeout -
  2038. sctp-multipleDropsSameWnd-1  -
  2039. sctp-multipleDropsSameWnd-1-delayed  -
  2040. sctp-multipleDropsSameWnd-2  -
  2041. sctp-multipleDropsSameWnd-3  -
  2042. sctp-multipleDropsTwoWnds-1-delayed  -
  2043. sctp-multipleRtx  -
  2044. sctp-multipleRtx-early  -
  2045. sctp-newReno -
  2046. sctp-noEarlyHBs -
  2047. sctp-smallRwnd  -
  2048. sctp-zeroRtx  -
  2049. sctp-zeroRtx-burstLoss -
  2050. sctp-hbAfterRto-2packetsTimeout -
  2051. sctp-hbAfterRto-multihome2-2Timeout -
  2052. sctp-multipleFastRtx-2packetsTimeout -
  2053. sctp-multipleFastRtx-multihome2-2Timeout -
  2054. sctp-mfrHbAfterRto-Rta2-2FRsTimeout -
  2055. sctp-timestamp-multihome2-2Rtx3 -
  2056. sctp-timestamp-multihome2-2Timeout -
  2057. sctp-packet-loss-dest-conf -
  2058. sctp-cmt-2paths-64K -
  2059. sctp-cmt-2paths-64K-withloss -
  2060. sctp-cmt-3paths-64K -
  2061. sctp-cmt-2paths-1path-fails - 
  2062. sctp-cmt-3paths-1path-fails -
  2063. sctp-cmt-packet-loss-dest-conf -
  2064. sctp-cmt-Rtx-ssthresh -
  2065. sctp-cmt-Rtx-cwnd -
  2066. sctp-cmt-Timeout-pmr -
  2067. sctp-cmt-multihome2-2Timeout -
  2068. sctp-cmt-pf-2paths-1path-fails -
  2069. sctp-cmt-pf-3paths-1path-fails -
  2070. sctp-cmt-pf-packet-loss-dest-conf -
  2071. sctp-cmt-pf-Rtx-ssthresh - 
  2072. sctp-cmt-pf-Rtx-cwnd - 
  2073. sctp-cmt-pf-Timeout-pmr {
  2074.     set t [new Test/$test]
  2075. }
  2076. default {
  2077.     puts stderr "Unknown test $test"
  2078.     exit 1
  2079. }
  2080.     }
  2081.     $t run
  2082. }
  2083. global argv arg0
  2084. runtest $argv