Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

25
Redes Inalámbricas Máster Ingeniería de Computadores 2008/2009 Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2 Jae Chung, Mark Claypool Worcester Polytechnic Institute Ya Xu y Haobo Yu USC/ISI Polly Huang AT&T Labs Research Hao-Li Wang Department of Electrical and Computer Engineering, Iowa State University Sung Park Network and Embedded Systems Lab (NESL) - Electrical Engineering, UCLA K. Sridharan Iyer, Texas A&M University agradecimientos/acknowledgments

description

Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2. Jae Chung, Mark Claypool Worcester Polytechnic Institute Ya Xu y Haobo Yu USC/ISI Polly Huang AT&T Labs Research Hao-Li Wang Department of Electrical and Computer Engineering, Iowa State University Sung Park - PowerPoint PPT Presentation

Transcript of Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Page 1: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Redes Inalámbricas Máster Ingeniería de Computadores 2008/2009Redes Inalámbricas Máster Ingeniería de Computadores 2008/2009

Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Jae Chung, Mark Claypool Worcester Polytechnic Institute

Ya Xu y Haobo Yu USC/ISI

Polly Huang AT&T Labs Research

Hao-Li Wang Department of Electrical and Computer Engineering, Iowa State University

Sung Park Network and Embedded Systems Lab (NESL) - Electrical Engineering, UCLA

K. Sridharan Iyer, Texas A&M University

agradecimientos/acknowledgments

Page 2: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

El simulador ns-2

El ns-2 es una herramienta software gratis disponible para Linux y Windows (no recomendado)

Funcionamiento en modo consola

Orientado a eventos, tiempo simulado (no real)

Combina C++ con TCL C++ para el nucleo → ejecución rapida

TCL para la configuración del simulador y para lanzar

las simulaciones

Page 3: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

3

NS input & output

Page 4: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

4

What is NS

Discrete event simulator The VINT project : Virtual InterNet Testbed UC Berkeley, Lawrence Berkeley National Lab, USC/ISI, Xerox PARC,

AT&T Research Packet-level Link layer and up Wired and wireless

Object-oriented Mixed C++ and Otcl

Most UNIX and UNIX-like systems FreeBSD Solaris Linux

Window 95/98/NT/2K Works, but with an effort

http://www.isi.edu/nsnam/ns/

Download source: current release 2.31 (released Mar 10, 2007)

Page 5: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

El simulador ns-2

Es el simulador más utilizado en el mundo científico (MANETs)

dónde obtenerlo: http://www.isi.edu/nsnam/ns/

Page 6: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

El simulador ns-2: limitaciones / problemas

La configuración de cada simulación se hace de forma manual

Las simulaciones son algo lentas – especialmente para la parte inalámbrica

Las trazas de salida puden llegar a ser muy grandes

No ofrece herramientas para el tratamiento y visualización de resultados Herramientas del grupo (modo consola) Herramientas externas:

http://www.tracegraph.com/

Page 7: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

Simulación de redes inalámbricas en ns-2

Modelos sencillos de canal inalámbrico: TwoRayGround, Shadowed...

Algunas tecnologías inalámbricas: TDMA, 802.11 (DCF) Existen ampliaciones para:

PCF, 802.11e HCF (EDCA / HCCA)

Diferentes procolos de encaminamiento: DSR, AODV, TORA, DSDV, (ninguno) Existen implementaciones externas de otros protocolos:

OLSR, MDSR, AODV-UU, DSR-UU, DYMO y otros

Movilidad de los nodos: Random waypoint (setdest), otras herramientas

(grcmob, ...)

Page 8: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

Simulación de redes inalámbricas en ns-2

Tecnologías IEEE 802.11 utilizadas: Valor por defecto: 802.11b a 2 Mbit/s Con un pequeño cambio: 802.11b a 11 Mbit/s Recompilando: 802.11a/g a 54 Mbit/s

Tiempo típico de simulación: entre 300 y 900 segundos Se puede introducir un periodo previo para activar el

encaminamiento y descubrir las rutas necesarias entre fuente y destino, obteniendo así resultados en "caliente”

Recomendado: 802.11g Tiempo de simulación de 100 s (preparación) + 300

segundos (efectivos) + 20 segundos (finalizar) =420 segundos

Page 9: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

Simulación de redes inalámbricas: selección escenarios

