Sunteți pe pagina 1din 28

Materia: Sistemas Informáticos para Telemática

Profesor: Johrman Vides NIño


 Dos estrategias para manejar errores:
◦ Incluir información redundante suficiente para que receptor pueda
deducir lo que debió ser caracter transmitido → CORRECCIÓN DE
ERORES
◦ Incluir información redundante suficiente para que receptor sepa
que ha ocurrido un error y solicite retransmisión →DETECCIÓN DE
ERRORES
 Tecnologías MAC emplean Detección de errores
 Cantidad de bits en los que difieren dos
palabras de código
◦ EJ:
11011100
DISTANCIA HAMMING =3
11111111

 DISTANCIA HAMMING DE TODO EL CÓDIGO:


Distancia de Hamming mínima del conjunto
de palabras de código válidas
 EJ:
1100
0011 DISTANCIA HAMMING DE
0000 TODO EL CÓDIGO =2
1111
 EJ: Código con 4 palabras válidas de 10 bits
c/u
0000000000
0000011111 DISTANCIA HAMMING DE
TODO EL CÓDIGO = 5
1111100000
1111111111

◦ Este código permite detectar:


d+1 = 5
d = 5-1
d=4
◦ Este código permite corregir:
2d+1 = 5
d = (5-1)/2
d=2
 Si llega la palabra de código:
0000000111
 Receptor deduce que palabra original es:
0000011111
 Pero si se cometió un triple error, la palabra
original sería:
0000000000
 Usado para detección de errores
 Representación de cadenas de bits como polinomios con coeficientes
0y1
 Ej: Palabra de código: 110001
◦ Representación polinómica:
(1)X5+(1)X4+(0)X3+(0)X2+(0)X1+(1)X0
=X5+X4+1
◦ Grado de polinomio: 5
 Aritmética polinómica se hace módulo 2 →Tanto suma como resta
son idénticas a OR EXCLUSIVO (=s→ 0, ≠s→1)
 División como en binario, pero resta se hace módulo 2. Se
dice que divisor “cabe” en dividendo si el dividendo tiene
tantos bits como el divisor.
 Transmisor y receptor deben acordar un polinomio generador
G(X), previo a la transmisión. Los bits mayor y menor del
polinomio generador deben ser 1.
 Trama debe ser más larga que polinomio generador
 Se maneja la siguiente simbología:
◦ r: Grado de G(X). Valor de máximo exponente
◦ G(X): Polinomio generador
◦ M(X): Trama a transmitir
◦ m: Longitud original de la trama
 Para calcular suma de comprobación (valor CRC) en TRANSMISOR:
◦ Se adicionan r bits cero al final de M(X), para que su longitud sea m+r bits y
corresponda al polinomio XrM(X)
◦ Se divide XrM(X) entre G(X), usando división módulo 2
◦ Se resta residuo de la división (que tiene r o menos bits) a XrM(X) usando resta
módulo 2. Resultado es T(X), trama con suma de comprobación a transmitir.
 Para verificar suma de comprobación en el RECEPTOR:
◦ Si T´(X) es la trama con suma de comprobación recibida, receptor
divide T`(X) entre G(X), usando división módulo 2
◦ Si residuo de división es cero, trama ha llegado sin errores
◦ Si residuo de división es diferente de cero, trama llegó con errores y
receptor solicita la retransmisión.
 EJEMPLO: Se quiere transmitir la trama 1101011011, utilizando el
polinomio generador X4+X+1. Cuál es el valor de la suma de
comprobación (valor CRC) y qué secuencia de bits se transmite?
Realizar la verificación en el receptor de la secuencia de bits
transmitida.
 SOLUCIÓN:
◦ M(X)=1101011011
◦ G(X)=X4+X+1=10011
◦ r=4
◦ XrM(X)=11010110110000
Se divide XrM(X) entre G(X)
10011│1 10 1 0 1 1 0 1 1 0 0 0 0
10011
0 1 0 0 11
10011
0 0 0 0 010 11 0
10011
0010100
10011
00111 0
SUMA DE COMPROBACIÓN
o VALOR CRC
 Se resta a XrM(X) el valor CRC

11010110110000
1110
11010110111110
T(X)
 En el receptor:
◦ T´(X)=11010110111110
◦ G(X)=10011
◦ Se divide T´(X) entre G(X):
10011│1 10 1 0 1 1 0 1 1 1 1 1 0
10011
0 1 0 0 11
10011 RESIDUO 0
0 0 0 0 01 0 1 1 1 SIGNIFICA QUE
10011 INFORMACIÓN
0010011 LLEGÓ SIN
10011 ERRORES
000000
 EJERCICIO: Utilizando CRC determine si la secuencia
de bits recibida:
01100110011011000
tiene algún error, cuando G(X)=X4+X2+X+1. En caso
de error, qué debe hacer el receptor?
 EJERCICIO: Calcule el CRC y determine la secuencia
de bits que se transmite, si el polinomio generador
es X4+X2+1 y se quiere transmitir la trama
1001110111.
 EJERCICIO: Calcule el CRC y determine la secuencia
de bits que se transmite, si el polinomio generador
es X12+X11+X3+X2+X+1 y se quiere transmitir la
palabra hi.
 ¿Qué tipos de errores se detectan con CRC?
◦ Si a receptor llega T`(X)=T(X)+E(X), donde k bits 1 en E(X)
corresponden a k errores individuales
◦ Receptor calcula [T(X)+E(X)]/G(X), pero T(X)/G(X)=0, entonces el
resultado es E(X)/G(X) → si errores contienen a G(X) no serán
detectados.
◦ No hay polinomio con número impar de términos que tenga a X+1
como factor primo →si X+1 es factor primo de G(X) se pueden detectar
todos los errores con número impar de bits invertidos.
 G(X) estándares internacionales:
