puts "Corriendo Simulación de Topología de Anillo" #Creamos el simulador a usar set ns [new Simulator] #Enrutamiento Distance Vector $ns rtproto DV #Abrimos un archivo .nam el cual almacenara el trafico producido por el simulador set nf [open out.nam w] $ns namtrace-all $nf #Se define el proceso que tendra la simulacion proc finish {} { #Se definen las variables ns y nf global ns nf #Se guarda en la variable nf el trafico lo que a su vez se guarda en el archivo .nam $ns flush-trace #Se cierra la variable nf para que no almacene mas información close $nf #Se ejecuta el archivo .nam exec nam out.nam & exit 0 } #Creamos los nodos a utilizar set n0 [$ns node] set n1 [$ns node] set n2 [$ns node] set n3 [$ns node] set n4 [$ns node] set n5 [$ns node] #Conectamos los nodos a una velocidad de 2Mb con un tiempo de envio de 10ms $ns duplex-link $n0 $n1 2Mb 10ms DropTail $ns duplex-link $n1 $n2 2Mb 10ms DropTail $ns duplex-link $n2 $n3 2Mb 10ms DropTail $ns duplex-link $n3 $n4 2Mb 10ms DropTail $ns duplex-link $n4 $n5 2Mb 10ms DropTail $ns duplex-link $n5 $n0 2Mb 10ms DropTail #Se acomodan los nodos en la simulacion $ns duplex-link-op $n0 $n1 orient left-up $ns duplex-link-op $n1 $n2 orient left $ns duplex-link-op $n2 $n3 orient left-down $ns duplex-link-op $n3 $n4 orient right-down $ns duplex-link-op $n4 $n5 orient right $ns duplex-link-op $n5 $n0 orient right-up #Se crea una conexion UDP y esta comenzara en el nodo n0 set udp [new Agent/UDP] $ns attach-agent $n0 $udp set cbr [new Application/Traffic/CBR] $cbr attach-agent $udp $cbr set type_ CBR $cbr set packet_size_ 1000 $cbr set rate_ 1mb $cbr set random_ false set null [new Agent/Null] $ns attach-agent $n3 $null $ns connect $udp $null $ns at 0.1 "$cbr start" $ns at 2.5 "$cbr stop" $ns at 3.0 "finish" #Corremos la simulacion $ns run