Está en la página 1de 28

La Capa de

Enlace de Datos
ppt#7

Ing Marcelo Semeria


1
Actualiz.:Marzo 2016 Revisión:Mayo 2019
IEEE 802.2: Logical Link Control

(a) Position of LLC.


(b) Protocol formats.
2 / 142
Data Link Layer
Puntos a Considerar
a) Servicios provistos por la capa
• Armado de Tramas
• Control de errores
• Control de flujo
3
Funciones
a) Provee servicio de interfaz con la capa de Red.
b) Manejo de errores
c) Regula el flujo de datos
• Receptores lentos no son ¨tapados¨por
transmisores rápidos

4 / 142
Funciones

Relacion entre paquetes y tramas.


5
Servicios a capa de red

(a) Virtual communication.(b) Actual communication. 6


Servicios a Capa de Red (2)
Ubicación de protocolos

7
Entramado (1)

El flujo de caracters a) Sin Errores b) Con un error


8
Entramado (2)

(a) Trama delimitada por bits de flag.


(b) Cuatro ejemplos de secuencias de byte antes y despues del stuffing.
9
Entramado (3)

5 1’s seguidos 5 1’s seguidos

5 1’s seguidos

Bit stuffing
(a) Data original
(b) El dato como aparece en la linea.
(c) El dato como es almacenado en la memoria del recptor. 10
Entramado: Indicadores de Ini y Fin, con
relleno de bits
•Caracteres con cantidad de bits variable
•Cada Marco comienza y termina con un indicador: 01111110
•En TX: encuentra un 11111 entre los datos inserta un bit 0 en la cadena de bits.
•En RX: encuentra un 111110 entre los datos extrae el bit 0.
Quiero TX: 01111110
Pero TX esto al RX: 011111010
El RX busca: 011111010 y extrae el 0
Al RX le queda: 01111110
==========================
Quiero TX: 111110
Pero TX esto al RX: 1111100
El RX busca: 1111100 y extrae el 0
/ 142
Al RX le queda: 1111110
Errores

12
Códigos detectores de errores

13
Que hacer con un error?

14
Control de paridad
Bit de
Palabra a enviar 1101001
paridad

1 1 0 1 0 0 1

1 1 0 1 0 0 1 0
Se completa de forma de tener cantidad par de UNOS
TRANSMISION

Todo OK 1 1 0 1 0 0 1 0

1 error detectado 1 0 0 1 0 0 1 0
2 errores NO detectados
pues mantiene paridad 1 0 1 1 0 0 1 0
15
Manejo de errores
Tx Rx

1 1 El receptor no puede
saber si se envió 1 y
llego bien o 0 y llego mal
Ruido
0
Rx Detecto
Tx
Y
Se sabe que hubo error Corrijo
y que es muy probable
11111 10111 que lo enviado haya sido
11111
El precio para detectar y corregir es redundancia:
•Tiempo de envío
•Cantidad de datos a enviar
•Tiempo de procesamiento 16
Error Detection and Correction

a) Codigos Correctores de error


• Ej : Hamming
b) Codigos Detectores de error
• Ej : CRC

17
2n palabras
Desarrollo de Hammig n= m + r posibles
Hamming para corregir un bit
Suponga palabras de n bit Mensaje redundancia

2m mensajes m bits r bits


EJEMPLO posibles

•Cada palabra de n bits => n palabras asociadas


10010 Para corregir 1
error todas las
•Cada palabra tiene 1 mensaje
00010 palabras que n+1 palabras con igual mensaje
11010 difieran en 1 bit •n+1 palabras con igual mensaje
10110 se deberán
asociar a la •2m mensajes posibles
10000 palabra inicial
2m (n+1) Palabras con significado
10011 ( La que esta
en diccionario) La máxima cantidad de palabras en 2 n
6 palabras con igual significado
2n >= 2m(n+1)
Cantidad de bit
de redundancia
Reemplazando n por su valor y operando 2r >= m+r+1 necesarios
18
Aplicación de Hamming ( Generación ) Tabla a
r m+r+1 =< 2r
Mensaje a transmitir : 10110 m = 5
Bits de redundancia r = 4 ( Ver tabla a ) 1 7 2
2 8 4
A ) Se elijen como redundancia los bit potencia de 2 ( en verde) 3 9 8
Cumple 4 10 16
1 0 1 1 0
Tabla b
1 2 3 4 5 6 7 8 9

Decimales formados por potencias de 2


1 1
B ) Se completan los bit de redundancia para obtener paridad par en los bit
controlados según tabla b.
2 2
3 1,2
Ej: Bit 1 controla bits 1, 3, 5, 7, 9 ➔ X 1 0 1 0 ➔ x=0
Bit 2 controla bits 2, 3, 6, 7 ➔ X, 1, 1, 1 ➔ x=1 4 4
0 1 1 0 0 1 1 0 0 5 1,4

1 2 3 4 5 6 7 8 9 6 2,4
7 1,2,4
Se transmite la palabra: 011001100 8 8
9 1,8
19
Aplicación de Hamming ( Recuperación )
Mensaje recibido : 011011100 Del slide anterior con 1 error

A ) El receptor verifica si hay errores, elije como redundancia los bit potencia de 2 ( en verde)

0 1 1 0 1 1 1 0 0 Bit 1 X : 1,3,5,7,9,
1 2 3 4 5 6 7 8 9 Bit 2 ok : 2,3,6,7,
Bit 4 X: 4,5,6,7,
B ) El receptor verifica paridad con los mismos criterios que el transmisor Bit 8 ok: 8 9

