zoukankan      html  css  js  c++  java
  • NS网络仿真,小白起步版,双节点之间的模拟仿真(基于UDP和CBR流)

    set ns [new Simulator]
    
    
    
    set tracefd [open example.tr w]  
    #开启跟踪文件,记录分组传送的过程
    
    $ns trace-all $tracefd
    
    set namtracefd [open example.nam w]  
    #设置nam动画显示文件
    
    $ns namtrace-all $namtracefd
    
    
    
    #定义结束事件,模拟结束后会调用
    
    proc finish {} {
    
    	global ns tracefd namtracefd
    
    	$ns flush-trace
    
    	close $tracefd      
    #关闭trace文件
    
    	close $namtracefd   
    #关闭nam显示文件
    
    	exec nam example.nam &
    
    	exit 0
    
    }
    
    
    
    set n0 [$ns node]
    
    set n1 [$ns node]
    
    
    
    $ns duplex-link $n0 $n1 1Mb 10ms DropTail       
    #定义0和1节点之间的带宽(1Mb)和延迟(10ms)以及队列类型(DropTail)
    
    
    
    
    set udp [new Agent/UDP]        
    #设置一个udp发送代理
    
    $ns attach-agent $n0 $udp      
    #绑定udp发送代理到n0节点
    
    
    
    set cbr [new Application/Traffic/CBR]         
    #建立一个cbr流应用
    
    $cbr set packetSize_ 500                      
    #设置分组大小
    
    $cbr set interval_ 0.005                      
    #设置时间间隔
    
    $cbr attach-agent $udp			      
    #将CBR流应用绑定到UDP代理
    
    
    
    set null [new Agent/Null]		      
    #建立一个UDP接收代理
    
    $ns attach-agent $n1 $null                    
    #绑定UDP接收代理到节点1
    
    
    
    $ns connect $udp $null 			      
    #连接UDP发送代理和接收代理
    
    
    
    $ns at 0.5 "$cbr start"                       
    #设定CBR流在0.5s开始
    
    $ns at 4.5 "$cbr stop"		              
    #设定CBR流在4.5S结束
    
    
    
    $ns at 5.0 "finish"		              
    #设定模拟在5.0s时刻结束
    
    
    
    $ns run
    

    1.程序截图

  • 相关阅读:
    Tinkoff Challenge
    Tinkoff Challenge
    Tinkoff Challenge
    Tinkoff Challenge
    整体二分
    树链剖分+LCT
    上下界网络流
    莫队
    可并堆
    bzoj_1033: [ZJOI2008]杀蚂蚁antbuster
  • 原文地址:https://www.cnblogs.com/viplanyue/p/12700505.html
Copyright © 2011-2022 走看看