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

📄 tcp-et.tcl

📁 跑leach需要的
💻 TCL
字号:
# A simple tcp example that uses event tracing#source ../lib/ns-default.tclSimulator set eventTraceAll_ 0set ns [new Simulator]### Create a simple six node topology:##        s1                 s3#         \                 /# 10Mb,2ms \  1.5Mb,20ms   / 10Mb,4ms#           r1 --------- r2# 10Mb,3ms /               \ 10Mb,5ms#         /                 \#        s2                 s4#proc build_topology { ns } {    global node_    set node_(s1) [$ns node]    set node_(s2) [$ns node]    set node_(r1) [$ns node]    set node_(r2) [$ns node]    set node_(s3) [$ns node]    set node_(s4) [$ns node]    $ns duplex-link $node_(s1) $node_(r1) 10Mb 2ms DropTail    $ns duplex-link $node_(s2) $node_(r1) 10Mb 2ms DropTail    $ns duplex-link $node_(r1) $node_(r2) 1.5Mb 20ms RED    $ns queue-limit $node_(r1) $node_(r2) 10    $ns queue-limit $node_(r2) $node_(r1) 10    $ns duplex-link $node_(s3) $node_(r2) 10Mb 4ms DropTail    $ns duplex-link $node_(s4) $node_(r2) 10Mb 5ms DropTail     $ns duplex-link-op $node_(r1) $node_(r2) queuePos 0.5    $ns duplex-link-op $node_(r2) $node_(r1) queuePos 0.5 }set f [open out.tr w]$ns trace-all $fset nf [open out.nam w]$ns namtrace-all $nf#should add eventrace line after trace-all since trace-all file is used as defualt by eventracing.#set file [open et.tr w]$ns eventtrace-all#$ns eventtrace-all $file#$ns eventtrace-some tcp srm etc -future workbuild_topology $nsset redq [[$ns link $node_(r1) $node_(r2)] queue]#$redq set setbit_ true# Use nam trace format for TCP variable trace #Agent/TCP set nam_tracevar_ trueset tcp1 [$ns create-connection TCP/Sack1 $node_(s1) TCPSink/Sack1 $node_(s3) 0]$tcp1 set window_ 30set tcp2 [$ns create-connection TCP/Reno $node_(s4) TCPSink $node_(s2) 1]#$tcp1 set ecn_ 1set ftp1 [$tcp1 attach-app FTP]   set ftp2 [$tcp2 attach-app FTP]#$ns add-agent-trace $tcp1 tcp1#$ns monitor-agent-trace $tcp1#$tcp1 tracevar cwnd_$ns at 0.0 "$ftp1 start"$ns at 1.0 "$ftp2 start"$ns at 7.0 "finish"proc finish {} {        global ns f nf        $ns flush-trace        close $f        close $nf         #XXX        puts "Filtering ..."	exec tclsh8.0 ../nam/bin/namfilter.tcl out.nam        puts "running nam..."        exec nam out.nam &        exit 0} $ns run

⌨️ 快捷键说明

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