Вы находитесь на странице: 1из 15

SIMULADOR DE PROTOCOLOS DE NIVEL DE ENLACE

Gua del Usuario

- Pg. 2 de 15 -

Introduccin.
Para qu sirve?
El simulador de protocolos de nivel de enlace pretende simular el intercambio de informacin a nivel de enlace (nivel 2 del modelo de capas OSI) que se produce entre dos nodos de comunicacin unidos por un enlace fsico. Esta informacin que se intercambia incluye mensajes de control propios del nivel de enlace y la informacin que los niveles superiores entregan al nivel de enlace para su transmisin. Para realizar este intercambio de informacin, el simulador implementa un protocolo de ventana deslizante, sin embargo podemos obtener otros tipos de protocolos si sabemos elegir bien sus parmetros. Adems, modificando los parmetros del protocolo elegido podemos observar la influencia de stos en el rendimiento de la transmisin, en su duracin, en el uso del enlace, etc...

Cmo es?
Est compuesto por dos partes. Una parte es el simulador propiamente dicho, es el fichero ejecutable sim.exe. Y la otra parte es la interfaz grfica InGraSE. El simulador, sim.exe, es un programa realizado en lenguaje C. Necesita como argumento de entrada el nombre de un fichero donde se encuentran los parmetros que queremos para realizar la simulacin. Este fichero se llamar fichero de simulacin y su extensin va a ser *.sim. La estructura que ha de tener un fichero de simulacin se muestra en el apndice B. El resultado de ejecutar el programa con el fichero de simulacin como argumento es un fichero de salida, cuyo nombre es una de los parmetros a definir, donde se encuentran los resultados de la simulacin que se ha realizado si no ha surgido ningn problema. La estructura del fichero de salida se muestra en el apndice C. La interfaz grfica, InGraSE, es un programa realizado en lenguaje Microsoft Visual Basic. Su principal funcin es la de facilitar la engorrosa tarea de crear los ficheros de simulacin y leer los resultados de tales simulaciones. Adems gracias a InGraSE se aporta la posibilidad de realizar bateras de simulaciones y crear grficas con sus resultados. Una batera de simulaciones consiste en realizar varias simulaciones sobre un mismo fichero de simulaciones variando solo uno de sus parmetros. InGraSE llama automticamente al simulador cuando sea necesario. Es decir, InGraSE no realiza las simulaciones, tan solo escribe el fichero de simulacin, llama al simulador, y luego interpreta el fichero de salida.

Cmo funciona el simulador?


El simulador usa una medida interna del tiempo, el tick. El tick es un paso en el tiempo, su correspondencia con el tiempo real viene definida por el nmero de ticks que tiene un segundo. En cada tick el simulador comprueba si cada uno de los nodos tiene alguna tarea que realizar: si tiene que mandar una trama, si expira un temporizador, si se recibe una trama... Cuanto mayor sea el nmero de ticks que componen un segundo simulado mayor ser la precisin con que se realice la simulacin ya que se harn ms comprobaciones del estado de los nodos y, por tanto, se tardar ms en simular el mismo tiempo simulado.
Simulador de Protocolos de Nivel de Enlace. Gua del Usuario

- Pg. 3 de 15 En una situacin real, el nivel de enlace recoge del nivel de red una N-PDU (Network_PDU) y la segmenta en tantas partes como haga falta. Aadiendo a cada parte una cabecera se forman las L-PDU (Link_PDU) o tramas de nivel de enlace, que posteriormente se entregarn al nivel fsico. Para el simulador, una N-PDU es una lnea de un fichero de texto que se da como parmetro de la simulacin. La informacin que contiene este fichero se toma como la informacin que el resto de niveles superiores le entregan al nivel de enlace para su transmisin. El tamao del fichero a transmitir ha ser suficiente (unos 80Kb) para que la simulacin pueda ajustarse a la realidad. La simulacin termina cuando los dos nodos se quedan sin N-PDUs que transmitir, es decir, cuando ya se han transmitido y recibido todas las lneas de los dos ficheros completamente o cuando se alcanza el tiempo mximo de simulacin, que es uno de los parmetros. De aqu se desprende que el simulador est preparado para simular slo el caso en el que el trfico que genera el nivel de red es una trfico masivo, el nivel de red siempre tiene algo que transmitir. Este simulador no est preparado para simular el caso en el que el trfico sea interactivo.

