|
Redes
locales
Capitulo
19 Corrección de errores
La detección y corrección de
errores.
Toda detección y corrección de errores se hace usando un código que introduce
redundancia, para detectar los errores que se produzcan en la transmisión.
La detección de errores consiste en la capacidad de detectar los bit
transmitidos erróneamente por la línea de comunicación.
SISTEMAS DE DETECCIÓN DE ERRORES.-
PARIDAD SIMPLE.- transmisión junto con la información de una serie de bits que
indican cualidades de esos datos, hay dos tipos: par e impar.
0 , Si el número de 1 es par.
PAR:
1 , Si el número de 1 es impar.
0 , Si el número de 1 es impar.
IMPAR:
1 , Si el número de 1 es par.
PARIDAD DE BLOQUES: es un caso especial de paridad
simple, consiste en organizar la paridad por bloques.
00110 - 01010 - 11001 - 11111
Si se detecta un error puede detectarse exactamente en el bit que se ha
producido el error, y se puede corregir, ya que sabemos la fila y la columna en
la que se ha producido.
REDUNDANCIA CÍCLICA.- está basado en la propiedad de
la división polinómica, en este caso a cada palabra se le asigna un polinomio.
110101 à X5 + X4 + X2 + 1
El método consiste en: al existir un polinomio conocido (polinomio generador)
por el Emisor y el Receptor y que actúa como clave en la detección del error,
llamamos M(x) al polinomio asociado a la palabra a transmitir, se multiplica por
Xv , V es el grado del polinomio generador y al resultado de multiplicar estos
factores se le divide entre el polinomio generador. Así:
Xv * M(x)
G(x)
La división da un cociente y un resto, el resto es la información redundante
que se envía junto con la información necesaria para la detección de errores
y se manda.
CORRECCIÓN DE ERRORES.
Corrección de errores en el destinatario, es el
destinatario quien determina a parte de la información redundante que ha
recibido a partir del emisor y del propio mensaje los bits erróneos. Utilizando
tanto los bits de redundancia como los bits de información.
Código Hamming, código detector de errores, está diseñado para la detección
y corrección de errores por cada palabra, como máximo un error.
El método consiste en encontrar la posición del bit erróneo teniendo en
cuenta la paridad de los bits redundantes, envía dos con ella, en los cuales la
paridad se determina teniendo en cuenta el siguiente algoritmo. Se establece la
posición del bit de redundancia, que serán las posiciones potencia de 2, el
resto de posiciones son bits de datos, se descomponen las posiciones de bits de
datos como suma de potencia de 2, y a la hora de calcular la paridad de los bits
de redundancia que se obtienen.
CORRECCIÓN DE ERRORES POR RETRANSMISIÓN.-
En la mayor parte de las comunicaciones, la corrección de errores se hace por
retransmisión del mensaje. Cuando el receptor ve el error solicita al emisor
que lo repita y se llama corrección de errores hacia atrás. Este método exige
la capacidad bidireccional de la comunicación.
Dentro de la corrección hay dos estrategias:
ENVÍO Y ESPERA
En este caso el emisor enviará bloques informativos al
receptor secuencialmente de acuerdo con las siguientes reglas:
- El emisor envía el bloque de datos al receptor y se queda con una copia del
mensaje hasta asegurarse de que el mensaje llegó al receptor.
- Cuando el receptor recibe el mensaje, genera una señal de confirmación que
envía al receptor, donde le indica si los datos llegaron en buen estado.
- S el emisor recibe un ACK entiende que la información llegó bien, y libera
la copia de los datos que tenía, genera un nuevo bloque de datos y continua con
la transmisión.
- Si lo que le llegó fue un NACK o transcurre un tiempo máximo permitido sin
recibir confirmación, interpreta que la información llegó erróneamente al
destinatario y procede a transmitir el mismo bloque.
Esta técnica produce transmisiones seguras pero tiene el inconveniente de
producir retardos no deseados en las transmisiones, ya que hay un envío y una
espera de confirmación.
ENVIÓ CONTINUO:
- Se fracciona el mensaje en bloques de datos a transmitir que se numeran
unequivocamente, el emisor envía secuencialmente y de modo continuado todos los
bloques de datos.
- El receptor acepta cada uno de los bloques y comprueba si son o no erróneos.
Cuando el receptor recibe un bloque erróneo genera un mensaje informativo al
emisor del número de bloque que le llegó con error, con el fin de que lo
retransmita.
- El emisor tiene dos posibilidades, retransmitir el bloque erróneo o bien
retransmitir todos los bloques desde el número de bloque donde se encontró el
error por entender que pudieran también estar incorrectos. Esta alternativa
depende del protocolo que se utilice.
|