Você está na página 1de 7

INSTITUTO TECNOLGICO DE APIZACO

ING. MECATRNICA

ASIGNATURA:
INTERFACES Y REDES INDUTRIALES

TAREA
INVESTIGACIN CRC (cyclic redundancy check)

CATEDRTICO: ING. ALFONSO HERNNDEZ CORTES

ALUMNO:
MIGUEL NGEL RODRGUEZ MRQUEZ
13370721

FECHA:
2 DE JUNIO DE 2017
CONTENIDO

CRC (cyclic redundancy check) ......................................................................................................... 3


INTRODUCCIN ................................................................................................................................. 3
DESARROLLO. ................................................................................................................................... 3
Polinomios de secuencias binarias .............................................................................................. 3
Algoritmo de Checksum................................................................................................................... 5
Ejemplo de calculo de Checksum ................................................................................................. 5
OBSERVACIONES Y CONCLUSIONES ....................................................................................... 7
REFERENCIAS BIBLIOGRFICAS ................................................................................................ 7
CRC (cyclic redundancy check)

OBJETIVO.

Que el alumno realice una investigacin acerca de el CRC y con esto conoca acerca
de que utilidad tiene en las redes y conosca su funcionamiento. Se ha de tocar los
puntos mas importantes del CRC y desarrollar la informacin de manera adecuada
para que asi sea de utilidad este conocimiento para la materia de redes e interfaces
industriales.
INTRODUCCIN

En informtica, CRC hace referencia a cyclic redundancy check, tambin llamado


polynomial code checksum. En espaol, control de redundancia cclica o
comprobacin de redundancia cclica. El CRC es una funcin diseada para
detectar cambios accidentales en datos de computadora y es comnmente usada
en redes digitales y dispositivos de almacenamiento (como discos duros).
El CRC fue creado por W. Wesley Peterson en 1961; el polinomio de 32 bits usado
en funciones CRC de Ethernet (y otros estndares) fue publicado en 1975. El CRC
es muy popular por su simpleza de implementacin, fcil de analizar
matemticamente y es muy bueno detectando errores causados por ruidos en los
canales de transmisin.

DESARROLLO.

La verificacin de redundancia cclica (abreviado, CRC ) es un mtodo de control


de integridad de datos de fcil implementacin. Es el principal mtodo de deteccin
de errores utilizado en las telecomunicaciones. El CRC es una larga divisin de
computacin en el que se descarta el cociente y el resto se convierte en el resultado,
con la importante diferencia de que la aritmtica que usamos conforma que el
clculo utilizado es el arrastre de un campo, en este caso los bits.
Polinomios de secuencias binarias
La verificacin de redundancia cclica consiste en la proteccin de los datos en
bloques, denominados tramas. A cada trama se le asigna un segmento de datos
denominado cdigo de control (al que se denomina a veces FCS, secuencia de
verificacin de trama, en el caso de una secuencia de 32 bits, y que en ocasiones
se identifica errneamente como CRC). El cdigo CRC contiene datos redundantes
con la trama, de manera que los errores no slo se pueden detectar sino que
adems se pueden solucionar.
Figura 1.1 Esquema del funcionamiento
del CRC

El concepto de CRC consiste en tratar a las secuencias binarias como polinomios


binarios, denotando polinomios cuyos coeficientes se correspondan con la
secuencia binaria. Por ejemplo, la secuencia binaria 0110101001 se puede
representar como un polinomio, como se muestra a continuacin:
Figura 1.2 Polinomio de la secuencia binaria 0110101001

De esta manera, la secuencia de bits con menos peso (aquella que se encuentra
ms a la derecha) representa el grado 0 del polinomio ( 0 = 1), el 4 bit de la
derecha representa el grado 3 del polinomio ( 3 ), y as sucesivamente. Luego, una
secuencia de n- bits forma un polinomio de grado mximo n-1. Todas las
expresiones de polinomios se manipulan posteriormente utilizando un mdulo 2.
En este proceso de deteccin de errores, un polinomio predeterminado
(denominado polinomio generador y abreviado G(X)) es conocido tanto por el
remitente como por el destinatario. El remitente, para comenzar el mecanismo de
deteccin de errores, ejecuta un algoritmo en los bits de la trama, de forma que se
genere un CRC, y luego transmite estos dos elementos al destinatario. El
destinatario realiza el mismo clculo a fin de verificar la validez del CRC.
El CRC es til para deteccin de errores, pero, en condiciones de seguridad, no
podemos confiar en que el CRC puede verificar plenamente que los datos son los
correctos en caso de que se hayan producido cambios deliberados y no aleatorios.
A menudo se piensa que si, cuando llega un mensaje, este y su CRC coinciden,
quiere decir que el mensaje no ha podido ser alterado durante su transmisin,
aunque se haya transmitido por un canal abierto. Esta suposicin es falsa porque
CRC es un mal mtodo de cifrado de datos. De hecho, el CRC no se trata realmente
de un mtodo de cifrado, lo que realmente hace es utilizarse para el control de
integridad de datos, pero en algunos casos se supone que se utilizarn para el
cifrado.
Algoritmo de Checksum

