50
T3. NIVEL DE ENLACE DE DATOS

T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Embed Size (px)

Citation preview

Page 1: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

T3. NIVEL DE ENLACE DE DATOS

Page 2: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 2

ÍNDICE

Introducción• Servicios proporcionados al nivel de red• Entramado• Control de errores• Control de flujo

Detección de errores• Paridad• Suma de bloque• CRC

Casos de estudio: • HDLC y familia ( PPP)• Subnivel MAC. Estándar IEEE 802.X

Puentes y conmutadores.

Page 3: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 3

ÍNDICEIntroducción Detección y corrección de errores.Control de flujo.Protocolo de ventana deslizante.Subnivel de acceso al medio.Casos de estudio: • Prot. derivados del HDLC• Prot. PPP• IEEE 802

Puentes y conmutadores

Page 4: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 4

INTRODUCCIÓNObjetivo: suministrar un transporte “fiable” de bits al nivel de red.Sólo se ocupa de equipos directamente conectados.Los bits llegan al destino en el mismo ordenLos circuitos de comunicación:• Cometen errores• Tasa de datos finita (Velocidad)• Retardo de propagación

Page 5: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 5

FUNCIONESProporcionar servicios al nivel de red• Sin acuse, sin conexión• Con acuse, sin conexión• Con acuse orientado a conexión

Entramado de bits• Contar caracteres• Caracteres de Inicio-Fin• Indicadores Inicio-Fin con relleno

Control de errores• Detección • Corrección

Control de flujo • Parada y Espera• Ventana deslizante

Page 6: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 6

Servicios para el nivel de red

Page 7: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 7

Servicios para el nivel de red Sin acuse y sin conexión• Envío de tramas sin acuse de recibo• Ausencia de conexión• Baja tasa de errores• Tiempo real (voz)• LAN

Con acuse y sin conexión• El receptor produce un acuse de recibo por trama(s)• Ausencia de conexión• Alta tasa de errores• Sistemas inalámbricos

Page 8: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 8

Servicios para el nivel de redCon acuse orientado a conexión• Emisor y receptor establecen una conexión previa a la

transferencia de datos• Tramas numeradas• Se garantiza la recepción de cada trama y el orden de

transmisión• Confiable

Page 9: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 9

Entramado de bitsSe agrupa el flujo de bits en tramas y se añaden bits de control de errores.El destino comprueba si se ha producido error en la trama.Delimitación de trama:• Contar caracteres:

- Un campo especifica el número de caracteres de la trama- Problema: la cuenta puede alterarse por error de transmisión

• Principio-fin.• Bandera.

Page 10: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 10

Delimitación: Contar caracteres

Page 11: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 11

Delimitación: Caracteres de Inicio-FinComienzo de trama con DLE STX (ASCII) y fin de trama con DLE ETX (ASCII)

Problema de la transparencia: “Que los indicadores aparezcan como parte de los datos”Solución: Inserción de carácter.Poner un DLE antes de cada DLE “accidental” de los datos.Desventaja: añade 8 (ó 7) bits (ASCII)

Page 12: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 12

Tramas con número arbitrario de bitsCada trama comienza y termina con un patrón de bits, 01111110, byte indicador, bandera, flag...

Permite encadenamiento de tramas.

Problema de la transparencia.

Delimitación: Bandera o flag

Flag 011111110 Datos Trama Flag

011111110

flag Datos Trama flag Datos Trama flag

Page 13: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 13

Delimitación: Bandera o flagTransparencia: Inserción de bitNo se permite repetir el delimitador dentro de la trama

Page 14: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 14

Control de erroresDetección de errores y Corrección de errores

“Siempre hay errores”

Page 15: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 15

Control de erroresCorrección de errores: mecanismo básico.

¿Cómo asegurar que las tramas son entregadas en orden al receptor y sin errores?• Realimentación del transmisor con acuse de

recibo. • Añadir temporización (T0 >2 trecepción)

- Transmitir la trama nuevamente, si se cumple el tiempo T0.

- Duplicidad, introducir números de secuencia de tramas de datos y acuse de recibo.

Page 16: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 16

Control de flujo