A.- Realizar una simulacin.


Para realizar una simulacin el primer paso a dar es : cargar los parmetros de la simulacin desde un fichero de simulacin (*.sim) mediante comando de men Archivo Abrir o pulsando el botn correspondiente de la barra de botones , introducir los parmetros en una nueva ventana de simulacin mediante el comando de men Archivo Nuevo o pulsando el botn correspondiente de la barra de botones y rellenando el nuevo formulario con los parmetros deseados. La descripcin de los parmetros de simulacin se encuentra ms adelante. Una vez que la ventana activa contempla los parmetros de simulacin que deseamos, para que estos parmetros pasen al simulador y obtener los resultados solo es necesario utilizar el comando de men Herramientas Simular o pulsar el botn correspondiente . Cuando el simulador haya finalizado aparecer una cuadro de dilogo que nos lo indicar y tras esto aparecer una nueva ventana con los resultados de la simulacin. A esta ventana se la puede llamar, si ya se ha realizado la simulacin, mediante el comando de men Herramientas Resultados o pulsando el botn correspondiente . La descripcin de los resultados de la simulacin se encuentra ms adelante.

Simulador de Protocolos de Nivel de Enlace. Gua del Usuario

- Pg. 4 de 15 -

B- Parmetros de la simulacin:
b.1.- Parmetros generales:

1. Tiempo total: duracin mxima de la simulacin, en tiempo simulado. la simulacin concluye cuando los ficheros terminan de enviarse o cuando se alcanza el tiempo total de simulacin. En segundos. 2. Ticks por segundo: un tick es una marca de tiempo que el simulador utiliza. Cuanto mayor sea este parmetro la simulacin se realizar con mayor precisin pero tardar ms. 3. Fichero de salida: fichero en el que el simulador escribir la traza y los resultados de la simulacin. 4. Semilla: utilizada para elegir la secuencia seudo-aleatoria que va ha seguir el simulador. Al utilizar distintas semillas se obtienen distintos resultados con los mismos parmetros ya que la aparicin de los errores en los enlaces no ocurren en el mismo tiempo. 5. Acks: indica si el protocolo puede utilizar tramas que no contengan datos para asentir las tramas recibidas. 6. Nacks: indica si el protocolo puede utilizar tramas que no contengan datos para informar de que ha llegado una trama con error o fuera de secuencia. Esta trama cumple la misma funcin que la trama SREJ de HDLC, es decir, es una trama de rechazo selectivo. 7. Descripcin: breve descripcin de la simulacin a realizar. b.2.- Parmetros del enlace:

1. Rgimen binario: tasa mxima de transferencia del canal. En bits por segundo. 2. Velocidad de propagacin: velocidad a la que se propaga la seal a travs del canal. En metros por segundo.

Simulador de Protocolos de Nivel de Enlace. Gua del Usuario

- Pg. 5 de 15 3. Longitud: longitud del canal que comunica a ambos nodos en el sentido escogido. En metros. 4. Prob. de error de trama: probabilidad de que una trama llegue con error al receptor. En tanto por ciento. No admite nmeros no enteros. 5. Canales simtricos: cuando esta casilla de verificacin se encuentra marcada ambos canales tienen los mismos parmetros y no estn habilitadas las casillas de los parmetros del canal 1 -> 0 pues se rellenan automticamente. b.3.- Parmetros del nodo:

1. Temporizador ppal.: tiempo que ha de transcurrir desde que se transmite una trama por primera vez hasta que se retransmite si no se ha recibido su asentimiento. En milisegundos. 2. Temporizador Ack: tiempo que ha de transcurrir desde que se recibe una trama de datos hasta que se enva una trama de asentimiento si no se enva ninguna trama de datos antes. En milisegundos, suele ser la mitad del temporizador principal. 3. Fichero a leer: fichero que ese nodo va ha transmitir al otro nodo. Este fichero ha de encontrarse en el mismo directorio en el que se encuentre el fichero de simulacin. 4. Fichero a escribir: fichero donde escribir la informacin recibida del otro nodo. Este fichero se crear en el mismo directorio en el que se encuentre el fichero de simulacin y si existe se eliminar. 5. Opciones de traza: selecciona los mensajes de informacin que el simulador presenta sobre como transcurre la simulacin. Se aade una lnea de informacin en el fichero de salida cuando se producen los siguientes eventos:

