Requisito previo: detección de errores en redes informáticas
La suma de comprobación es el método de detección de errores utilizado por los protocolos de capa superior y se considera más fiable que LRC, VRC y CRC. Este método utiliza el generador de suma de verificación en el lado del remitente y el verificador de suma de verificación en el lado del receptor.
En el lado del remitente, el generador de suma de comprobación divide los datos en subunidades iguales de n bits de longitud. Este bit tiene generalmente una longitud de 16 bits. Estas subunidades luego se suman usando el método del complemento a uno. Esta suma es de n bits. Luego se complementa el bit resultante. Esta suma complementada, que se denomina suma de verificación, se agrega al final de la unidad de datos original y luego se transmite al Receptor.
El Receptor después de recibir datos + suma de verificación lo pasa al verificador de suma de verificación. El verificador de suma de verificación divide esta unidad de datos en varias subunidades de igual longitud y agrega todas estas subunidades. Estas subunidades también contienen suma de comprobación como una de las subunidades. Luego se complementa el bit resultante. Si el resultado complementado es cero, significa que los datos están libres de errores. Si el resultado es distinto de cero, significa que los datos contienen un error y Receiver lo rechaza.
Ejemplo:
si la unidad de datos que se va a transmitir es 10101001 00111001, se utiliza el siguiente procedimiento en el sitio del remitente y el sitio del receptor.
Sitio del remitente:
10101001 subunit 1 00111001 subunit 2 11100010 sum (using 1s complement) 00011101 checksum (complement of sum)
Los datos transmitidos al receptor son:
Sitio del receptor:
10101001 subunit 1 00111001 subunit 2 00011101 checksum 11111111 sum 00000000 sum's complement Result is zero, it means no error.
Ventaja:
la suma de comprobación detecta todos los errores que implican un número impar de bits, así como el error que implica un número par de bits.
Desventaja:
el problema principal es que el error no se detecta si uno o más bits de una subunidad están dañados y el bit o bits correspondientes de una subunidad están dañados y el bit o bits correspondientes de valor opuesto en la segunda subunidad también están dañados. Esto se debe a que la suma de esas columnas permanece sin cambios.
Ejemplo:
si los datos transmitidos junto con la suma de verificación son 10101001 00111001 00011101. Pero los datos recibidos en el destino son 0 0101001 1 0111001 00011101.
Sitio del receptor:
00101001 1st bit of subunit 1 is damaged 10111001 1st bit of subunit 2 is damaged 00011101 checksum 11111111 sum 00000000 Ok 1's complement
Aunque los datos están dañados, el error no se detecta.
Publicación traducida automáticamente
Artículo escrito por itskawal2000 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA