TEMA:
Corrección de errores
      NOMBRE:
   HENRY CAMBAL
   EDUARDO DIAZ
    ALEXIZ DIAZ
     CARRERA:
      SISTEMAS
    ASIGNATURA:
       REDES I
       TUTOR:
 ING. LENIN OCHOA
FECHA DE ENTREGA:
      18/06/2012
CORRECCION DE ERRORES




        corrección de errores

 CORRECCIÓN DE ERRORES
HAMMING MECANISMOS
Datos Generales
 La comunicación entre varias computadoras produce
 continuamente un movimiento de datos, generalmente por
 canales no diseñados para este propósito (línea telefónica),
 y que introducen un ruido externo que produce errores en
 la transmisión.

 Por lo tanto, debemos asegurarnos que si dicho
 movimiento causa errores, éstos puedan ser detectados. El
 método para detectar y corregir errores es incluir en los
 bloques de datos transmitidos bits adicionales
 denominados redundancia.
Dos estrategias básicas para manejar los errores:

        Incluir suficiente información redundante en cada
     bloque de datos para que se puedan detectar y corregir
     los bits erróneos. Se utilizan códigos de corrección de
     errores.

         Incluir sólo la información redundante necesaria en
     cada bloque de datos para detectar los errores. En este
     caso el número de bits de redundancia es menor. Se
     utilizan códigos de detección de errores.
TIPO DE CÓDIGOS DETECTORES
Paridad simple


  Consiste en añadir un bit de más a la cadena que
   queremos enviar, y que
  nos indicará si el número de unos (bits puestos a
   1) es par o es impar.
             Ejemplo de generación de un bit de paridad simple:

   Queremos enviar la cadena “1110100”:
   1º Contamos la cantidad de unos que hay: 4 unos
   2º El número de unos es par por tanto añadimos un bit con valor = 0
   3º La cadena enviada es 11101000

  Si es par incluiremos este bit con el valor = 0, y si
   no es así, lo incluiremos con
  valor = 1.
 El receptor ahora, repite la operación de contar la cantidad de
  “unos” que hay (menos el último bit) y si coincide, es que no ha
  habido error.


Problemas de este método:


 Hay una alta probabilidad de que se cuelen casos en los que ha
  habido error, y que el error no sea detectado, como ocurre si se
  cambian dos números en la transmisión en vez de uno.
• Puede ser “par” o “impar”
• Se adiciona un bit a cada carácter, y este bit completará
un número “par” de 1´s o un número “impar” de 1´s.
– Ej: Paridad “par”: 01011010[0], 11000100[1]
– Ej: Paridad “impar”: 11011001[1], 10101101[0]
• Su eficiencia es del 50%
CÓDIGO DE REDUNDANCIA CICLICA - CRC

 Intentando mejorar los códigos que sólo controlan la paridad de bit,
  aparecen los códigos cíclicos.

 Estos códigos utilizan la aritmética modular para detectar una mayor
  cantidad de errores, se usan operaciones en módulo 2 y las sumas y
  restas se realizan sin acarreo (convirtiéndose en operaciones de tipo
  Or-Exclusivo o XOR).

 Además,   para facilitar los cálculos se trabaja, aunque sólo
  teóricamente, con polinomios.
 La finalidad de este método es crear una parte de redundancia la cual
  se añade al final del código a transmitir (como en los métodos de
  paridad) que siendo la más pequeña posible, detecte el mayor número
  de errores que sea posible.

 Pero además de esto, debe ser un método sistemático, es decir, que
  con un mismo código a transmitir (y un mismo polinomio generador)
  se genere siempre el mismo código final.

El polinomio generador:

Es un polinomio elegido previamente y que tiene como propiedad minimizar
la redundancia. Suele tener una longitud de 16 bits, para mensajes de 128
bytes, lo que indica que la eficiencia es buena.

Ya que sólo incrementa la longitud en un aproximado 1,6%:
Un ejemplo de polinomio generador usado normalmente en las redes WAN es:

Los cálculos que realiza el equipo transmisor para calcular su CRC son:

Añade tantos ceros por la derecha al mensaje original como el grado del polinomio
generador

Divide el mensaje con los ceros incluidos entre el polinomio generador

El resto que se obtiene de la división se suma al mensaje con los ceros incluidos

Se envía el resultado obtenido.

Estas operaciones generalmente son incorporadas en el hardware para que pueda
ser calculado con mayor rapidez, pero en la teoría se utilizan los polinomios para
facilitar los cálculos.
OBJETIVO
Asegurar que el transmisor no sobrecargue al receptor con una excesiva cantidad de datos.

