Módulo I. Fundamentos y modelos de red Tema 2....
Transcript of Módulo I. Fundamentos y modelos de red Tema 2....
1
Redes y Serviciosy
Módulo I. Fundamentos y modelos de red
Tema 2. FundamentosParte B. Nivel de enlace
Tema 2. Fundamentos. Nivel de enlace 2
Introducción
• Dos funciones básicas del nivel de enlace:▫ Control de erroresControl de errores
¿Motivación?▫ Control de flujoControl de flujo
¿Motivación?
Tema 2. Fundamentos. Nivel de enlace 3Índice
Índice
I. Control de erroresA. Fundamentos
Detección de erroresCorrección de errores
éB. Tipos de técnicasC. Ejemplo de aplicación
Técnica ARQ (Automatic Retransmission reQuest)Técnica ARQ (Automatic Retransmission reQuest)
II Control de flujoII. Control de flujoA. FundamentosB. Técnicas
Protocolo de “parada y espera”Esquema de la “ventana deslizante”
Tema 2. Fundamentos. Nivel de enlace 4Control de errores
I. Control de errores
• Esquema de estudio▫ Fundamentos (A)Fundamentos (A)
Detección de erroresCorrección de errores
▫ Tipos de técnicas (B)▫ Ejemplo de aplicación: Técnica ARQ (C)j p p Q ( )
ARQ discontinua (C.1)ARQ continua (C.2)( )
Repetición selectivaRetroceder N
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
5Control de errores
I. Control de erroresA) Fundamentos
• Motivación. ¿Qué sucede?▫ Perturbaciones en el canal real, erroresPerturbaciones en el canal real, errores• Objetivo preliminar: detectar errores• ¿Cómo?• ¿Cómo?
Introduciendo redundancia
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
6Control de errores
I. Control de erroresA) Fundamentos
• ¿Cómo se introduce redundancia?▫ Ejemplo de palabras códigoEjemplo de palabras código
00011011
P 00 0110 11{ } es un conjunto de palabras código P = 00,01,10,11{ } es un conjunto de palabras código
aceptadas como válidas
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
7Control de errores
I. Control de erroresA) Fundamentos
• ¿Y qué?▫ Definiciones relacionadasDefiniciones relacionadas
e: número de bits erróneosdH: “Distancia de Hamming” = número mínimo de bits en H gque se diferencian dos palabras código válidas
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
I Control de errores
8Control de errores
I. Control de erroresA) Fundamentos
• Caso de estudio▫ Supongamos el siguiente conjunto de palabras código: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.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?
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
9Control de errores
I. Control de erroresA) Fundamentos
• ¿Qué códigos de canal se pueden utilizar para intentar detectar errores en el nivel de enlace?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 e 1⇒ dH ≥1+1
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
10Control de errores
I. Control de erroresA) Fundamentos
dH ≥1+1= 2
• Construimos un conjunto de palabras que se diferencien en 2 bits: { }011101110000=Pdiferencien en 2 bits:
Ejemplo
{ }011,101,110,000=P
• Ejemplo:
Se emite Se recibe
000 010
Detecto que ha habido un error ¿por qué?
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
11Control de errores
I. Control de erroresA) Fundamentos
• ¿Qué códigos de canal se pueden utilizar para intentar corregir errores en el nivel de enlace?intentar corregir errores en el nivel de enlace?
• Para poder corregir e errores es necesario que:
dH ≥ 2e +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
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
12Control de errores
I. Control de erroresA) Fundamentos
dH ≥ 2×1+1= 3
• Construimos un conjunto de palabras que se dif i 3 bit P 000 111{ }diferencien en 3 bits:
P = 000,111{ }
• Ejemplo: Se emite Se recibe
000 010
Detecto que ha habido 1 error ¿por qué?Detecto que ha habido 1 error ¿por qué?Además, soy capaz de corregir el error. ¿Cómo?
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
13Control de errores
I. Control de erroresB) Tipos de Técnicas
• Basado en los fundamentos previos, existen básicamente 2 tipos de técnicas para controlarbásicamente 2 tipos de técnicas para controlar errores a nivel de enlace:▫ Control de errores hacia delanteControl de errores hacia delante
La trama contiene información suficiente para determinar dónde se produjo el errorp jEl propio equipo puede corregir el errorNecesita una mayor cantidad de bits de control
▫ Control de errores hacia atrásSólo es posible detectar que la trama es erróneaRequiere algún esquema de control de retransmisión
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
14Control de errores
I. Control de erroresB) Tipos de Técnicas
• Si sólo se pueden detectar errores pero no pueden ser corregidos:ser corregidos:▫ Opciones:
Desechar la trama sin informar del error (en transmisiónDesechar la trama sin informar del error (en transmisión no orientada a conexión).Informar al transmisor del error (en transmisión orientada a conexión):
Se necesitan procedimientos que aseguren la entrega tcorrecta
El receptor debe informar de los errores, y solicitar una nueva copianueva copia
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
15Control de errores
I. Control de erroresC) Ejemplo: Método ARQ
• Método ARQ:▫ El receptor:El receptor:
Espera a recibir una tramaCuando la recibe, busca erroresEnvía (al emisor) un mensaje de reconocimiento (ACK) indicando si la trama ha sido correcta o incorrecta
l i▫ El emisor:Si error, entonces: retransmisión de una copia de la trama erróneaerróneaSi OK, entonces: continúa transmitiendo
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
16Control de errores
I. Control de erroresC) Técnica ARQ
• Terminología▫ P: Primario (transmisor)P: Primario (transmisor)▫ S: Secundario (receptor)• Tipos de ARQ• Tipos de ARQ▫ ARQ discontinua (o “inactiva”)
Basta enlace semi-dúplexBasta enlace semi dúplex▫ ARQ continua
Requiere enlaces dúplexRequiere enlaces dúplexTécnicas
“Repetición selectiva”p“Retroceder N”
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
17Control de errores
I. Control de erroresC.1) ARQ discontinua
• El primario transmite y espera a recibir contestación del secundario ▫ ¿Cuánto tiempo?• Consideraciones importantes:
C d t i i i t i d Si ib▫ Con cada trama se inicia un temporizador. Si no se recibe confirmación (ACK) en el tiempo establecido, se retransmite la trama
▫ Si:el secundario recibe una trama errónea, o
l i i ib fi ió óel primario recibe una confirmación errónea, se transmite la trama pendiente de nuevo
▫ Si el secundario recibe una trama duplicada, se desechaSi el secundario recibe una trama duplicada, se desecha (necesario numeración tramas)
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
18Control de errores
I. Control de erroresC.1) ARQ discontinua
• Ejemplo para ilustrar el funcionamiento básico
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
19Control de errores
I. Control de erroresC.2) ARQ Continua
• Motivación▫ ARQ discontinua:ARQ discontinua:
aprovechamiento ineficiente del enlace
▫ ARQ continua: QTransmisión continua e ininterrumpida de tramas Consigue un aprovechamiento más eficiente de los recursos del enlace pero, a cambio, precisa:▫ Mayor capacidad de almacenamiento▫ Enlaces dúplex▫ Enlaces dúplex
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
20Control de errores
I. Control de erroresC.2) ARQ Continua
• ¿Cómo funciona?▫ Envío continuo, sin esperar confirmacionesEnvío continuo, sin esperar confirmaciones▫ Cada trama tiene un identificador único▫ El secundario envía ACK con el identificador de laEl secundario envía ACK con el identificador de la
trama, indicando si es correcta o no▫ El primario guarda una copia de cada tramaEl primario guarda una copia de cada trama
transmitida. Será eliminada una vez recibido el ACK positivo correspondientep p
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
21Control de errores
I. Control de erroresC.2) ARQ Continua
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
22Control de errores
I. Control de erroresC.2) ARQ Continua
• ¿Qué pasa cuando ocurre un error?▫ Si ocurre un error existen dos esquemas o técnicas:Si ocurre un error existen dos esquemas o técnicas:
Repetición Selectiva: El receptor pide la retransmisión SOLO de aquellas tramas p p qque se han detectado como erróneas.
Retroceder N: El receptor pide la retransmisión de TODAS las tramas a partir de la última que se recibió correctamente.
Tema 2. Fundamentos. Nivel de enlace
I Control de errores
23Control de errores
I. Control de erroresC.2) ARQ Continua
• Comparación:▫ La técnica retroceder N es menos eficiente en el uso deLa técnica retroceder N es menos eficiente en el uso de
los recursos de la redLa razón es que se retransmiten tramas correctas más de quna vez
▫ La técnica de repetición selectiva utiliza la red de forma más eficiente:
Sólo se re-envía la trama erróneaA cambio, requiere almacenamiento temporal en el secundario
Tema 2. Fundamentos. Nivel de enlace 24Índice
Índice
I. Control de errores (parte I)A. Fundamentos
Detección de erroresCorrección de errores
éB. Tipos de técnicasC. Ejemplo de aplicación
Técnica ARQ (Automatic Retransmission reQuest)Técnica ARQ (Automatic Retransmission reQuest)
II Control de flujo (parte II)II. Control de flujo (parte II)A. FundamentosB. Técnicas
Protocolo de “parada y espera”Esquema de la “ventana deslizante”
Tema 2. Fundamentos. Nivel de enlace
II Control de flujo
25Control de flujo
II. Control de flujoA) Fundamentos
• ¿Motivación?• Objetivo:Objetivo:▫ Función del nivel de enlace cuyo OBJETIVO es asegurar
que el receptor tenga suficientes recursos paraque el receptor tenga suficientes recursos para almacenar y procesar las tramas que va recibiendo
Trata de controlar la velocidad del flujo de datosj
• Ejemplos de técnicas de control de flujoj p jProtocolo de “parada y espera”“Ventana deslizante”
Tema 2. Fundamentos. Nivel de enlace
II Control de flujo
26Control de flujo
II. Control de flujoB) Técnicas: stop & wait
• Algoritmo de parada y espera (stop & wait): ▫ Parada y espera:Parada y espera:
El emisor no transmite ninguna trama hasta que el receptor se lo autorice mediante la generación de una p gtrama 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
Tema 2. Fundamentos. Nivel de enlace
II Control de flujo
27Control de flujo
II. Control de flujoB) Técnicas: Ventana deslizante
W
Tema 2. Fundamentos. Nivel de enlace
II Control de flujo
28Control de flujo
II. Control de flujoB) Técnicas: Ventana deslizante
• Resumen del funcionamiento básico:▫ Cada vez que se recibe una trama:Cada vez que se recibe una trama:
se incrementa en borde superior (UWE).▫ Cada vez que se confirma una trama:Cada vez que se confirma una trama:
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.