Simulador de Protocolos de Nivel de Enlace. Gua del Usuario

- Pg. 6 de 15 -

6.

7. 8. 6.

7.

a. Tramas transmitidas: se manda una trama a la cola de transmisin del nodo. b. Tramas enviadas: comienza a transmitirse una trama. c. Tramas recibidas: se recibe una trama d. Paquetes entregados: se entrega un paquete al nivel superior. e. Timeouts: vence el temporizador principal o de Acks. f. Peridico: cada 10000 ticks se presenta una resumen de lo sucedido en cada nodo. Tamao mximo de trama: mximo nmero de octetos que pueden componer una trama. Hay que tener en cuenta que el tamao de la cabecera es fijo y de 8 octetos, el resto de octetos estarn ocupados por los datos. Ventana de transmisin: nmero de posiciones que tiene la ventana de transmisin. Ventana de recepcin: nmero de posiciones que tiene la ventana de recepcin. Nodos simtricos: cuando esta casilla de verificacin se encuentra marcada ambos nodos tienen los mismos parmetros, salvo los nombres de los ficheros, y no estn habilitadas las casillas de los parmetros del nodo 1 pues se rellenan automticamente. Protocolo unilateral: cuando esta casilla de verificacin est marcada el protocolo que se va a simular es de tipo unilateral, es decir, solo uno de los nodos tiene informacin a transmitir mientras que el otro se limita a asentir las tramas que le llegan.

C.- Resultados de la simulacin.


c.1.- Resultados generales.

1. Tiempo total de simulacin: tiempo que se ha simulado. En milisegundos. 2. Duracin de la simulacin: cuanto se ha tardado en realizar la simulacin. En milisegundos.

Simulador de Protocolos de Nivel de Enlace. Gua del Usuario

- Pg. 7 de 15 c.2.- Resultados del canal. 1. Rendimiento: nmero de bits de informacin transmitidos partido nmero de bits totales que se podan haber transmitido. 2. Uso de la lnea: porcentaje del tiempo total en el que se ha estado transmitiendo. 3. Cadencia eficaz: nmero de bits de informacin transmitidos partido el tiempo de ocupacin del enlace. 4. Retardo medio: media del tiempo transcurrido desde que se comienza a transmitir el primer bit de una trama hasta que se termina de recibir el ltimo bit de la misma en el otro nodo. 5. Retardo medio de vuelta: media del tiempo transcurrido desde que se comienza a transmitir el primer bit de una trama hasta que se termina de recibir el ltimo bit de su asentimiento en el mismo nodo. c.3.- Resultados del nodo.

1. Emisin: a = b + c + d a. Total tramas enviadas: nmero total de tramas que un nodo ha transmitido incluyendo tramas de datos, asentimientos positivos (Acks) y negativos (Nacks). b. Tramas de datos: numero total de tramas de datos enviadas sin contar las retransmisiones. c. Tramas Ack: nmero total de tramas de asentimiento positivo enviadas. stas nunca se retransmiten. d. Tramas retransmitidas: nmero total de tramas de datos que se han retransmitido. 2. Recepcin: a = b + c + d + e ; f <= b a. Total tramas recibidas: nmero total de tramas que un nodo ha recibido incluyendo tramas de datos, asentimientos positivos (Acks) y negativos (Nacks) recibidas tanto sin error como con error. b. Datos bien: numero total de tramas de datos recibidas sin error. c. Ack bien: nmero total de tramas de asentimiento positivo recibidas sin error.
Simulador de Protocolos de Nivel de Enlace. Gua del Usuario

- Pg. 8 de 15 d. Datos mal: numero total de tramas de datos recibidas con error. e. Ack mal: nmero total de tramas de asentimiento positivo recibidas con error. f. Paquetes entregados: nmero total de paquetes entregados al nivel superior.

D.- Realizar una batera de simulaciones.