Utiliza diferentes mecanismos de retroalimentación para mandar señales de control de
flujo, y por tanto requiere un canal semi-duplex o full-duplex.

El envio de acks permite controlar al transmisor, de forma que si no se le reconocen las
tramas enviadas, éste espera hasta que se le
reconozcan.

Los acks se envían en ocasiones aprovechando la transmisión de datos en sentido
contrario. Esta técnica es llamada piggybacked o llevar a espaldas.




(Stop-and-wait ARQ) ARQ simple de parada y espera.

(Go-Back-N ARQ) ARQ de envió continuo y rechazo simple.

 (Selective Repeat ARQ) ARQ de envió continuo y rechazo
selectivo.
Stop-and-wait ARQ

       Operación normal   Modo de operación normal, con perdida de trama
(Go-Back-N ARQ)
 Emisor envía continuamente tramas y el receptor las va validando. Si encuentra una
 errónea, elimina todas las posteriores y pide al emisor que envíe a partir de la trama
 errónea.
(Go-Back-N ARQ)


   Modo de operación normal   Perdida de trama
Selective Repeat ARQ
 El transmisor únicamente retransmite la trama dañada, rechazada mediante
 SREJ (Selective Rejection) o NACK.
 El receptor debe reservar una zona de memoria temporal con objeto de
 almacenar aquellas tramas <<detrás de NACK>>.
 El receptor debe disponer de una lógica para reinsertar la trama dañada.
SINCRONIZACIÓN

           Y

SUPERVISIÓN DE PROTOCOLOS
Las tarea de sincronización y supervisión son sobre todo necesarias en enlaces que requieres el
establecimiento y liberación de conexión.

En estos enlaces se envían tramas que no contienen información a trasmitir, sino códigos para el
control del enlace.

Sus funciones pueden ser:
 Establecimiento de la conexión: llamadas por modem.
 Mantenimiento de la conexión : chequeo periódico de enlace de datos, recuperación y re
  sincronización de la comunicación tras errores o fallos temporales.
 Liberación de conexión : liberación de enlace, desactivación de llamadas por módems


 En si la sincronización pone en fase los mecanismos de codificación
   del emisor con los mecanismos de decodificación del receptor.. En las
   transferencias de información en la capa de enlace es necesario identificar
   los bits y saber que posición les corresponde en cada carácter u octeto dentro de
   una serie de bits recibidos.

