27
Transmisión de Datos 1 Tema 6: Control de Enlace Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE ENLACE TRANSMISIÓN DE DATOS TRANSMISIÓN DE DATOS CONTROL DE ENLACE CONTROL DE ENLACE Ángel Moreno Departamento de Automática Universidad de Alcalá Transmisión de Datos 2 Tema 6: Control de Enlace Departamento de Automática INTRODUCCIÓN APLICACIÓN PRESENTACIÓN SESIÓN TRANSPORTE RED ENLACE FÍSICO OBJETIVO: Proporcionar un servicio de transmisión fiable (libre de errores) entre dos equipos conectados mediante un enlace. FUNCIONES: Establecer un formato de trama Detectar y corregir errores de transmisión en las tramas Controlar el flujo de tramas Proporcionar una interfaz normalizada al nivel de red, que incluya los mecanismos necesarios para la administración del enlace.

Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos1Tema 6: Control de Enlace

Departamentode Automática

TRANSMISIÓN DE DATOS

CONTROL DE ENLACE

TRANSMISIÓN DE DATOSTRANSMISIÓN DE DATOS

CONTROL DE ENLACECONTROL DE ENLACE

Ángel Moreno

Departamento de AutomáticaUniversidad de Alcalá

Transmisión de Datos2Tema 6: Control de Enlace

Departamentode AutomáticaINTRODUCCIÓN

APLICACIÓN

PRESENTACIÓN

SESIÓN

TRANSPORTE

RED

ENLACE

FÍSICO

�OBJETIVO:� Proporcionar un servicio de transmisión

fiable (libre de errores) entre dos equipos conectados mediante un enlace.

� FUNCIONES:� Establecer un formato de trama� Detectar y corregir errores de

transmisión en las tramas� Controlar el flujo de tramas� Proporcionar una interfaz normalizada al

nivel de red, que incluya los mecanismos necesarios para la administración delenlace.

Page 2: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos3Tema 6: Control de Enlace

Departamentode AutomáticaINTRODUCCIÓN

Transmisión de Datos4Tema 6: Control de Enlace

Departamentode Automática

� El Nivel Físico proporciona un enlace “cable” (los bits sereciben en el mismo orden que se transmiten), donde se transmiten señales.

� Lamentablemente:� Hay errores de transmisión� El ancho de banda es limitado� La velocidad no tiene por qué coincidir en ambos extremos� El tiempo de propagación es finito

�Si queremos una comunicación de datos efectiva => encima del Nivel Físico se necesita una capa lógica para gestión y control del intercambio de datos

INTRODUCCIÓN

Page 3: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos5Tema 6: Control de Enlace

Departamentode Automática

� El Nivel de Enlace� Define el tipo de servicio� Agrupa los bits en tramas� Realiza la sincronización de trama� Controla el flujo de datos� Detecta y/o corrige errores� Realiza el direccionamiento en enlaces multipunto� Envía datos e información de control en el mismo enlace� Define los procedimientos para la gestión del enlace:

�Inicio�Mantenimiento�Liberación del enlace.

INTRODUCCIÓN

Transmisión de Datos6Tema 6: Control de Enlace

Departamentode Automática

� El principal servicio es la transferencia de datos desde una entidad de red en la máquina origen a una entidad de red en la máquina destino.

� En función de los requisitos, es posible establecer diferentes tipos de servicio:� No orientado a conexión (CL), sin asentimiento:

�Canales con baja tasa de error, o para tráfico en tiempo real.� No orientado a conexión (CL), con asentimiento:

�Canales poco fiables, inestables.� Orientado a conexión (CO):

�Se establece una conexión antes de transferir datos�Garantiza que cada trama se recibe una y sólo una vez, y que el

orden de recepción coincide con el de transmisión.

SERVICIOS PROPORCIONADOS AL NIVEL DE RED

Page 4: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos7Tema 6: Control de Enlace

Departamentode Automática

�Ni se establece conexión al principio, ni se libera al final

� La fuente envía tramas sin esperar asentimiento (ACK)

