Está en la página 1de 40

Mtodos para la deteccin

y correccin de errores

Deteccin y correccin de errores.

Las redes deben ser capaces de transferir datos de un


dispositivo a otro con total exactitud, si los datos recibidos
no son idnticos a los emitidos, el sistema de comunicacin
es intil. Sin embargo, siempre que se transmiten de un
origen a un destino, se pueden corromper por el camino.

Los sistemas de comunicacin deben tener mecanismos


para detectar y corregir errores que alteren los datos
recibidos debido a mltiples factores de la transmisin.
La deteccin y correccin de errores se implementa bien en
el nivel de enlace de datos o bien en el nivel de transporte
del modelo OSI

Tipos de errores.

Interferencias, calor, magnetismo, etc., influyen en una seal


electromagntica, esos factores pueden alterar la forma o
temporalidad de una seal. Si la seal transporta datos digitales,
los cambios pueden modificar el significado de los datos. Los
errores posibles son:

Error de bit
nicamente un bit de una unidad de datos determinada
cambia de 1 a 0 o viceversa.

Un error de bit altera el significado del dato. Son el tipo de


error menos probable en una transmisin de datos serie,
puesto que el intervalo de bit es muy breve (1/frecuencia)
el ruido tiene que tener una duracin muy breve. Sin
embargo si puede ocurrir en una transmisin paralela, en
que un cable puede sufrir una perturbacin y alterar un bit
de cada byte.

Error de rfaga.
El error de rfaga significa que dos o ms bits de la unidad de datos
han cambiado. Los errores de rfaga no significa necesariamente que
los errores se produzcan en bits consecutivos. La longitud de la rfaga
se mide desde el primero hasta el ltimo bit correcto, algunos bits
intermedios pueden estar bien.

Los errores de rfaga es ms probable en transmisiones serie,


donde la duracin del ruido es normalmente mayor que la
duracin de un bit, por lo que afectara a un conjunto de bits. El
nmero donde bits afectados depende de la tasa de datos y de la
duracin del ruido

Deteccin.

Se conocen el tipo de errores que pueden existir, el


problema es ser capaz de reconocerlos, dado que no se
puede comparar el dato recibido con el original, slo se
podra saber que ha habido un error cuando se descodifique
todo el mensaje y se vea que no tiene sentido. Sin embargo
existen determinadas tcnicas sencillas y objetivas para
detectar los errores producidos en la transmisin:

Redundancia.
La redundancia consiste en enviar dos veces cada unidad de datos,
de forma que el dispositivo receptor puede hacer una comparacin
bit a bit entre ambos datos y detectar si ha habido errores, para
corregirlos con el mecanismo apropiado. Esta tcnica es muy exacta
pero enlentece la transmisin.
Sin embargo el concepto es aplicable aadiendo al flujo de datos un
grupo pequeo de bits al final de cada unidad, siendo estos bits
redundantes con una parte de la informacin, esos bits redundantes
se descartan una vez comprobada la integridad de la transmisin.

En las comunicaciones de datos se usan cuatro


tipos de comprobacin de redundancia:
verificacin de redundancia vertical (VRC, Vertical
Redundancy Check) conocida como verificacin
de paridad.
verificacin de redundancia longitudinal (LRC
longitudinal Redundancy Check).
verificacin de redundancia cclica (CRC Cyclic
Redundandy Check) y,
suma de comprobacin (Checksum).
Las tres primeras se implementan habitualmente en
el nivel fsico para que pueda usarlo en nivel de
enlace de datos, mientras que la suma de
comprobacin se usa en los niveles ms altos.

Verificacin de redundancia vertical


VRC

Es el mecanismo ms frecuente y barato, la VRC se


denomina a menudo verificacin de paridad, y se
basa en aadir un bit de redundancia, denominado
bit de paridad, al final de cada unidad de datos, de
forma que el nmero total de unos en la unidad
(incluyendo el bit de paridad) sea par, o impar en el
caso de la verificacin de paridad impar.

Esta tcnica permite reconocer un error de


un nico bit, y tambin de rfaga siempre
que el nmero total de bits cambiados sea
impar. La funcin de paridad (par o impar)
suma el dato y devuelve la cantidad de unos
que tiene el dato, comparando la paridad
real (par o impar) con la esperada (par o
impar)

Verificacin de redundancia
longitudinal LRC

En esta tcnica, los bloques de bits se organizan en forma de tabla


(filas y columnas), a continuacin se calcula un bit de paridad para
cada columna y se crea una nueva fila de bits, que sern los bits de
paridad de todo el bloque, a continuacin se aaden los bits de
paridad al dato y se envan al receptor.

Tpicamente los datos se agrupa en unidades


de mltiplos de 8 -1 byte- (8, 16,24,32 bits)
la funcin coloca los octetos uno debajo de
otro y calcula la paridad de los bits primeros,
de los segundos, etc, generando otro octeto
cuyo primer bit es el de paridad de todos los
primeros bits.

Esta tcnica incrementa la probabilidad de detectar errores de


rfaga, ya que una LRC de n bits (n bits de paridad) puede detectar
una rfaga de ms de n bits, sin embargo un patrn de rfaga que
dae algunos bits de una unidad de datos y otros bits de otra unidad
exactamente en la misma posicin, el comprobador de LRC no
detectar un error.

Verificacin de redundancia cclica CRC

A diferencia de las tcnicas VRC y LRC, que se


basan en la suma (para calcular la paridad), la
tcnica CRC se basa en la divisin binaria. En esta
tcnica, se aaden bits redundantes en la unidad de
datos de forma que los todo el conjunto sea
divisible exactamente por un nmero binario
determinado, en el destino los datos recibidos son
divididos por ese mismo nmero, si en ese caso no
hay resto de la operacin, el dato es aceptado, si
apareciera un resto de la divisin, el dato se
entendera que se ha corrompido y se rechazar.

La tcnica aade unos bits de CRC, de la siguiente


manera en tres pasos bsicos: en primer lugar se
aade una tira de n ceros, siendo n el nmero
inmediatamente menor al nmero de bits del
divisor predefinido (que tiene n+1 bits), el segundo
paso es dividir la nueva unidad de datos por el
divisor predefinido usando un proceso de divisin
binaria, el resto que quedara sera los bits de CRC a
aadir, el tercer paso es sustituir los n bits aadidos
en el paso primero por los n bits del resto de la
operacin del segundo paso, el dato final ser
divisible exactamente por el divisor predefinido. La
imagen muestra el esquema del proceso.

Sumas de comprobacin.

Es el mtodo de deteccin usado por los protocolos de alto


nivel, se basa en el concepto de redundancia.

Generador de suma de comprobacin.

En el emisor, el generador subdivide la unidad de datos


en segmentos iguales de n bits (habitualmente n=16),
estos segmentos se suman usando una aritmtica de
complemento a uno, de forma que la suma sea tambin
n bits, a continuacin se complementa la suma y ese
dato complementado se aade al final de la unidad de
datos original como bits de redundancia, la unidad
extendida se transmite por la red.
Comprobador de suma de comprobacin.
El receptor subdivide las unidades de datos en los
mismos n bits, suma todos los segmentos (incluidos los
bits de redundancia) y luego complementa el resultado,
si la unidad de datos est intacta, el valor final que se
obtiene es nulo (n bits 0), si en resultado no es cero, el
paquete contiene un error y es rechazado.

Es un mtodo sencillo pero eficiente slo con cadenas de


palabras de una longitud pequea, es por esto que se suele
utilizar en cabeceras de tramas importantes u otras
cadenas importantes y en combinacin con otros mtodos.
Funcionalidad: consiste en agrupar el mensaje a transmitir
en cadenas de una longitud determinada L no muy grande,
de por ejemplo 16 bits. Considerando a cada cadena como
un nmero entero numerado segn el sistema de
numeracin . A continuacin se suma el valor de todas las
palabras en las que se divide el mensaje, y se aade el
resultado al mensaje a transmitir, pero cambiado de signo.
Con esto, el receptor lo nico que tiene que hacer es sumar
todas las cadenas, y si el resultado es 0 n

CONTROL DE FLUJO

El control de flujo es un mecanismo por el cual modem y


ordenador gestionan los intercambios de informacin.
Estos mecanismos permiten detener el flujo cuando uno
de los elementos no puede procesar mas informacin y
reanudar el proceso no mas vuelve a estar disponible.
Los mtodos mas comunes de control de flujo son:

Control de flujo hardware:

TS y CTS permiten al PC y al modem parar el flujo de


datos que se establece entre ellos de forma temporal.
Este sistema es el mas seguro y el que soporta una
operacin adecuada a altas velocidades.

CONTROL DE FLUJO SOFTWARE:


XON/XOFF.-

Aqu se utilizan para el control dos caracteres especiales XON


y XOFF (en vez de las lineas hardware RTS y CTS) que
controlan el flujo. Cuando el PC quiere que el modem pare su
envo de datos, enva XOFF. Cuando el PC quiere que el
modem le enve mas datos, enva XON. Los mismos
caracteres utiliza el modem para controlar los envos del PC.
Este
sistema
no
es
adecuado
para
altas.

TECNICAS DE CONTROL DE
FLUJO

Cuando una trama llega a una mquina conectada a


algn tipo de red, antes de pasar la informacin a
niveles superiores, la capa de enlace realiza una serie de
operaciones sobre la trama que ocupan un espacio en la
memoria e implican un tiempo, funcin de la mquina,
de manera que el proceso de recepcin no es
instantneo.

Esta limitacin en el espacio de memoria hace que se


presente un serio problema cuando un transmisor
sistemticamente quiere transmitir tramas a mayor
velocidad que aquella con que puede recibirlas el
receptor. Esta situacin puede ocurrir fcilmente cuando
el transmisor opera en una computadora rpida (o con
baja carga) y el receptor en una mquina lenta (o con
sobrecarga). El transmisor puede enviar tramas
rpidamente hasta que satura al receptor, que
comenzar a desechar aquellas a las que no pueda
atender.

Para evitar esta situacin se hace necesario llevar un control


del flujo en el enlace, manejando la velocidad a la que el
emisor enva las tramas para que no sature al receptor.
Este control de la velocidad generalmente requiere algn
mecanismo de realimentacin, para que el transmisor pueda
saber si el receptor puede mantener el ritmo o no.
La mayora de las tcnicas de control de flujo tienen un
principio de funcionamiento igual: el protocolo contiene
reglas bien definidas sobre el momento en que el transmisor
puede enviar alguna trama, y generalmente estas reglas
prohiben el envo de informacin hasta que el receptor no lo
haya autorizado.

Un protocolo de nivel de enlace que quiere enviar tramas


eficientemente debe de alguna manera ser capaz de
recuperar las tramas perdidas o descartadas. Esto se
consigue normalmente usando una combinacin de dos
mecanismos
fundamentales:
acuses
de
recibo
(acknoledgments) y temporizadores (timeouts). Un
acuse de recibo, comunmente referido como ACK, es
una pequea trama de control con que el receptor
informa al emisor de que ha recibido la transmisin. Si el
emisor no recibe un ACK en un tiempo razonable la
retransmite; este tiempo est medido por un
temporizador.

La estrategia general de usar ACKs y "timeouts" para


implementar un envio eficiente se suele denominar
automatic repeat request, normalmente abreviado ARQ.

PARADA-ESPERA.
Es la ms simple de las tcnicas. Los pasos que llevaran
a cabo las dos mquinas en dilogo seran:
1. El transmisor enva una trama al receptor.
2. El receptor la recoge, y devuelve otra trama de
aceptacin
(ACK).
3. Cuando el transmisor recibe esta trama sabe que
puede
realizar
un
nuevo
envo....
4. Si pasado un cierto tiempo predeterminado no ha
llegado acuse de recibo, el emisor retransmite la trama.

Consiste en que el emisor enva una trama y al ser


recibida por el receptor , ste ( el receptor ) confirma al
emisor ( envindole un mensaje de confirmacin la
recepcin
de
la
trama.
Este mensaje recibido por el emisor es el que le indica
que
puede
enviar
otra
trama
al
receptor.
De esta forma, cuando el receptor est colapsado (el
buffer a punto de llenarse ), no tiene ms que dejar de
confirmar una trama y entonces el emisor esperar
hasta que el receptor decida enviarle el mensaje de
confirmacin (una vez que tenga espacio en el buffer ) .

Sin embargo, la tcnica de parada-y-espera presenta un


importante
inconveniente.
Supongamos
que
el
transmisor enva una trama y el receptor da el acuse de
recibo, pero de alguna manera el ACK se pierde o se
retrasa en llegar. En ambos casos el emisor piensa que
el tiempo ha expirado y retransmite la trama, pero el
receptor ya haba recogido una y cree que sta que le
llega ahora es otra diferente. Para solucionar este
problema, la cabecera de una trama del protocolo de
parada-y-espera incluye un bit a modo de nmero de
secuencia), que puede tomar los valores 0 y 1; los
nmeros de secuencia empleados para tramas
consecutivas son alternos.

PRESTACIONES.
Restringindonos al caso en que slo se puede enviar una trama
cada vez, encontramos dos posibles situaciones, definidas por el
tiempo de transmisin y el tiempo de propagacin:
1.- Tiempo de Transmisin, Ttx: tiempo que tarda una mquina
en pasar una trama al medio desde que sle el primer bit hasta
el ltimo. Se define como el cociente entre la longitud de la
trama (L) y el rgimen binario en el canal (R).
Ttx = L / R
2.- Tiempo de Propagacin, Tprop: tiempo que tarda una unidad
de informacin en pasar de un extremo del canal al otro. Se
define como el cociente entre la distancia (d) o longitud del
enlace, y la velocidad del medio de transmisin (v).
Tprop = d / v

VENTANA DESLIZANTE
Retomando el ejemplo del enlace que tena un producto de
ancho de banda x retraso de 8KB y las tramas de 1KB, se
comprueba que la mejor utilizacin que se puede hacer del
canal requiere que el emisor transmita la novena trama
nada ms recibir el acuse de recibo de la primera.
En este algoritmo el tmino ventana de transmisin se
refiere a un buffer en el cual se almacenan copias de las
tramas
enviadas,
en
espera de
recibir
el
ACK
correspondiente; si no llegan en el tiempo previsto, se
realiza una nueva copia y se retransmite la trama. El
nmero de secuencia de transmisin, N(S), es la posicin
que ocupa la trama enviada en el buffer. El nmero de
secuencia viaja en la cabecera de la trama, dentro del
campo
de
control.

También podría gustarte