You are on page 1of 11
1
1

Tema 6:

Nivel de Enlace de Datos

Bibliografía:

Capítulo 5 del Kurose

Apartados:5.1, 5.2, 5.3.2

Capítulo 5 del Kurose Apartados:5.1, 5.2, 5.3.2 3 Índice 1. Enlace de datos : introducción yservicios
3
3

Índice

1. Enlace de datos : introducción yservicios

2. Delimitación de la información

3. Detección/Corrección de errores

4. Mecanismos de control de flujo

5. Tipos de enlaces

6. Protocolos de acceso al medio (MAC)

7. Ejemplos de protocolos de enlace de datos

2
2

Objetivos

Conocer los servicios que puede ofrecer un protocolo de enlace de datos:

Delimitación de la información

Detección/corrección de errores

Transferencia fiable de datos, control de flujo (visto en Tema 4)

Control de acceso al medio de transmisión compartido

fiable de datos, control de flujo (visto en Tema 4) – Control de acceso al medio
5
5

Introducción

Tarea que realiza:

Nivel de red:

De extremo a extremo

Mover segmentos de la capa de transporte desde la máquina origen hasta la máquina destino

Nivel de enlace:

De nodo a nodo

Mover datagramas de la capa de red sobre un enlace individual en el recorrido.

Enlace “link” Extremo Nodo Nodo
Enlace
“link”
Extremo
Nodo
Nodo

Extremo

7
7

2. Delimitación de la información

El sistema de red divide los datos en pequeños bloques, que se envían individualmente

La división en bloques facilita:

el control de los errores

el uso equitativo de los recursos compartidos (red,

canal multipunto

)

El formato de los bloques dependerá de la tecnología hardware utilizada en la transmisión

6
6

Nivel de Enlace de Datos

Capa lógica por debajo del nivel de red y por encima de la interfaz física

Objetivo:

Conseguir la comunicación eficiente entre dos nodos directamente conectados

Unidad de transferencia: Trama (o Marco)

Servicios que puede ofrecer:

Delimitación de la trama

Control de flujo y de errores

Gestión del enlace

Delimitación de la información (II)● Se denominará Trama al bloq ue de datos utilizado en un tipo de red

Se denominará Trama al bloque de datos utilizado en un tipo de red específica

● Para transmitir más información de la que cabe en el tamaño máximo de la
● Para transmitir más información de la que cabe en el
tamaño máximo de la trama (MTU) se enviará una
secuencia de las mismas
datagrama
Protocol de nivel de enlace
Nodo
Nodo
receptor
emisor
Trama
Trama
adaptador
adaptador
9
9

Encapsulamiento de un datagrama

Los datagramas IP se encapsulan en tramas

Cabecera del

Campo de datos del datagrama IP

datagrama IP

Cabecera del Campo de datos del datagrama IP datagrama IP
Cabecera del Campo de datos del datagrama IP datagrama IP

Cabecera de la trama

Campo de datos de la trama

Campo de datos de la trama

CRC

11
11

Marcadores de bloque

El receptor ignorará todo lo que reciba antes del marcador de inicio o después del marcador de fin

Marcador Marcador de inicio inicio
Marcador
Marcador
de inicio
inicio

Información a transmitir

Marcador de inicio inicio Información a transmitir Información a transmitir Información a transmitir M a r

Información a transmitir

Información a transmitir

Información a transmitir Información a transmitir M a r c a d o r de fin

Marcador

de fin

El transmisor enviará todo esto

Los principales protocolos de enlace (PPP, HDLC) utilizan como marcador la secuencia de bits: 01111110

Delimitación de la Trama● Problema : – Cómo señalar durante la tran smisión el comienzo y el final

Problema:

Cómo señalar durante la transmisión el comienzo y el final de la trama.

Solución:

Se utilizan técnicas de marcadores de bloques

Cada trama se puede delimitar empleando dos marcadores, que señalen el principio y el final de la misma

Un marcador puede ser una secuencia concreta de bits

Es importante que no se confunda la información (datos) con el marcador

12
12

Transparencia de datos

Un sistema de delimitación es transparente cuando no restringe la aparición de ninguna combinación binaria

¿Se puede conseguir un sistema de delimitación transparente?

Ejemplo:

En java para escribir comillas dobles:

System.out.println ("\"hola\"");

Relleno de datos● Para distinguir entre los datos que se están enviando y los delimitadores de trama

Para distinguir entre los datos que se están enviando y los delimitadores de trama se utilizan las técnicas de:

Relleno de datos (data stuffing):

Relleno de byte ( byte stuffing)

Relleno de bit (bit stuffing)

15
15

Relleno de bit

Transparencia de datos mediante relleno de bit (bit stuffing)

insertar un cero cuando hay cinco unos consecutivos

● Utilizado en el protocolo HDLC (High-level Data Link Control) 01111110 010111000111111010101001 01111110 Inserta
● Utilizado en el protocolo HDLC (High-level Data Link Control)
01111110
010111000111111010101001
01111110
Inserta cero
01111110
0101110001111101010101001 01111110

Relleno de byte● Se inserta el by te 01111101 como prefijo de los marcadores de inicio y

Se inserta el byte 01111101 como prefijo de los marcadores de inicio y fin

Si este byte 01111101 aparece dentro del bloque de información deberá transmitirse por duplicado

Utilizado en el protocolo de enlace PPP(Point to Point Protocol)

en el prot ocolo de enlace PPP( Point to Point Protocol ) 01111110 010111000111111010101001 01111110 Inserta

01111110

ocolo de enlace PPP( Point to Point Protocol ) 01111110 010111000111111010101001 01111110 Inserta byte 01111101

010111000111111010101001

01111110
01111110

Inserta byte 01111101

01111110
01111110

01111110

01111110
 

01011100011111010111111010101001

01111110
01111110

3. Técnicas de detección de errores● Cualquier pequeño cambio en la señal puede causar que el receptor no interprete correctamente

Cualquier pequeño cambio en la señal puede causar que el receptor no interprete correctamente uno o más bits de datos

incluso que no detecte la recepción de datos.

La probabilidad de aparición de error en un bloque transmitido es proporcional al tamaño del mismo bloques pequeños

17
17

Detección de errores

El receptor quiere comprobar la presencia (o ausencia) de errores en la información recibida detección de errores

La detección se realiza mediante códigos detectores de error:

Incorporan a los datos a transmitir información adicional, que sirve al receptor para saber si hubo error en la transmisión (p.e: CheckSum)

Cuanto más efectiva es la técnica en la detección de errores, mayor computación y transmisión de más información adicional

19
19

Paridad Simple

Cálculo del bit de paridad:

añadir a cada código de 7-bits 1 bit de paridad para conseguir un nº par/impar de unos en cada byte:

bit de paridad = 1 o 0 para hacer que:

Paridad Par/Impar: nº par/impar de 1s en cada byte a transmitir.

Ejemplo:

Información a transmitir

0100101

transmitir. – Ejemplo: Información a transmitir 0100101 Paridad Par: 0100101 1 Paridad Impar:0100101 0 ● Paridad

Paridad Par: 01001011

Información a transmitir 0100101 Paridad Par: 0100101 1 Paridad Impar:0100101 0 ● Paridad par/impar: solo pe

Paridad Impar:01001010

Paridad par/impar: solo permite detectar un nº impar/par de errores de bits

18
18

Códigos detectores de error

El receptor evalúa el código detector de error y determina si hubo (o no) errores en la transmisión

I: Marcador inicio de la trama F: Marcador fin de la trama

Información F(I) Información Cod. detector I Información Cod. detector F transmisor
Información
F(I)
Información
Cod. detector
I
Información
Cod. detector F
transmisor
I Información Información Cod. detector F Cod. detector F(I) =? receptor
I
Información
Información
Cod. detector F
Cod. detector
F(I)
=?
receptor
20
20

CheckSum

La información a transmitir se divide en bloques de k-bits, y utiliza la suma de estos bloques como bits de detección de errores

suma de es tos bloques como bits de detección de errores – Problema: Datos en Valor

Problema:

Datos en

Valor del

Datos en

Valor del

binario

CheckSum

binario

CheckSum

Total

Generalmente implementado en software

Empleada en el nivel de transporte y en el de red

21
21

Códigos de Redundancia Cíclica CRC (Cyclic Redundancy Checks)

Es el resto de una división polinómica.

Dados unos datos a enviar, D (de d bits), el emisor genera una secuencia R (de r bits), de tal forma que los datos resultantes (de d+r bits) son divisibles por un nº predeterminado G (de r+1 bits).

El receptor divide la información recibida por este nº G y si no hay resto, asume que no existe ningún error.

Todas las operaciones se hacen utilizando aritmética módulo dos. Esto es sin acarreo con semisumadores.

Es capaz de detectar errores de ráfagas de menos de r+1bits

Empleado en el nivel de enlace (ATM, HDLC)

Generalmente implementado en el hardware de red

Se han definido estándares internacionales para generadores (G) de 8, 12, 16 y 32 bits

G

= 100000100110000010001110110110111

Corrección de errores● Para poder corregir los er rores se pueden emplear dos estrategias: – FEC (

Para poder corregir los errores se pueden emplear dos estrategias:

FEC (Forward Error Correction) añade información que permitirá al receptor reconstruir la información correcta.

Detección + recuperación

ARQ (Automatic Repeat Request) donde el emisor tiene que retransmitir la información dañada.

Detección + reenvío

22
22

Ejemplo CRC

Emisor:

Calcula R como:

G

Envia D+R:

Datos + CRC= 101110011

D R
D
R

Receptor:

Divide los datos recibidos (D+CRC) por el

G acordado

el resto = 0

Si

Datos recibidos sin error!!

D R Receptor: ● Divide los datos recibidos (D+CRC) por el G acordado ● el resto

R= resto de (

D*2

r

)

D

=101110

d

=6 bits

G

=1001

r

= 3 bits

24
24

Técnica de correctora de errores (FEC) Ejemplo

Paridad en dos dimensiones

Colocar los códigos de 7-bits del mensaje a transmitir en filas,

Calcular el bit de paridad por fila y por columna

Detecta todos los errores de 1,2 y 3 bits, y la mayoria de 4bits

Permite corregir errores

Añade mucha más información redundante

Ejemplo:

Datos

Byte de Paridad

Bits de

Paridad

0101001 1 1101001 0 1011110 1 0001110 1 0110100 1 1011111 0 1111011 0
0101001
1
1101001
0
1011110
1
0001110
1
0110100
1
1011111
0
1111011
0
25
25

Transmisión Fiable aplicando ARQ

Las tramas con error deben ser descartadas y reenviadas de nuevo

Las Técnicas para una transmisión fiable se basan en los mecanismos de

Reconocimientos (ACKs)

Timeout

fiable se basan en los mecanismos de – Reconocimientos (ACKs) – T i m e o

Estudiado en el Tema 4!!!!!

27
27

5. Tipos de enlaces de red

Existen dos tipos de enlaces de red:

Enlaces Punto a Punto

Acceso telefónico

Enlaces de difusión

Red Ethernet

Redes inalámbricas

– Enlaces Punto a Punto ● Acceso telefónico – Enlaces de difusión ● Red Ethernet ●
26
26

4. Mecanismos de Control de Flujo

Estrategías básicas empleadas:

Parada y espera

Ventanza deslizante

básicas empleadas: – Parada y espera – Ventanza deslizante E s t u d i a

Estudiado en el Tema 4!!!!!

28
28

Enlaces Punto a Punto

Enlaces dedicados entre cada dos nodos, un único emisor y un único receptor

Ventaja:

Canales no compartidos: seguridad y privacidad

Inconveniente

Cuando crece el número de nodos (n) se requieren muchos enlaces

– Inconveniente ● Cuando crece el número de nodos (n) se requieren muchos enlaces Conexiones =

Conexiones =

n(n-1) 2
n(n-1)
2
29
29

Enlaces de difusión

Un único enlace es compartido por varios nodos

Independiente del número de nodos conectados

Permite difusiones

Dos o más nodos pueden transmitir simultáneamente:

¡¡¡Problema de acceso multiple!!!!

Sólo un nodo puede utilizar el enlace para transmitir con éxito

Necesidad de protocolos de acceso al medio

– Sólo un nodo puede utilizar el enlace para transmitir con éxito – Necesidad de protocolos

6. Protocolos de Control de Acceso al Medio (MAC) Control de Acceso al Medio (MAC)

Protocolo MAC determina:

Cúal será el nodo que puede transmitir

Cuándo puede hacerlo

Protocolo ideal: (eficiente y equitativo)

Para un canal con un ancho de banda de R bps

Cuando sólo un nodo quiere transmitir, podrá hacerlo a una tasa de R bps

Cuando N nodos quieren transmitir, cada nodo debería poder transmitir a una tasa media de R/N bps

Protocolo descentralizado (no existe un nodo especial que coordine a los demás)

30 Colisión de tramas t0 A B C D t1 A B C D t2
30
Colisión de tramas
t0
A B
C
D
t1
A B
C
D
t2
A
B
C
D
t3
A
B
C
D
● Durante una colisión:
– Todas las tramas implicadas se pierden
– El canal de comunicación está desaprovechado
32
Protocolos MAC
● Pueden agruparse en dos grandes clases:
– Acceso aleatorio:
El canal no esta dividido, pueden producirse colisiones
– Acceso por turnos
Acceso al canal coordinado para evitar colisiones

Protocolos de acceso aleatorio CSMA/CD( Carrier Sense Multiple Access with Collision Detection ) ● Cuando un nodo transmite utiliz

(Carrier Sense Multiple Access with Collision Detection)

Cuando un nodo transmite utiliza todo el ancho de banda del canal (transmisión banda base)

Se comprueba el estado del canal antes de iniciar una transmisión, si el canal está libre se transmite de inmediato (CSMA/CD: Carrier Sense )

Si el canal está ocupado se espera a que quede libre

Mientras se transmite se comprueba si se produce una colisión (CSMA/CD: Collision Detection)

Si se produce una colisión el nodo interrumpe la transmisión de la trama y transmite una señal de atasco (jam) de 48 bits

Algoritmo Exponencial de Backoff Backoff

Trás la n-ésima colisón de una trama

Tiempo de espera= K* 512 tiempo de bit

Donde:

K se elige aleatóriamente de entre {0,1,2,

Siendo m = min(n ,10)

Ejemplo:

,2

m -1}

Un nodo en una red Ethernet de 10Mbps (el tiempo de bit es de 0,1 µs) intenta transmitir una trama por segunda vez, y se produce una colisión

m=min(2,10)

Se elige un K {0,1,2,3}, p.e: K=2

Tiempor de espera= 2* 512 * 0,1= 104,2 µs

34
34

CSMA/CD

Tras una colisión:

Cada uno de los nodos implicados en la colisión tiene que retransmitir nuevamente su trama

Antes de retransmitir la trama de nuevo, esperarán un tiempo pseudo-aleatorio

Esta espera varía a cada nueva colisión

Tiempo de espera se calcula mediante el algoritmo exponencial de Backoff

36
36

CSMA/CD Ejemplo de transmisión sin colisión

A B C terminador C encuentra el bus libre A B C A
A
B
C
terminador
C encuentra el bus libre
A
B
C
A

B ignora la trama

A B C A A B C A A copia la trama Los terminadores absoben
A
B
C
A
A
B
C
A
A copia la trama
Los terminadores absoben la señal
37
37

CSMA/CD Ejemplo de transmisión con colisión

A

B

C

37 CSMA/CD Ejemplo de transmisión con colisión A B C terminador A y C encuentran el

terminador

Ejemplo de transmisión con colisión A B C terminador A y C encuentran el bus libre

A y C encuentran el bus libre

 

A

B

C

¿@&% A

¿@&%

A

B detecta que la trama esta dañada

e ignora la trama

A B C B B A B C A y C detectan que se ha
A
B
C
B
B
A
B
C
A y C detectan que se ha producido
colisión y detienen la transmisión
Los terminadores absoben la señal
39
39

Protocolos de acceso por turnos

Paso de testigo

Paso de testigo

El testigo se pasa de un nodo al siguiente secuencialmente

Cuando un nodo recibe el testigo

Si tiene tramas que transmitir, transmite un máximo de tramas y después pasa el testigo al siguiente nodo

Sino tiene tramas que transmitir simplemente pasa el testigo

Permite un control de acceso equitativo y flexible

Problema: si un nodo falla, toda la red falla!!

38
38

CSMA/CD

Las prestaciones del protocolo CSMA/CD dependen del retardo de propagación de canal extremo a extremo

Cuanto mayor sea, mayor probabilidad de que se produzcan colisiones

Espacio Tiempo de detección/aborto de colisión Tiem op
Espacio
Tiempo de
detección/aborto
de colisión
Tiem op
40
40

7. Ejemplos de protocolos de enlace de datos

PPP (Point to Point Protocol)

protocolo utilizado en muchas de las conexiones

(vía módem) usuario-proveedor de servicios Internet.

HDLC (High- level Data Link Control)

protocolo ampliamente utilizado, y base de muchos otros protocolos importantes de control de enlace de datos

Otros:

Retransmisión de tramas ( Frame Relay)

ATM (Asynchronous Transfer Mode)

41
41

Resumen Nivel de Enlace Servicios

• Codificación de los bits

Nivel de Enlace Servicios • Codificación de los bits • Delimitación de los datos: Tramas •

• Delimitación de los datos: Tramas

• Detección de errores

• Transmisión fiable: Control de Flujo y errores

• Control de Acceso al Medio

RedesRedes dede Difusióndifusión

RedesRedes PuntoPunto aa PuntoPunto