PRÁCTICA 1: Simulación de Protocolo de Control de Flujo Simple



Documentos relacionados
I BERCAJ A MANUAL DE USO D I R E C T O NEGOCIOS GENERACIÓN DE FICHEROS BANCARIOS ÍNDICE

Versión 4 - Tutoriales

PROPUESTAS COMERCIALES

Región de Murcia Consejería de Educación, Ciencia e Investigación. Manual Usuario FCT

NemoTPV SAT Manual de usuario 1. NemoTPV SAT APLICACIÓN DE GESTIÓN DE SERVICIO TÉCNICO PARA PUNTOS DE VENTA DE EUSKALTEL

5.8. REGISTRO DE FACTURAS.

Programa Presupuestos de Sevillana de Informática.

Combinar comentarios y cambios de varios documentos en un documento

Curso Internet Básico - Aularagon

INVENTARIO INTRODUCCIÓN RESUMEN DE PASOS

GUÍA BÁSICA DE USO DEL SISTEMA RED

T3-Rondas V 1.1. Help-Pc, S.L. C/ Pintor Pau Roig, 39 L Premià de Mar Barcelona Tel. (93) Fax marketing@t2app.

Procedimientos Géminis-Nínive Balances y Libros Oficiales. Extracción de Balances y Libros Oficiales.

GIROS Bancarios en NOTIN

SMS PUSH SMS ENCUESTAS INTERNET FAX

Para crear formularios se utiliza la barra de herramientas Formulario, que se activa a través del comando Ver barra de herramientas.

GUÍA RÁPIDA DE TRABAJOS CON ARCHIVOS.

QUÉ ES HOMEBASE? Encontrar Libros

Antes de comenzar con este trámite es muy importante contar con los siguientes requisitos para poder llevar el trámite con éxito:

CÓMO CREAR NUESTRO CATÁLOGO

Práctica 3 Enrutamiento con RIP

Manual de configuración de Adobe Reader para la validación de la firma de un documento Versión 1.0

Sesión No. 2. Contextualización: Nombre de la sesión: Paquetería ASPEL - COI PAQUETERÍA CONTABLE

ZCARTAS: Iniciación a la suma y resta de números enteros Introducción Actividad 1: Escenario con cartas numeradas desde -2 hasta 2...

Instructivo. Solicitud de Licencias

Muchos programas de aplicación contienen herramientas para proteger la información, por ejemplo, Microsoft Word que te permite:

Manual de usuario para Android de la aplicación PORTAFIRMAS MÓVIL

13. FORMATO NORMALIZADO DE LA CUENTA GENERAL DE LAS ENTIDADES LOCALES EN SOPORTE INFORMÁTICO.

Manual para la utilización de PrestaShop

Manual para Empresas Prácticas Curriculares

MANUAL DE USUARIO ARCHIVO

MANUAL TIENDA VIRTUAL. Paseo del Gran Capitán, Nº 62, Salamanca. Telf.: Fax:

Aplicación móvil guía del usuario

Manual de Capacitación. Proveedores. PagosXML.com

MANEJANDO FICHEROS Y CARPETAS

Evolution. Para abrir Evolution en GNOME, seleccione: Main Menu => Applicaciones => Internet => Evolution Mail

MANUAL DE AYUDA MÓDULO GOTELGEST.NET PREVENTA/AUTOVENTA


Manual de uso CREACIÓN DE PLANTILLAS DE CONCEPTOS

L U I S P A T I Ñ O IN FOR M Á T I C A SIS T E M A S AVA N Z A DOS

UTILIZACIÓN DE UNA CUENTA DE CORREO ELECTRÓNICO (NUEVO) Acceso al correo electrónico

Guía de Apoyo Project Professional

El protocolo IMAP ofrece la descarga de correos en modo sólo lectura, es decir descarga sólo una copia del correo y no permite el borrado.

Tutorial: Cuento Aristotélico

INSTALACIÓN DE ORACLE 8i (8.1.7) SOBRE NT

MANUAL BÁSICO DE WRITER

2. ABRIR UN NUEVO DOCUMENTO DE TRABAJO

Enviar Felicitación Navideña por con Off. 2007

MANUAL GENERACIÓN CAMPAÑAS SUGAR CRM

Descripción técnica. Sicherheit-TES Versión 1.0

MANUAL PARA GESTIÓN DE INCIDENCIAS INFORMÁTICAS

A25. Informática aplicada a la gestión Curso 2005/2006 Excel Tema 7. Funciones avanzadas de Excel II

