Document

Anuncio
1
Redes y Servicios
Módulo I. Fundamentos y modelos de red
Tema 2. Fundamentos
Parte B. Nivel de enlace
Tema 2. Fundamentos. Nivel de enlace
Introducción
• Dos funciones básicas del nivel de enlace:
▫ Control de errores
x ¿Motivación?
▫ Control de flujo
x ¿Motivación?
2
Tema 2. Fundamentos. Nivel de enlace Índice
Índice
I.
Control de errores
A. Fundamentos
x Detección de errores
x Corrección de errores
B. Tipos de técnicas
é
C. Ejemplo de aplicación
x Técnica ARQ (Automatic Retransmission reQuest)
II Control de flujo
II.
A. Fundamentos
B. Técnicas
x Protocolo de “parada y espera”
x Esquema de la “ventana deslizante”
3
Tema 2. Fundamentos. Nivel de enlace Control de errores
I. Control de errores
• Esquema de estudio
▫ Fundamentos (A)
x Detección de errores
x Corrección de errores
▫ Tipos de técnicas (B)
j p de aplicación:
p
Técnica ARQ
Q (C)
( )
▫ Ejemplo
x ARQ discontinua (C.1)
x ARQ continua (C.2)
( )
x Repetición selectiva
x Retroceder N
4
Tema 2. Fundamentos. Nivel de enlace Control de errores
I Control de errores
I.
A) Fundamentos
• Motivación. ¿Qué sucede?
▫ Perturbaciones en el canal real, errores
• Objetivo preliminar: detectar errores
• ¿Cómo?
x Introduciendo redundancia
5
Tema 2. Fundamentos. Nivel de enlace Control de errores
I Control de errores
I.
A) Fundamentos
• ¿Cómo se introduce redundancia?
▫ Ejemplo de palabras código
x
x
x
x
00
01
10
11
P = {00,01,10,11
00 0110 11} es un conjunto de palabras código
aceptadas como válidas
6
Tema 2. Fundamentos. Nivel de enlace Control de errores
7
I Control de errores
I.
A) Fundamentos
• ¿Y qué?
▫ Definiciones relacionadas
x e: número de bits erróneos
x dH: “Distancia de Hamming”
g = número mínimo de bits en
que se diferencian dos palabras código válidas
x Ejemplo: la distancia de Hamming entre la palabra 00 y la
palabra 01 es 1
P = {00,01,10,11}
Tema 2. Fundamentos. Nivel de enlace Control de errores
I Control de errores
I.
A) Fundamentos
• Caso de estudio
▫ Supongamos el siguiente conjunto de palabras código:
P = {00,01,10,11}
▫ Imaginemos ahora que se envía la palabra código 01
pero, debido a un error, se recibe la palabra código 11.
▫ Ambas palabras son válidas, pertenecen al conjunto P.
▫ ¿Es posible detectar el error?
8
Tema 2. Fundamentos. Nivel de enlace Control de errores
I Control de errores
I.
A) Fundamentos
• ¿Qué códigos de canal se pueden utilizar para
intentar detectar errores en el nivel de enlace?
• Para poder detectar e errores es necesario que:
dH ≥ e + 1
▫ Ejemplo: Supongamos que queremos diseñar un
código que sea capaz de detectar la ocurrencia de 1
bit erróneo:
e = 1 ⇒ dH ≥ 1+ 1
9
Tema 2. Fundamentos. Nivel de enlace Control de errores
10
I Control de errores
I.
A) Fundamentos
dH ≥ 1+ 1 = 2
• Construimos un conjunto de palabras que se
diferencien en 2 bits: P = {000, 110, 101, 011}
• Ejemplo:
Ejemplo
Se emite
Se recibe
000
010
Detecto que ha habido un error ¿por
qué?
Tema 2. Fundamentos. Nivel de enlace Control de errores
I Control de errores
I.
A) Fundamentos
• ¿Qué códigos de canal se pueden utilizar para
intentar corregir errores en el nivel de enlace?
• Para poder corregir e errores es necesario que:
dH ≥ 2 e + 1
▫ Ejemplo: Supongamos que queremos diseñar un
código que sea capaz de corregir la ocurrencia de 1 bit
erróneo:
e = 1 ⇒ dH ≥ 2 ×1+ 1
11
Tema 2. Fundamentos. Nivel de enlace Control de errores
12
I Control de errores
I.
A) Fundamentos
dH ≥ 2 ×1+ 1 = 3
• Construimos un conjunto de palabras que se
dif
diferencien
i en 3 bit
bits: P = {000,111
000 111}
• Ejemplo:
Se emite
Se recibe
000
010
9Detecto que ha habido 1 error ¿por qué?
9Además, soy capaz de corregir el error. ¿Cómo?
Tema 2. Fundamentos. Nivel de enlace Control de errores
I Control de errores
I.
B) Tipos de Técnicas
• Basado en los fundamentos previos, existen
básicamente 2 tipos de técnicas para controlar
errores a nivel de enlace:
▫ Control de errores hacia delante
x La trama contiene información suficiente para
produjo
j el error
determinar dónde se p
x El propio equipo puede corregir el error
x Necesita una mayor cantidad de bits de control
▫ Control de errores hacia atrás
x Sólo es posible detectar que la trama es errónea
x Requiere algún esquema de control de retransmisión
13
Tema 2. Fundamentos. Nivel de enlace Control de errores
I Control de errores
I.
B) Tipos de Técnicas
• Si sólo se pueden detectar errores pero no pueden
ser corregidos:
▫ Opciones:
x Desechar la trama sin informar del error (en transmisión
no orientada a conexión).
x Informar al transmisor del error (en transmisión
orientada a conexión):
x Se necesitan procedimientos que aseguren la entrega
correcta
t
x El receptor debe informar de los errores, y solicitar una
nueva copia
14
Tema 2. Fundamentos. Nivel de enlace Control de errores
I Control de errores
I.
C) Ejemplo: Método ARQ
• Método ARQ:
▫ El receptor:
x Espera a recibir una trama
x Cuando la recibe, busca errores
x Envía (al emisor) un mensaje de reconocimiento (ACK)
indicando si la trama ha sido correcta o incorrecta
▫ Ell emisor:
i
x Si error, entonces: retransmisión de una copia de la trama
errónea
x Si OK, entonces: continúa transmitiendo
15
Tema 2. Fundamentos. Nivel de enlace Control de errores
I Control de errores
I.
C) Técnica ARQ
• Terminología
▫ P: Primario (transmisor)
▫ S: Secundario (receptor)
• Tipos de ARQ
▫ ARQ discontinua (o “inactiva”)
x Basta enlace semi
semi-dúplex
dúplex
▫ ARQ continua
x Requiere enlaces dúplex
x Técnicas
x “Repetición
p
selectiva”
x “Retroceder N”
16
Tema 2. Fundamentos. Nivel de enlace Control de errores
I Control de errores
I.
C.1) ARQ discontinua
• El primario transmite y espera a recibir contestación del
secundario
▫ ¿Cuánto tiempo?
• Consideraciones importantes:
▫ C
Con cada
d ttrama se iinicia
i i un ttemporizador.
i d Si no se recibe
ib
confirmación (ACK) en el tiempo establecido, se
retransmite la trama
▫ Si:
x el secundario recibe una trama errónea, o
x ell primario
i
i recibe
ib una confirmación
fi
ió errónea,
ó
x se transmite la trama pendiente de nuevo
▫ Si el secundario recibe una trama duplicada, se desecha
(necesario numeración tramas)
17
Tema 2. Fundamentos. Nivel de enlace Control de errores
I Control de errores
I.
C.1) ARQ discontinua
• Ejemplo para ilustrar el funcionamiento básico
18
Tema 2. Fundamentos. Nivel de enlace Control de errores
I Control de errores
I.
C.2) ARQ Continua
• Motivación
▫ ARQ discontinua:
x aprovechamiento ineficiente del enlace
▫ ARQ
Q continua:
x Transmisión continua e ininterrumpida de tramas
x Consigue un aprovechamiento más eficiente de los recursos
del enlace pero, a cambio, precisa:
▫ Mayor capacidad de almacenamiento
▫ Enlaces dúplex
19
Tema 2. Fundamentos. Nivel de enlace Control de errores
I Control de errores
I.
C.2) ARQ Continua
• ¿Cómo funciona?
▫ Envío continuo, sin esperar confirmaciones
▫ Cada trama tiene un identificador único
▫ El secundario envía ACK con el identificador de la
trama, indicando si es correcta o no
▫ El primario guarda una copia de cada trama
transmitida. Será eliminada una vez recibido el ACK
positivo correspondiente
p
p
20
Tema 2. Fundamentos. Nivel de enlace Control de errores
I Control de errores
I.
C.2) ARQ Continua
21
Tema 2. Fundamentos. Nivel de enlace Control de errores
I Control de errores
I.
C.2) ARQ Continua
• ¿Qué pasa cuando ocurre un error?
▫ Si ocurre un error existen dos esquemas o técnicas:
x Repetición Selectiva:
x El receptor
p p
pide la retransmisión SOLO de aquellas
q
tramas
que se han detectado como erróneas.
x Retroceder N:
x El receptor pide la retransmisión de TODAS las tramas a
partir de la última que se recibió correctamente.
22
Tema 2. Fundamentos. Nivel de enlace Control de errores
I Control de errores
I.
C.2) ARQ Continua
• Comparación:
▫ La técnica retroceder N es menos eficiente en el uso de
los recursos de la red
x La razón es q
que se retransmiten tramas correctas más de
una vez
▫ La técnica de repetición selectiva utiliza la red de
forma más eficiente:
x Sólo se re-envía la trama errónea
x A cambio, requiere almacenamiento temporal en el
secundario
23
Tema 2. Fundamentos. Nivel de enlace Índice
Índice
I.
Control de errores (parte I)
A. Fundamentos
x Detección de errores
x Corrección de errores
B. Tipos de técnicas
é
C. Ejemplo de aplicación
x Técnica ARQ (Automatic Retransmission reQuest)
II Control de flujo (parte II)
II.
A. Fundamentos
B. Técnicas
x Protocolo de “parada y espera”
x Esquema de la “ventana deslizante”
24
Tema 2. Fundamentos. Nivel de enlace Control de flujo
II Control de flujo
II.
A) Fundamentos
• ¿Motivación?
• Objetivo:
▫ Función del nivel de enlace cuyo OBJETIVO es asegurar
que el receptor tenga suficientes recursos para
almacenar y procesar las tramas que va recibiendo
x Trata de controlar la velocidad del flujo
j de datos
• Ejemplos
j p de técnicas de control de flujo
j
x Protocolo de “parada y espera”
x “Ventana deslizante”
25
Tema 2. Fundamentos. Nivel de enlace Control de flujo
II Control de flujo
II.
B) Técnicas: stop & wait
• Algoritmo de parada y espera (stop & wait):
▫ Parada y espera:
x El emisor no transmite ninguna trama hasta que el
receptor
p se lo autorice mediante la ggeneración de una
trama especial de confirmación (que le informa acerca de
cómo ha sido la recepción de la trama previa)
▫ Reanudación del envío de tramas
26
27
Tema 2. Fundamentos. Nivel de enlace Control de flujo
II Control de flujo
II.
B) Técnicas: Ventana deslizante
W
Tema 2. Fundamentos. Nivel de enlace Control de flujo
II Control de flujo
II.
B) Técnicas: Ventana deslizante
• Resumen del funcionamiento básico:
▫ Cada vez que se recibe una trama:
x se incrementa en borde superior (UWE).
▫ Cada vez que se confirma una trama:
x se incrementa el borde inferior (LWE).
▫ Si la anchura de la ventana, (UWE-LWE)=W, alcanza un
cierto valor especificado, entonces se interrumpe la
transmisión de nuevas tramas.
28
Descargar