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

📄 scen_loulou.tcl

📁 对IEEE 802.11e里的分布式信道接入算法EDCA进行改进
💻 TCL
字号:
## A wireless lan scenario with video traffic over udp and background# backlogged traffic### defaultsset ppktsize 120				;# pktsize of phone streamsset pinterval 10msset vpktsize 1024				;# pktsize of video streamsset vinterval 2msset pktsize 1500				;# pktsize for background trafficset udp_interval 5ms#set num_nodes [lindex $argv 0]	;#  number of mobilenodes in the scenario  ****lamiasource sources.tclglobal num_nodesset num_bss_nodes 0				;# adhoc modePLevels set max_plevels_	3PLevels set plevels_			3PHY_MIB set CWMin_0				7PHY_MIB set CWOffset_0		0PHY_MIB set CWMax_0		   300           ;#LamiaPHY_MIB set CWMin_1				10PHY_MIB set CWOffset_1		0PHY_MIB set CWMax_1				500                ;#LamiaPHY_MIB set CWMin_2				31PHY_MIB set CWOffset_2		0PHY_MIB set CWMax_2				1023         ;#Lamia# MAC_MIB set new_method 1  ;# 1 if I use my methodset difs_0  0set difs_1 1set difs_2 3proc create_scenario { } {	global ns_ node_ num_nodes endtime	global pnum ppktsize pinterval 	global vnum vpktsize vinterval udp_interval 	global pktsize	if {$num_nodes > 3} {	set sink_node [expr $num_nodes - 1]  }	set pri 0		set endtime 20	set t 2	set fl_id 0	set rng  [new RNG]	$rng uniform 0 1##########################################################	# Setup Phone flows	for {set i 0} {$i <[expr $num_nodes ] } {incr i} {	  		set start_time [expr  2 + $t]    		set  node_src	$i				if {$i == 0} {		 	set  node_sink	1		} else {		  set  node_sink [expr $i - 1]		}				if  { $i == 0} {  		  set finishtime  [expr $endtime - 0 ]		} else {		  set finishtime  [expr $endtime - 0 ]		} 				build-cbr $node_($node_src) $node_($node_sink) $ppktsize $pinterval 0 $fl_id $start_time  $finishtime  $pri				puts "P$i with pktsize $ppktsize flows $fl_id from Node$node_src to Node$node_sink every $pinterval"    		puts $start_time		incr fl_id				set t [expr $t +1]	}		set t 2	incr pri	########################################################################################			# Setup Video flows	for {set i 0} {$i < [expr $num_nodes]} {incr i} {                				set start_time [expr  2 + $t] ; #[expr 0.02  * [$rng uniform 0.5 1]]    set  node_src	$i			  if {$i == 0} {		  set  node_sink	1		} else {		  set  node_sink [expr $i - 1]		}				if  { $i == 0} {  		  set finishtime  [expr $endtime - 0 ]		} else {		  set finishtime  [expr $endtime - 0 ]		} 				build-cbr $node_($node_src) $node_($node_sink) $vpktsize $vinterval 0 $fl_id $start_time  $finishtime $pri				puts "V$i with pktsize $vpktsize flows $fl_id  from Node$i to Node $node_sink every $vinterval"    		puts $start_time		incr fl_id				set t [expr $t +1]	}	  set t 2  incr pri 	  ################### trafic to one station		#########################		# Setup Background flows  puts "TCP and UDP priority is $pri"		for {set i 0} { $i < [expr $num_nodes]} {incr i} {	set start_time  [expr 2 + $t] ; #[expr 0.03 * [$rng uniform 0 0.5]]	  set  node_src	$i				if {$i == 0}  {		 	set  node_sink	1					} else {		  set  node_sink [expr $i - 1]				}				if  { $i == 0} {  		  set finishtime  [expr $endtime - 0 ]		} else {		  set finishtime  [expr $endtime - 0 ]		} 		#build-cbr $node_($node_src) $node_($node_sink) $pktsize $udp_interval 0 $fl_id $start_time $finishtime $pri		#puts "UDP $i with pktsize $pktsize flows $fl_id  from Node$i to Node $node_sink every $udp_interval"						build-tcp "TCP" $node_($node_src) $node_($node_sink) $pktsize 20 $fl_id $start_time $finishtime $fl_id $pri  		puts "TCP B$i with flowID $fl_id  and with pktsize $pktsize flows from Node$node_src to Node $node_sink"		puts $start_time		incr fl_id		set t [expr $t +1]	}}

⌨️ 快捷键说明

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