Para realizar una batera de simulaciones hay que partir de una ventana en la que aparezcan los parmetros de una simulacin que posteriormente se van a modificar. Un a vez en este punto ejecutamos el comando de men Herramientas Batera de simulaciones. Aparecer un cuadro de dilogo en el que podremos seleccionar el parmetro sobre el que vamos a realizar la batera y podremos rellenar el valor inicial y final que va a tener ese parmetro as como con que paso se va a ir incrementando.

Hay que tener en cuenta que el valor final ha de ser siempre mayor que el valor inicial y que el valor del paso ha de ajustarse al nmero de simulaciones que queremos realizar entre estos dos valores. Por ejemplo, en el caso que muestra la figura de arriba se realizarn 6 simulaciones. Cuando hayamos rellenado todo conforme a nuestro inters pulsamos el botn Aceptar y automticamente se irn creando nuevas ventanas de simulacin con los parmetros deseados y se irn realizando las simulaciones correspondientes. Tras este proceso ya estar realizada la batera de simulaciones. Para ver los resultados de una simulacin en particular solo hemos de seleccionar su ventana y ejecutar el comando de men Resultados o pulsar sobre el botn correspondiente. Para crear una grfica con los resultados de la batera de simulaciones hemos de ejecutar el comando de men Herramientas Crear grfica. Aparecer una ventana con una grfica cuyo eje X es la probabilidad de error del canal y su eje Y es el rendimiento de los nodos. En esa misma ventana se puede seleccionar el parmetro que se muestra en el eje Y. Si la grfica resultante no muestra el comportamiento esperado puede deberse a varios motivos. El primero puede ser que el tamao de los ficheros a transmitir no sea suficiente para reflejar el comportamiento deseado, se aconseja un tamao de los ficheros de al menos unos 80 Kb aunque en algunas simulaciones puede que no sea necesario tanto y en otras sea insuficiente.
Simulador de Protocolos de Nivel de Enlace. Gua del Usuario

- Pg. 9 de 15 Otro motivo puede ser que en unas simulaciones se transmitan completamente los dos ficheros y en otros se alcance antes el tiempo total de simulacin, en este caso se ha de ampliar el tiempo total de simulacin de acuerdo al tamao de los ficheros y a la probabilidad de error de las simulaciones.

Simulador de Protocolos de Nivel de Enlace. Gua del Usuario

Apndice A. Descripcin de los mensajes de traza.

- Pg. 10 de 15 -

Apndice A.- Descripcin de los mensajes de traza.


Con la finalidad de facilitar el seguimiento de la simulacin por parte del usuario en el fichero de salida aparecen los mensajes de traza que el propio usuario ha seleccionado dentro de los parmetros de la simulacin. Los datos que aparecen junto con los dibujos son relativos al nodo 0 al nodo 1 segn se encuentren a la izquierda o a la derecha de los dibujos respectivamente. El significado de los mensajes es el siguiente: a) El nivel de enlace recoge un paquete del nivel de red.
| 1. (Data, 0, 31, 0) ->| | | | | |<- 1. (Data, 0, 31, 0) |

La primera cifra que aparece es el tick en el que se produce el evento. La informacin que aparece entre parntesis es el contenido de los campos de cabecera de la trama en cuestin. El primer campo es el tipo de trama que puede ser Data, Ack o Nack. El segundo campo es el nmero de secuencia de la trama. El tercer campo es el asentimiento y se corresponde con el nmero de secuencia de la ltima trama recibida sin error. La ltima cifra entre parntesis indica el nmero de paquete que se recoge del nivel de red, ste no es un campo propiamente dicho de la cabecera de nivel de red pero se muestra para facilitar el seguimiento de la simulacin y comprobar que los paquetes se entregan en secuencia al nivel de red.

b) El nivel de enlace pasa una trama al nivel fsico para que ste comience su transmisin.
2.(Data, 1, 31, 1)t_tx=24 | | |->| |<-| | | 13.(Data, 1, 0, 1)t_tx=12

Todos los datos mostrados se han explicado en el apartado a) salvo t_tx que es el nmero de ticks que sern necesarios para la transmisin de la trama. ste valor depende de la longitud de la trama (que tambin depende de su tipo) y del rgimen binario del medio fsico. c) El nivel fsico entrega una trama recibida al nivel de enlace.
54.(Data, 4, 1, 4) dly=13 | | |<-| |->| | | 30. (Data, 1, 31, 1) dly=28

