30
Redes y Servicios de Telecomunicación 1 Tema 5: Técnicas para el intercambio de datos Objetivos Conseguir una comunicación fiable y eficiente. Fiable: Garantizar que los datos llegan sin errores. Para que la información llegue sin errores, el receptor debe ser capaz de detectar que ha habido un error y solicitar la retransmisión de la información. Técnicas ARQ (Automatic ReQuest). Eficiente: Enviar la mayor cantidad de información posible. ¿Qué tal? ¿? Tema 5: Técnicas para el intercambio de datos Redes y Servicios de Telecomunicación 1 2 información posible. Técnicas de control de flujo que permitan controlar la velocidad de la transmisión entre el emisor y el receptor. Compromiso: evitar la saturación del receptor transmitiendo lo más rápido posible ¿Qué tal? ¿Qué dices? Bien Gracias Habla más despacio

Tema 5_c13-14-v2

Embed Size (px)

Citation preview

Page 1: Tema 5_c13-14-v2

Redes y Servicios de Telecomunicación 1

Tema 5: Técnicas para el intercambio de datos

Objetivos

Conseguir una comunicación fiable y eficiente.• Fiable: Garantizar que los datos llegan sin errores.

Para que la información llegue sin errores, el receptor debe ser capaz de detectar que ha habido un error y solicitar la retransmisión de la información.

Técnicas ARQ (Automatic ReQuest).

• Eficiente: Enviar la mayor cantidad de información posible.

¿Qué tal?¿?

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1 2

información posible.Técnicas de control de flujo que permitan controlar la velocidad de la transmisión entre el emisor y el receptor.

Compromiso: evitar la saturación del receptortransmitiendo lo más rápido posible¿Qué tal?

¿Qué

dices?

Bien

GraciasHabla más

despacio

Page 2: Tema 5_c13-14-v2

1. Descripción del escenario

2. Protocolo de parada y espera

2.1 Escenario ideal

2.2 Cambios en el escenario y en el protocolo

2.3 Cálculo del throughput

3. Protocolos de ventana deslizante

Contenido

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

3. Protocolos de ventana deslizante

3.1 Funcionamiento de las ventanas

3.2 Esquema Retroceder a N

3.3 Esquema Repetición Selectiva

3.4 Cálculo del throughput

3.5. ACK encapsulado

4. Ejemplos de protocolos

3

1. Descripción del escenario

Buscamos algoritmos para conseguir una comunicación eficiente y fiable

� Limitaciones a la eficiencia:

Estación A

Estación B

Enlaces

Extremo a Extremo

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

� Limitaciones a la eficiencia:o Los canales de transmisión tienen una velocidad de transmisión finita.o Retardo de propagacióno Longitud de la trama (ttx)o Tamaño de las colas del receptor

� Limitaciones a la fiabilidad:o Los canales de transmisión introducen errores: ruido, interferencias,

desvanecimientos, descartes por congestión

Mejorar la eficiencia ->Control de flujo

Mejorar la fiabilidad -> Control de errores

4

Page 3: Tema 5_c13-14-v2

El modelo que se va a estudiar cumple con los siguiente requisitos:

• Se asume que el nodo transmisor ha capturado el medio

• Siempre hay datos que enviar

• El receptor siempre está listo para recibir

• Flujos de datos unidireccional

Modelo del sistema1. Descripción del escenario

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

Estación A Estación B

5

1. Descripción del escenario

2. Protocolo de parada y espera

2.1 Escenario ideal

2.2 Cambios en el escenario y protocolo

2.3 Cálculo del throughput

3. Protocolos de ventana deslizante

Contenido

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

3. Protocolos de ventana deslizante

3.1 Funcionamiento de las ventanas

3.2 Esquema Retroceder a N

3.3 Esquema Repetición Selectiva

3.4 Cálculo del throughput

3.5. ACK encapsulado

4. Ejemplos de protocolos

6

Page 4: Tema 5_c13-14-v2

2. Protocolo de parada y espera

� PROTOCOLO IDEAL• Tamaño de la cola infinita en recepción• No hay errores en la transmisión

Estación A Estación B

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

tiempo tiempo

tprop + ttx

7

� Condiciones:• Buffers infinitos en recepción.• No hay errores en la transmisión.

� Necesidad de diseñar un control de flujo• Supongamos que el receptor tarda ts segundos en procesar