La idea en la que se basa la suma de chequeo de Internet es muy sencilla: se suman


todas las palabras de 16 bits que conforman el mensaje y se transmite, junto con el
mensaje, el resultado de dicha suma (este resultado recibe el nombre de
checksum). Al llegar el mensaje a su destino, el receptor realiza el mismo clculo
sobre los datos recibidos y compara el resultado con el checksum recibido. Si
cualquiera de los datos transmitidos, incluyendo el mismo checksum, esta corrupto,
el resultado no concordar y el receptor sabr que ha ocurrido un error.
El checksum se realiza de la siguiente manera: los datos que sern procesados (el
mensaje) son acomodados como una secuencias de enteros de 16 bits. Estos
enteros se suman utilizando aritmtica complemento a uno para 16 bits y, para
generar el checksum, se toma el complemento a uno para 16 bits del resultado.
El uso del algoritmo de checksum de Internet en los headers de los protocolos se
puede resumir en tres pasos simples.

Los octetos adyacentes que se deben verificar con al suma de chequeo


deben ser acomodados para formar enteros de 16 bits, luego se calcula la
suma complemento a uno de estos enteros (de 16 bits)
Para generar el checksum, el campo de checksum del header del PDU que
ser transmitido es puesto en cero, luego la suma complemento a uno es
calculada sobre los octetos correspondientes y el complemento a uno de esta
suma se coloca en el campo de checksum.
Para revisar el checksum, la suma es calculada sobre los mismo octetos,
incluyendo el campo de checsum. Si el resultado es 16 bits con valor 1 (-0 en
aritmtica complemento a uno), el chequeo es correcto.
Ejemplo de calculo de Checksum

Como un ejemplo sencillo del clculo del checksum supongamos que tenemos
tres "palabras" de 16 bits:
Figura 1.3 Triada de palabras de 16 bits

La suma de las dos primeras palabras sera:


Figura 1.4 Suma de las dos primerass
palabras de la figura 1.3

Adicionando ahora la tercera "palabra" al resultado anterior tenemos


Figura 1.5 Suma del resultado de la
suma anterior y de la tercera palabra de
la figura 1.3

La suma complemento a uno se obtiene convirtiendo todos los ceros en unos y


todos los unos en ceros. De esta forma la suma complemento a uno de
1100101011001010 sera 0011010100110101. Que vendra a ser el checksum. Al
llegar al receptor las cuatro palabra de 16 bits, incluyendo el checksum son sumados
y el resultado debe ser 1111111111111111. Si uno de los bits es cero, un error ha
sido detectado.

Dependiendo del protocolo, se deben seleccionar ciertos campos de los headers


para realizar los clculos del checksum. En IP el checksum se calcula slo sobre
los octetos que componen el header del datagrama (RFC791), en UDP (RFC768)
se calcula sobre un seudo-header , el header UDP y los datos que transporta UDP
y en TCP (RFC793) se hace un clculo similar que en UDP.
OBSERVACIONES Y CONCLUSIONES

El checksum o CRC es de ayuda en la redes ya que mediante este mtodo podemos


detectar errores en la comunicacin de los quipos que estn conectados a la red,
aunque no debemos confiar enteramente en este mtodo, ya que hay errores que
incluso a este mtodo e le suelen pasar por alto. Conocer acerca de el CRC es
importante ya que ayuda a comprender como se lleva a cabo la deteccin de errores
dentro de las redes, y permite conocer que no solo el CRC ayuda a detectar errores,
sino tambin puede ayudar a corregirlos.

REFERENCIAS BIBLIOGRFICAS

(02 de Junio de 2017). Obtenido de http://es.ccm.net/contents/59-verificacion-de-


errores
(02 de Junio de 2017). Obtenido de https://www.adslayuda.com/foro/topic/48131-
qu%C3%A9-es-crc/
(02 de Junio de 2017). Obtenido de http://www.alegsa.com.ar/Dic/crc.php
(02 de Junio de 2017). Obtenido de
http://teleprospero.blogspot.mx/2012/04/deteccion-de-errores-vrc-lrc-
crc_23.html
(02 de Junio de 2017). Obtenido de
http://diarioredesyservicios.blogspot.mx/2012/01/crc-comprobacion-de-
redundancia-ciclica.html

Você também pode gostar