Asegurar que el transmisor no sobrecarga al receptor.Realimentación del transmisor.Parada y espera (simplex)• El transmisor envía una trama y espera un acuse de

recibo del receptor antes de enviar la siguiente trama• Problema: sólo una trama en transito; baja eficiencia

Page 17: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 17

Parada y espera

Page 18: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 18

Ventana deslizanteVentana deslizante (duplex)• Dos estaciones A y B• B reserva memoria temporal para n tramas• A puede enviar n tramas sin confirmación• Cada trama se etiqueta con un nº de secuencia, k bits• B confirma una trama mediante un acuse de recibo que incluye el

nº de secuencia de la siguiente trama que espera recibir.• Es posible confirmar varias tramas simultáneamente, la actual y las

anteriores• A mantiene una lista (ventana de tramas) con los nº de secuencia

que puede transmitir y B con los que espera recibir.

• Si en un tiempo prudencial (time-out) no se recibe el acuse de recibo, se reenvía la trama.

12 −≤ kn

Page 19: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 19

Ventana deslizante

frame

prop

tt

Page 20: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 20

Ventana deslizante

Tramas ya transmitidas

Tramas almacenadas temporalmente hasta que son

confirmadasVentana de tramas que se

pueden transmitir

Número de secuencia de las tramas

Última trama confirmada

Última trama transmitida

La ventana se cierra por el límite inferior cuando se envían

tramas

La ventana se abre por el límite superior cuando se reciben

tramas

Última trama confirmada

Última trama recibida

La ventana se cierra por el límite inferior cuando se

reciben tramas

La ventana se abre por el límite

superior al enviar las ACKs

Tramas ya recibidasVentana de tramas que se

pueden aceptar

(a) Desde el punto de vista del transmisor

(b) Punto de vista del receptor

Page 21: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 21

Ventana deslizante

Page 22: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 22

Control de errores¿Que es un error?• Nº de bits de una trama: n=m+r

- m, bits de datos- r, bits de comprobación- n, palabra de código

• Dadas dos palabras de código, es fácil determinar en cuantos bits difieren (XOR)

Distancia de Hamming: nº de posiciones de bits en que difieren dos palabras de código

Page 23: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 23

Control de erroresLa detección y corrección de errores de un código depende de su distancia de Hamming.• Detectar d errores requiere una distancia d+1• Corregir d errores requiere una distancia 2d+1

Paridad: se considera un código en el que se agrega un solo bit de paridad a los datos.• El bit de paridad se escoge de forma que el nº total de

unos de la palabra de código es par (o impar).• Detecta errores individuales• Sólo detecta 50% (nº impar bits de erróneos)

Page 24: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 24

Suma de bloqueA cada carácter (n bits) se le añade un bit de paridad (transversal o de fila)A cada posición de bit del bloque se le añade un bit de paridad (longitudinal o de columna)• Un carácter al final del bloque cuyos bits indican la

paridad de cada columna del bloque.Corrige hasta n bits y detecta el 50% restante. Ejemplo: Para transmitir una información se utiliza paridad de suma de bloque (par). Si al receptor le llega el siguiente bloque de información (en hexadecimal): A3 2D FC 24 17 0D E4 B8. Decir si es correcto, y en caso contrario, corregirlo.

Page 25: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 25

Solución al Ejemplo

Page 26: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 26

Código de Redundancia Cíclica (CRC)Detecta 99’98%Dado mensaje de k bits, el transmisor genera una secuencia de n bits, denominada secuencia de comprobación de la trama (FCS), de forma que la trama resultante, con n+k bits, sea divisible por algún número predeterminado. El receptor divide la trama recibida por ese nº y, si no hay resto en la división, no hay errores.Tratamiento de las cadenas de bits como representaciones de polinomios con coeficientes de 0 y 1.• La cadena 110001 representa el polinomio x5+ x4+ x0

Page 27: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 27

Algoritmo (CRC)Definiciones:• T = trama de (k+n) bits a transmitir, con n<k• M = mensaje de k bits, los primeros k bits de T• F = n bits del FCS, los últimos n bits de T• P = patrón de n+1 bits; divisor elegido

Objetivo: T/P tenga resto cero• T = 2nM + F• Dividimos 2nM entre P y el resto lo usamos como FCS.• T = 2nM + R

Page 28: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 28

Algoritmo (CRC), EjemploPaso 1• M = 1010001101 (10 bits)• P = 110101 (6 bits)• FCS=R= (5 bits)

Paso 2• 2nM = 25M = 101000110100000

Paso 3• El resultado anterior se divide por P• R = 01110

Page 29: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 29

Algoritmo (CRC), EjemploPaso 4• T = 2nM + R = 101000110101110• Es lo que se transmite

Paso 5• Si no hay errores, el receptor recibe T• Resto T/P = 00000

Existen polinomios (P) estandarizados:• CRC-12 = x12 + x11 + x3 + x2 + x1 + 1• CRC-16 = x16 + x15 + x2 + 1• CRC-CCITT = x16 + x12 + x5 + 1

Page 30: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 30

Algoritmo (CRC), Ejemplo

Page 31: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Casos de estudio

Page 32: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Estándares de Enlace de datos ySubnivel MACPuentes

Page 33: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 33

Page 34: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 34

HDLC y familiaFLAG = 0x7eTramas encadenadas. CRC-16 ó CHKSM

Page 35: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 35

HDLC y familia(a) Información: Tramas con información y validación.(b) Supervisión(c) No numerada.

P/F comando/respuesta

Page 36: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 36

HDLC y familiaTramas de supervisión:• RR (Receive Ready, tipo 0)

Validación de anteriores a “Next”. (Espera la trama “Next”)

• RNR (Receive Not Ready, tipo 1)Parada brusca.

• REJ (Reject, tipo 2).Se reenvían “Next” y siguientes.

• SREJ (Selective Reject, tipo 3).Se reenvía “Next”.

Page 37: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 37

HDLC y familiaTramas No Numeradas. Gestión del enlaceDistintas variantes en los protocolos de la familia...• SNRM, SARM y SABM.

Petición de conexión normal, respuesta y balanceado.• DISC Disconnect.• DM Disconnect Mode.• UA Unnumbered Acknowledgment.• FRMR Respuesta de rechazo de trama.Etc.

Page 38: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 38

HDLC y familia

Page 39: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 39

HDLC y familia.

Page 40: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 40

Formatos de trama

Page 41: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 41

SLIP y PPPSLIP Serial IP (RFC 1055)• Encapsula paquetes IP con delimitador 0xC0.• Transparencia por inserción de byte.• No corrige errores, no detecta errores.

Page 42: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 42

PPPPoint to Point Protocol (RFC1661, etc.)• Formato de trama y detección de errores.• LCP (Link Control Prot.) Opciones del enlace, conex.

y descon, long.• NCP (Network Control Prot.) Encapsula varios

protocolos, direcciones IP. (IPCP,...) • Formato de trama.

Page 43: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 43

PPPConexión ( y desc.) PPP.• Módem LCP (PAP, CHAP) NCP(IPCP)

Nivel 1 Nivel 2

Page 44: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 44

PPP

Tipos de códigos LCP.

Page 45: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 45

PPP-IPCPEncapsulación IP sobre PPP

Page 46: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 46

Redes de área localEstándares IEEE• IEEE 802.2 LLC• IEEE 802.3 CSMA/CD• IEEE 802.4 Token -bus• IEEE 802.5 Token-ring• IEEE 802.6 DQDB• IEEE 802.11 WLAN

Page 47: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 47

LLCLogical Link Control IEEE 802.2• Nivel 1 datagrama o• Nivel 2 confiable (~HDLC)

Page 48: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 48

802.3 y EthernetFlujo de bits en una Ethernet

Page 49: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 49

802.3Niveles 100BASET y 1000BASET (N1).

Page 50: T3 Nivel Enlace - Escuela Superior de Informática (UCLM) · Redes(4º) T3 Nivel Enlace de Datos 2 ... (ventana de tramas) con los nº de secuencia ... depende de su distancia de

Redes(4º) T3 Nivel Enlace de Datos 50

IEEE 802.3 y Ethernet