Control de Flujo y de Errores Profesora María Elena Villapol maria.villapol@ciens.ucv.ve
Capa de Enlace de Datos: Principios y Objetivos Sincronismo de Tramas Control de Flujo Control de Errores Direccionamiento Distinción entre información de control y data Gestión del enlace
Framing La capa de enlace de datos empaqueta bits en tramas (frames). Las tramas pueden ser: Tamaño variables. Tamaño fijo. Los protocolos de framing pueden ser: Orientados a carácter. Orientados a bits.
Protocolo orientado a caracter
Protocolo orientado a carácter: Byte stuffing Problema: el patrón usado para el campo de flag puede aparecer en el campo de información. El receptor interpretara esto como el fin de la trama, lo que seria un error. Solución: usar rellenado de caracteres o byte stuffing.
Protocolo orientado a bit
Protocolo orientado a bit Problema: similar al encontrado en los protocolos orientados a caracter. Solución: usar rellenado de bits o bit stuffing.
Control de Flujo Se refiere a un conjunto de procedimientos utilizados para restringir la cantidad de datos que el remitente puede enviar antes de esperar el reconocimiento.
Control de errores Se refiere a los mecanismos para detectar y corregir errores que ocurren en la transmisión de las tramas.
Protocolos de la Capa de Control de Enlace Incluyen: Framing Control de flujo Control de errores
Taxonomìa de los protocolos de la Capa de Control de Enlace Para canales libres de ruido Para canales con ruido Protocolos
Simple
Stop-and-Wait
Stop-And-Wait: Utilización
Protocolos para Canales con Ruido Dos tipos de errores pueden ocurrir: Tramas dañadas. Tramas perdidas. Técnicas para el control de errores: Detección de errores. Reconocimiento positivo. Retransmisión después de time out. Reconocimiento negativos y retransmisiones.
Protocolo Stop-And-Wait ARQ (Requerimiento de Repetición Automática). Transmitir una trama. Esperar por ACK. Si la trama esta en error, se descarta. El transmisor tiene un timeout. Si no ACK, retransmitir. Si ACK se daña, el transmisor no sabrá y volverá a retransmitir. El receptor obtendrá dos copias de la trama. Solución, usar un ACK0 y ACK1.
Stop-And-Wait ARQ: Tramas Duplicadas Si ACK se daña, el transmisor no sabrá y volverá a retransmitir. El receptor obtendrá dos copias de la trama. Solución, usar un ACK0 y ACK1. F1 ACK Duplicado aceptado Time out Ilustración del problema de duplicación de tramas
Stop-And-Wait ARQ: Ejemplo
Control de Flujo Usando Ventana Deslizantes Múltiples tramas se pueden transmitir. El receptor tiene un buffer de tamaño W. El transmisor puede enviar hasta W tramas sin recibir un ACK. Cada tramas debe estar enumerada. El ACK debe incluir el número de la próxima trama esperada. El tamaño de este número esta limitado por el tamaño del campo de secuenciamiento.
Control de Flujo Usando Ventana Deslizantes Rango del número de secuencias asumiendo un campo de 3 bits es: 0 – (23 –1). Tamaño máximo de la ventana: (23 –1).
Control de Flujo Usando Ventana Deslizantes ACK 3 ACK 4
Go-Back N ARQ Basado en las ventanas deslizantes. Utilizar la ventana para controlar el número de tramas que pueden ser enviadas. Los números de secuencias son 2m, donde m es el tamaño del campo de secuencia en bits. El tamaño máximo de la ventana es 2m – 1.
Go-Back N ARQ Si ningún error, se envía ACK como de costumbre. Si error, contestar con un rechazo (REJ). Desechar que la trama y todas las tramas futuras hasta que se reciba trama correctamente. El transmisor debe retroceder y retransmitir la trama actual y todas las tramas subsecuentes.
Go-Back N ARQ Toma en cuenta las siguientes situaciones: Tramas dañadas: El receptor detecta error en la trama i El receptor envía rechazo-i El transmisor recibe un rechazo-i El transmisor retransmite la trama i y todas las subsecuentes Tramas perdidas (1) La trama i se perdió El transmisor envía la trama i+1 El receptor recibe la trama i+1 fuera de secuencia El receptor envía el rechazo i El transmisor retrocede a la trama i y retransmite
Go-Back N ARQ Tramas perdidas (2) La trama i se perdió y ninguna trama adicional se envió El receptor no recibe nada y no retorna ni el reconocimiento ni el rechazo El transmisor time outs y envía la trama de reconocimiento con el bit P fijado a 1 El receptor interpreta este comando y lo reconoce con el número de la trama siguiente esperada (trama i ) El transmisor entonces retransmite la trama i
Go-Back N ARQ ACK dañado REJ dañado El receptor recibe la trama i y envía el reconocimiento (i+1) que se pierde. Los reconocimientos son acumulativos, así que el reconocimiento siguiente (i+n) puede llegar antes que el tiempo expire para la trama i. Si el tiempo expira, el transmisor envía el reconocimiento con el bit P fijado como antes Esto se puede repetir un número de veces antes de que se inicie un procedimiento de reset. REJ dañado Igual caso trama perdida (2)
Go Back N ARQ
Go-Back N ARQ: Determinación del Tamaño de la Ventana
Go-Back N ARQ Conclusión: El tamaño de la ventana del transmisor es menor que 2m. El tamaño de la ventana del receptor es 1.
Go-Back N ARQ: Ejemplo
Rechazo Selectivo ARQ Solamente se retransmiten las tramas rechazadas. Las tramas subsecuentes son aceptadas por el receptor y protegidas. Reduce al mínimo la retransmisión. El receptor debe mantener bastante grande el buffer intermedio.
Rechazo Selectivo ARQ El tamaño de la ventana es mas restrictivo que en la técnica anterior. Considere el siguiente caso.
Rechazo Selectivo ARQ
Rechazo Selectivo Para solucionar el problema de solapamiento de secuencias, el máximo tamaño de la ventana debe no ser mayor a la mitad del rango del número de secuencias. Para un campo de m bits de secuenciamiento el tamaño de la ventana es limitado a 2m/2=2m-1
Rechazo Selectivo ARQ
Rechazo Selectivo ARQ
UTILIZACION
High Level Data Link Control (HDLC) Estación primaria Controla la operación del enlace Las tramas enviadas se llaman comandos Mantiene un enlace lógico separado por c/u estación secundaria. Estación secundaria Esta bajo el control de la primaria Las tramas que envían se llaman respuestas Estaciones combinadas Pueden generar comandos o respuestas
Configuración de los enlaces / Modos de Transferencia No balanceada 1 primaria y 1 o mas secundarias Soporte a HDX y FDX Balanceada 2 estaciones combinadas Normal Response Mode (NRM) Asynchronous Balanced Mode (ABM) Asynchronous Response Mode (ARM)
Estructura de las tramas Transmisión síncrona Todas las transmisiones en tramas Un solo formato de trama para todos los intercambios de datos y control
Campo de flag / bit stuffing Delimitar la trama en ambos extremos 01111110 El receptor busca la secuencia de flag para fines de sincronismo Se usa bit stuffing para evitar confusiones con la data conteniendo la secuencia del flag 0 insertado después de cada secuencia de cinco 1s Si el receptor detecta cinco 1s comprueba el bit siguiente Si 0, borrarlo Si 1 y el 7mo bit es 0, aceptar como flag Si 6to y 7mo bits 1, el emisor indica un aborto.
Campo de dirección / Campo de control Identifica la estación secundaria que envió o recibirá la trama Usualmente de 8 bits de largo Puede ser extendido El LSB de cada octeto indica la finalización (1) o no del campo (0) Todos 1 (11111111) es dirección de broadcast Diferente para diversos tipos de trama Información Supervisión No numerados El primero o los primeros bits identifican el campo de control
Campo de control
Comandos HDLC
Operación de HDLC (Ejemplo 1)
Operación de HDLC (Ejemplo 2)