la trama.• Entonces el transmisor solamente puede enviar una trama

cada t segundos.

2. Protocolo de parada y espera

Cambio en el escenario:

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

cada ts segundos.o ¿Cómo hacemos para que el transmisor envíe tramas solamente

cuando el receptor este preparado para recibir?– 1. Utilizar un temporizador => Poco eficiente.– 2. El receptor envía una trama al emisor (ACK) cuando esté listo.

8

Page 5: Tema 5_c13-14-v2

Estación A Estación B

ACK

Funcionamiento con buffer finito en recepción (con ACK)

2. Protocolo de parada y espera

Cuando recibe la trama envía ACK

Cuando recibe ACK

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

ACK

ACK

Cuando recibe ACK envía nueva trama

9

� Condiciones:• Buffers infinitos en recepción• No hay errores en la transmisión

� Necesidad de añadir un control de errores (ARQ)• El receptor al recibir la trama debe comprobar si existen

errores.• Sólo devuelve la trama ACK si no hay errores.• Necesidad de introducir un temporizador en el emisor para

2. Protocolo de parada y espera

Nuevo cambio en el escenario:

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

• Necesidad de introducir un temporizador en el emisor para determinar si el receptor ha recibido la trama de forma correcta.

� Problemas:• Tramas erróneas• Tramas perdidas• Tramas ACK perdidas• Temporizador mal ajustado

10

Page 6: Tema 5_c13-14-v2

Estación A Estación B

ACK

Estación A Estación B

ACK

2. Protocolo de parada y espera

* Tramas erróneas * Tramas perdidas

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

ACK

Trama

errónea

ACK

Trama

perdida

11

Estación A Estación B

ACKACK perdido

Tramas

2. Protocolo de parada y espera

* Pérdida de ACK

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

ACK

Tramas

Duplicadas

¿Cómo solucionar el problema de las tramas duplicadas?� Necesidad de diferenciar las tramas.

• Introducir un número de secuencia para identificarlas• Si se reserva 1 bit => Número de secuencia [0,1]

12

Page 7: Tema 5_c13-14-v2

Estación A Estación B

ACK

trama 1

trama 0

trama 0

Estación A Estación B

ACK

ACK perdido

trama 1

trama 1

2. Protocolo de parada y espera

Funcionamiento con número de secuencia en las tramas

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

ACK

ACK

trama 1

trama 0

trama 0

ACK

La trama 1 llega al receptor,

se decodifica y es correcta,

se envía el ACK.

El receptor detecta que la trama

es duplicada y la descarta.

trama 1trama 1

trama 1

13

Estación A Estación B

ACKtrama 0

trama 0

trama 0

trama 0trama 1 ACK

2. Protocolo de parada y espera

* Temporizador demasiado corto

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

Duplicado

trama 0trama 1

trama perdida

ACK

trama 0

Duplicado

trama 0

Esta trama no es duplicada.Es la nueva trama 0.Error

Interpreta este ACK como de la trama 1

14

Page 8: Tema 5_c13-14-v2

Estación A Estación B

ACK 1trama 0

trama 0

trama 0

2. Protocolo de parada y espera

¿Cómo solucionar este problema? Introducir un número de secuencia en las tramas ACK (1 bit)

Responde diciendo la siguiente trama que espera

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

Duplicado

trama 0trama 1

trama perdida

ACK 1

trama 1

trama 1ACK 0

El transmisor conoce qué trama se ha confirmado

15

� Protocolos básicos:• Control de errores: ARQ (Automatic Repeat reQuest)• Control de flujo: Parada y espera

� Características:• Mínimo almacenamiento (1 trama)• Baja eficiencia

� Implementaciones:

Resumen2. Protocolo de parada y espera

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

� Implementaciones:• Retransmisión Implícita

o Se confirman solamente las tramas correctas.o La ausencia de ACK se interpreta como trama errónea.

• Retransmisión Explícitao Se devuelve una trama NACK si la trama es errónea.

16

Page 9: Tema 5_c13-14-v2

Throughput normalizado

� Consideraciones:• No hay errores en el canal• Tiempo de proceso y tiempo de transmisión de la trama ACK

despreciables.• Control de flujo parada y espera.

T

tx

t

tS =

ttx= tiempo de transmisión de tramatT = tiempo total

