Opnet Modeler

Opnet Modeler
Información sobre la plantilla
Opnetmodeler.png
Programa ampliamente utilizado en la industria para modelar y simular sistemas de comunicaciones.
CreadorInstituto de Tecnología de Massachusetts(MIT).

Opnet Modeler (OPtimized Network Engineering Tool) es un programa ampliamente utilizado en la industria para modelar y simular sistemas de comunicaciones. Permite diseñar y estudiar redes, dispositivos, protocolos y aplicaciones, brindando escalabilidad y flexibilidad, cualidades que le permiten ofrecer a sus usuarios trabajar en procesos de investigación y desarrollo.

Características

El nombre corresponde a las siglas de OPtimized Network Engineering Tool. Este software fue desarrollado en el año 1984 en el Instituto de Tecnología de Massachusetts (MIT) por investigadores y científicos del Laboratorio de Información y Decisión de Sistemas (LIDS).

Está basado en la teoría de redes de colas e incorpora las librerías para facilitar el modelado de las topologías de red. Soporta un amplio rango de tecnologías de red tipo LAN, MAN y WAN.

OPNET Modeler utiliza distintos niveles de modelado o paradigmas para representar los diferentes componentes de una red. Cada nivel está asociado a un dominio y a un editor.

Para hacer el desarrollo más intuitivo al usuario, los editores se organizan jerárquicamente, de forma que los modelos desarrollados en el Editor de Proyectos (Project Editor) dependen de elementos desarrollados en el Editor de Nodos (Node Editor) y este a su vez usa modelos definidos en el Editor de Procesos (Process Editor). Estos son los tres principales editores del OPNET, pero existen también otros complementarios como son el Editor de Modelos de Enlaces, el Editor de Formatos de Paquetes y el Editor de Estadísticas.

Proporciona acceso directo al código fuente siendo esto una gran ventaja para los nuevos programadores. Opnet Modeler es una poderosa herramienta que permite simular sistemas de comunicaciones y así evaluar las prestaciones de una red bajo diversas condiciones de simulación como: flujos variables de tráfico, pérdida de paquetes o de conexiones entre terminales y la estación base, caídas de enlaces, etc.

Funcionamiento

El Opnet es un simulador que posee una interfaz muy seductora para los usuarios. Esto se debe a que incluye varias librerías de modelos. El código fuente de estas librerías es accesible si se dispone de la versión Opnet Modeler y esto consigue que el programador se pueda familiarizar más rápido con toda la jerarquía interna del programa.

Para ser utilizado, primero el usuario tiene que comprender la jerarquía que se utiliza para poder plantear las simulaciones. La cual se muestra en la Figura 1.

Figura 1. Jerarquía de diseño en Opnet.

En la Figura 1 se puede observar que existe un modelo de red donde irán definidas las redes y subredes de la simulación. Seguidamente se dispone de un modelo de nodos donde se define la estructura interna de estos y por último se tiene el modelo de procesos donde se definen los estados que definen un nodo.

Modelos

Modelo de red (Network Modeler)

Es la interfaz que abarca la red entera y sus componentes. Aquí se definen las redes con todos sus componentes (links, estaciones, terminales) de forma gráfica. Aquí únicamente se conectan los nodos mediante links, si existen.

Modelo de nodos (Node Modeler)

Aquí se definen todos los nodos de la red a simular. En su interior, cada nodo puede tener varios módulos. Los módulos tienen definidas funciones internamente.

Modelo de procesos (Process Modeler)

En este último nivel se define lo que ha de realizar cada módulo, algunos como el que se han expuestos anteriormente ya están programados, pero hay otros que aparecen vacíos y se debe programar su funcionamiento.

La funcionalidad de cada módulo se define a través de modelos de procesos que se representan mediante máquinas de estados finitos (FSM). Las transiciones entre estados pueden ser condicionales o incondicionales. Todas las funcionalidades son programadas en C/C++.

Partes del Opnet

El Opnet está compuesto por una variedad de editores, los cuales proporcionan las herramientas necesarias para la creación de topologías de red. Cada editor de estos se encarga de una tarea distinta.

Editor de proyectos (Proyect Editor)

Es usado para crear un modelo de red utilizando uno ya existente que se encuentra en las librerías. También se puede recolectar estadísticas sobre la red, empezar simulaciones y ver resultados. Además se tiene la posibilidad de crear nodos, paquetes, filtros, etc. que se hayan definido anteriormente en cada editor. Para ello se dispone de una paleta con todos los objetos disponibles, tanto de librerías como las que uno mismo edita.

Editor de nodos (Node Editor)

Es un editor que es usado para crear modelos de nodos, definiendo sus comportamientos a partir de diferentes módulos.

Los Process Model son representados por estados y son creados por íconos que representan estos estados y líneas que representas las transiciones entre ellos. Las operaciones que realizan cada estado o transición se escriben el lenguaje C++.

Se puede decir que los objetos más importantes en este editor son:

  • Transiciones: Marcan la condición que necesita para pasar de un estado a otro.
  • Bloques: Sirven para la programación, declarar variables, funciones, etc.

Editor de modelos de enlaces (Link Model Editor)

Este permite crear objetos de enlace. Cada nuevo tipo de enlace puede tener diferentes atributos y representaciones.

Editor de rutas (Path Editor)

Este editor es utilizado para crear nuevos objetos de rutas que sirven para definir el tráfico.

Editor de estadísticas (Probe Editor)

Es usado para especificar las estadísticas que van a ser recopiladas. Pueden ser de diferentes tipos: estadísticas de enlaces, de nodos, de atributos, etc.

Editor de secuencia de simulación (Simulation Sequence Editor)

Este editor permite añadir una simulación adicional en tiempo real, donde se puede añadir valores adicionales como el control del tiempo de simulación o la velocidad de dicha simulación.

Editor de formato de paquete (Packet Format Editor)

Permite la definición de la estructura interna de un paquete así como a un conjunto de campos. El formato de un paquete contiene uno o más campos.

Referencias

[1]

[2]