Corrección De Errores - Uniandes

  • 1.
    TEMA: Corrección de errores NOMBRE: HENRY CAMBAL EDUARDO DIAZ ALEXIZ DIAZ CARRERA: SISTEMAS ASIGNATURA: REDES I TUTOR: ING. LENIN OCHOA FECHA DE ENTREGA: 18/06/2012
  • 2.
    CORRECCION DE ERRORES  corrección de errores 
  • 3.
  • 8.
  • 11.
    Datos Generales  Lacomunicación entre varias computadoras produce continuamente un movimiento de datos, generalmente por canales no diseñados para este propósito (línea telefónica), y que introducen un ruido externo que produce errores en la transmisión.  Por lo tanto, debemos asegurarnos que si dicho movimiento causa errores, éstos puedan ser detectados. El método para detectar y corregir errores es incluir en los bloques de datos transmitidos bits adicionales denominados redundancia.
  • 12.
    Dos estrategias básicaspara manejar los errores:  Incluir suficiente información redundante en cada bloque de datos para que se puedan detectar y corregir los bits erróneos. Se utilizan códigos de corrección de errores.  Incluir sólo la información redundante necesaria en cada bloque de datos para detectar los errores. En este caso el número de bits de redundancia es menor. Se utilizan códigos de detección de errores.
  • 13.
    TIPO DE CÓDIGOSDETECTORES Paridad simple  Consiste en añadir un bit de más a la cadena que queremos enviar, y que  nos indicará si el número de unos (bits puestos a 1) es par o es impar. Ejemplo de generación de un bit de paridad simple: Queremos enviar la cadena “1110100”: 1º Contamos la cantidad de unos que hay: 4 unos 2º El número de unos es par por tanto añadimos un bit con valor = 0 3º La cadena enviada es 11101000  Si es par incluiremos este bit con el valor = 0, y si no es así, lo incluiremos con  valor = 1.
  • 14.
     El receptorahora, repite la operación de contar la cantidad de “unos” que hay (menos el último bit) y si coincide, es que no ha habido error. Problemas de este método:  Hay una alta probabilidad de que se cuelen casos en los que ha habido error, y que el error no sea detectado, como ocurre si se cambian dos números en la transmisión en vez de uno. • Puede ser “par” o “impar” • Se adiciona un bit a cada carácter, y este bit completará un número “par” de 1´s o un número “impar” de 1´s. – Ej: Paridad “par”: 01011010[0], 11000100[1] – Ej: Paridad “impar”: 11011001[1], 10101101[0] • Su eficiencia es del 50%
  • 15.
    CÓDIGO DE REDUNDANCIACICLICA - CRC  Intentando mejorar los códigos que sólo controlan la paridad de bit, aparecen los códigos cíclicos.  Estos códigos utilizan la aritmética modular para detectar una mayor cantidad de errores, se usan operaciones en módulo 2 y las sumas y restas se realizan sin acarreo (convirtiéndose en operaciones de tipo Or-Exclusivo o XOR).  Además, para facilitar los cálculos se trabaja, aunque sólo teóricamente, con polinomios.
  • 16.
     La finalidadde este método es crear una parte de redundancia la cual se añade al final del código a transmitir (como en los métodos de paridad) que siendo la más pequeña posible, detecte el mayor número de errores que sea posible.  Pero además de esto, debe ser un método sistemático, es decir, que con un mismo código a transmitir (y un mismo polinomio generador) se genere siempre el mismo código final. El polinomio generador: Es un polinomio elegido previamente y que tiene como propiedad minimizar la redundancia. Suele tener una longitud de 16 bits, para mensajes de 128 bytes, lo que indica que la eficiencia es buena. Ya que sólo incrementa la longitud en un aproximado 1,6%:
  • 17.
    Un ejemplo depolinomio generador usado normalmente en las redes WAN es: Los cálculos que realiza el equipo transmisor para calcular su CRC son: Añade tantos ceros por la derecha al mensaje original como el grado del polinomio generador Divide el mensaje con los ceros incluidos entre el polinomio generador El resto que se obtiene de la división se suma al mensaje con los ceros incluidos Se envía el resultado obtenido. Estas operaciones generalmente son incorporadas en el hardware para que pueda ser calculado con mayor rapidez, pero en la teoría se utilizan los polinomios para facilitar los cálculos.
  • 19.
    OBJETIVO Asegurar que eltransmisor no sobrecargue al receptor con una excesiva cantidad de datos. Utiliza diferentes mecanismos de retroalimentación para mandar señales de control de flujo, y por tanto requiere un canal semi-duplex o full-duplex. El envio de acks permite controlar al transmisor, de forma que si no se le reconocen las tramas enviadas, éste espera hasta que se le reconozcan. Los acks se envían en ocasiones aprovechando la transmisión de datos en sentido contrario. Esta técnica es llamada piggybacked o llevar a espaldas. (Stop-and-wait ARQ) ARQ simple de parada y espera. (Go-Back-N ARQ) ARQ de envió continuo y rechazo simple. (Selective Repeat ARQ) ARQ de envió continuo y rechazo selectivo.
  • 20.
    Stop-and-wait ARQ Operación normal Modo de operación normal, con perdida de trama
  • 21.
    (Go-Back-N ARQ) Emisorenvía continuamente tramas y el receptor las va validando. Si encuentra una errónea, elimina todas las posteriores y pide al emisor que envíe a partir de la trama errónea.
  • 22.
    (Go-Back-N ARQ) Modo de operación normal Perdida de trama
  • 23.
    Selective Repeat ARQ El transmisor únicamente retransmite la trama dañada, rechazada mediante SREJ (Selective Rejection) o NACK. El receptor debe reservar una zona de memoria temporal con objeto de almacenar aquellas tramas <<detrás de NACK>>. El receptor debe disponer de una lógica para reinsertar la trama dañada.
  • 25.
    SINCRONIZACIÓN Y SUPERVISIÓN DE PROTOCOLOS
  • 26.
    Las tarea desincronización y supervisión son sobre todo necesarias en enlaces que requieres el establecimiento y liberación de conexión. En estos enlaces se envían tramas que no contienen información a trasmitir, sino códigos para el control del enlace. Sus funciones pueden ser:  Establecimiento de la conexión: llamadas por modem.  Mantenimiento de la conexión : chequeo periódico de enlace de datos, recuperación y re sincronización de la comunicación tras errores o fallos temporales.  Liberación de conexión : liberación de enlace, desactivación de llamadas por módems  En si la sincronización pone en fase los mecanismos de codificación del emisor con los mecanismos de decodificación del receptor.. En las transferencias de información en la capa de enlace es necesario identificar los bits y saber que posición les corresponde en cada carácter u octeto dentro de una serie de bits recibidos.