Cálculo del throughput (canal sin errores)2. Protocolo de parada y espera

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

• Control de flujo parada y espera.

Estación A Estación B

proptxT ttt ⋅+= 2

att

tS

proptx

tx

⋅+=

⋅+=

21

1

2

tx

prop

t

ta =

Cálculo de S:

siendo

t

1+

2a

17

0.8

1 U=1/(1+2a)

att

tS

proptx

tx

⋅+=

⋅+=

21

1

2

Curva del throughput en función de a

Cálculo del throughput (canal sin errores)2. Protocolo de parada y espera

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

0,001 0,01 0,1 1 10 100 10000

0.2

0.4

0.6

a

U

a<1 a>1

S

18

Page 10: Tema 5_c13-14-v2

t0

t0+a

� Visión gráfica del throughput

� a<1 tprop < ttx

t0

t0+1

� a>1 tprop > ttx

Cálculo del throughput (canal sin errores)2. Protocolo de parada y espera

Tema 5: Técnicas para el intercambio de datos

Redes y Servicios de Telecomunicación 1

t0+1

t0+1+a

t0+1+2aACK

t0+a

t0+1+a

t0+1+2aACK

19

� a<1• tprop < ttx

� a>1• tprop > ttx

Estación A Estación BEstación A Estación B

1+

2a

0

� Otra visión gráfica del throughput

Cálculo del throughput (canal sin errores)2. Protocolo de parada y espera

Tema 5: Técnicas para el intercambio de datos

Redes y Servicios de Telecomunicación 1

1+

2a

1+

2a

0

tA

20

Page 11: Tema 5_c13-14-v2

� Ejemplo a<1• Red de área local

o d=100mo L=1000bitso R=10Mbpso vprop=2*108 m/s

� Ejemplo a>1

st 4

6tx 101010

1000 −=⋅

=

99.021

1=

⋅+=

aS

005.0=a

st prop7

8105

102

100 −⋅=⋅

=

0.99 10 9.9Th S R Mbps Mbps= ⋅ = ⋅ =

Cálculo del throughput (canal sin errores)2. Protocolo de parada y espera

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

� Ejemplo a>1• Red de área extensa

o d=106 mo L=424bitso R=155,52Mbpso vprop=3*108 m/s

st tx µ7.21052,155

4246=

⋅=

0004.021

1=

⋅+=

aS

1200≈a

st 2

8

6

prop 1033.0103

101 −⋅=⋅

⋅=

0.0004 155.52 62.2Th S R Mbps kbps= ⋅ = ⋅ =

21

Consideraciones:

•Errores en el canal Retransmisión de la trama errónea.

– Tiempo de proceso y tiempo de transmisión de la trama ACK despreciables.

– Control de flujo parada y espera.

•El throughput debe incluir el número medio de tramas transmitidas por trama (Nr).