Qué requisitos deben cumplir los albaranes o notas de entrega?

NUEVO SISTEMA DE MENSAJERÍA.

BRETON INDUSTRIAL SISTEMA DE CONTROL DE PROYECTOS

PRÁCTICAS DE GESTIÓN GANADERA:

NOVEDADES Y MEJORAS. datahotel versión 9.00 TRABAJAR CON I.V.A INCLUIDO

USO DE LOS RECURSOS ELECTRÓNICOS DE LA BIBLIOTECA CENTRAL DE LA UNIVERSIDAD DE PIURA. BASE DE DATOS SCOPUS: Cómo realizar una búsqueda

GUÍA DE USUARIO DEL CORREO

2. Doctores 2.1. Dar de alta un doctor 2.2. Buscar un doctor 2.3. Editar un doctor 2.4. Borrar un doctor

PowerPoint 2010 Modificar el diseño de las diapositivas

Jefe del Servicio de Contratación y Patrimonio

Oficina Online. Manual del administrador

reemplaza menú archivo y esta situado en la esquina superior izquierda de estos programas de

Recintos Feriales. Gestión de. FairWin v Gestión Central de Visitantes

MANUAL DE LA CONFIGURACIÓN Y USO DEL MÓDULO DE ASM PARA PRESTASHOP

Manual de Usuario Sistema SIGESP 1 de 15 Módulo: Sistema de Seguridad Rev. Nº 00. Revisado Por : Firma: Elaborado Por: ADS. Teresa Andrade Firma

CIERRE EJERCICIO CON BECONTA

Gestión de Retales WhitePaper Noviembre de 2009

Documentación del Terminal

Proyectos de Innovación Docente

Centro de Capacitación en Informática

MANUAL DE AYUDA HERRAMIENTA DE APROVISIONAMIENTO

3.1. Guardar un libro de trabajo

EL MODELO DE ESTRATIFICACIÓN POR CAPAS DE TCP/IP DE INTERNET

Mejoras Retailer v9.3f. Mejoras Retailer V.9.3f. Beroni Informática Pág. 1

Mis claves. Manual de usuario. versión 1.1. Pertusoft 21/12/

MANUAL MÓDULO CECA CON RECARGOS O DESCUENTOS PARA PRESTASHOP Guía Básica

Manual del Ciudadano para el Uso del Portal de Cambio de Domicilio. Proyecto: Portal Cambio de Domicilio Revisión: 1.1 Fecha: Octubre 2015

Memoria del Trabajo Fin de Máster realizado por MARTA FERNÁNDEZ GARCÍA. para la obtención del título de

SIMULADOR DE INSTALACIÓN DE MOBILIARIO DE COCINA GUIA DE USO

Sistema Integrado de Control de Presencia Dactilar

Este programa mueve cada motor de forma independiente, y cuando termina una línea pasa a la siguiente.

INSTALACIÓN DE SERVIDOR DE CORREO ELECTRÓNICO

Dell Premier. Guía para comprar y efectuar pedidos de. Registro en la página Premier. Administrar su perfil personal

Enviar solicitud. Procedimiento

MINI MANUAL PARA CREAR FORMULARIOS CON PHP Marzo 2007

PROCESO DE SOLICITUD DE EXAMEN DE VEHÍCULOS INDUSTRIALES

ESFINGE Estadísticas de las Industrias del Gas Manual de Usuario Ciudadano ÍNDICE

Una vez que tengamos el padrón de un determinado tributo con todos sus datos actualizados, podemos generar los recibos de ese padrón.

Manual de Usuario. Guía rápida

Cuando use KEOPS.Pack&Ship Desktop las opciones típicas son:

Manual de usuario Sucursal Virtual

Gestión de Permisos. Documento de Construcción. Copyright 2014 Bizagi

MANUAL DEL PROGRAMA DE ASESORAMIENTO (Asesores) Navegador y limpiar caché/cookies...2 Acceso al programa de Asesoramiento... 7

Instrucciones LOPD -ONline

Manual de Usuario de d>busca Windows. versión 1.0

MANUAL DE PRACTICUM12 PARA CENTROS EDUCATIVOS ÁMBITO MÁSTER

GUÍA PARA INICIAR UN TRÁMITE DESDE LA OFICINA VIRTUAL

Transcripción:

PRÁCTICA 1: Simulación de Protocolo de Control de Flujo Simple Introducción La práctica consistirá en el diseño e implementación de un Protocolo de Control de Flujo Simple desarrollado con la herramienta OPNET. El escenario planteado se compone de un emisor y un receptor. El emisor enviará paquetes cada cierto tiempo al receptor, y éste tendrá en cuenta el intervalo de tiempo transcurrido desde el último paquete recibido para enviar una trama ACK como reclamo de la siguiente trama esperada. Dado que no es de interés en esta práctica la comunicación duplex, el receptor destruirá el paquete una vez recibido y escribirá en fichero el número de trama recibida y el instante en el que ocurrió dicho evento. Para ello, realizaremos el diseño manejando los tres niveles de abstracción que ofrece dicha herramienta: 1. Modelo de Procesos 2. Modelo de Nodos 3. Modelo de Proyecto Por simplicidad, comenzaremos el diseño a nivel de nodos, a los cuales se les asignarán su correspondiente modelo de nivel de procesos. Modelo de Nodos Diseñaremos el escenario planteado como dos nodos conectados de forma unidireccional desde el emisor hacia el receptor. Para ello, seguiremos estos pasos: 1. Crear un nuevo modelo de nodos. 2. Crear dos procesadores y llamarlos emisor y receptor. 3. Crear un stream de paquetes que una al emisor con el receptor. 4. Guardar el modelo con el nombre proto_parada_espera_nodos (la propia herramienta salvará con la extensión correcta). A continuación, pasaremos a integrar a cada nodo un modelo de procesos que defina su comportamiento. 5. Pulsamos el botón derecho sobre el emisor y, en sus atributos, le asignamos como Modelo de Procesos aquel que genera y envía paquetes: simple_source. Pág 1 de 5

Puesto que modificaremos este modelo de procesos, lo guardaremos en nuestra carpeta (Save as ) con el nombre proto_parada_espera_procesos_emisor, para no sobrescribir el modelo original. Al nodo receptor le asignaremos el modelo de procesos que crearemos a continuación, cuya misión será la de contar los paquetes que reciba e imprimir los mensajes correspondientes en un fichero. Modelo de Procesos Crearemos el modelo de procesos del nodo receptor de forma que sea capaz de contar los paquetes recibidos así como monitorizar los intervalos de tiempo en los que recibe dichos paquetes. Para ello, llevaremos a cabo las siguientes acciones: 1. Crear un nuevo modelo de procesos con 3 estados como se ven en la figura: 2. Crearemos las variables que manejará este nodo. Tendremos en cuenta las variables pertinentes que nos permitan llevar la cuenta del número de paquetes recibidos y del tiempo que ha transcurrido desde el último paquete recibido. Para ello, creamos la variable pk_count y la variable sello_tiempo (indica el instante en el que se recibió el paquete anterior). 3. Para poder realizar posteriores análisis estadísticos, necesitamos una variable del tipo Stathandle que recoja toda la información para su estudio. 4. También registraremos las tramas ack s que deberían enviarse al emisor. Por ello, requerimos de un variable ack para llevar su cuenta. 5. Para poder imprimir en fichero todos estos mensajes, necesitamos una última variable que nos permita manejar dicho fichero. Esta será llamada fichero. (Los nombres pueden ser diferentes, siempre que luego se hagan referencia a los que realmente pongamos). Para introducir estas variables, debemos pulsar sobre State Variables. Pág 2 de 5

Este modelo representa el comportamiento que debe seguir el nodo receptor de paquetes. Comienza en el estado inicial, donde se inicializarán todas las variables que vayamos a utilizar. Para ello, deberemos: 1. Iniciar el contador de paquetes a 0. 2. Inicial la marca de tiempo del último paquete recibido a 0. 3. Crear el fichero de salida del receptor para imprimir todos los mensajes. El código que debe tener este estado en su Enter Executive (también podría ponerse en el Exit Executive, pues se ejecutará todo el código una vez salga de este estado) debe ser el siguiente: pk_count = 0; sello_tiempo = 0.0; fichero = fopen ("C:\\ <ruta por defecto> \\salida_recepcion.txt", "w"); fprintf (fichero, "FICHERO DE SALIDA DEL RECEPTOR\n"); pk_cnt_stathandle = op_stat_reg ("packet count", OPC_STAT_INDEX_NONE, OPC_STAT_LOCAL); Una vez hecho esto, transita incondicionalmente al estado de espera, donde se mantendrá a la espera de la interrupción ARRIVAL que deberemos definir más adelante. Por mejorar el comportamiento, y por cuestiones de coherencia, estableceremos también la transición default predefinida por la herramienta OPNET, que realizará una transición al mismo estado en caso de que se produzca cualquier otro tipo de interrupción. Para transitar al estado de llegada, es necesario que la interrupción que se produzca en el Simulador sea de tipo OPC_INTRPT_STRM (predefinida por la herramienta OPNET). De este modo, podemos definir en el Header Block el siguiente párrafo: #include <stdio.h> #define ARRIVAL (op_intrpt_type () == OPC_INTRPT_STRM) En el estado de llegada, debemos realizar las siguientes operaciones: 1. Incrementar el número de paquetes recibidos. 2. Calcular el intervalo de tiempo transcurrido desde el último paquete recibido. 3. Actuar en consecuencia: Enviar trama ACK si el tiempo transcurrido desde que se recibió la última trama supera los 9 segundos. Pág 3 de 5