�Se ignoran los errores o pérdidas de tramas

� El receptor puede saber cuándo hay errores, pero no se lo comunica al transmisor

� Bueno para:� Canales muy fiables con topologías muy sencillas (poca

conmutación)� Sistemas protegidos a niveles superiores� Tráfico en tiempo real

� Ejemplo: envío postal ordinario

SERVICIO CL, SIN ASENTIMIENTO

Transmisión de Datos8Tema 6: Control de Enlace

Departamentode Automática

�Ni se establece conexión al principio, ni se libera al final

� Cada trama se asiente individualmente

� El transmisor sabe cuándo hay errores (la trama no llega, ollega mal)

� Bueno para:� Canales menos fiables o inestables� Sistemas protegidos a niveles inferiores� Sistemas donde la pérdida de una trama no es admisible

� Ejemplo: envío postal con acuse de recibo

SERVICIO CL, CON ASENTIMIENTO

Page 5: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos9Tema 6: Control de Enlace

Departamentode Automática

� Emisor y receptor establecen una conexión al principio y la liberan al final.

�Se garantiza que cada trama:� Llega a su destino� Llega una y sólo una vez� Llega en el orden correcto

� El Nivel de Red percibe un flujo de datos fiable

� Ejemplo: conexión telefónica

SERVICIO ORIENTADO A CONEXION

Transmisión de Datos10Tema 6: Control de Enlace

Departamentode Automática

� El Nivel de Enlace fragmenta la secuencia de bits (que lepasa el Nivel de Red) en tramas, antes de cedérsela al Nivel Físico.

� Cada trama contiene una cabecera y un final, que permite:� Detectar el comienzo y final de la trama (sincronismo)� Identificar el destinatario� Detectar errores� Corregir errores

� La cabecera y fin de trama incluyen información de:� El tipo de protocolo de enlace� El método de sincronización� Redundancia de los datos

FORMATO DE TRAMAS

Page 6: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos11Tema 6: Control de Enlace

Departamentode Automática

�Ejemplo. Datos a transmitir:

1110001100001001 1100010001000000 1000011110000110 .....

FORMATO DE TRAMAS

01111110 Dirección Control 1110001100001001 Checksum 01111110

01111110 Dirección Control 1100010001000000 Checksum 01111110

01111110 Dirección Control 1000011110000110 Checksum 01111110

Transmisión de Datos12Tema 6: Control de Enlace

Departamentode Automática

�Sincronización de bit: resuelta por el Nivel Físico

�Sincronización de carácter: en protocolos orientados a carácter� Transmisión asíncrona.� Transmisión síncrona.

�Sincronización de trama: datos de nivel superior.� Tramas de longitud fija: delimitador de principio de trama� Tramas de longitud variable:

�Delimitadores de principio y fin�Delimitadores de principio y cuenta�Banderas de sincronización

SINCRONIZACIÓN

Page 7: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos13Tema 6: Control de Enlace

Departamentode Automática

� El receptor debe distinguir, dentro de un flujo de bits, cuáles corresponden a un carácter y cuáles al siguiente.

� Es necesario conocer el número de bits por carácter

�Transmisión asíncrona:� Intervalos de arranque y parada� Sencillo pero ineficaz

�Transmisión síncrona:� Se transmiten los datos un bit tras otro sin símbolos

especiales conjuntamente con la información de sincronismo.�Es necesario emplear algún esquema de bits cuyo reconocimiento

permita a transmisor y receptor interpretar los bits de un carácter de la misma forma

SINCRONIZACIÓN DE CARÁCTER

Transmisión de Datos14Tema 6: Control de Enlace

Departamentode Automática

�Una vez alcanzadas las sincronizaciones de bit y carácter

� Para delimitar unidades formadas por datos correspondientes al nivel superior, información de control del protocolo y bits de redundancia

�Tramas de longitud fija:� Todas las tramas poseen la misma longitud� Símbolo de principio de trama

�Para saber dónde comienza la trama

� Impone fuertes restricciones e ineficiencias a los protocolos

SINCRONIZACIÓN DE TRAMA

Page 8: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos15Tema 6: Control de Enlace

Departamentode Automática

�Tramas de longitud variable:� Delimitadores de principio y fin

�Simbolos de comienzo y de fin de trama�Suelen aparecer, además, otros caracteres de control e

información de redundancia de verificación de trama�Problema de transparencia de los datos

� Delimitadores de principio y cuenta�Símbolo de comienzo de trama�Cabecera de longitud fija�Datos de longitud variable (especificada en la cabecera)

� Banderas de sincronización�Trama de estructura fija�Delimitada por una secuencia particular�Problemas de transparencia de los datos

SINCRONIZACIÓN DE TRAMA

Transmisión de Datos16Tema 6: Control de Enlace

Departamentode Automática

� La fragmentación (formación de tramas) es compleja:� Tamaño óptimo de la trama� Mejores secuencias de cabecera y fin� Mejor información de redundancia� Transparencia de cabecera y fin en los datos� Detección del fin de una trama y comienzo de la siguiente

�Algunos métodos:� Temporización (poco utilizado)� Cuenta de bits� Caracteres de inicio y fin� Caracteres de inicio y fin con relleno de bits

FORMATO DE TRAMAS

Page 9: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos17Tema 6: Control de Enlace

Departamentode Automática

�Se indica, para cada trama, su longitud:

� Problemas:� Se pierde la sincronización si se transmite mal la longitud� Se pierde la sincronización si se produce un error de cuenta� Se pierde la sincronización si se pierde uno o varios bits� No se sabe dónde empieza la siguiente trama� No se sabe dónde comenzaría la retransmisión

CUENTA DE BITS

Nº Trama Longitud Datos Nº Trama Longitud Datos

Trama i Trama i+1

Transmisión de Datos18Tema 6: Control de Enlace

Departamentode Automática

�Cada trama comienza con una secuencia de bitsfácilmente reconocible (DLE STX)

�Cada trama termina con una secuencia de bits fácilmente reconocible (DLE ETX)

�¿Qué ocurre si en la secuencia de datos aparecen las secuencias de comienzo o fin de trama?

SECUENCIAS DE INICIO/FIN

DLE Datos #1 Datos #2,STX DLE ETX DLE STX DLE ETX

Page 10: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos19Tema 6: Control de Enlace

Departamentode Automática

� Posible solución: � Insertar el carácter DLE antes de cada aparición de DLE en

la secuencia inicial, de manera tal que se garantice la noaparición de las secuencias de inicio / fin

� Funcionamiento:� Se define el carácter especial, de “escape” (DLE), que indica

que lo que viene a continuación es un carácter de control� En transmisión:

�Si aparece DLE en la secuencia a transmitir, se duplica� En recepción:

�Cuando el receptor detecta un carácter DLE, si el siguiente es distinto, lo interpreta como control. Si es DLE, lo toma como dato (una sola vez)

SECUENCIAS DE INICIO/FIN

Transmisión de Datos20Tema 6: Control de Enlace

Departamentode Automática

� EJEMPLO:

SECUENCIAS DE INICIO/FIN

DATOS : 9 STX ACK 2 DLE ETX

TX : DLE STX 9 STX ACK 2 DLE DLE ETX DLE ETX

RX : DLE STX 9 STX ACK 2 DLE DLE ETX DLE ETXXCTRL

X XCTRLDATO

Page 11: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos21Tema 6: Control de Enlace

Departamentode Automática

� La secuencia de inicio / fin es un patrón especial de bits, 01111110, llamado indicador

� Funcionamiento:� En transmisión:

�Cada vez que aparecen 5 unos consecutivos, se inserta un bit 0 de forma automática

� En recepción:�Cuando el receptor detecta 5 unos consecutivos, seguidos de un

cero, lo elimina de forma automática

RELLENO DE BITS

Bit StuffingBit Stuffing

Transmisión de Datos22Tema 6: Control de Enlace

Departamentode Automática

� EJEMPLO:

DATOS : 00011111010111111110001111110

TX : 011111100001111100101111101110001111101001111110