Cálculo del throughput (canal con errores)2. Protocolo de parada y espera

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

)21(

1

)2( aNttN

tS

rproptxr

tx

⋅+⋅=

⋅+⋅=

Estación A Estación B

t

0

NACK

0

ACK

1+

2a

Nr = número medio de transmisiones por trama

22

Page 12: Tema 5_c13-14-v2

¿Cómo calcular Nr?• Sea P la probabilidad de que una trama se reciba con error.• es la probabilidad de que una trama sea

transmitida k veces.• Nr=número medio de transmisiones

)1(1 PP k −−

)1(

1)1(1

1 PPPiN i

ir

−=−⋅= −

=∑

1 1Xi i =∑ ⋅ −

Cálculo del throughput (canal con errores)2. Protocolo de parada y espera

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

• El throughput para parada y espera considerando errores en el canal:

)1(1 Pi −=

2

1

1 )1(

1

XXi i

i −=∑ ⋅ −

=

para (-1<X<1)

)21(

)1(

)21(

1

a

P

aNS

r ⋅+

−=

⋅+⋅=

23

1. Descripción del escenario

2. Protocolo de parada y espera

2.1 Escenario ideal

2.2 Cambios en escenario y protocolo

2.3 Cálculo del throughput

3. Protocolos de ventana deslizante

Contenido

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

3. Protocolos de ventana deslizante

3.1 Funcionamiento de las ventanas

3.2 Esquema Retroceder a N

3.3 Esquema Repetición Selectiva

3.4 Cálculo del throughput

3.5. ACK encapsulado

4. Ejemplos de protocolos

24

Page 13: Tema 5_c13-14-v2

� ¿Cómo mejorar la eficiencia?• Transmitiendo más de una trama

� ¿Cuántas tramas se pueden enviar de forma continua?• Depende del receptor• Se transmitirán un número máximo de tramas sin recibir ACK

0

1

0

ACK1

Parada y Espera

Ventana Deslizante

3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

ACK1

ACK2

ACK3

1

2

2

1

ACK3

ACK2

25

En un protocolo de ventana deslizante distinguimos dos ventanas:• Ventana de transmisión

o Conjunto de tramas enviadas a la espera de ser confirmadas.o Tamaño máximo de la ventana (N).o Necesidad de identificar a todas las tramas =>Número de secuencia

(número de bits).

• Ventana de recepcióno Conjunto de tramas que se esperan recibir.o Tamaño fijo M.

3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

o Tamaño fijo M.

� Relación entre las ventanas de transmisión y recepción• Son independientes.• La de recepción siempre tiene el mismo tamaño, M.• La de transmisión varía entre 0 y N.

26

Page 14: Tema 5_c13-14-v2

Funcionamiento de la ventana de transmisión

• Se incrementa por cada trama enviada• Disminuye por cada ACK recibido• El transmisor para de transmitir cuando alcanza el tamaño

máximo de ventana.� Ejemplo:

o Se reservan 3 bits para identificar las tramas [0..7]o El tamaño máximo de ventana=5

3.1. Funcionamiento de las ventanas3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

o El tamaño máximo de ventana=5

0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7

Envía tramas 0,1,2

Recibe ACK1

Envía tramas 3,4,5

0 1 2 3 4 5 6 7Recibe ACK 2, 3, 4 ,5

Ventana de transmisión

27

Funcionamiento de la ventana de recepción• Tamaño fijo (M).• A medida que se recibe una trama, se desplaza.• Si el número de secuencia de la trama cae fuera de la

ventana, se descarta.

� Ejemplo: Tamaño de la ventana de recepción=2

Rx: Inicialmente está a la espera de recibir Ventana de recepción

3.1. Funcionamiento de las ventanas3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7

Rx: Inicialmente está a la espera de recibir las tramas 0 y 1

Tx: Envía tramas 3,4,5

0 1 2 3 4 5 6 7Rx: Recibe 2,3 y confirma

0 1 2 3 4 5 6 7Rx: Recibe 4 y confirma

Espera recibir las siguientes tramas (5 y 6)

Rx: Recibe tramas 0,1 y las confirmaTx: Envía tramas 0,1,2

28

Page 15: Tema 5_c13-14-v2

RESUMEN

� Protocolos con ventana deslizante• Control de errores: ARQ (Automatic Repeat reQuest)• Control de flujo: ventana deslizante

� Características:• Requiere más almacenamiento• Mayor eficiencia

3.1. Funcionamiento de las ventanas3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

� Implementaciones:• Retroceder-a-N• Repetición selectiva

29

� Ventana de transmisión de tamaño >1.� Ventana de recepción de tamaño = 1.� En recepción:

• Sólo se admiten tramas en orden.• Si llega una trama que no se espera, se descarta.

� En transmisión:• Al detectar una solicitud de retransmisión, se retransmite

3.2. Esquema Retroceder a N3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

• Al detectar una solicitud de retransmisión, se retransmite toda la ventana.

� Solicitud de retransmisiones:• Retransmisión implícita (Sin confirmación de tramas erróneas)

• Solicitud Explícita (NACK)

� Confirmaciones positivas (ACK):• Por trama• Por grupo de tramas

30

Page 16: Tema 5_c13-14-v2

ACK1

TRAMA CON ERROR

Descarta

0

1

2

1

Retransmisión Implícita

2

1

3.2. Esquema Retroceder a N. Retransmisión implícita3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

ACK2

ACK3

ACK4

1

2

3

En este momento, el emisor entra en

el estado de retransmisión.

Retransmite las tramas pendientes

de ser confirmadas.

31

ACK1

TRAMA CON ERROR

Descarta

0

1

2

1

2

3

Retransmisión Explícita

En este momento, el emisor entra en

el estado de retransmisión.

2

1NACK1

3.2. Esquema Retroceder a N. Retransmisión explícita3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

ACK2

ACK3

ACK4

3el estado de retransmisión.

Retransmite las tramas pendientes

de ser confirmadas.

32

Page 17: Tema 5_c13-14-v2

Cálculo del tamaño máximo de la ventana para retroceder-a-N• Problema: No diferenciar tramas nuevas o duplicadas.• Ejemplo:

o Supongamos que reservamos dos bits para identificar a las tramas [0,1,2,3] I=4

0

1

2

3

Se envían 4 tramas y llegan bien

Se confirman las 4 tramas

Se pierden los 4 ACKs

ACK1

ACK2

ACK3

3.2. Esquema Retroceder a N3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

• El tamaño máximo de la ventana de transmisión para retroceder-a-N es I-1

o En este caso el tamaño máximo de la ventana (N) =3.

Se pierden los 4 ACKs

Expira el temporizador y se reenvían las 4 tramas.

ACK3

ACK00

1

2

3¿Duplicadas

o nuevas?

33

� Supongamos que reservamos dos bits para identificar a las tramas [0,1,2,3]; I=4

� Tamaño máximo ventana tx=3; ventana rx=1

Tx: Se envían 3 tramas y llegan bien 0 1 2 3 0 1

0 1 2 3 0 1 0 1 2 3 0 1

0 1 2 3 0 1

Ventana RxVentana Tx

3.2. Esquema Retroceder a N. Ejemplo de funcionamiento

3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

Rx: Se han confirmado las 3 tramas

Se pierden los 3 ACKs

Tx: Expira el temporizador

Tx: Se reenvían las 3 tramas.

0 1 2 3 0 1

0 1 2 3 0 1

0 1 2 3 0 1

0 1 2 3 0 1

0 1 2 3 0 1

0 1 2 3 0 1Rx: Ahora el receptor reconoce las

tramas reenviadas como duplicadas

34

Page 18: Tema 5_c13-14-v2

� Ventana de transmisión de tamaño N >1.� Ventana de recepción de tamaño M >1.� En recepción:

• Sólo se admiten tramas en el rango que define la ventana.– Se aceptan tramas desordenadas

• Si llega una trama que no se espera, se descarta.

� En transmisión:

3.3. Esquema Repetición selectiva3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

• Al detectar una solicitud de retransmisión, se retransmite solamente la trama errónea.

� Solicitud de retransmisiones:• Retransmisión implícita• Solicitud Explícita (NACK)

� Confirmaciones positivas (ACK):• Por trama• Por grupo de tramas

35

Supongamos tamaño de la ventana de recepción = 4

Llegan tramas 0 y 1

Llega trama 3 y 5

0 1 2 3 0 1

0 1 2 3 0 1

trama 1

trama 0

4 5 6 7 0 1

4 5 6 7 0 1

Ventana de recepción

3.3. Esquema Repetición selectiva. Ejemplo funcionamiento

3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

Llega trama 3 y 5

Avanza la ventana

0 1 2 3 0 1

0 1 2 3 0 1

0 1 2 3 0 1

Llega trama 2trama 3

trama 2

4 5 6 7 0 1

4 5 6 7 0 1

4 5 6 7 0 1

36

Page 19: Tema 5_c13-14-v2

Retransmisión Implícita

ACK1

ACK1

ACK1

TRAMA CON ERROR

ACK1

0

1

4

2

3

5

3.3. Esquema Repetición selectiva. Retransmisión implícita

3. Protocolos de ventana deslizante

3 bits para identificar las tramas(0, 1, 2, 3, 4, 5, 6, 7)

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

ACK16

1ACK1

ACK1

ACK7

ACK0

7

37

Retransmisión Explícita

ACK1

ERROR

0

1

4

2

3

1

NACK1 ACK1

ACK1

ACK1

3.3. Esquema Repetición selectiva. Retransmisión explícita

3. Protocolos de ventana deslizante

3 bits para identificar las tramas(0, 1, 2, 3, 4, 5, 6, 7)

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

5

6ACK5

ACK6

ACK7

ACK0

7

ACK1

38

Page 20: Tema 5_c13-14-v2

ACK1

ACK2

ACK3

ACK4

ACK5

ACK6

ACK7

0

1

2

3

4

5

6Se envían 7 tramas y llegan bien

Se confirman las 7 tramas

Se pierden los 7 ACKs

Expira el temporizador y se reenvían

0

1

2

3

4

5

6

Problema: No diferenciar tramas nuevas o duplicadas� Ejemplo:

� 8 identificadores de trama (I=8)� Ventana tx y rx iguales a 7

3.3. Esquema Repetición selectiva 3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

Expira el temporizador y se reenvían

las 7 tramas.

6

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7

Tx: Envía 7 tramas

Rx: Recibe las 7 y las

confirmaSe pierden los ACKs

Tx: Retransmite las

tramas

Ventana de recepción

¿Duplicadas

o nuevas?

¿Duplicadas o nuevas? 39

Solución: Limitar el tamaño de la ventana de tx� Ventana de tx=Ventana de rx para mejorar el throughput.� El tamaño máximo de la ventana de transmisión para repetición selectiva es I/2.• En este ejemplo el tamaño máximo de la ventana=4;

Tx: Envía 4 tramas

Ventana de recepción

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7

3.3. Esquema Repetición selectiva3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7

Tx: Envía 4 tramas

Rx: Recibe las 4 y las

confirma

Se pierden los ACKs

Tx: Retransmite las

tramas

El receptor detecta que son tramas duplicadas

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7

Rx: Recibe las 4 y las

descarta

40

Page 21: Tema 5_c13-14-v2

Consideraciones:• No hay errores en el canal• Tiempo de proceso y tiempo de transmisión de la trama ACK despreciables.• Control de flujo de ventana deslizante. (N = tamaño de la ventana de tx)

Estación A Estación B

txproptxT tattt )21(2 ⋅+=⋅+=

NtN ⋅tx

prop

t

ta =

Cálculo de S si N ≤ 1+2a:

3.4. Cálculo del throuhgput 3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

a

N

tt

tNS

proptx

tx

⋅+=

⋅+

⋅=

212

tx

1+

2a

N

1+

2a

N

1=S

Cálculo de S si N > 1+2a:

41

0.8

0.9

1

S=1 N > 1+2a

N ≤ 1+2a a

NS

⋅+=21

a<1 a>1

Curva del throughput enventana deslizante sin errores

3.4. Cálculo del throuhgput 3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

10-1

100

101

102

103

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

a

S

N=1

N=7N=127

42

Page 22: Tema 5_c13-14-v2

Para retroceder-a-N• Al considerar errores hay que considerar el número medio de

retransmisiones Nr.• ¿Cómo calcular Nr para esquema retroceder a N?

o Cuando hay una trama errónea se retransmite esa trama y todas las que están pendientes de ser confirmadas.

� Throughtput:

3.4. Cálculo del throuhgput en Retroceder-a-N3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

aNsiaNPP

PN

aNsiaP

P

⋅+<⋅++−

−⋅

⋅+≥+

21)21)(1(

)1(

2121

)1(

S=

P= Probabilidad de trama erróneaN= número de tramas a transmitira=tprop/ttx

43

0.9

1

N=127

P=0P=0.001

aNsiaNPP

PN

aNsiaP

P

⋅+<⋅++−

−⋅

⋅+≥+

21)21)(1(

)1(

2121

)1(

S=

Curva del throughput en retroceder-a-N

3.4. Cálculo del throuhgput en Retroceder-a-N3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

10-1

100

101

102

103

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

a

U

P=0P=0.001P=0.01

P=0.1

S

44

Page 23: Tema 5_c13-14-v2

Para repetición selectiva:• Hay considerar el número medio de retransmisiones Nr

• ¿Cómo calcular Nr para esquema repetición selectiva?o Se calcula igual que en el caso de parada y espera, porque

solamente se retransmite la trama errónea.

� Throughput:

)1(

1

PNr

−=

3.4. Cálculo del throuhgput en Repetición Selectiva3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

� Throughput:

aNsia

PN

aNsiP

⋅+<⋅+

−⋅

⋅+≥−

2121

)1(

21)1(

S=

P= Probabilidad de trama erróneaN= número de tramas a transmitira=tprop/ttx

45

aNsia

PN

aNsiP

⋅+<⋅+

−⋅

⋅+≥−

2121

)1(

21)1(

S=

0.9

1

N=127

P=0

Curva del throughput en repetición selectiva

3.4. Cálculo del throuhgput en Repetición Selectiva3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

10-1

100

101

102

103

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

a

U

P=0P=0.1

S

46

Page 24: Tema 5_c13-14-v2

� Cuando la información se transmite en ambos sentidos:• Tramas de datos de A->B y B->A• Tramas ACK de A->B y B->A

Una posible solución para mejorar el uso de ancho de

Estación A Estación B

Trama 0

ACK1

Trama 0

ACK1

3.5. ACK encapsulado3. Protocolos de ventana deslizante

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

� Una posible solución para mejorar el uso de ancho de banda, reducir el número de bits y reducir el tráfico es utilizar ACK encapsulado.• Reservar unos bits de la trama de información para llevar el

ACK.Datos

Número de secuencia del ACK

Estación A Estación B

Trama 0

Trama 0 + ACK1

47

1. Descripción del escenario

2. Protocolo de parada y espera

2.1 Escenario ideal

2.2 Cambios en escenario y protocolo

2.3 Cálculo del throughput

3. Protocolos de ventana deslizante

Contenido

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

3. Protocolos de ventana deslizante

3.1 Funcionamiento de las ventanas

3.2 Esquema Retroceder a N

3.3 Esquema Repetición Selectiva

3.4 Cálculo del throughput

3.5. ACK encapsulado

4. Ejemplos de protocolos: LLC y RLC

48

Page 25: Tema 5_c13-14-v2

� Protocolo de enlace de datos para redes de área local.• Opera entre dos terminales.• Definido en IEEE 802.2• Ventana deslizante conestrategia de retroceder-a-N.

� Ofrece dos tipos de servicio:• Orientados a conexión

red de área local

LLC

4.1. LLC (Logical Link Control)4. Ejemplos de protocolos

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

– Fase de conexión: Emisor y receptor deben negocian una serie de parámetros de la comunicación y se inicializan variables para el control de la comunicación.

– Fase de transferencia de datos: Se transmiten tramas de información. Opcionalmente control de flujo/error.

– Fase de liberación: Se liberan los recursos empleados en la conexión.

• Sin conexión no confirmado– Las tramas se transmiten de forma independiente.– No existen ACKs.

49

� Hay 3 tipos de trama (se identifican mediante el campo de control):

• Tramas de información.

• Tramas de supervisión: Control de error y de flujo.o RR (receptor preparado):o RNR (receptor no preparado): o REJ (Reject): Petición de retransmisión

N(S) N(R)- N(S): número de secuencia de trama- N(R): número de secuencia de ACK

Campo de control (1 byte)

4.1. LLC (Logical Link Control). Servicio orientado a conexión4. Ejemplos de protocolos

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

o REJ (Reject): Petición de retransmisión

• Tramas no numeradas. Establecimiento/liberación de la conx.o SABM: Establecimiento. Orden.o UA: Confirmación. Respuesta.o DISC: Liberación de la conexión. Orden.o DM: Confirmación negativa. Respuesta.o FRMR: Rechazo de trama. Respuesta.

N(R) - N(S): No tienen, no se envía info- N(R): número de secuencia de ACK

Campo de control (1 byte)

- N(S): No tienen, no se envía info- N(R): No tienen, no se envíanACK/NACK

50

Page 26: Tema 5_c13-14-v2

Estación A Estación B

SABM

UA

I,0,0

I,0,1

I,1,1

I,2,1

Establecimiento de la conexión

Transferencia de datos

4.1. LLC (Logical Link Control). Servicio orientado a conexión4. Ejemplos de protocolos

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

I,1,3

I,2,1

I,3,2

I,3,4

I,2,4

Transferencia de datos

RR,4

DISC

UALiberación de la conexión

51

Estación A Estación B

SABM

UA

I,0,0

I,1,0

REJ,1

I,2,0

Establecimiento de la conexión

Transferencia de datos

4.1. LLC (Logical Link Control). Servicio orientado a conexión4. Ejemplos de protocolos

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

REJ,1

I,1,0

Transferencia de datos

DISC

UALiberación de la conexión

I,2,0

I,3,0

RR,4

52

Page 27: Tema 5_c13-14-v2

� Tipos de trama:• Tramas de información no numerada (UI)

� No incluyen ni número de secuencia ni número de ACK.

Estación A Estación B

UI

4.1. LLC (Logical Link Control). No orientado a conexión4. Ejemplos de protocolos

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

UI

UI

UI

UI

UI

53

� Protocolo de enlace de datos para la red de acceso móvil• GSM, GPRS, UMTS, LTE, LTE-Advanced• El enlace de datos se establece entre el usuario móvil y la

estación base.

� Ofrece 3 tipos de funcionamiento:• RLC-AM (Acknowledge Mode)

4.2. RLC (Radio Link Control)4. Ejemplos de protocolos

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

• RLC-AM (Acknowledge Mode)– Tráfico de datos fiable (con control de errores)– servicio fiable

• RLC-UM (Unacknowledge Mode)– Tráfico en tiempo real– servicio no fiable

• RLC-TM (Transport Mode)– Tráfico de voz– servicio no fiable

54

Page 28: Tema 5_c13-14-v2

Protocolo de ventana deslizante con esquema repetición selectiva.• El receptor al detectar una trama errónea o perdida solicita

retransmisión mediante la trama STATUS PDU.– Esta trama contiene un bitmap que sirve para indicar qué tramas se

han recibido correctas (ACK) y no correctas (NACK).

• En recepción, al recibir las tramas se actualiza la ventana de recepción.

– Reordenación.

4.2. RLC (Radio Link Control). RLC-AM4. Ejemplos de protocolos

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

– Reordenación.

• Al recibir la trama STATUS PDU la ventana de transmisión puede avanzar si se han confirmado una o más tramas en secuencia.

• Si existen NACKs en la trama STATUS, se reenviarán esas tramas.

– Éstas tienen prioridad sobre las tramas nuevas.

55

� Canal inalámbrico tiene un alta tasa de error, necesidad de conocer el estado de la transmisión.• Como la recepción de la STATUS PDU hace avanzar la ventana de

transmisión es necesario enviar esta trama frecuentemente.• Problema: Se sobrecarga el enlace con tramas de control (baja

eficiencia), se consume más batería.

� Mecanismos:• La trama STATUS PDU puede enviarse por 3 motivos:1) La solicita el transmisor mediante una trama de datos solicitando el

4.2. RLC (Radio Link Control). RLC-AM4. Ejemplos de protocolos

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

1) La solicita el transmisor mediante una trama de datos solicitando el estado.

2) Temporizador en transmisión: Cada cierto tiempo se envía una trama solicitando el estado.

3) Temporización en el receptor: Cada cierto tiempo se envía una STATUS PDU indicando las tramas correctas (ACK) y no correctas (NACK).

� Para limitar el número de envíos:• Temporizador que limita el envío de tramas STATUS (Timer Status

Prohibit)

56

Page 29: Tema 5_c13-14-v2

• DATA PDU: Trama Información

4.2. RLC (Radio Link Control). Tipos de trama4. Ejemplos de protocolos

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

D/C: Trama de Datos/Control

RF: Si hay segmentación o es una PDU entera

P: Bit de Polling

FI: Framing Info (Segmentación)

E: Extension Bit

SN: Número de secuencia

2009 EventHelix.com Inc

57

• STATUS PDU: Trama de control ACK y NACK

4.2. RLC (Radio Link Control). Tipos de trama4. Ejemplos de protocolos

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

2009 EventHelix.com Inc

D/C: Trama de Datos/Control CPT: Control PDU Type (0)

ACK_SN: Numero secuencia ACK NACK_SN: Numero secuencia NACK

SOstart y SOend: porción de la DATA PDU

que ha sido recibida como perdida

58

Page 30: Tema 5_c13-14-v2

PDU Buffer

k-1

k

k+1

k+2

k+3

Estación A Estación B

k

k+1

k+2 P=1

STATUSTimer start

k+1

Tim

er s

tatu

s p

rohib

it

Venta

na T

x T

TIn

TTIn

4.2. RLC (Radio Link Control). Funcionamiento RLC-AM4. Ejemplos de protocolos

Tema 5: Técnicas para el intercambio de datosRedes y Servicios de Telecomunicación 1

k+jk+1

k+3

k+4 P=1

STATUS

Tim

er s

tatu

s p

rohib

it

n

TTIn+1

k-1

k

k+1

k+2

k+3

k+j+1

Venta

na T

x T

TIn

+1

59