0 1 1 0 1 1 1 0 0 Los bit comunes en los


controles con error son
1 2 3 4 5 6 7 8 9 5 y 7 Pero el control 2
da como ok el 7
X Ok X ok ➔ Bit 5 Con ERROR

La forma practica es sumar los


pesos de los controles con
error: 1 + 4 =5 ➔ Bit 5 La palabra corregida es 011001100
20
Hamming (2)
Enviar la letra e en código ASCII codificado con Hammig. ¿ Que se enviara ?. Nota : usar Hamming con ca-
pacidad de corrección de 1 bit. e = 1100101. Codificado según Hamming queda : 00111000101

(m+r+1)<= 2^r:: r=4, m=7 :: m+r+1=11 y 2^4=16

Posiciones de Hamming= Potencia de 2 = 1,2,4,8,16,etc


1 1 0 0 1 0 1
1 2 3 4 5 6 7 8 9 10 11
Obtener los bits de comprobación: Posición K como sumatoria de potencias de 2
Bit 11 controlado por 1+2 +8
Bit 10 controlado por 2 +8
Bit 9 controlado por 1 +8
Bit 7 controlado por 1+2+4
Bit 6 controlado por 2+4
Bit 5 controlado por 1 +4
Bit 3 controlado por 1+2
 El Bit 1 de comporbacion es la paridad necesaria a los bits 3+5+7+9+11= 1+1+1+1
 El Bit 2 de comporbacion es la paridad necesaria a los bits 3+6+7+10+11=1+0+0+1
 El Bit 4 de comporbacion es la paridad necesaria a los bits 5+6+7=1+0+0
 El Bit 8 de comporbacion es la paridad necesaria a los bits 9+10+11=1+0+1

Paridad Par Paridad ImPar


0 0 1 1 1 0 0 0 1 0 1 1 1 1 0 1 0 0 1 1 0 1
1 2 3 4 5 6 7 8 9 10 11 1 2 3 4 5 6 7 8 9 10 / 11
142
Hamming

Hamming
Mediante el
agregado de
redundancias
se logra poder
corregir errores

22
CRC Fundamento
Suponga que Tx y Rx comparten un mismo polinomio generador G(x)
Sea M(x) el mensaje a transmitir
G(x) = 5 G(x) = 5

M(x)
M(x) = 15

15 5 15 5
0 0

Tx Verifica resto Rx Comprueba


“0” y envia M(x) resto “0“ y da por
al Rx aprobado

Inconvenientes del método


•Se pude producir un error que mantenga resto cero ( en el ej. 15 ➔ 25 )
•M(x) puede no tener resto cero con el G(x) dado
23
CRC Fundamento
Suponga que Tx y Rx comparten un mismo polinomio generador G(x)
Sea M(x) el mensaje a transmitir
G(x) = 5 G(x) = 5
Se soluciona transformando M(x)
en M’(x) divisible por G(x), luego
Se soluciona M(x) en el Rx se vuelve al mensaje
M(x)eligiendo
= 15 con
original M(x). ( M(x) – R = M’(x) )
cuidado el polinomio
generador
15 G(X)5 22 5 15 5 22 – 2 = 20
0 2 0
Divisible por G(x)
Tx Verifica resto Rx Comprueba
“0” y envia M(x) resto “0“ y da por
al Rx aprobado

Inconvenientes del método


•Se pude producir un error que mantenga resto cero ( en el ej. 15 ➔ 25 )
•M(x) puede no tener resto cero con el G(x) dado
24
Codigos detectores de errores

OR
Exclusive Mensaje a Transmitir:
11010110111110

El resto debe En el Rx luego de


reemplazar los ceros verificar que no
agregados al tenga errores (resto
mensaje ➔ resto el cero) se eliminan los
resto al mensaje. 4 últimos bits.

25
Polinomios CRC
Código de Redundancia Cíclica
➢ Para detectar errores usa un Código Polinómico G(x) de K bits y K-1 grados
➢ Los Ki son coeficientes de un polinomio, desde xK-1 (más a la izq. o mayor) a x0.
✓ Así: 100111= x5 +x2 +x1+x0 = x5 +x2 +x+1
➢ Un Polinomio Generador G(x) de grado r detectará Errores en ráfaga de longitud <=r.
✓ Prob(De Pasar Ok una Ráfaga r+1)= (1/2)r-1
➢ Operación: M(x): MSG a TX.. Q(x) División Modulo 2. R(x) residuo de la división.
➢ Emisor: envía M(x). Se agregan r bits ‘0’ al final del marco para que contenga m+r bits
✓ Q(x)= (M(x) * xr)/G(x)). Tiene un Residuo R(x)
✓ T(x)= {(M(x) * xr)+ R(x)} MSG que se transmite con el CRC incluido
➢ Receptor: quiere obtener M(x) dentro de T(x). Suponemos un Error E(x) que se suma::
✓ Recibo del Medio: T(x)+E(x).
✓ Divide (T(x)+E(x)) / G(x).
✓ Como T(x)/G(x)= 0 => Existe un Error de TX SI (E(x)/G(x)  0).
✓ Si E(x)/G(x) = 0 => Extraigo los xr y obtengo el M(x) sin errores. / 142
CRC ( en forma de polinomio )

27
28

También podría gustarte