El dato dly muestra el nmero de ticks transcurridos desde que se comenz a transmitir la trama por primera vez hasta que se termin de recibir, incluye el tiempo de transmisin (t_tx) y el de propagacin. d) El nivel fsico notifica al nivel de enlace que se ha recibido una trama con error.
27. (Data, 1, 0, 1) dly=14 | | |<X| |X>| | | 30. (Data, 2, 0, 2) dly=4

e) El nivel de enlace entrega un paquete al nivel de red.


| 153. pkt=9 <-| | | | | |-> 30. pkt=1 |

Simulador de Protocolos de Nivel de Enlace. Gua del Usuario

Apndice A. Descripcin de los mensajes de traza.

- Pg. 11 de 15 -

El dato pkt se corresponde con la ltima cifra de los datos que aparecen entre parntesis. f) Expira uno de los temporizadores de retransmisin.
361. frame 10 timeout | | | | | | | | 357. frame 23 timeout

El nmero de trama que aparece se corresponde con el nmero de secuencia de la trama cuyo temporizador de retransmisin ha expirado. g) Expira el temporizador de asentimiento.
1435. ack timeout | | | | | | | | 1302. ack timeout

h) Mensajes peridicos, se presentan cada 10000 ticks.


10000. -966, 105, 881| | |XXXX| |XXXX| | | 10000. -629, 79, 524-

Los datos que aparecen entre parntesis son, en orden: nmero de tramas transmitidas, nmero de paquetes entregados al nivel del red, nmero de vencimientos de los temporizadores.

Simulador de Protocolos de Nivel de Enlace. Gua del Usuario

Apndice B. Estructura de un fichero de simulacin.

- Pg. 12 de 15 -

Apndice B.- Estructura de un fichero de simulacin.


La primera lnea del fichero de simulacin es una descripcin que es ignorada por el simulador. Las lneas que empiecen por el carcter almohadilla # sern tambin ignoradas, as como todos los caracteres que se encuentren a la derecha de dicho carcter en una lnea normal. El siguiente es un fichero de simulacin de ejemplo:
sta es una simulacin de ejemplo y esto su descripcin. # esta lnea ser ignorada por el simulador PARMETROS SIMULACIN tiempo_total ticks_seg fichero_salida semilla acks nacks /SIMULACIN # comienzo de los parmetros de la simulacin # parmetros generales 10 # duracin mxima de simulacin en seg. 1000 # nmero de ticks que corresponden a un # segundo res.txt # nombre del fichero de salida 52 # semilla 1 # tramas de asentimiento positivo # 1: permitidas, 0: no permitidas 0 # tramas de asentimiento negativo # 1: permitidas, 0: no permitidas # fin de los parmetros generales

CANAL 0 # parmetros del enlace fsico nodo 0 -> nodo 1 regimen_binario 32000 # en bits por segundo velocidad_propagacion 100000 # en metros por segundo longitud 100 # en metros error_trama 0 # probabilidad de que una trama se # reciba con error, en % /CANAL # fin de los parmetros del enlace fsico CANAL 1 # parmetros del enlace fsico nodo 1 -> nodo 0 regimen_binario 32000 # en bits por segundo velocidad_propagacion 100000 # en metros por segundo longitud 100 # en metros error_trama 0 # probabilidad de que una trama se # reciba con error, en % /CANAL # fin de los parmetros del enlace fsico NODO 0 temporizador temporizador_ack traza ventana_trx ventana_rx mtu fichero_enviar fichero_recibir /NODO # parmetros del protocolo del nodo 0 55 # duracin del temporizador de # retransmisin, en segundos 30 # duracin del temporizador de # asentimiento, en segundos 63 # opciones de traza a la salida # todo: 63, nada: 0 10 # tamao de la ventana de transmisin 4 # tamao de la ventana de recepcin 42 # tamao mximo de trama, en octetos # longitud de la cabecera: 8 octetos env0.txt # fichero que se enviar al otro nodo rec0.txt # fichero donde almacenar los datos # recibidos del otro nodo # fin de los parmetros del protocolo del nodo 0

Simulador de Protocolos de Nivel de Enlace. Gua del Usuario

Apndice B. Estructura de un fichero de simulacin. NODO 1 temporizador temporizador_ack traza ventana_trx ventana_rx mtu fichero_enviar fichero_recibir /NODO /PARMETROS

