conceptos_de_simulacion_y_opnet.pdf

17
Aquitectura de Redes Sistemas y Servicios “Conceptos de simulación y OPNET” Área de Ingeniería Telemática

Upload: lenin-campoverde-jara

Post on 17-Nov-2015

9 views

Category:

Documents


2 download

TRANSCRIPT

  • Aquitectura de Redes Sistemas y Servicios

    Conceptos de simulacin y OPNET

    rea de Ingeniera Telemtica

  • 1

    NDICE INTRODUCCIN............................................................................................................ 3

    1. Modelos y simulacin. Qu y para qu. ................................................................... 3

    2. Clasificacin y Tipos de Simulacin ........................................................................ 4

    3. Pasos a seguir para una correcta simulacin: ........................................................... 5

    4. Fiabilidad de los resultados obtenidos. Intervalos de confianza. ............................. 6

    5. Tiempo de simulacin y nmero de eventos. ........................................................... 6

    SIMULADOR OPNET..................................................................................................... 8

    1.- Fases para la realizacin de una simulacin............................................................ 8

    2.-Los editores de OPNET............................................................................................ 8

    3.-Atributos de objeto:................................................................................................ 15

    4.-Definicin de la simulacin.................................................................................... 15

    5.-Salidas del simulador y anlisis de resultados. ...................................................... 16

  • 3

    INTRODUCCIN

    La herramienta bsica que se emplear en el desarrollo de estas prcticas ser elsimulador de redes Opnet. Antes de comenzar con las prcticas en s, resultaimprescindible que el alumno cuente con unas nociones bsicas acerca de qu implica lautilizacin de un simulador y qu parmetros habrn de tenerse en cuenta a la hora deldiseo de los modelos empleados y de las simulaciones realizadas, para garantizar unafiabilidad de los resultados obtenidos.

    1. Modelos y simulacin. Qu y para qu.

    Definimos simulacin como una tcnica que imita el comportamiento de unsistema del mundo real conforme evoluciona en el tiempo. Mediante ella podremos, portanto, analizar y observar ciertas caractersticas del sistema, sin necesidad de acudir alsistema real, nos bastar con el anlisis del modelo que lo representa.

    Surgen, pues, dos nuevas definiciones:

    a) Modelo de simulacin que se refiere al conjunto de hiptesis acerca delfuncionamiento del sistema expresado como relaciones matemticas y/o lgicas entrelos elementos del sistema.

    b) Y Proceso de simulacin que ser la ejecucin del modelo a travs del tiempoen un ordenador para generar muestras representativas del comportamiento del sistema.

    En definitiva, simulacin har referencia a la tcnica, modelo de simulacin a larepresentacin del sistema real que vamos a analizar, las condiciones de sufuncionamiento y las variables que emplea, y el proceso de simulacin ser unaejecucin concreta, con unos valores asociados a las variables que se pueden ajustar enel modelo, que se realizar para obtener los resultados referidos a unos ciertosparmetros que especifican el comportamiento del sistema.

    Cabe sealar que la simulacin no es una tcnica de optimizacin, esto es, noproporciona el dimensionamiento de las variables del sistema que maximizan elrendimiento o las prestaciones del mismo, sino que nicamente se limita a informar decul sera el comportamiento del sistema analizado en las condiciones que se indiquenpara el proceso de simulacin.

    Habr de tenerse en cuenta que la simulacin se basa en el muestreo aleatorio, loque traer consigo que la salida de la simulacin, los resultados que de ella se extraigan,est sujeta a variaciones aleatorias y por ello, haya de ser examinada, utilizando para talfin, pruebas de inferencia estadstica, que evalen si tales resultados son o no fiables yrepresentan fielmente el comportamiento del sistema o no tienen validez alguna.

    Continuamente nos estamos refiriendo al trmino sistema. Pero, qu cabeconsiderar como sistema? Entenderemos por sistema, cualquier coleccin de elementosque actan e interactan para lograr algn fin lgico. De este modo, al tratarse de una

  • 4

    definicin poco restrictiva, podremos agrupar bajo este trmino, objetos tan diversoscomo: supermercados, hospitales, redes de caminos, empresas, modelos econmicos, ylo que centra nuestro inters, redes de computadores.

    Asimismo, cuando hablemos de estado del sistema estaremos haciendoreferencia al conjunto de variables necesarias para describir el estado del sistema en undeterminado instante de tiempo.

    Entre estas variables distinguiremos las entradas y las salidas. Las salidas de lasimulacin sern los objetivos de nuestro estudio, expresados mediante valoresnumricos. Las entradas sern los valores numricos que permitan iniciar la simulaciny obtener las salidas. En las entradas, se incluyen:

    o las condiciones iniciales: valores que expresan el estado del sistema alprincipio de la simulacin.

    o Datos determinsticos: valores conocidos necesarios para realizar losclculos que producen las salidas.

    o Y los datos probabilsticos: cantidades cuyos valores son inciertos peronecesarios para obtener las salidas de la simulacin. Los valoresespecficos de estos datos deben conocerse a travs de una distribucinde probabilidad.

    2. Clasificacin y Tipos de Simulacin

    Existen diversos aspectos en funcin de los cuales podemos clasificar lasdistintas simulaciones. En este apartado, se mostrarn algunas de estas posiblesclasifica-ciones.

    a) Esttica vs. Dinmica.

    Se denomina modelo de simulacin esttica a la representacin de un sistema enun instante de tiempo determinado.

    Una simulacin dinmica, por su parte, es la representacin de un sistemacuando evoluciona con el tiempo.

    A lo largo de nuestras prcticas, nicamente emplearemos simulacionesdinmicas en Opnet, observando como se comportan las redes que diseemos con eltranscurso del tiempo.

    b) Determinista vs. aleatoria.

    Un modelo de simulacin se dice determinista si no contiene absolutamenteninguna variable aleatoria.

    El modelo de simulacin estocstico ser aqul que s contenga una o msvariables aleatorias.

  • 5

    En nuestras prcticas, el nmero de variables aleatorias con las que contemos enel diseo del modelo variar de unas a otras, pero en todas ellas existir alguna varaiblealeatoria, sea el tiempo entre llegadas, el tamao de los paquetes, el tiempo de comienzode la simulacin...

    c) Continua vs. Discreta.

    Los modelos continuos de simulacin sern aqullos cuyo comportamientocambia de forma continua con el tiempo. Para describir las interacciones entre loselementos del sistema se suele requerir de ecuaciones diferenciales (existentes debido ala condicin de continuidad).

    En caso contrario, diremos que el modelo de simulacin es discreto, lo queocurrir si el comportamiento cambia nicamente en instantes de tiempo concretos,eventos.

    A lo largo de nuestras prcticas, comprobaremos como el tipo de simulacin queimplementa Opnet es una simulacin de eventos discretos. Este tipo de simulacin seemplea para describir situaciones de colas. Es ms, cualquier modelo de eventosdiscretos est formado por una red de colas interrelacionadas (que en nuestros ejemplossern las colas de los distintos dispositivos que constituyan la red). Los dos principaleseventos son la llegada y la salida (en nuestras prcticas llegadas y salidas de paquetes).La aleatoriedad surge si el intervalo de tiempo entre dos eventos (sea llegada o salida)consecutivos es probabilstico (lo cual puede deberse a tamaos de paquetes o a tiemposentre peticiones aleatorios).

    3. Pasos a seguir para una correcta simulacin:

    Con vistas a conseguir realizar una simulacin provechosa que nos informe de loque realmente nos interesa acerca del modelo y garantice una cierta fiabilidad de losresultados, tendremos que seguir los pasos que se nos indican:

    a) En primer lugar, enunciar explcitamente los objetivos que sepretenden: los interrogantes que se nos plantean, las hiptesis que sequieren demostrar, y las distintas posibilidades a considerar.

    b) A continuacin se ha de proceder con la creacin del modelo. Ennuestro caso, el diseo de la red que hemos de analizar.

    c) Posteriormente, se habr de disear un programa de ordenador para elmodelo. Aqu, nosotros ya contaremos con nuestro simulador de redes,Opnet.

    d) Habremos de verificar el programa y validar el modelo.

    e) Ya estamos en disposicin de utilizar el modelo para experimentar ycontestar a las preguntas que inicialmente se nos planteaban.

  • 6

    f) Finalmente, tendremos que reunir, procesar y analizar los datosgenerados como soluciones del modelo y en trminos de validez yfiabilidad estadstica.

    4. Fiabilidad de los resultados obtenidos. Intervalos deconfianza.

    No hemos de olvidar que una sola simulacin proporciona un nico valor deentre muchos posibles resultados, que puede ser distinto en cada simulacin, comoconsecuencia del carcter aleatorio de algunas de sus variables. Por ello, tendremos queacudir a las tcnicas de inferencia estadstica para establecer el nmero de simulacionesrequerido para proporcionar un nivel deseado de confianza. Estas tcnicas tendrn queutilizarse tambin a la hora de reunir los datos que sirven como entradas.

    Expresaremos la confianza en el resultado como la probabilidad de que el valordel sistema real est comprendido en un intervalo que tenga por centro el valorestimado. Intervalo ste, que se denomina intervalo de confianza. La determinacin deestos intervalos de confianza en las simulaciones no resulta sencillo debido a que lassalidas no suelen ser independientes (por ejemplo, si en una red consideramos comosalidas el throughput y el retardo, un aumento en el primero vendr acompaado de unincremento en el segundo), y las condiciones iniciales pueden influir considerablementeen los resultados.

    Aunque la determinacin de estos intervalos de confianza resulte complicada, sresulta evidente la siguiente observacin:

    Si la variable de salida (lase, por ejemplo, el retardo sufrido por un paquete), seobtiene como la media de un conjunto de salidas obtenido para una determinadamuestra, ser tanto ms fiable cuanto mayor sea el tamao muestral (esto es, el nmerode paquetes de los que se ha estudiado el retardo, para calcular el retardo medio). Deeste modo, en las simulaciones que desarrollaremos en nuestras prcticas tendrn unarelevancia considerable parmetros de la simulacin tales como tiempo de simulacin ynmero de eventos.

    5. Tiempo de simulacin y nmero de eventos.

    Estos dos parmetros propios de la simulacin estarn ntimamente ligados a lafiabilidad con que podemos aceptar los resultados que sta nos devuelve. El tiempo desimulacin como su propio nombre indica, permite especificar cunto tiempo vamos asuponer que est en funcionamiento nuestro sistema, para observar su comportamiento alo largo de ese periodo, lo cual implicar si estamos calculando valores medios, porejemplo, calcular la media del valor que toma ese parmetro a lo largo de todo elperiodo de simulacin. Gracias a estas tcnicas de simulacin resulta posible simular elcomportamiento que tendra un sistema en un largo periodo de tiempo empleando paraello un tiempo considerablemente menor. De manera intuitiva, se puede apreciar como

  • 7

    la fiabilidad de un resultado que haga referencia a la media de una cierta variableaumentar con el tiempo de simulacin, si el resto de entradas se mantienen constantes.

    De igual forma el nmero de eventos sern el nmero de llegadas o salidas quese producen durante la simulacin y de igual forma que para el tiempo de simulacin, seestablece que a mayor nmero de eventos, en iguales condiciones, la fiabilidad se veincrementada.

    Ser, pues, de especial importancia, prestar atencin a que el nmero de eventosque se sucedan en una determinada simulacin sea suficiente para garantizar que losresultados son estadsticamente fiables.

    En nuestras prcticas, esto podremos ajustarlo, dando valores adecuados altiempo que transcurra entre la generacin de dos paquetes consecutivos y a la duracinde la simulacin, de forma que se garantice que se han observado un nmero suficientede paquetes (eventos) que haga posible la extraccin de conclusiones

  • 8

    SIMULADOR OPNET

    OPNET es una potente herramienta con la que analizar, por medio desimulaciones de eventos discretos, el comportamiento de redes de comunicaciones.

    El paquete disponible incluye una extensa coleccin de elementos con los quemodelar los sistemas ms comunes. A su vez, si los elementos necesarios para elsistema no se encontraran disponibles, los editores de OPNET (el editor de nodo, deproceso, de enlace,...) proporcionan las herramientas necesarias para su implementaciny desarrollo

    1.- Fases para la realizacin de una simulacin

    Para la realizacin de una simulacin en OPNET se siguen 3 fases:

    Figura 1: fases de una simulacin

    La especificacin del modelo consiste en desarrollar la representacin delsistema a estudiar. Como se ha dicho antes, la base para modelos bsicos se encuentraimplementada. Si fuera necesario, se har uso de los distintos editores, que sernespecificados ms adelante, para crear nuevos nodos, enlaces, tipos de paquetes,....

    Una vez especificado el modelo a simular, el siguiente paso es elegir los datos arecolectar. Un anlisis de estos datos nos servir para validar las especificacionesexpuestas o, en caso contrario, hacer una reespecificacin.

    2.-Los editores de OPNET

    Los editores incluidos en OPNET proporcionan las herramientas necesarias parala creacin de topologas de red. Cada editor se encarga de una tarea distinta. Los msimportantes son:

  • 9

    2.1-El editor de proyectos (Project Editor):

    En l se especifica la topologa de red, la configuracin de los nodos y losenlaces. Adems, en este editor es donde se eligen los resultados a mostrar, se realiza lasimulacin y se visualizan los resultados.

    Este editor contiene tres tipos bsicos de objetos: subredes, nodos y enlaces.Existen numerosos modelos de nodos y enlaces. Las paletas (accesibles a travs de unicono situado en la parte superior izquierda del editor) ordenan los objetos disponiblesen categoras. Por ejemplo, en la paleta Ethernet, se encuentran los nodos y enlaces msutilizados cuando se disea una red Ethernet. En la paleta "Links" y "Links Advanced"encontramos los modelos de enlace implementados. Tambin podemos encontrarpaletas con los elementos disponibles de una marca comercial concreta, como porejemplo Cisco.

    Los nodos ms comunes que se utilizarn en las prcticas son las estaciones detrabajo tipo Ethernet ("Ethernet station") y tipo internet ("Internet workstation"). Lasestaciones de trabajo Ethernet (incluidas en la paleta "ethernet") proporcionan laposibilidad de generar desde ellas un trfico Ethernet, especificando el tiempo entrellegadas de paquetes, el tamao de paquete, ... Las estaciones de trabajo Internet(incluidas en la paleta "internet_toolbox") proporcionan la generacin de trficosiguiendo un perfil concreto descrito por distintos tipos de aplicacin (como puede sertrfico debido a pginas web, videoconferencias, e-mail, ftp, ...) La eleccin de unaaplicacin concreta y su caracterizacin se har con los elementos "Application Config"y "Profile Config". Con el primero, se definir el tipo de aplicacin elegida y con"Profile Config" se caracterizar la aplicacin. Los atributos de ambas configuracionesse muestran en las figuras 4 y 5.

    En este editor podemos observar tambin los resultados obtenidos, simplementeseleccionando "View Results" del men desplegable, obtenido pinchando sobre elespacio de trabajo el botn derecho del ratn (figura 2) Al seleccionar esta opcin,aparecen las estadsticas disponibles. Se seleccionan y se muestran las grficascorrespondientes (figura 6)

    Figura 2: Men desplegable obtenido en el espacio de trabajo

  • 10

    Figura 3: Proyecto en el que se incluye una estacin de trabajo de ethernet, un servidor,un "Application Config" y un "Profile Config"

  • 11

    Figura 4: Atributos De "Application Config"

    Figura 5: Atributos De "Profile Config"

  • 12

    Figura 6: Visualizacin de resultados.

    2.2-El editor de nodos (Node Editor):

    Crea modelos de nodos, especificando su estructura interna. En este editor loselementos que se encuentran disponibles son cajas negras con atributos que pueden serconfigurados. Cada una de estas cajas representa una funcin en el nodo. Los objetospresentes en este editor son:Procesadores: su comportamiento viene definido en el editor de procesos. Existenmodelos ya configurados como las fuentes de datos, los sumideros,...

    Colas: poseen distintos atributos para definir el carcter de la misma.

    Transmisores y receptores: controlan la salida y entrada de paquetes al nodo.

    Stream de paquetes: lleva el flujo de paquetes entre cajas negras.

    Statistics Wire: transporta interrupciones.

    Cable de asociacin lgica transmisor-receptor: usado para crear un vnculoentre transmisores y receptores de un mismo elemento. Un ejemplo de utilidad

  • 13

    de esta asociacin es la necesidad de identificar en un hub el transmisor yreceptor de un enlace, dado que en un hub se tienen varios dispositivosconectados.

    Figura 7: El editor de nodos

    2.3-El editor de procesos (Process Editor):

    Desarrolla modelos de decisin, como protocolos, algoritmos,... Se basa enmquinas de estados finitos para modelar el comportamiento deseado y la programacinse realiza en lenguaje C++. Define el comportamiento interno de los nodos. Los objetosms importantes presentes en este editor:

    Estados: cada uno de ellos representa un estado del proceso. Se definen en l lasfunciones a realizar durante su ejecucin.

    Transiciones: marcan la condicin que se necesita para pasar de un estado a otro.

    Bloques: sirven para la programacin, esto es, declaracin de variables,funciones,...

  • 14

    Figura 8: El editor de procesos.

    El botn amarillo con una flecha situado en la parte superior izquierda compilael proceso, lo cual es requerido ya que en este editor se utiliza programacin en C++.

    2.4-El editor de enlace (Link Editor):

    Crea nuevos modelos de enlace, o permite editar los ya existentes

    2.5-Editor de anlisis (Analysis Configuration):

    Trabaja con los resultados extrados de la simulacin. Los resultados de unasimulacin realizada con OPNET se pueden almacenar de las siguientes formas:

    Salida vectorial: contiene la variacin en el tiempo de la estadstica aestudiar. Por ejemplo, si se estudia el retardo sufrido en una red, por cadainstante en el que un paquete llega a su destino, se almacenar su retardo.

  • 15

    Salida escalar: se representa un resultado por simulacin. Un ejemplopuede ser el throughput que se mide en una red, para una determinadatasa de entrada. Este throughput ser un nico valor para cada simulacinque hagamos, ya que no nos interesa su evolucin en el tiempo, si no suvalor frente a distintas tasa de entrada.

    2.6-Editor de pruebas (Probe Editor):

    Identifica los puntos de recoleccin de estadsticas y permite generaranimaciones.

    2.7-Editor de la secuencia de simulacin (SimulationSequence)

    Permite la edicin de parmetros de la simulacin. Otra de sus caractersticas esque permite definir secuencias de simulaciones.

    2.8-Editor de paquetes (Packet Editor):

    Permite la creacin de tipos de paquetes especificando su tamao, las cabeceras,el tipo de datos,...

    3.-Atributos de objeto:

    Los objetos que se encuentran definidos en los editores poseen una serie deatributos, modificables por el usuario. Estos se encuentran disponibles en el mendesplegable que se obtiene al pinchar con el botn derecho sobre el objeto.

    4.-Definicin de la simulacin

    Para definir los parmetros propios de la simulacin el camino ms fcil a seguires:En el editor de proyectos, pincha en "DES".

    Una vez dentro del men de simulacin, pincha en "Configure Discrete EventSimulation". La ventana que aparece te permitir modificar parmetros de simulacin

  • 16

    tales como la duracin, la semilla, el fichero escalar donde recoger los resultados,... Unavez configurados, la simulacin ya est lista para ejecutarse.

    Figura 9: Configuracin de los parmetros de simulacin.

    5.-Salidas del simulador y anlisis de resultados.

    Las estadsticas a estudiar de la simulacin pueden ser seleccionadas de distintasformas. Las ms sencillas, se pueden encontrar en un men desplegable. A este men seaccede pinchando con el botn derecho del ratn sobre el espacio del proyecto yeligiendo "Choose Individual Statistics". En este punto se seleccionan las estadsticas arecoger. Estas pueden ser a nivel de nodo o globales. La eleccin de unas u otrasdepender del estudio que estemos realizando. Se debe poner especial cuidado, ya quepuede ocurrir que obtengamos resultados engaosos. Un ejemplo puede ser que sedisponga de dos enlaces en una red, uno muy lento y otro muy rpido. Si observamos elretardo global de la red, el resultado ser un retardo medio, con lo que podemos pensarque no influyen las distintas velocidades. Por el contrario, si observamos el retardo pornodo, apreciaremos un retardo muy pequeo para el enlace rpido y un retardo elevadopara el enlace lento.

    Si te interesa generar una animacin (ver como fluyen los paquetes en la red porejemplo), puedes usar la opcin "Record Simulation For Subnet" que se encuentratambin en el men de simulacin DES. Esto debe hacerse antes de proceder a simular.De esta manera, una vez finalizada la simulacin, accediendo al men "DES", podrsver la animacin seleccionando "Play Animation". Esta es la manera ms sencilla,aunque tambin se pueden realizar simulaciones desde el editor de pruebas.Otro aspecto importante y de gran utilidad es el log de la simulacin. Puedes acceder aeste, una vez terminada la simulacin, pinchando con el botn derecho del ratn sobre elespacio de trabajo. El " Open DES Log" te dar informacin de posibles errores osucesos ocurridos durante la simulacin y en ocasiones te mostrar posibles soluciones.

  • 17

    En definitiva, los pasos fundamentales que seguiremos a la hora de realizar unasimulacin de eventos discretos con OPNET son:

    1. Abre un proyecto nuevo. Si la configuracin a realizar es una red que secompone de elementos ya configurados, procedemos a su diseo con la ayuda delas paletas de objetos.

    2. Si no disponemos de los elementos de red necesarios, ser necesario recurrir aleditor de nodos y de procesos. En el editor de procesos, se crearnprocedimientos lgicos mediante mquina de estado finito y programacin enlenguaje C++. Una vez creado y compilado el proceso, iremos al editor de nodose incluiremos una caja negra que har referencia al nodo creado. Existennumerosos procesos ya implementados as que no ser siempre necesariorecurrir al editor de procesos.

    3. Cuando ya se dispone de todo lo necesario, se vuelve al paso 1, esto es, losnodos creados, debern incluirse en un proyecto para proceder a su simulacin.Estos nodos no estarn disponibles en ninguna paleta de las existentes, as quedeberemos crear una propia con todos los elementos que necesitemos. Para haceresto debemos partir de una paleta cualquiera. Podemos observar en la partesuperior izquierda un botn que dice Configure Palette . Pinchamos en l, ypinchando posteriormente en el botn Clear conseguimos partir de una paletalimpia. Ahora pinchando en Link Models, Node Models, podemosincluir los modelos que consideremos convenientes. Al finalizar salvaremos lapaleta. De esta manera ya disponemos de una paleta propia para nuestroproyecto, y podemos disponer los nodos y enlaces necesarios en el espacio detrabajo.

    4. Con el diseo creado, slo nos falta elegir las estadsticas que vamos a estudiar.Lo podemos hacer desde el men desplegable del espacio de trabajo,seleccionando Choose Individual Statistics.

    5. Es el momento de editar los parmetros de la simulacin. Para ello en el menDES elegimos Configure Discrete Event Simulation o pinchamos en elbotn que representa un corredor. Una vez finalizada la edicin, pinchamos enRun y la simulacin comenzar.

    6. Cuando finaliza la simulacin, podemos observar los resultados, accediendo atravs del men desplegable y pinchando en View Results. Elegimos lasestadsticas a estudiar de entre todas las que se simularon y analizamos losresultados.

    Este es un procedimiento bsico a seguir. Conforme se vayan realizando lasprcticas, el alumno aprender otros mtodos de simulacin ms complejos, aunquenecesarios en determinadas situaciones.