El transmisor impide que se envíen más de 5 unos seguidos, insertando un cero tras el quinto

El receptor, cuando detecta 5 unos, si el siguiente es cero lo elimina, y si es 1 asume el carácter de escape

RELLENO DE BITS

Page 12: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos23Tema 6: Control de Enlace

Departamentode Automática

�Es muy posible que el transmisor genere tramas a mayorvelocidad de la que puede alcanzar el receptor.

�Es preciso implantar mecanismos, a nivel de enlace, que permitan “frenar” al transmisor.

�Estos mecanismos se basan en realimentar al transmisorcon información sobre el estado del receptor.

�Mecanismos típicos:�Control básico, mediante secuencias ACK / NACK�Control extendido, mediante intercambio de parámetros durante

el establecimiento de llamada, y control de flujo mediante señalización, durante la transmisión

CONTROL DE FLUJO

Transmisión de Datos24Tema 6: Control de Enlace

Departamentode Automática

�Diagrama temporal

�Tiempo de transmisión de una trama

�Tiempo de retardo de transmisión o de propagación

CONTROL DE FLUJO

Page 13: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos25Tema 6: Control de Enlace

Departamentode Automática

� El transmisor envía una trama y espera hasta recibir la aceptación del receptor.

� El receptor controla el flujo reteniendo las confirmaciones.

� Eficiente si se envían pocas tramas de gran tamaño

� Las tramas suelen ser pequeñas debido a:� Tamaño limitado de memoria temporal del receptor� Probabilidad de errores mayor en tramas largas� Medios compartidos: evitar retardos excesivos al resto

PARADA Y ESPERA

Transmisión de Datos26Tema 6: Control de Enlace

Departamentode Automática

TX RXTR

ACK

TR

ACK

TR

ACK

PARADA Y ESPERA

ACK

TR

Page 14: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos27Tema 6: Control de Enlace

Departamentode Automática

� Conexión full-duplex (A es el transmisor y B el receptor).

� B puede aceptar y almacenar n tramas

�A puede enviar n tramas sin esperar confirmación.

�Tramas numeradas para identificar las confirmaciones.

� B confirma tramas enviando el número de trama que espera recibir� A la vez informa que está preparado para recibir las n

tramas siguientes� Puede confirmar varias a la vez.

VENTANA DESLIZANTE

Transmisión de Datos28Tema 6: Control de Enlace

Departamentode Automática

TX RX

TR 0

RR 1TR 1

RR 2TR 2

RR 3TR 3

TR 0

RR 0

TR 1

TR 2

RR 3

TR 3

VENTANA DESLIZANTE

Page 15: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos29Tema 6: Control de Enlace

Departamentode Automática

�Ventana en A: lista de números de secuencia de tramas que se permiten transmitir.

�Ventana en B: lista de números de secuencia de tramas que se esperan recibir.

�Numeración:� Ocupa un campo de las tramas� n bits ==> números de 0 a 2n-1� Numeración módulo 2n

� N máximo de ventana: sin errores, 2n

� Los números de secuencia se vuelven a utilizar cíclicamente

VENTANA DESLIZANTE

Transmisión de Datos30Tema 6: Control de Enlace

Departamentode Automática

� Funcionamiento (sin errores):� En A: la ventana se cierra por el límite inferior al transmitir

una trama y se abre por límite superior al recibir confirmaciones.

� En B: la ventana se cierra por límite inferior al recibir una trama, se abre por el límite superior al enviar confirmaciones.

VENTANA DESLIZANTE

Page 16: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos31Tema 6: Control de Enlace

Departamentode AutomáticaVENTANA DESLIZANTE

Transmisión de Datos32Tema 6: Control de Enlace

Departamentode Automática

� Con objeto de asegurar que los datos transmitidos y luego recibidos se pasan al nivel superior (red) libres de errores:

�Sin alteraciones en las secuencias de bits�En el orden correcto de tramas�Sin duplicidades

DETECCIÓN / CORRECCIÓN DE ERRORES

PROBLEMA EFECTO OBSERVADO POSIBLE SOLUCION

Error de bit, trama incompleta

La trama se recibe mal

La trama no se recibe

La trama se recibe tras haber enviado NACK

No se sabe si la recepción fue correcta

La trama no sirve

Espera indefinida

Duplicidad de trama

Código de redundancia, CRC

Solicitar re-envío (ACK/NACK)

Temporizadores

Numerar tramas y recomponeren destino

Page 17: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos33Tema 6: Control de Enlace

Departamentode Automática

�Al añadir información redundante a una secuencia de datos,es posible (hasta cierto punto) detectar errores en recepción y, eventualmente, corregirlos.

�Todo código de detección y/o corrección tiene limitacionesen cuanto al número y tipo de errores detectables y/ocorregibles

� Existe un compromiso técnico entre el volumen deinformación redundante y la capacidad de corrección

�Otras limitaciones:� No siempre los errores son aislados (errores de “ráfaga”)� Puede haber errores al transmitir la propia información

redundante

DETECCIÓN / CORRECCIÓN DE ERRORES

Transmisión de Datos34Tema 6: Control de Enlace

Departamentode Automática

� Ejemplos:

DETECCIÓN / CORRECCIÓN DE ERRORES

NOMBRE : PepeEDAD : 24

TX NOMBRE : PepeEDAD : 14

NOMBRE : PepeEDAD : 24MAYOR EDAD : SI

TX NOMBRE : PepeEDAD : 14MAYOR EDAD : SI

NOMBRE : PepeEDAD : 24MAYOR EDAD : SIAÑO NACIM : 1976

TXNOMBRE : PepeEDAD : 14MAYOR EDAD : SIAÑO NACIM : 1976

X

X X

D C

Page 18: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos35Tema 6: Control de Enlace

Departamentode Automática

� Códigos detectores:� De paridad simple� De redundancia cíclica (CRC)

� Control de errores� Códigos correctores

�FEC (Forward Error Correction): Distancia Hamming

� Retransmisión de tramas: ARQ (Automatic Repeat Request)�ARQ con parada y espera�ARQ con rechazo simple�ARQ con rechazo selectivo.

DETECCIÓN / CORRECCIÓN DE ERRORES

Transmisión de Datos36Tema 6: Control de Enlace

Departamentode Automática

� Entre dos palabras: número de bits en que se diferencian

�De un código (d): mínima distancia que se puede obtener entre dos palabras cualesquiera del código

� Condición de detección:� La palabra no coincide con ninguna de las del código� Cada cambio que se produce en un bit de la palabra: 1 error� Para detectar p errores: d = p + 1

� Condición de corrección:� Sustituir la palabra errónea por la más cercana� La más cercana es la de menor distancia Hamming� Si queremos corregir p errores: d = 2p + 1

DISTANCIA HAMMING

Page 19: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos37Tema 6: Control de Enlace

Departamentode Automática

� Ej: Código de dos bits� Cada palabra sin codificar tiene una longitud de 2 bits� Cada palabra codificada tiene una longitud de 12 bits

� La distancia Hamming es d = 6�Permite detectar 5 errores (p = d - 1)�Permite corregir 2 errores (p = d/2 - 1)

00011011

SIN CODIFICAR CODIFICADO

000000000000000000111111111111000000111111111111

DISTANCIA HAMMING

Transmisión de Datos38Tema 6: Control de Enlace

Departamentode Automática

� Ej: Si transmitimos 000000000000, puede llegar:

� Es capaz de detectar 5 errores� Es capaz de corregir 2 errores

000000000000000000000001000000000011000000000111000000001111000000011111000000111111

RECIBE

DISTANCIA HAMMING

ERRORES

0123456

NO DETECTA0000

00 / 010101

NO DETECTA

CORREGIMOS RESULTADO

BIENBIENBIEN

DUDASMALMALMAL

Page 20: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos39Tema 6: Control de Enlace

Departamentode Automática

� Bit de paridad: se añade a la secuencia inicial un bit que fuerza que el número de “unos” sea par (paridad par) oimpar (paridad impar):

� Es un código de detección simple. Si hay más de un error en la trama, no lo detecta correctamente.

�Tampoco permite corregir errores simples.

CÓDIGOS DE PARIDAD SIMPLE

01100111101101101010100000001111111

SECUENCIA PARIDAD PAR PARIDAD IMPAR

0110011 01101101 11010101 00000000 01111111 1

0110011 11101101 01010101 10000000 11111111 0

Transmisión de Datos40Tema 6: Control de Enlace

Departamentode Automática

�Dado un bloque o mensaje de m bits, el transmisor genera una secuencia de r bits, denominada secuencia de comprobación de trama, de forma que la trama resultante, de n = m + r bits, sea divisible por un número determinado.

� El receptor divide la trama recibida por ese número y, si no hay resto en la división, supone que no hay errores.

�Se utiliza aritmética módulo 2� Sumas y restas binarias sin acarreo� Equivalente a utilizar la operación lógica O - Exclusivo

CÓDIGOS DE REDUNDANCIA CÍCLICA

Page 21: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos41Tema 6: Control de Enlace

Departamentode Automática

�Se parte de la trama de m bits, que se representa mediante un polinomio de grado m-1:� M(x) = xm-1+ ... +x0 (Ej, 101001 � x5+x3+x0)

�Se añaden r (r<m) bits a 0, a la derecha de la trama� XrM(x) = xm+r-1+ ... +xr

�Se toma un polinomio generador G(x) de grado r (r+1 bits)� El primer y último bit deben ser 1

�G(x) = xr + ... + x0) (Ej. 1011 � x3 + x1 + x0)

� Conocido por transmisor y receptor

CÓDIGOS DE REDUNDANCIA CÍCLICA

Transmisión de Datos42Tema 6: Control de Enlace

Departamentode Automática

�Se calcula el resto de la división (módulo 2)� XrM(x)/G(x) � R(x)

�Se calcula la trama a transmitir, T(x)� T(x) = XrM(x) - R(x)

� La redundancia introducida es el resto de la división

�Al receptor le llega T(x) + E(x) (siendo E(x) el error)

� El receptor vuelve a dividir por el polinomio generador, G(x)� Si E(x) ≠ 0 {T(x)+E(x)}/G(x) no tiene, en general, resto nulo

CÓDIGOS DE REDUNDANCIA CÍCLICA

Page 22: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos43Tema 6: Control de Enlace

Departamentode Automática

� La propiedad anterior es cierta sólo si E(x)/G(x) tiene resto no nulo

� Existen polinomios generadores G(x) que minimizan laprobabilidad de que dicho resto sea nulo, para determinados tipos de errores (simples, dobles, ráfagas, etc.)

CRC-12x12+x11+x3+x2+x+1

CRC-16x16+x15+x2+1

CRC-CCITTx16+x12+x5+1

POLINOMIO DETECTA

Números impares de errores, en ráfagas

Errores simples, errores dobles y ráfagas

Similar a CRC-16

CÓDIGOS DE REDUNDANCIA CÍCLICA

Transmisión de Datos44Tema 6: Control de Enlace

Departamentode Automática

� Códigos que, ante la detección de errores en la trama,permiten hasta cierto punto inferir el valor inicial de latrama.

� En general, requieren transmitir mucha redundancia, lo quereduce el ancho de banda efectivo del canal.

�Son poco atractivos frente a protocolos basados endetección y retransmisión.

� Pero muy útiles donde la retransmisión no es factible:� Enlaces vía satélite� Tráfico en tiempo real no descartable

CODIGOS CORRECTORES DE ERRORES

Page 23: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos45Tema 6: Control de Enlace

Departamentode Automática

�Tramas perdidas: una trama enviada no llega a su destino

�Tramas con errores: la trama se modifica durante la transmisión

�ARQ (Automatic Repeat Request)� Confirmación positiva de las tramas correctas� Detección de los errores� Confirmación negativa y retransmisión de las tramas recibidas

con errores� Retransmisión después de un intervalo de tiempo si no se

recibe una confirmación positiva

�Objetivo: convertir un enlace de datos no fiable en seguro

RETRANSMISIÓN DE TRAMAS

Transmisión de Datos46Tema 6: Control de Enlace

Departamentode Automática

�Se basa en el control de flujo mediante parada y espera� ACK: ha llegado bien, envía la siguiente

�Si pasa cierto tiempo, se retransmite la trama� Problema de duplicación de trama� Solución: bit alternante en trama y asentimiento

�Sencillo:� Poca memoria en transmisor: una trama� Nada de memoria en receptor

� ... pero ineficiente:� Si el tiempo de asentimiento es muy elevado� Si se producen muchos errores

ARQ CON PARADA Y ESPERA

Page 24: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos47Tema 6: Control de Enlace

Departamentode AutomáticaARQ CON PARADA Y ESPERA

Transmisión de Datos48Tema 6: Control de Enlace

Departamentode Automática

� Basado en control de flujo mediante ventana deslizante� RR n: ha llegado bien hasta la trama n-1, envía n� REJ n: la trama n ha llegado mal o no ha llegado

�El receptor descarta n y todas las posteriores recibidas�Se retransmite n y todas las posteriores, ya enviadas o no

� Si el receptor recibe una trama con número de secuencia fuera de la ventana, la considera duplicada

�Si pasa cierto tiempo sin recibir confirmación, el transmisor envía pregunta de estado (RR con bit P = 1)� Receptor confirma la última trama recibida correctamente� Nuevo temporizador de bit P

�Reintento de pregunta de estado varias veces�Si no hay respuesta: procedimiento de reinicio

ARQ CON RECHAZO SIMPLE

Page 25: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos49Tema 6: Control de Enlace

Departamentode AutomáticaARQ CON RECHAZO SIMPLE

Transmisión de Datos50Tema 6: Control de Enlace

Departamentode Automática

�N de ventana máximo: 2k-1 (k bits)

� Ejemplo: N = 8 con k = 3 bits:� A envía 0, B contesta RR1;� A envía 12345670, B contesta RR1� A no sabe si se perdieron todas o ninguna

� Características:� Necesidad mayor de memoria en el transmisor� No necesita memoria en el receptor� Si el tiempo de asentimiento es elevado, disminuye el caudal

eficaz, aunque es mejor que con parada y espera� Si hay muchos errores, el caudal disminuye

∑∞

=

− −1

1 )1()(i

i PPif

ARQ CON RECHAZO SIMPLE

Page 26: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos51Tema 6: Control de Enlace

Departamentode Automática

� Igual que el rechazo simple pero sólo se retransmiten las rechazadas (SREJ) o aquellas para las que expira el temporizador

� El receptor debe reservar una zona de memoria temporal para almacenar tramas detrás del SREJ hasta que reciba la trama rechazada

� El receptor debe tener una lógica para reinsertar la trama

� El transmisor debe ser capaz de enviar tramas fuera de orden

� El caudal eficaz es independiente del tiempo de asentimiento

�Sigue disminuyendo cuando existen muchos errores

ARQ CON RECHAZO SELECTIVO

Transmisión de Datos52Tema 6: Control de Enlace

Departamentode AutomáticaARQ CON RECHAZO SELECTIVO

Page 27: Departamento de Automática TRANSMISIÓN DE DATOS CONTROL DE … · 2014-06-13 · Tema 6: Control de Enlace 12 Transmisión de Datos Departamento de Automática Sincronización de

Transmisión de Datos53Tema 6: Control de Enlace

Departamentode Automática

�Tamaño de ventana mucho más restrictivo

� Ej: si N = 7 con 3 bits� A envía 0,1,2,3,4,5,6� B confirma con RR 7� Se pierde RR7� En A expira temporizador y se retransmite 0� B considera que es nueva y la acepta (ventana en 7,0,1,2,3,4 y

5)

�N máxima = 2k-1 (con k bits), es decir, la mitad.

�Se utiliza mucho menos que ARQ con rechazo simple, aunque sea más eficiente

ARQ CON RECHAZO SELECTIVO