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

📄 antnet.tcl

📁 基于 NS2 的 AntNet 源代码
💻 TCL
字号:
# tcl script for AntNet algorithm on an arbitrary topology of 12 nodes#number of nodesset sz 12#Create event Schedularset ns [ new Simulator ]#Open the Trace fileset tf [open antnet_trace.out w]$ns trace-all $tf#Create 12 nodesfor {set i 0} {$i < $sz} {incr i} {	set n($i) [$ns node]}#Create links between the nodes$ns duplex-link $n(0) $n(5) 512Mb 155ms DropTail$ns duplex-link $n(1) $n(2) 512Mb 155ms DropTail$ns duplex-link $n(2) $n(3) 512Mb 155ms DropTail$ns duplex-link $n(2) $n(5) 512Mb 155ms DropTail$ns duplex-link $n(2) $n(7) 512Mb 155ms DropTail$ns duplex-link $n(3) $n(6) 512Mb 155ms DropTail$ns duplex-link $n(3) $n(7) 512Mb 155ms DropTail$ns duplex-link $n(4) $n(5) 512Mb 155ms DropTail$ns duplex-link $n(5) $n(6) 512Mb 155ms DropTail$ns duplex-link $n(5) $n(8) 512Mb 155ms DropTail$ns duplex-link $n(5) $n(9) 512Mb 155ms DropTail$ns duplex-link $n(6) $n(7) 512Mb 155ms DropTail$ns duplex-link $n(6) $n(9) 512Mb 155ms DropTail$ns duplex-link $n(6) $n(10) 512Mb 155ms DropTail$ns duplex-link $n(7) $n(11) 512Mb 155ms DropTail$ns duplex-link $n(9) $n(10) 512Mb 155ms DropTail$ns duplex-link $n(10) $n(11) 512Mb 155ms DropTail#Create Antnet agentsfor {set i 0} {$i < $sz} {incr i} {	set   nn($i)  [ new Agent/Antnet $i]}#Attach each node with Antnet agentfor {set i 0} {$i < $sz} {incr i} {	$ns attach-agent  $n($i)  $nn($i)}#Create connection between the nodes$ns connect $nn(0) $nn(5)$ns connect $nn(5) $nn(0)$ns connect $nn(1) $nn(2)$ns connect $nn(2) $nn(1)$ns connect $nn(2) $nn(3)$ns connect $nn(3) $nn(2)$ns connect $nn(2) $nn(5)$ns connect $nn(5) $nn(2)$ns connect $nn(2) $nn(7)$ns connect $nn(7) $nn(2)$ns connect $nn(3) $nn(6)$ns connect $nn(6) $nn(3)$ns connect $nn(3) $nn(7)$ns connect $nn(7) $nn(3)$ns connect $nn(4) $nn(5)$ns connect $nn(5) $nn(4)$ns connect $nn(5) $nn(6)$ns connect $nn(6) $nn(5)$ns connect $nn(5) $nn(8)$ns connect $nn(8) $nn(5)$ns connect $nn(5) $nn(9)$ns connect $nn(9) $nn(5)$ns connect $nn(6) $nn(7)$ns connect $nn(7) $nn(6)$ns connect $nn(6) $nn(9)$ns connect $nn(9) $nn(6)$ns connect $nn(6) $nn(10)$ns connect $nn(10) $nn(6)$ns connect $nn(7) $nn(11)$ns connect $nn(11) $nn(7)$ns connect $nn(9) $nn(10)$ns connect $nn(10) $nn(9)$ns connect $nn(10) $nn(11)$ns connect $nn(11) $nn(10)#Add neighbors$ns at now "$nn(0) add-neighbor $n(0) $n(5)"$ns at now "$nn(0) add-neighbor $n(1) $n(2)"$ns at now "$nn(0) add-neighbor $n(2) $n(3)"$ns at now "$nn(0) add-neighbor $n(2) $n(5)"$ns at now "$nn(0) add-neighbor $n(2) $n(7)"$ns at now "$nn(0) add-neighbor $n(3) $n(6)"$ns at now "$nn(0) add-neighbor $n(3) $n(7)"$ns at now "$nn(0) add-neighbor $n(4) $n(5)"$ns at now "$nn(0) add-neighbor $n(5) $n(6)"$ns at now "$nn(0) add-neighbor $n(5) $n(8)"$ns at now "$nn(0) add-neighbor $n(5) $n(9)"$ns at now "$nn(0) add-neighbor $n(6) $n(7)"$ns at now "$nn(0) add-neighbor $n(6) $n(9)"$ns at now "$nn(0) add-neighbor $n(6) $n(10)"$ns at now "$nn(0) add-neighbor $n(7) $n(11)"$ns at now "$nn(0) add-neighbor $n(9) $n(10)"$ns at now "$nn(0) add-neighbor $n(10) $n(11)"# Set parameters and start timefor {set i 0} {$i < $sz} {incr i} {	$nn($i) set num_nodes_ $sz	$nn($i) set timer_ant_ 0.03	$nn($i) set r_factor_ 0.05	$ns  at  1.0  "$nn($i) start"}#Set stop time for AntNet algorithmfor {set i 0} {$i < $sz} {incr i} {	$ns  at 10.8 "$nn($i) stop"}#Print routing tables generated by AntNetfor {set i 0} {$i < $sz} {incr i} {	$ns at 12.0 "$nn($i) print_rtable"}# Final Wrap upproc Finish {} {	global ns tf	$ns   flush-trace	#Close the Trace file        close $tf}$ns  at 14.0 "Finish"# Start the simulator$ns  run

⌨️ 快捷键说明

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