complutense 2002 4ta parte ns
TRANSCRIPT
DANIEL DÍAZ [email protected]
Copyright 2002 Daniel Díaz A
Daniel Díaz A [email protected] 2002 Daniel Díaz A
Introducción
Ejemplo: Análisis de una red IP Best Effort
Comandos del ns
# Tráfico TCP1.
#Vamos a crear un agente FTP sobre TCPset tcp1 [new Agent/TCP] ;# Nuevo agente TCP$ns attach-agent $n0 $tcp1 ;# Lo ubicamos en n0.
#Asociamos un identificador de flujo 3 al agente tcp1.#Además asignamos el color verde (green) al flujo 3.#$tcp1 set fid_ 3$ns color 3 green
set sink1_TCP [new Agent/TCPSink] ;# Creamos el "sumidero" TCP.$ns attach-agent $n6 $sink1_TCP ;# Lo ubicamos en n6.set ftp1 [new Application/FTP] ;# Nueva aplicación FTP$ftp1 attach-agent $tcp1 ;# La asociamos al agente TCP.$ns connect $tcp1 $sink1_TCP ;# Conectamos los dos extremos ;# TCP.
$ns at 0.0 "$ftp1 start" ;# Planificamos el comienzo de ;# la generación de tráfico FTP ;# para t= 0.0 seg.# Fin de la definición del tráfico TCP1.########################################
$ns at 1.0 "terminar"
proc terminar { } { global ns tf nf $ns flush-trace close $tf close $nf exec ../../nam-1.0a8/nam red_IP_best_effort.nam & exit 0}
$ns run
# Definir tráfico TCP ########################################Tráfico TCP0.##Vamos a crear un agente FTP sobre TCPset tcp0 [new Agent/TCP] ;# Nuevo agente TCP$ns attach-agent $n0 $tcp0 ;# Lo ubicamos en n0.
#Asociamos un identificador de flujo 2 al agente tcp0.#Además asignamos el color azul (blue) al flujo 2.#$tcp0 set fid_ 2$ns color 2 blue
set sink0_TCP [new Agent/TCPSink] ;# Creamos el "sumidero" TCP.$ns attach-agent $n6 $sink0_TCP ;# Lo ubicamos en n6.set ftp0 [new Application/FTP] ;# Nueva aplicación FTP$ftp0 attach-agent $tcp0 ;# La asociamos al agente TCP.$ns connect $tcp0 $sink0_TCP ;# Conectamos los dos extremos ;# TCP.$ns at 0.0 "$ftp0 start" ;# Planificamos el comienzo de ;# la generación de tráfico FTP ;# para t= 0.0 seg.# Fin de la definición del tráfico TCP0.
#Asociamos un identificador de flujo 1 al agente udp1.#Además asignamos el color marrón (brown) al flujo 1.#$udp1 set fid_ 1$ns color 1 brown
## Fuente CBR# Por default el tamaño e cada paquete CBR es 210 bytes# Se puede cambiar con: $cbr1 set packetSize_ 48#
set cbr1 [new Application/Traffic/CBR] ;# Nueva fuente CBR$cbr1 attach-agent $udp1 ;# La asociamos a udp1
set sink1_UDP [new Agent/LossMonitor] ;# Agente monitor de tráfico.$ns attach-agent $n6 $sink1_UDP ;# Lo ubicamos en n6.$ns connect $udp1 $sink1_UDP ;# Conectamos el agente UDP ;# con el sumidero de tráfico.$ns at 0.0 "$cbr1 start" ;#Planificamos el comienzo de la ;# generación de tráfico CBR ;# para t=0.0 seg.## Fin de la definición del tráfico UDP1.########################################
# Fuente CBR# Por default el tamaño e cada paquete CBR es 210 bytes# Se puede cambiar con: $cbr0 set packetSize_ 48#
set cbr0 [new Application/Traffic/CBR] ;# Nueva fuente CBR$cbr0 attach-agent $udp0 ;# La asociamos a udp0
set sink0_UDP [new Agent/LossMonitor] ;# Agente monitor de tráfico.$ns attach-agent $n6 $sink0_UDP ;# Lo ubicamos en n6.$ns connect $udp0 $sink0_UDP ;# Conectamos el agente UDP ;# con el sumidero de tráfico.$ns at 0.0 "$cbr0 start" ;#Planificamos el comienzo de la ;# generación de tráfico CBR ;# para t=0.0 seg.## Fin de la definición del tráfico UDP0.###############################################################################Tráfico UDP1.#Creamos los agentes asociados a la fuente CBR.#set udp1 [new Agent/UDP] ;# Nuevo agente UDP$ns attach-agent $n0 $udp1 ;# Lo ubicamos en n0
$ns duplex-link $n2 $n5 10Mb 2ms DropTail$ns duplex-link $n3 $n4 10Mb 2ms DropTail$ns duplex-link $n4 $n5 10Mb 2ms DropTail$ns duplex-link $n5 $n6 10Mb 2ms DropTail
########################## # # # Definir tráfico UDP # # # ##################################################################Tráfico UDP0.#Creamos los agentes asociados a la fuente CBR.#set udp0 [new Agent/UDP] ;# Nuevo agente UDP$ns attach-agent $n0 $udp0 ;# Lo ubicamos en n0
##Asociamos un identificador de flujo 0 al agente udp0.#Además asignamos el color rojo (red) al flujo 0.#$udp0 set fid_ 0$ns color 0 red
#Activar las trazasset tf [open red_IP_best_effort.tr w]$ns trace-all $tf
set nf [open red_IP_best_effort.nam w]$ns namtrace-all $nf #Definir la red#Primero creamos los nodosset n0 [$ns node]set n1 [$ns node]set n2 [$ns node]set n3 [$ns node]set n4 [$ns node]set n5 [$ns node]set n6 [$ns node]
#A continuación se crean los enlaces, DropTail significa que las colas#asociadas son FIFO.$ns duplex-link $n0 $n1 10Mb 2ms DropTail$ns duplex-link $n1 $n2 10Mb 2ms DropTail$ns duplex-link $n1 $n3 10Mb 2ms DropTail$ns duplex-link $n2 $n3 10Mb 2ms DropTail$ns duplex-link $n2 $n4 10Mb 2ms DropTail
Ejemplo de Script tcl################################################################# Programa desarrollado por Daniel Díaz A.# [email protected] ó [email protected]## n0 n6# () () # \ / # \ 5Mbps, 2ms / # \ / # n1 \ 1.5Mbps, 2ms n3 n5 / # ()-------------------------()------------------------()# \ / \ / # \ / \ / # \ / 5mbps \ / # \ / 2ms \ / # \ / \ / # ()------------------------()# n3 n4## Los nodos son IP, servicio best effort
#Comienzo del fichero #Crea el objeto simuladorset ns [new Simulator]
Daniel Díaz A [email protected] 2002 Daniel Díaz A
+ 0 0 1 cbr 210 ------- 0 0.0 6.0 0 0- 0 0 1 cbr 210 ------- 0 0.0 6.0 0 0+ 0 0 1 cbr 210 ------- 1 0.1 6.1 0 1+ 0 0 1 tcp 1000 ------- 2 0.2 6.2 0 2+ 0 0 1 tcp 1000 ------- 3 0.3 6.3 0 3- 0.000168 0 1 cbr 210 ------- 1 0.1 6.1 0 1- 0.000336 0 1 tcp 1000 ------- 2 0.2 6.2 0 2- 0.001136 0 1 tcp 1000 ------- 3 0.3 6.3 0 3r 0.002168 0 1 cbr 210 ------- 0 0.0 6.0 0 0+ 0.002168 1 2 cbr 210 ------- 0 0.0 6.0 0 0- 0.002168 1 2 cbr 210 ------- 0 0.0 6.0 0 0r 0.002336 0 1 cbr 210 ------- 1 0.1 6.1 0 1+ 0.002336 1 2 cbr 210 ------- 1 0.1 6.1 0 1- 0.002336 1 2 cbr 210 ------- 1 0.1 6.1 0 1r 0.003136 0 1 tcp 1000 ------- 2 0.2 6.2 0 2+ 0.003136 1 2 tcp 1000 ------- 2 0.2 6.2 0 2- 0.003136 1 2 tcp 1000 ------- 2 0.2 6.2 0 2+ 0.00375 0 1 cbr 210 ------- 0 0.0 6.0 1 4- 0.00375 0 1 cbr 210 ------- 0 0.0 6.0 1 4+ 0.00375 0 1 cbr 210 ------- 1 0.1 6.1 1 5- 0.003918 0 1 cbr 210 ------- 1 0.1 6.1 1 5r 0.003936 0 1 tcp 1000 ------- 3 0.3 6.3 0 3
Ejemplo de archivo tipo tr
Daniel Díaz A [email protected] 2002 Daniel Díaz A
Daniel Díaz A [email protected] 2002 Daniel Díaz A
Presentación de la red a simular - nam
Daniel Díaz A [email protected] 2002 Daniel Díaz A
Transmisión de las tramas TCP
Daniel Díaz A [email protected] 2002 Daniel Díaz A
Tiempo
Ret
ard
o
Los paquetes UDP y TCP son enviados independientemente
Análisis del retardo de los paquetes
Daniel Díaz A [email protected] 2002 Daniel Díaz A
Transmisión de 02 tramas UDP y 02 TCP
Daniel Díaz A [email protected] 2002 Daniel Díaz A
Los paquetes UDP y TCP son enviados simultáneamente: 02 aplicaciones TCP y UDP
Análisis del retardo de los paquetes
Daniel Díaz A [email protected] 2002 Daniel Díaz A
Daniel Díaz A [email protected] 2002 Daniel Díaz A
Agregación
Agregar
Flujo 1
Flujo 2
Flujo i
Flujo agregado
Flujos con QoS similares
Todo el superflujocon el mismo
delay
El aislamiento no es posiblepara un flujo agregado
Agregar significa tratar varios flujos como si fuera uno solo.Los flujos con similares características de QoS serán agregados.
Daniel Díaz A [email protected] 2002 Daniel Díaz A
Región Agregada
IntServ, DiffServMPLS, MPLS/DiffServ
Red de Acceso Red de Acceso
IntServ, DiffServ
IntServ, DiffServ
QoS E2E
Agregador Desagregador
Fundamento de la Agregación
Mecanismo deRegularizar elTráfico en la
Región agregada
Daniel Díaz A [email protected] 2002 Daniel Díaz A
Región agregadaIntServ/RSVP IntServ/RSVP
DiffServ DiffServ
MPLS
Daniel Díaz A [email protected] 2002 Daniel Díaz A
Archivo tipotr
Calcular :Todos los parámetros de QoS:• Delay• Jitter• Rendimiento