E N D
Introducción • NS (más conocido como NS-2 por su versión actual) es un simulador de redes de eventos discretos. Utilizado principalmente en ambientes académicos debido a que está escrito en código abierto y a la abundancia de documentación en línea. Se pueden simular tanto protocolos unicast como multicast y se utiliza intensamente en la investigación de redes móviles ad-hoc. Puede simular una amplia gama de protocolos tanto para redes cableadas o redes inalámbricas, así como mixtas. • NS fue construido en C++ y proporciona una interfaz de simulación a través de OTcl, un dialecto orientado a objetos de Tcl. El usuario describe una topología de red escribiendo scripts Otcl y, a continuación, el programa principal de NS simula la topología con los parámetros especificados. Generando como resuñtado grandes archivos de información que capturan los eventos que ocurrieron en la simulación
OTcl Comúnmente se refiere a una extensión de Tcl orientada a objetos creado por David Wetherall en MIT. Es usado en el Simulador de redes (NS-2) y usualmente corre bajo ambientes Unix. • Tcl Tcl (ToolCommandLanguage o lenguaje de herramientas de comando), es un lenguaje de script creado por John Ousterhout, que ha sido concebido con una sintaxis sencilla para facilitarse su aprendizaje, sin ir en desmedro de la funcionalidad y expresividad. Se utiliza principalmente para el desarrollo rápido de prototipos, aplicaciones "script", interfaces gráficas y pruebas. La combinación de Tcl con Tk (del inglés Tool Kit) es conocida como Tcl/Tk, y se utiliza para la creación de interfaces gráficas.
PLANTEAMIENTO DEL PROBLEMA En simulaciones de redes inalámbricas de tipo ad hoc llevadas a cabo en un simulador de eventos discretos como lo es NS-2 (Network Simulator), se generan grandes archivos de registro de información (traces) en los que se registra información referente a los eventos que ocurrieron en la simulación, como lo es:
Tipo de evento. tipo de evento que se está llevando a cabo • s: mensajes enviados • r: mensajes recibidos • d: mensajes desechados • f: mensajes reenviados • Tareas generales • Tiempo • Configuración global • Etiquetas de las propiedades de un nodo • Identificador de nodo • Coordenada x del nodo • Coordenada y del nodo • Coordenada z del nodo • Nivel de energía del nodo • Nivel de registro de información, como AGT, RTR, MAC
Razón del evento. Las diferentes razones para la eliminación de un paquete: • “END” eliminación por finalización de simulación • “COL” eliminación por colisión MAC • “DUP” eliminación por duplicidad en MAC • “ERR” eliminación por error de paquete en MAC • “RET” eliminación por conteo de intentos excedido en MAC • “STA” eliminación por estado invalido en MAC • “BSY” eliminación por que la capa MAC está ocupada • “NRTE” eliminación porque no se tiene una ruta disponible • “LOOP” eliminación porque se formó un ciclo de ruta • “TTL” eliminación porque el tiempo de vida ha llegado a cero • “TOUT” eliminación porque el paquete ha expirado • “CBK” eliminación por una llamada inversa de MAC • “IFQ” eliminación porque no se tiene más espacio en el buffer de la cola • “ARP” • “OUT” eliminación por estaciones base
Información del paquete en el nivel IP • Dirección de la fuente • Dirección del destino • Tipo de paquete • Tamaño de paquete • Identificador de flujo • Información del siguiente salto • Identificador para este nodo • Identificador para el siguiente nodo hacia el destino • Información de paquete en el nivel de MAC • Información de paquete en el nivel de APLICACIÓN
OBJETIVO: Implementar una aplicación realizada en Visual C++ que procese los archivos generados durante la simulación y grafique los datos referentes al comportamiento del escenario de simulación de red propuesto.
Objetivos específicos • Generar archivos de simulación (traces), por medio de los scripts de simulación en NS-2. • Diseñar la Interfaz Gráfica de Usuario de la aplicación • Codificar la aplicación • Presentación de la aplicación • Conclusiones
JUSTIFICACIÓN Los scripts de simulación en NS-2 se usan para crear los escenarios de red y una vez que se haya completado la simulación, se producen archivos de información (traces) que capturan los eventos que ocurrieron en la simulación. Los archivos de información pueden capturar información que puede ser usada en el estudio del comportamiento, e.g. la cantidad de paquetes transferidos desde un origen hasta un destino, el retardo de paquetes, pérdida de paquetes, etc. Sin embargo el archivo de información es sólo un bloque de datos tipo ASCII en un archivo y bastante voluminoso para acceder usando técnica de procesamiento de información. Este proyecto es una propuesta para facilitar el procesamiento y graficación de los datos del comportamiento de una red llevada a cabo en el simulador NS-2.
Estado del Arte El siguiente esquema muestra el proceso de que se debe tener previamente realizado para que entonces el analizador de resultados haga su función.
Parámetros para el estudio del comportamiento de la red • Capacidad • Pérdida de paquetes • Retardo • Variabilidad del retardo
Analizadores ya realizados En este analizador de traces implementado en Perl como se puede ver se pueden obtener datos relevantes para evaluar el comportamiento de la simulación de la red. Pero no se grafican tales resultados.
Análisis presentado a través de una gráfica en la que toman en cuenta los parámetros: capacidad, energía, retraso y movimiento.