NS2 Ultimate-Post procesamiento de resultados de NS2 utilizando NS2 Trace –…
Nota: El contenido de esta serie se extrae del libro Introducción al Simulador de red NS2. Es posible que tenga que leer los capítulos 2 y 13 del libro para comprender mejor.
¿Qué hay en esta publicación?
En este post, te mostraré una forma simple (y quizás la más común) de crear un archivo de seguimiento NS2. Este archivo de seguimiento contiene mucha información. De hecho, contiene demasiada información, lo que intimida a los usuarios de NS2. No te preocupes por eso. Intentaremos interpretar los archivos de seguimiento de NS2 más adelante. Por ahora, centrémonos en cómo se puede crear un archivo de seguimiento NS2.
Proceso de dos pasos
Para crear un archivo de seguimiento, debe realizar los dos pasos siguientes:
- Cree un archivo para registrar la información de rastreo.
- Registre la información de rastreo en el archivo creado.
Paso 1: Crear un archivo para escribir
Tcl utiliza el comando «abrir» para abrir un archivo. La sintaxis del comando «abrir» es la siguiente:
open < filename> < purpose>
donde < filename> es el nombre del archivo a abrir, y < purpose> puede ser
- «w» para escribir,
- «r»para leer, o
- » a » para anexar
Esta instrucción devuelve un identificador de archivo, que se puede usar para referirse al archivo abierto.
Un ejemplo de una instrucción Tcl que abre un archivo cuyo nombre es «tracefile.tr» para escribir y almacenar en el controlador de archivo en la variable var var se muestra a continuación:
establecer var
Paso 2: Registre la información de rastreo en el archivo de rastreo abierto.
El siguiente paso es registrar la información de seguimiento en el archivo abierto. Esto se puede lograr usando la siguiente instrucción Tcl:
$ns trace-all var var
donde $ns es la instancia del Simulador y var var es el controlador de archivos. Esta instrucción le dice a todos los objetos de seguimiento (por ejemplo, enqT_, deqT_, rcvT_ y drpT_ en el objeto SimpleLink de abajo) que registren información de paquetes que atraviesan el archivo de seguimiento cuya variable es var var.
Solo hay un requisito para el rastreo: La declaración anterior debe estar ubicada antes de «run ns run».
Después de completar la simulación, se crearía un archivo de seguimiento. Aquí hay un ejemplo de archivos de seguimiento.
¿Qué Acabamos De Hacer?
La instrucción»trace ns trace-all» inserta el objeto de rastreo en varios lugares de la topología de red. El lugar más común es en un enlace simple que generalmente se usa para conectar dos nodos. La instrucción «trace ns trace-all» inserta pocos objetos de rastreo en el objeto SimpleLink como se muestra arriba.
Qué Hacen Los Objetos De Rastreo
Un objeto de rastreo se encuentra entre dos objetos interceptores de NSObject. Una vez que recibe un paquete, imprime la información de rastreo relacionada como una línea en el archivo de rastreo. En la figura anterior, tenemos cuatro objetos de rastreo:
- enqT_: Imprime una línea que comienza con»+», indicando un evento de enqueuing
- deqT_: Imprime una línea que comienza con» -«, indicando un evento de enqueuing
- rcvT_: Imprime una línea que comienza con «r», indicando un evento de recepción de paquetes
- drpT_: Imprime una línea que comience por «d», indicando un evento de caída de paquetes
Instrucciones de rastreo en el archivo de rastreo:
Estos objetos de rastreo imprimen información de todos los paquetes que atraviesan. La información de los paquetes que no pasan a través de ninguno de estos objetos no aparecerá en el archivo de seguimiento.
El único objeto responsable de soltar paquetes en la figura anterior es queue_. Lo hace invocando la función drop (p). La función drop (p) a su vez envía el paquete p al objeto NSObject de reenvío, que en este caso es drpT_. Es drpT_, quien es responsable de imprimir declaraciones de información de caída (es decir, las que comienzan con ‘d’) en el archivo de seguimiento.
Esto significa que si suelta el paquete explícitamente(por ejemplo, usando drop (p)) sin pasar el paquete a través de drpT_, no aparecerá información sobre la caída del paquete en el archivo de seguimiento.
¿Qué sigue?
Ahora que hemos creado un archivo de seguimiento. Pero un archivo de seguimiento NS2 parece un poco aterrador. En el siguiente post te mostraré cómo interpretar este archivo de seguimiento.
======================================================
T. Issaraiyakul y E. Hossain, «Introduction to Network Simulator NS2», Springer 2009. Cómpralo ahora en Amazon: