6.4 MECANISMOS DE DETECCION Y CORECCION DE ERRORES

Las redes deben ser capaces de transferir datos de un dispositivo a otro con total exactitud, si los datos recibidos no son idénticos a los emitidos, el sistema de comunicación es inútil. Sin embargo, siempre que se transmiten de un origen a un destino, se pueden corromper por el camino. Los sistemas de comunicación deben tener mecanismos para detectar y corregir errores que alteren los datos recibidos debido a múltiples factores de la transmisión. La detección y corrección de errores se implementa bien en el nivel de enlace de datos obien en el nivel de transporte del modelo OSI

TIPOS DE ERRORES.
Interferencias, calor, magnetismo, etc, influyen en una señal electromagnética, esos factores pueden alterar la forma o temporalidad de una señal. Si la señal 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 transmisión de datos serie, puesto que el intervalo de bit es muy breve(1/frecuencia) el ruido tiene que tener una duración muy breve. Sin embargo si puede ocurrir en una transmisión paralela, en que un cable puede sufrir una perturbación y alterar un bit de cada byte

ERROR DE RÁFAGA.
El error de ráfaga significa que dos o más bits de la unidad de datos han cambiado. Los errores de ráfaga no significan necesariamente que los errores se produzcan en bits consecutivos. La longitud de la ráfaga se mide desde el primero hasta el último bit correcto, algunos bits intermedios pueden estar bien. Los errores de ráfaga es más probable en transmisiones serie, donde la duración del ruido es normalmente mayor que la duración de un bit, por lo que afectara a un conjunto de bits. El número de bits afectados depende de la tasa de datos y de la duración del ruido.

DETECCIÓN.
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, sólo se podría saber que ha habido un error cuando se descodifique todo el mensaje y se vea que no tiene sentido. Sin embargo existen determinadas técnicas sencillas y objetivas para detectar los errores producidos en la transmisión:

REDUNDANCIA.
La redundancia consiste en enviar dos veces cada unidad de datos, de forma que el dispositivo receptor puede hacer una comparación bit a bit entre ambos datos y detectar si ha habido errores, para corregirlos con el mecanismo apropiado. Esta técnica es muy exacta pero enlentece la transmisión. Sin embargo el concepto es aplicable añadiendo al flujo de datos un grupo pequeño de bits al final de cada unidad, siendo estos bits redundantes con una parte de la información, esos bits redundantes se descartan una vez comprobada la integridad de la transmisión. En las comunicaciones de datos se usan cuatro tipos de comprobación de redundancia: verificación de redundancia vertical (VRC, Vertical Redundanc y Check) conocida como verificación de paridad, verificación de redundancia longitudinal (LRC longitudinal Redundancy Check), verificación de redundancia cíclica (CRC Cyclic Redundandy Check) y suma de comprobación (Checksum).Las tres primeras se implementan habitualmente en el nivel físico para que pueda usarlo en nivel de enlace de datos, mientras que la suma de comprobación se usa en los niveles más altos.

VERIFICACIÓN DE REDUNDANCIA VERTICAL VRC
Es el mecanismo más frecuente y barato, la VRC se denomina a menudo verificación de paridad, y se basa en añadir un bit de redundancia, denominado bit de paridad, al final de cada unidad de datos, de forma que el número total de unos en la unidad (incluyendo el bit de paridad)sea par, o impar en el caso de la verificación de paridad impar

DE REDUNDANCIA LONGITUDINAL LRC
En esta técnica, los bloques de bits se organizan en forma de tabla (filasy columnas), a continuación se calcula un bit de paridad para cada columna y se crea una nueva fila de bits, que serán los bits de paridad de todo el bloque, a continuación se añaden los bits de paridad al dato y se envían al receptor. Típicamente los datos se agrupa en unidades de múltiplos de 8 -1 byte-(8, 16, 24,32 bits) la función 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, etc.

DE REDUNDANCIA CÍCLICA CRC
A diferencia de las técnicas VRC y LRC, que se basan en la suma (para calcular la paridad), la técnica CRC se basa en la división binaria. En esta técnica, se añaden bits redundantes en la unidad de datos de forma que los todo el conjunto sea divisible exactamente por un número binario determinado, en el destino los datos recibidos son divididos por ese mismo número, si en ese caso no hay resto de la operación, el dato es aceptado, si apareciera un resto de la división, el dato se entendería quese ha corrompido y se rechazará
CORRECCIÓN DE ERRORES
Los mecanismos explicados detectan errores pero no los corrigen. La corrección del error se puede conseguir de dos formas, en la primera, cuando de descubre un error el receptor puede pedir al emisor que retransmita toda la unidad de datos,con la segunda, el receptor puede usar un código de corrección de errores que corrija automáticamente determinados errores. En teoría es posible corregirá automáticamente cualquier error en un código binario, sin embargo los códigos de corrección son más sofisticados que los de detección y necesitan mas bits de redundancia, el número de bits necesarios es tan alto que su uso no es eficiente, por esa razón la mayoría de la corrección se limita a errores de tres bits o menos.

CORRECCIÓN DE ERRORES DE UN ÚNICO BIT

El concepto de la corrección de errores se puede comprender con el caso más sencillo: el error de un único bit. Un error de un bit supone que un bit ha cambiado de un 0 a un 1 o de un 1 a un 0, para corregir el error, el receptor sólo tiene que invertir el valor del bit alterado, sin embargo, para hacer eso, el receptor debe saber en qué bit está el error, por lo que el secreto de la corrección de errores es localizar el bit o bits inválidos. La cuestión es el uso de los bits de redundancia para la corrección. Ahora bien ¿cuantos bits de redundancia usar? Para calcular el número de bits de redundancia r necesarios para corregir unnúmero de bits de datos m, es necesario encontrar una relación entre m y r.

CÓDIGO HAMMING
Se pueden utilizar los bits de redundancia para corregir errores, pero ¿cómo se manipulan esos bits para descubrir en qué posición se ha producido el error? R.W. Hamming desarrolló una técnica que proporciona una solución práctica. El código Hamming se puede aplicar a unidades de datos de cualquier longitud y usa la relación de bits de datos y de redundancia. En el código cada bit r es el bit deVRC (redundancia vertical) para una combinación de bits de datos.

DETECCIÓN Y CORRECCIÓN.
El receptor recibe la transmisión, toma los datos y recalcula cuatro nuevos VRC usando el mismo conjunto de bits usados en el cálculo en el emisor, a continuación re ensambla los nuevos valores de paridad siguiendo el orden de la posición (r8, r4, r2, r1) la cifra resultante indica si ha habido error y en qué bit se ha producido. Si el resultado es 0000 no ha habido error, cualquier otro resultado indica error y bit erróneo. Una vez identificado el bit erróneo, el receptor puede cambiar el valor de ese bit para corregir el error.

CORRECCIÓN DE ERRORES DE RÁFAGA.
Se puede diseñar un código Hamming para corregir errores de ráfaga de una cierta longitud, sin embargo el número de bits de redundancia necesarios es muy elevado, porque los errores pueden ser de tantos bits pero pueden estar en cualquiera de los bits de la cadena transmitid.

6 comentarios:

  1. buen tema comapñero que muetres los tipos de errrores pero te sugiero que agreges una imajen de los eerores o ejemplos

    ResponderBorrar
  2. La detección de errores es de gran utilidad a la hora de enviar información ya que nos permite prevenir que la información no llegue a su destino implementando ciertos mecanismos, a su vez la corrección de errores nos permite verificar que los datos que se enviaron sean los mismos que se recibieron de lo contrario cuenta con mecanismos que se encargaran de realizar las correcciones posibles para reparar el error.

    ResponderBorrar
  3. Creo que la deteccion de errors de igual forma es de gran importancia, ya que de esta forma obtenemos nuestra informacion que enviamos o recibimos pues la recibimos completa.
    Si no hubiera esto de la correccion de errores pues la informacion seria distorcionada y por tanto seria algo que no esperamos.

    Buena informacion. Saludos.

    ResponderBorrar
  4. Esta información por lo que entendí es que la detección y corrección de errores son capaces de transmitir datos de un dispositivo a otro con cierto nivel de precisión, para muchas aplicaciones, el sistema debe garantizar que los datos recibidos son iguales a los trasmitidos, siempre que una señal electromagnética fluye de un punto a otro, está sujeta a interferencias impredecibles debido al calor, el magnetismo y diversas formas de electricidad, y esta interferencia puede cambiar la forma o la temporización de la señal además de poder identificar y mostrarnos en donde esta el eeror y que podemos corregir en un sistema computacional y hablando en una telecomunicación podríamos poner un ejemplo de una señal de comunicación en nuestro sistema de telefonía mostraría el error y proporcionaría el por que esta pasando eso y los datos de voz o intensidad de señal seria corta por el viento o cosas así y en la base o en las señales de comunicación podría proporcionar como corregirlo o elaborar algo provisional mientras se corrige ese error pero el sistema ya capto el error y esta corrigiéndolo buen tema Ramon yhea

    ResponderBorrar
  5. DETECCIÓN Y CORRECCIÓN.
    El receptor recibe la transmisión, toma los datos y recalcula cuatro nuevos VRC usando el mismo conjunto de bits usados en el cálculo en el emisor, a continuación re ensambla los nuevos valores de paridad siguiendo el orden de la posición (r8, r4, r2, r1) la cifra resultante indica si ha habido error y en qué bit se ha producido. Si el resultado es 0000 no ha habido error, cualquier otro resultado indica error y bit erróneo. Una vez identificado el bit erróneo, el receptor puede cambiar el valor de ese bit para corregir el error.

    ResponderBorrar
  6. En teoría es posible corregir automáticamente cualquier error en un código binario, sin embargo los códigos de corrección son más sofisticados que los de detección y necesitan mas bits de redundancia, el número de bits necesarios es tan alto que su uso no es eficiente, por esa razón la mayoría de la corrección se limita a errores de tres bits o menos.

    ResponderBorrar