Forma Cuadrado / rectangular

Tamaño Debe de estar relacionado con el numero de nodos Determina el numero medio de saltos

Numero de nodos / densidad de nodos Problemas por baja / alta densidad Relación con el tiempo de simulación

Valores propuestos Cuadrado (870x870 m con 50 nodos) Rectangular (1900x400 con 50 nodos) Para otros tamaños, mantener el ratio de ~ 66 nodos por

km2

Page 10: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

Sim. redes inal.: selección patrones movilidad

Random waypoint (más utilizado) Movimiento rectilíneo a velocidad fija hasta el destino Pausa de N segundos en el destino Nuevo movimiento

Problemas: Poco realista Los nodos empiezan por la pausa (setdest) Tiempo de convergencia elevado El intervalo de velocidades utilizado empieza por cero

Consecuencias: Los resultados son poco estables, se requiere muchas

simulaciones

Page 11: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

Sim. redes inal.: selección patrones movilidad

Disponibles con la herramienta del grupo: Movilidad por grupos Manhattan Movilidad para vehículos Downtown …

Herramientas de otros grupos Steady-state random waypoint (Tracy Camp, U. Colorado)

Recomendado para publicar Random waypoint modificado (GRC):

Velocidad constante (1-12 m/s)Colocar tiempos de pausa a cero

Downtown Steady-state random waypoint

También sin tiempos de espera, y con velocidad constante

Page 12: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

Sim. redes inal.: selección patrones trafico

Tráfico FTP/TCP (transferencias masivas de datos) puede originar problemas Ocupa todo el ancho de banda del canal Dificulta el encaminamiento si no hay QoS (con wi-fi

estándar) Genera trazas muy grandes

Tráfico UDP A una tasa baja permite comprobar la eficacia de los

distintos protocolos de encaminamiento Trafico CBR es poco realista Otras variantes (Pareto) permiten simular VoIP Con trazas se puede simular transmisión de video

Page 13: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

Sim. redes inal.: trazas de salida

2 formatos: Antiguo – más sencillo Nuevo – más completo y adecuado para redes inalámbricas

3 niveles de información MAC (no se suele utilizar – trazas muy grandes) Routing (aplicaciones + protocolos encaminamiento) Agente (sólo para aplicaciones)

Información variada MAC, IP, puerto para fuente / destino Tiempo relativo al evento Identificador único de paquete (sirve para calcular e2e

delay) Tipo y tamaño de paquete (sirve para calcular throughput)

Page 14: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

Automatización: lanzamiento param. de sims.

El lenguaje de consola Linux (bash) permite programar lotes de simulaciones de forma sencilla

La herramienta nohup permite realizar tareas en background

Si alteramos el fichero de configuración de las simulaciones logramos cambiar valores dinámicamente

Ejemplo: Cambiar el protocolo de encaminamiento utilizado Cambiar el escenario utilizado Cambiar el numero de nodos etc.

Page 15: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

Automatización: lanzamiento param. de sims.

Ejemplo

FIN=420SCEN=scen-s5-x1000-y1000-1

for NUM_NODES in 30 50 70; do for i in `seq 1 10`; do for RT_PROT in DSR AODV OLSR; do RES=0; while [ $RES -ne 1 ]; do ../../ns base_script.tcl -sc $SCEN -nn $NUM_NODES -stop $FIN

-trfile res-n$NUM_NODES-r$RT_PROT-$i.tr && RES=1 done done donedone

Page 16: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

Automatización: lanzamiento param. de sims.

Requisitos:

set val(rp) AODVset val(nn) 50 ;# how many nodes are simulatedset val(cp) "find-route.tcl" ;#conection patterset val(sc) "unknown" ; #scenario

proc getopt {argc argv} { global val lappend optlist cp nn sc rp

for {set i 0} {$i < $argc} {incr i} { set arg [lindex $argv $i] if {[string range $arg 0 0] != "-"} continue

set name [string range $arg 1 end] set val($name) [lindex $argv [expr $i+1]] }}

Page 17: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

17

The setdest mobility generator

Mobile Movement Generator./setdest [-n num_of_nodes] [-p pausetime] [-s maxspeed] [-

t simtime] [-x maxx] [-y maxy] > [outdir/movement-file] Example: ./setdest -n 20 -p 2.0 -s 10.0 -t 200 -x 500 -y 500

