• No se han encontrado resultados

SIMULACIÓN DE PROTOCOLOS DE ENRUTAMIENTO PARA REDES MÓVILES AD-HOC MEDIANTE HERRRAMIENTA DE SIMULACIÓN NS-3 INSTALACIÓN DE NS-3

N/A
N/A
Protected

Academic year: 2021

Share "SIMULACIÓN DE PROTOCOLOS DE ENRUTAMIENTO PARA REDES MÓVILES AD-HOC MEDIANTE HERRRAMIENTA DE SIMULACIÓN NS-3 INSTALACIÓN DE NS-3"

Copied!
7
0
0

Texto completo

(1)

SIMULACIÓN DE PROTOCOLOS DE ENRUTAMIENTO

PARA REDES MÓVILES AD-HOC MEDIANTE

HERRRAMIENTA DE SIMULACIÓN NS-3

INSTALACIÓN DE NS-3

Simulación de Redes

Introducción a la herramienta

NS-3 es un simulador de redes de eventos discretos

Cada evento ocurre en un instante determinado y modifica el estado del sistema

La simulación no recorre de forma progresiva el tiempo (simulador de tiempo continuo), sino que va saltando en el tiempo de un evento al evento siguiente

Las simulaciones son más rápidas

Aplicaciones: usos en investigación y educación

Software abierto, de uso público, desarrollado en común a través de las contribuciones de sus usuarios

El Proyecto ns-3 arrancó su andadura en 2006

Trata de sintonizar con las líneas de investigación más actuales en materia de redes de comunicaciones

(2)

Simulación de Redes

Loja - 2014 3

Introducción a la herramienta

Objetivo: construcción de un núcleo de simulación sólido (validado), sencillo de depurar y bien documentado (relativamente)

Facilita la extracción de los resultados de simulación (trazas) para su posterior análisis

Sistema operativo: Linux (nativo o máquina virtual)

El núcleo de simulación soporta redes estructuradas sobre el modelo IP y también no basadas en IP:

Wi-Fi

WiMAX

LTE

Redes de sensores, redes cableadas TCP/IP, aplicaciones, etc.

Ejemplo de su evolución:

Agosto 2013  ns-3.18

Diciembre 2013  ns-3.19

Introducción a la herramienta

Compilación y ensamblado

Se realiza mediante WAF para configurar, compilar, limpiar, instalar y desinstalar programas.

Está desarrollado en el lenguaje PYTHON (instalar antes de su uso)

Se ejecuta desde línea de comandos: ./waf antenna aodv applications bridge buildings config-store core csma csma-layout

dsdv dsr emu energy fd-net-device flow-monitor

internet lte mesh mobility mpi netanim (no Python)

network nix-vector-routing olsr point-to-point point-to-point-layout propagation

sixlowpan spectrum stats tap-bridge test (no Python) topology-read

(3)

Simulación de Redes

Loja - 2014 5

Introducción a la herramienta

Los scripts se pueden desarrollar principalmente en dos lenguajes:

CPP

PYTHON

Un ejemplo de ejecución de un programa en ns3 es: ./waf --run scratch/scratch-simulator

El ejecutable se encuentra en el directorio build, si se quiere ejecutar directamente sería necesario actualizar enlaces simbólicos (sudo ln…).

El fichero scratch-simulator.cc es:

Cabecera típica de C

Programa principal Muestra mensaje en pantalla

Utilizado para depuración

Simulación de Redes

Prerrequisitos

Instalación de C++

$

sudo apt-get install gcc g++ python

¿Instalar estos paquetes sin verificación [s/N]? → y

Instalación de Python

$

sudo apt-get install gcc g++ python python-dev

Instalación de Mercurial

$

sudo apt-get install mercurial

Instalación de Bazaar

$

sudo apt-get install bzr

Depurador

$

sudo apt-get install gdb valgrind

Librería GSL (GNU Scientific Library)

(4)

Simulación de Redes

Loja - 2014

Prerrequisitos

7

Analizador flex y generador bison

$

sudo apt-get install flex bison libfl-dev

Instalación de tcpdump (lectura de salidas pcap)

$

sudo apt-get install tcpdump

Instalación de librerías estadísticas

$

sudo apt-get install sqlite sqlite3 libsqlite3-dev

Instalación de librerías XML

$

sudo apt-get install libxml2 libxml2-dev

Sistema GTK (toolkit basado en objetos)

$

sudo apt-get install libgtk2.0-0 libgtk2.0-dev

Máquinas virtuales en ns-3

$

sudo apt-get install vtun lxc

Prerrequisitos

Chequeo de código python

$

sudo apt-get install uncrustify

Documentación (doxygen)

$

sudo apt-get install doxygen graphviz imagemagick

$

sudo apt-get install texlive texlive-extra-utils texlive-latex-extra

Visualización de manuales y tutorial (con sphinx y dia)

$

sudo apt-get install python-sphinx dia

Instalación de visualizador pyviz de ns-3

$

sudo apt-get install pygraphviz kiwi python-pygoocanvas libgoocanvas-dev

Módulo openflow

$

sudo apt-get install libboost-signals-dev libboost-filesystem-dev

Soporte de emulador MPI (Message Passing Interface)

$

sudo apt-get install bin common

(5)

openmpi-Simulación de Redes

Loja - 2014

Prerrequisitos

9

Enlaces modificados con python

$

sudo apt-get install gcc-multilib

Simulación de Redes

Instalación usando Bake

$

mkdir workspace

$

cd workspace

$

hg clone http://code.nsnam.org/bake

$

export BAKE_HOME=`pwd`/bake

$

export PATH=$PATH:$BAKE_HOME

$

export PYTHONPATH=$PYTHONPATH:$BAKE_HOME

$

cd bake

$

./bake.py check

$

./bake.py configure –e ns-3.18

$

bake .py show

qt4 - missing

$

sudo apt-get install qt4-dev-tools

$

./bake.py show

(6)

Simulación de Redes

Loja - 2014

Instalación usando Bake

11

$

cd ../..

$

./bake.py download –v

Centro de Software: instalar gccxml

$

./bake.py build -vvv

Prueba de funcionamiento

$

cd source/ns-3.18

$

./test.py –c core

(7)

Simulación de Redes

Loja - 2014

Instalación de aplicaciones

13

Gnuplot en Centro de Software

Prueba de funcionamiento

$

gnuplot gnuplot> exit

Wireshark en Centro de Software

Referencias

Documento similar

El contar con el financiamiento institucional a través de las cátedras ha significado para los grupos de profesores, el poder centrarse en estudios sobre áreas de interés

En nuestra opinión, las cuentas anuales de la Entidad Pública Empresarial Red.es correspondientes al ejercicio 2010 representan en todos los aspectos significativos la imagen fiel

En nuestra opinión, las cuentas anuales de la Entidad Pública Empresarial Red.es correspondientes al ejercicio 2012 representan en todos los aspectos

La Intervención General de la Administración del Estado, a través de la Oficina Nacional de Auditoría, en uso de las competencias que le atribuye el artículo 168

Fije la tapa para poste sobre la cubierta de la base para poste con los 4 tornillos de máquina provistos.. Como se muestra en

Cuando elija el lugar para realizar el agujero, tenga en cuenta que debe dejar un amplio espacio (ver sección perfore un agujero en la pared para el paso de tuberías) para

Para las unidades que tienen una resistencia eléctrica auxiliar, no instale la unidad dentro de 1 metro (3 pies) de cualquier material combustible. No instale la unidad en un lugar

El documento definirá la configuración de Firebase y de la API de TheMovieDB, aunque por defecto el proyecto incluye los valores utilizados para el desarrollo y que