4. Actualizar la variable que marca el instante en el que se ha recibido el último paquete. 5. Destruir el paquete recibido. 6. Registrar en la variable estadística la información relevante al número de paquetes recibidos. El código que debe tener el Enter Executive de este estado es el siguiente: ++pk_count; fprintf (fichero, "---------------------------------------------------\n\r"); fprintf (fichero, "tiempo_actual: %d \n\r", (int)op_sim_time() ); fprintf (fichero, "sello tiempo: %d \n\r", (int)sello_tiempo); // Llegamos al último evento de la simulación if ( op_sim_at_end () ){ fprintf (fichero, "*****FIN SIMULACION*****\n\r"); fclose (fichero); } /* Calculamos si la diferencia de tiempo entre llegadas de paquetes es mayor de 9 segs. Si lo es, enviamos trama ACK desenchando todos los paquetes */ if ( (op_sim_time() - sello_tiempo) > 9.0 ){ //escribir_fichero ( op_sim_time() - sello_tiempo ); fprintf (fichero, "%d : envio ACK por tiempo excedido: %d \n\r", (int)op_sim_time(), (int)(op_sim_time() - sello_tiempo)); } //Actualizamos el sello de tiempo para posteriores comparaciones sello_tiempo = op_sim_time(); fprintf (fichero, "---------------------------------------------------\n\r"); op_pk_destroy (op_pk_get (op_intrpt_strm ())); op_stat_write (pk_cnt_stathandle, pk_count); Para poder realizar posteriores análisis estadísticos, debemos registrar la variable estadísitica en Interfaces > Local Statistics. Guardamos el modelo de nodos como proto_parada_espera_procesos_receptor. Modelo de Nodos (continuación) Volvemos al modelo de nodos anterior, y, al receptor le asignamos como modelo de procesos el recien creado proto_parada_espera_procesos_receptor. Dado que en esta práctica es de relevante interés el envío en diferentes instantes de tiempo de paquetes, el emisor deberá tomar diferentes distribuciones de envio de paquetes, para su posterior estudio. Dado que el hacerlo desde el nivel de nodos es algo tedioso, Pág 4 de 5

promocionamos este atributo del nodo emisor hacia el modelo de proyecto, para cambiarlo desde este nivel superior de abstracción. Para ello, pulsamos el botón derecho sobre el nodo emisor, y en sus atributos,pulsamos el botón derecho sobre el atributo Packet Interarrival Time y seleccionamos Promoted. Para seleccionar las variables estadísticas que estudiaremos, seleccionamos Interfaces > Node Statistics y añadimos la del receptor de paquetes que cuenta los paquetes que recibe. Puesto que solo nos interesa el modelo de forma fija, deseleccionamos la opción de modelo movil y satelite desde Interfaces > Node Interfaces, en el apartado Node Types. Guardamos el modelo de nodos. Modelo de Proyecto Creamos un nuevo modelo de proyecto, con las siguientes carácterísticas: Nombre Proyecto: proto_parada_espera_proyecto Escenario: escenario_1 Escala: Office, 100 x 100 metros Creamos una nueva paleta en la que solo introduciremos el modelo de nodos creado. Para ello, limpiamos la paleta (clear) y pulsamos sobre Node Models. Ahí, incluimos el modelo de nodos que creamos: proto_parada_espera_nodos. Guardamos la paleta. Ahora, colocamos un nodo en el escenario. En sus atributos, seleccionamos las distribuciónes del nodo emisor que deseamos para su estudio y comparación. Podemos empezar con una distribución constante, en la que se envien paquetes cada segundo. Otra distribución es la Uniforme (2, 15), de forma que enviará paquetes de forma aleatoria desde cada 2 hasta cada 15 segundos. El alumno podrá probar otras distribuciones para comprobar el correcto comportamiento del protocolo creado. Pág 5 de 5