>scen-20-testand the output will be written in a file called scen-20-test.

Random movement$node start

See ns-2/indep-utils/cmu-scen-gen/setdest/

Page 18: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

18

The traffic patterns generators

ns cbrgen.tcl [-type cbr|tcp] [-nn nodes] [-seed seed] [-mc connections] [-rate rate]

Generating CBR traffic patterns ns cbrgen.tcl -type cbr -nn 10 -seed 1 -mc 8 -rate 4.0

Generating TCP traffic patterns ns cbrgen.tcl -type tcp -nn 25 -seed 0 -mc 20

See ns-2/indep-utils/cmu-scen-gen/

Page 19: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

Automatización: obtención de resultados

A partir de las trazas de salida del simulador podemos extraer la información que deseemos

Ejemplos de información importante: Throughput para una conexión FTP/TCP o CBR/UDP Tasa de paquetes perdidos para una conexión VoIP Retardo extremo-a-extremo (e2ed) para una conexión Routing overhead

Número total de paquetes de routingNúmero total de bytes de routing

Routing overhead normalizadopaquetes de routing / paquetes de datos

Page 20: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

Automatización: obtención de resultados

Se puede automatizar también el proceso de obtención de resultados (y el de generación de escenarios)

Recomendación: pasar todos los resultados de un mismo estudio a una hoja de cálculo Centralizar todos los resultados Sacar valores medios, desviación estándar, intervalos

de confianza, etc. Podemos pre-visualizar los resultados de forma gráfica Podemos exportarlos de forma sencilla para su

representación via gnuplot

Page 21: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

Automatización: representación con GNUPLOT

Estándar de-facto para generación de gráficasLas graficas se generan mediante instruccionesAdecuado para representación de resultados en

forma de lineasPoco adecuado para gráficas de barras,

sectoriales, etc.Permite generar gráficos en formato eps

(necesario para los papers: latex)

Page 22: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

Automatización: representación con GNUPLOT

Ejemplo:

resetset terminal x11set xlabel 'Number of legacy 802.11 nodes (%)'set ylabel 'Throughput per AC (Mbit/s)'set key top rightset xtics 10

plot [0:100] [0.10:0.9] 'Hyb-def_br.txt' u 1:($2*512*8/60e6) title 'AC_VO (Voice)' w lp,\'Hyb-def_br.txt' u 1:($4*512*8/60e6) title 'AC_VI (Video)' w lp,\'Hyb-def_br.txt' u 1:($6*512*8/60e6) title 'AC_BE (Best effort)' w lp,\'Hyb-def_br.txt' u 1:($8*512*8/60e6) title 'AC_BK (Background)' w lpset terminal postscript epsset out 'Hyb-def_br.eps'replot

Page 23: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

Metodología para realizar trabajos

Realizar unos pocos experimentos de pruebaLanzar un lote de experimentos, verificando que

todo está funcionando como planeadoVerificar el método para extraer resultados de un

experimentoExtraer todos los resultados por lotesVisualizar en Office si los resultados obtenidos

son válidosPasar a gnuplot los resultados importantes Incluir las gráficas en el paper

Page 24: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

Metodología para simular en garibaldi

1 PC con 2 procesadores de 32 bitsLanzar 2 simulaciones en paralelo

se puede hacer tratamiento a 1 traza en simultaneo sin retrasar las simulaciones de forma significativa

Otras opciones: una simulación → tratamiento de 2 trazas en

simultaneo ninguna simulación → tratamiento de 3/4 trazas en

simultaneo

Page 25: Tema 7.- Redes inalámbricas Ad Hoc. Simulación de Redes inalámbricas con NS-2

Red

es I

nalá

mb

ricas

M

IC

20

08/2

009

Metodología para simular en mozart

4+1 equipos (videos), cada una con 2 procesadores de 64 bits

Lanzar 2 simulaciones en paralelo en cada video Total de 8 en simultaneo

El tratamiento de trazas se debe realizar en el front-end (mozart) → almacenamiento en red simulaciones → CPU bounded tratamiento de trazas → I/O bounded no más de 2 trazas a la vez → I/O de los videos via

NFS ¡Cuidado! - la compilación de ns-2 en mozart no

funciona (64 bits) → de momento