◦ CRC-12: G(X)=X12+X11+X3+X2+X+1
◦ CRC-16:G(X)=X16+X15+X2+1
◦ CRC CCITT: G(X)=X16+X12+X5+1
◦ CRC-32-IEEE 802.3: G(X)=X32+X26+X23+X22+X16+X12+X11+X10+X8+X7
+X5+X4+X2+X+1
◦ Peterson y Brown (1961), inventaron registro de desplazamiento para
calcular y verificar sumas de comprobación por HW, muy usado en la
práctica.
 Usado para corrección de errores
 Permite corregir un bit solamente
 Para código de m bits de mensaje, el número de bits de
comprobación (r) se calcula con:
m+r+1 ≤2r
 Bits de comprobación deben colocarse en posiciones que son
potenicas de 2 (20, 21, 22, 23, …) y los bits de datos deben ir
en demás posiciones
 Para calcular valor de bits de comprobación se utiliza
paridad par:

◦ Si hay número impar de 1’s: bit de comprobación es 1

◦ Si hay número par de 1’s: bit de comprobación es 0

 Para saber a qué bits de comprobación contribuye cada bit


de una palabra, cada posición en que se colocan bits de
palabra se descompone en potencias de 2
 EJ: Calcular bits de comprobación para siguiente
palabra de código: 0011110
 SOLUCIÓN:
◦ m = 7 bits
◦ Se calcula número de bits de comprobación:
 Si r=3
m+r+1 ≤2r
7+3+1 ≤23
11 ≤8
 Si r=4
m+r+1 ≤2r
7+4+1 ≤24
12 ≤16
Se requieren 4 bits de comprobación
 SOLUCIÓN: POSICIONES BITS DE
◦ m + r = 7 bits + 4 bits = 11 bits COMPROBACIÓN

POSICIÓN 1 2 3 4 5 6 7 8 9 10 11
PALABRA 0 1 0 0 0 1 1 0 1 1 0
◦ 3 = 1+2
◦ 5 = 1 +4
◦ 6 = 2+4
◦ 7 = 1+2+4
◦ 9 = 1 +8
◦ 10= 2 +8
◦ 11= 1+2 +8
 Si a receptor llega palabra con error en séptimo bit
POSICIÓN 1 2 3 4 5 6 7 8 9 10 11
PALABRA 0 1 0 0 0 1 0 0 1 1 0
1 0 1 0
◦ 3 = 1+2
◦ 5 = 1 +4
◦ 6 = 2+4
SUMO POSICIONES DE
◦ 7 = 1+2+4
BITS ERRADOS:
◦ 9 = 1 +8
1+2+4 = 7
◦ 10= 2 +8
◦ 11= 1+2 +8
BIT ERRONEO ESTÁ
EN POSICIÓN 7, DEBE
INVERTIRSE

PALABRA SIN ERROR: 01000110110


 EJERCICIO 1: Determine si existe algún error en la
siguiente secuencia de bits y si es así, diga en qué
bit y corríjalo, especificando la palabra que se
transmitió originalmente
10101011001001

 EJERCICIO 2: Utilizando el método de Hamming,


determine el valor de los bits de comprobación y
diga qué palabra se transmite
0101001110110
 Se desea transmitir la palabra (string):
Sal
Determinar el palabra a transmitir luego de
agregarle bit de comprobación de errores por
el método de Hamming.
RESPUESTA
------ se convierte la cadena de string a bit
usando la tabla ASCII Extendido.
S = 01010011
a= 01100001
l = 01101100
-concatenar los bits de cada letra
Sal
010100110110000101101100
m=24

Si r=5
m+r+1 ≤2r
24+5+1 ≤25
30 ≤ 32
Se agregarán 5 bits de comprobación de errores
-Conformar la palabra a transmitir
Sal
010100110110000101101100
Po 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
sici
on

Pa 1 1 0 1 1 0 1 1 0 0 1 1 0 1 1 1 0 0 0 0 1 0 1 1 0 1 1 0 0
la
br
a

palabra a transmitir:
11011011001101110000101101100
GRACIAS!!!

S-ar putea să vă placă și