- Pg. 13 de 15 -

# parmetros del protocolo del nodo 1 55 # duracin del temporizador de # retransmisin, en segundos 30 # duracin del temporizador de # asentimiento, en segundos 63 # opciones de traza a la salida # todo: 63, nada: 0 10 # tamao de la ventana de transmisin 4 # tamao de la ventana de recepcin 42 # tamao mximo de trama, en octetos # longitud de la cabecera: 8 octetos env1.txt # fichero que se enviar al otro nodo rec1.txt # fichero donde almacenar los datos # fin de los parmetros del protocolo del nodo 0 # fin de los parmetros de simulacin y del fichero

Simulador de Protocolos de Nivel de Enlace. Gua del Usuario

Apndice C. Estructura de un fichero de salida.

- Pg. 14 de 15 -

Apndice C.- Estructura de un fichero de salida.


En este fichero se encuentran los resultados de la simulacin y tambin los mensajes de traza , que son una descripcin de qu ha sucedido durante la simulacin. Los resultados pueden ms grficamente verse con InGraSE. La traza solo puede verse en este fichero directamente, para acceder a l hay que abrirlo con algn editor de textos (como Notepad) o pulsar sobre el botn Mostrar salida de la ventana de resultados en InGraSE. A continuacin se muestra un fichero de salida de ejemplo: # versin del simulador
Sim 2.37. Versin adaptada por Juan Luis Milln Romera.

# descripcin de la simulacin
sta es una simulacin de ejemplo y esto su descripcin.

# resumen de los parmetros


Parmetros de la SIMULACION: Fichero de salida: Tiempo total de simulacin: Mximo nmero de secuencia: NODO O: Temp: 55 Temp_ack: 30 Vent. trx: 10 Vent. rx: NODO 1: Temp: 55 Temp_ack: 30 Vent. trx: 10 Vent. rx: CANAL 0: Reg. bin.: 32000 Vel. Prop.: CANAL 1: Reg. bin.: 32000 Vel. Prop.: res.txt 10 31 Traza: 4 Mtu: Traza: 4 Mtu: 100000 100000 Ticks por segundo: Semilla: 52 63 42 63 42 Long.: Long.: 100 100 Error: 0 Error: 0 1000

# comienzo de los mensajes de traza


Comienza la simulacin. 1. (Data, 0, 31, 0) >>| | | | | | 2. (Data, 1, 31, 1) ->| | . . . 1508. (Data, 8, 30, 0) dly=17 |<-| 1508. pkt=0 <F| | | | | | | |<< 1. (Data, 0, 31, 0) |<- 2. (Data, 1, 31, 1) |

| |

| |

# resultados de la simulacin
Nodo 0 : Enviadas. Tramas datos totales : Tramas retransmitidas : Tramas ack : Recibidas. Tramas Ack sin error : Tramas Ack con error : Tramas datos sin error : Tramas datos sin error : Paquetes entregados :

169 36 0

5 0 114 11 114

Simulador de Protocolos de Nivel de Enlace. Gua del Usuario

Apndice C. Estructura de un fichero de salida. Vencimientos temporizadores. Retransmisin : Asentimiento : Enlace. Retardo medio : RTD medio : Uso del enlace : Rendimiento : Cadencia eficaz : Nodo 1 : Enviadas. Tramas datos totales : Tramas retransmitidas : Tramas Ack : Recibidas. Tramas Ack sin error : Tramas Ack con error : Tramas datos sin error : Tramas datos sin error : Paquetes entregados : Vencimientos temporizadores. Retransmisin : Asentimiento : Enlace. Retardo medio : RTD medio : Uso del enlace : Rendimiento : Cadencia eficaz :

- Pg. 15 de 15 36 0

16.29 91.26 93.03 52.21 16708.60

ms. ms. % % (bits/seg)

125 0 5

0 0 148 21 107

0 5

62.41 38.43 71.38 49.40 15807.13

ms. ms. % % (bits/seg)

General : Duracin de la simulacin = 971.00 ms. Tiempo total simulado = 1908.00 ms. Fin de la simulacin.

Simulador de Protocolos de Nivel de Enlace. Gua del Usuario

Вам также может понравиться