57
Comunicaciones II Conferencia 23: Control de Errores y Flujo ARQ UNIDAD VII: CODIFICACIÓN DE CANAL Instructor: Israel M. Zamora, MS Telecommunications Management Profesor Titular, Departamento de Sistemas Digitales y Telecomunicaciones. Universidad Nacional de Ingeniería Universidad Nacional de Ingeniería 2S 2009 I. Zamora UniVII: Control de errores y flujo -ARQ. 1

Lecture 23 control de error arq

Embed Size (px)

DESCRIPTION

Telecom

Citation preview

Page 1: Lecture 23 control de error arq

Comunicaciones II

Conferencia 23: Control de Errores y Flujo ARQ

UNIDAD VII: CODIFICACIÓN DE CANAL

Instructor: Israel M. Zamora, MS Telecommunications ManagementProfesor Titular, Departamento de Sistemas Digitales y Telecomunicaciones.

Universidad Nacional de Ingeniería

Universidad Nacional de Ingeniería

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 1

Page 2: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 2

Outline• Técnicas de detección y corrección de errores

– ARQ vs FEC

• Técnicas de detección de errores ARQ– ARQ Stop & Wait

• Conceptos

• Operación

• Rendimiento

– ARQ Go-Back-N• Conceptos

• Operación

• Rendimiento

– ARQ Selective Reject• Conceptos

• Operación

• Rendimiento

– Comparación de rendimientos para técnicas ARQ

Page 3: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 3

Control de Error ARQ

• En la capa de enlace de datos, el término control de errores se refiere al método de detección de errores y retransmisión.

• El control de errores se basa en el ARQ (Automatic Repeat Query o Automatic Repeat Request), lo que signfica la retransmisión de los datos en tres eventualidades: trama dañada frame, trama perdida, y acuse (ACK) perdido.

Clasificación:

Page 4: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 4

Solicitud Automática de retransmisión (ARQ)

• Usados en redes LAN y MAN• Métodos mas comunes en ARQ

– Stop-and-Wait ARQ– Go-back-N ARQ– Selective-Reject ARQ

• Comentarios ARQ vs FEC– Utilización eficiente vs. Half-duplex– Costo de Equipos de decodificación ARQ <FEC– Redundancia en ARQ < FEC– ARQ es adaptable: Re-Tx solo en caso de error

Page 5: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 5

Stop & Wait ARQ

• Basado en técnica Stop-and-wait FC– Fuente Tx trama y espera por su ACK antes de Tx

otra trama– Si ACK no es recibido por un tiempo (Time-out), la

fuente re-Tx la última trama. Esto es posible por los siguientes casos:

• Caso 1: La última trama está dañada (en error)• Caso 2: El ACK se pierde

– Esta técnica es simple de implementar pero ineficiente

Page 6: Lecture 23 control de error arq

• Trama de Datos Dañada

Stop & Wait ARQ

2S 2009 I. Zamora

6UniVII: Control de errores y flujo -ARQ.

Page 7: Lecture 23 control de error arq

2S 2009 I. Zamora

• Pérdida de Trama de Datos

Stop & Wait ARQ

7UniVII: Control de errores y flujo -ARQ.

Page 8: Lecture 23 control de error arq

• Pérdida de Acuse (ACK/NAK)

– Si la trama perdida fue un NACK, el receptor acepta la nueva copia y retorna el ACK apropiado.

Stop & Wait ARQ

2S 2009 I. Zamora

8UniVII: Control de errores y flujo -ARQ.

Page 9: Lecture 23 control de error arq

• Para que funcione la retransmisión, cuatro características se agregan al mecanismos básico de control de flujo.– El dispositivo de envío guarda una copia de la última trama

transmitida hasta que se reciba un ACK para dicha trama.

– Para propósitos de identificación, ambos tramas de datos y tramas ACK son numeradas alternativamente 0 and 1.

– Las tramas NACK, las cuales no son numeradas, dicen al transmisor que debe retransmitir la última trama que ha recién enviado.

– El dispositivo de envió se equipa con un contador (temporizador).

• El protocolo Stop-and-Wait es un caso especial del protocolo Sliding-window para un tamaño de Ventana de 1.

Stop & Wait ARQ

2S 2009 I. Zamora

9UniVII: Control de errores y flujo -ARQ.

Page 10: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 10

Operación del protocolo Stop & Wait ARQ

Transmisor

Transmisión

Receptor

1 2 3 3 4 5 5

1 2 3 3 4 5 5

Error Error

AC

K

AC

K

NA

K

AC

K

AC

K

NA

K

Page 11: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 11

Diseño del protocolo Stop & Wait ARQ

Page 12: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 12

Algoritmo en el Transmisor para el protocolo Stop & Wait ARQ

Page 13: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 13

Algoritmo en el Transmisor para el protocolo Stop & Wait ARQ

Continuación…

Page 14: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 14

Algoritmo en el Receptor para el protocolo Stop & Wait ARQ

Page 15: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 15

Rendimiento en Stop & Wait ARQ

uca PPP

ad PP 1

Puede relacionarse la probabilidad Pa que una trama sea aceptadapor el receptor es:

Donde Pc es la probabilidad que una trama recibida esté libre de errores.

Donde Pu es la probabilidad que una trama recibida contenga errores que no son detectados en la decodificación.

En la mayoría de los casos Pu << Pc, de modo que Pa Pc. Entonces, la probabilidad de retransmisión Pd de una trama está dada por:

Page 16: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 16

Rendimiento en Stop & Wait ARQ

2a)(1N

1U

B

1i dd

1-id

1irB

P1

1))P(1P(i

nes])transmisio[iP(iE[Ntx]N

2a)(1

P1U d

Cuando hay corrección de error, la utilización se modifica a:

Donde NB es el numero de esperado de vecesque se transmite el paquete

Matemáticamente:

Entonces, para Stop-and-Wait ARQ, la utilización es:

“i” es numero de transmisiones de latrama original

Page 17: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 17

Rendimiento en Stop & Wait ARQ

b

bits

R

ND

bitsN

k

•Otros parámetros de rendimiento en sistema ARQ son:•Tiempo medio de transmisión de un mensaje•Eficiencia de transmisión de información

Tiempo medio de tranmisión de un mensaje de k bits (usando código (n,k,d)):

Donde Nbits es el número medio de bits que el transmisor podría ser capaz de transmitir durante el tiempo desde la primera transmisión de una trama hasta el momento que se reciba un ACK.

Eficiencia del protocolo (usando código (n,k,d)):

Page 18: Lecture 23 control de error arq

• Go-Back-N ARQ– Si una trama se pierde o se daña, todas

las tramas que han sido enviadas desde la última trama que fue acusada positivamente, deben ser retransmitidas.

• Selective-Reject ARQ– Solamente, en específico, la trama dañada

o perdida se retransmite.

Sliding Window ARQ

2S 2009 I. Zamora

18UniVII: Control de errores y flujo -ARQ.

Page 19: Lecture 23 control de error arq

• Para extender Sliding Window para cubrir la retransmisiòn de tramas perdidas o dañadas, tres características deben agregarse al mecanismo básico de control de flujo:– El dispositivo transmisor mantiene copias de todas las

tramas transmitidas hasta que todas ellas son acusadas. – Tramas ACK/NACK

• Tramas ACK acarrean el número de la próxima trama que se espera.

• Tramas NACK acarrean el número de propia trama dañada. NACK significa dos cosas:

• (1) un acuse positivo de todas las tramas recibidas antes de la trama dañada y

• (2) un acuse negativo de la trama indicada.

– El equipo transmisor está equipado con un temporizador para habilitarle manejar tramas perdidas.

Sliding Window ARQ

2S 2009 I. Zamora

19UniVII: Control de errores y flujo -ARQ.

Page 20: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 20

Go-Back-N ARQ

• Basado en la técnica FC Sliding Window – Fuente Tx una serie de tramas numerados.– # de ACKs dependen del tamaño de la ventana.– Destino acusa la última trama recibida

exitosamente con un RR o ACK.– Tramas perdidas son acusados negativamente

con REJ ó NACK.– También se aplica el tiempo de espera (TimeOut):

• Trama dañada• El RR o ACK está dañado• El REJ o NAK está dañado

Page 21: Lecture 23 control de error arq

Números de Secuencia• La tramas desde un transimsor son numeradas secuencialmente. • Necesitamos fijar un límite ya que necesitamos incluir el número

de secuencia en el encabezado de trama. • Si el encabezado de la trama permite m bits para el número de

secuencia, entonces los números de secuenicas van desde 0 hasta 2 m – 1.

• Para m = 3, los números de secuencia son: 1, 2, 3, 4, 5, 6, 7.• Podemos repetir lo snúmeros de secuencia.• Los números de secuencia son:

– 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, …

Go-Back-N ARQ

2S 2009 I. Zamora

21UniVII: Control de errores y flujo -ARQ.

Page 22: Lecture 23 control de error arq

Sender Sliding Window• En el sitio de transmisión, para mantener las tramas que están siendo enviadas hasta que sean acusadas, necesitamos usar el concepto de Ventana.

• El tamaño de la ventana es al menos 2m -1 donde m es el número de bits para el número de la secuencia.

• El tamaño de la ventana puede ser variable, e.g. TCP.

• La ventana se desliza para incluir nuevas tramas no enviadas cuando se recibe el ACKs correcto.

Go-Back-N ARQ

2S 2009 I. Zamora

22UniVII: Control de errores y flujo -ARQ.

Page 23: Lecture 23 control de error arq

Receiver Sliding Window

• Tamaño de la ventana en el sitio de recepción es siempre 1 en este protocolo.

• El receptor está siempre observando por una trama en específico que arribe en un orden específico.

• Cualquier trama que llegue fuera de orden se descarta y requiere de renevío.

• La ventana del Receptor se desliza como se muestra en la figura . El Receptor está esperando por la trama 0 en la parte a.

Go-Back-N ARQ

2S 2009 I. Zamora

23UniVII: Control de errores y flujo -ARQ.

Page 24: Lecture 23 control de error arq

Variables de Control• El Transmisor tiene 3 variables: S, SF, y SL

• S contiene el número de secuencia de la trama recién enviada• SF contiene el número de secuencia de la primera trama

• SL contienen el número de secuencia de la última trama

• El Receptor solo contiene la única variable, R, que contiene el número de secuencia de la trama que espera recibir. Si el número de secuencia es el mismo que le valor de R, la trama es aceptada, de lo contrario es rechazada.

Go-Back-N ARQ

2S 2009 I. Zamora

24UniVII: Control de errores y flujo -ARQ.

Page 25: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 25

Operación Go-Back-N ARQ

Page 26: Lecture 23 control de error arq

Operación Normal• El Transmisor da seguimiento a las tramas en tramsmisión y actualiza la

variables y ventanas según como arriben los ACKs.

Go-Back-N ARQ

2S 2009 I. Zamora

26UniVII: Control de errores y flujo -ARQ.

Page 27: Lecture 23 control de error arq

Tamaño de Ventana del Transmisor • El tamaño de Ventana del transmisor debe ser menor que 2m. El tamaño de Ventana

del receptor es siempre igual a 1. Si m = 2, el tamaño de ventana es = 2m – 1 = 3. • La Figura compara una ventana de tamaño 3 y 4.

Accepta como el 1era trama en el próximo ciclo: un error.

Go-Back-N ARQ

2S 2009 I. Zamora

27UniVII: Control de errores y flujo -ARQ.

Page 28: Lecture 23 control de error arq

• Trama de Datos Dañada

Go-Back-N ARQ

2S 2009 I. Zamora

28UniVII: Control de errores y flujo -ARQ.

Page 29: Lecture 23 control de error arq

Go-Back-N ARQ

2S 2009 I. Zamora

29UniVII: Control de errores y flujo -ARQ.

• Trama de Datos Perdida

Page 30: Lecture 23 control de error arq

Tramas perdidas• Trama 2 se pierde• Cuando el receptor

recibe la trama 3, descarta la trama 3 en vista que espera la trama 2 (según la ventana)

• Después que el temporizador para la trama 2 expira en el sitio de transmisor, el transmisor envía las tramas 2 y 3 (es decir, GO-BACK-to-2)

Go-Back-N ARQ

2S 2009 I. Zamora

30UniVII: Control de errores y flujo -ARQ.

Page 31: Lecture 23 control de error arq

ACK Dañado/Perdido/Retrasado

• Si el ACK está dañado/perdido, podemos tener dos situaciones:• El próximo ACK arriba antes que el tiempo de expiración de

cualquier temporizador, por tanto no hay necesidad de retransmitir tramas ya que los ACKs son acumulativos. Si, por ejemplo, los ACK1, ACK2, y ACK3 se pierden, el ACK4 los cubre si éste arriba antes del tiempo de expiración.

• Si un ACK subsiguiente, por ejemplo el ACK4, arriba después del tiempo de expiración, la última trama y todas las tramas después de ésta, son retrasmitidas.

• El Receptor nunca reenvía un ACK.• Un ACK retrasado da inicio a la retransmisión de tramas.

Go-Back-N ARQ

2S 2009 I. Zamora

31UniVII: Control de errores y flujo -ARQ.

Page 32: Lecture 23 control de error arq

• ACK perdido

Go-Back-N ARQ

2S 2009 I. Zamora

32UniVII: Control de errores y flujo -ARQ.

Page 33: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 33

Diseño de protocolo Go-Back-N ARQ

Page 34: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 34

Algoritmo en el transmisor del protocolo Go-Back-N ARQ

Page 35: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 35

Algoritmo en el transmisor del protocolo Go-Back-N ARQ (cont…)

Page 36: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 36

Algoritmo en el receptor del protocolo Go-Back-N ARQ

Page 37: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 37

Rendimiento para Go-Back-N ARQ

1i

d1-i

dB )P(1Pf(i)E[Ntx]N

KiK)(11)K(i1f(i)

1i 1i

d1-i

dd1-i

dB )P(1PiK)P(1PK)(1N

2a1N

)NPP2a)(1(1

)PN(1

2a1N2aP1

P1

U

dd

d

d

d

Si ocurren errores, el número esperado (promedio) de transmisiones NB es:

donde f(i) denota el número de tramas transmitidas si el original se debe transmitir “i” veces, o sea con K tramas retransmitidas.

f(i) se puede expresar como:

Substituyendo:

d

dd

dB P1

KPP1

P1

KK)(1N

Podemos aproximar la expresión de U:

a si NN,

aa, si NK

21

2121

Puede observarse que:

Page 38: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 38

Rendimiento para Go-Back-N ARQ

propb

B tR

nND 2

n

k

NB

1

•Otros parámetros de rendimiento en sistema ARQ son:•Tiempo medio de transmisión de un mensaje•Eficiencia de transmisión de información

Tiempo medio de tranmisión de un mensaje de k bits (usando código (n,k,d)):

Eficiencia del protocolo (usando código (n,k,d)):

Page 39: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 39

Selective Reject ARQ

• Es similar al Go-Back-N.

• Sólo tramas dañadas son retransmitidos.

• Si la trama se pierde se envía un SREJ o SNACK (NACK).

• Es más eficiente que el Go-Back-N.

• Buffer más grande:

– Controlar la secuencia de tramas después de un SREJ o SNACK (NACK).

• Lógica más compleja:

– Proceso inteligente de inserción.

• Para un campo de numeración de m-bits, N=2m-1

Page 40: Lecture 23 control de error arq

Selective Repeat ARQ, sender and receiver windows

• Go-Back-N ARQ simplifica el proceso en el sitio del receptor. El receptor solo da seguimiento de una sola variable, y no hay necesidad de almacenar en buffer tramas que llegan fuera-de-orden, simplemente son descartadas.

• No obstante, el protocolo Go-Back-N ARQ es ineficiente para enlaces ruidosos. Muestra ineficiencia espectral y reduce la velocidad de transmisión.

• En Selective Repeat ARQ, solo la trama dañada es reenviada. Es mas eficiente en uso de ancho de banda, pero se requiere un receptor de procesamiento mas complejo.

• Define ACK negativos (NACK) para reportar los números de secuencia de tramas dañadas antes del tiempo de expiración.

2S 2009 I. Zamora

40UniVII: Control de errores y flujo -ARQ.

Page 41: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 41

Operación del Selective Reject ARQ

Page 42: Lecture 23 control de error arq

Selective Repeat ARQ, Trama perdida

• Las tramas 0 y 1 son aceptadas cuando se reciben porque ellas se encuentran en el rango especificado por la ventana del receptor. Lo mismo para la trama 3.

• El Receptor envía un NACK2 para mostrar que la trama 2 no ha sido recibida y entonces el transmisor reenvía solamente la trama 2 y ésta es aceptada en vista que está en el rango de la ventana.

2S 2009 I. Zamora

42UniVII: Control de errores y flujo -ARQ.

Page 43: Lecture 23 control de error arq

Selective Repeat ARQ, tamaño de Ventana del Transmisor

2S 2009 I. Zamora

43UniVII: Control de errores y flujo -ARQ.

• El Tamaño de la ventana del transmisor y del receptor debe ser a lo sumo la mitad de 2m. Si m = 2, el Tamaño de Ventana debe ser 2m/2 = 2. La figura compara un tamaño de ventana de 2 con un tamaño de ventana de 3. El tamaño de ventana es 3 y todos los ACKs se pierden, el transmisor envía un duplicado de la trama 0, la ventana del receptor espera recibir la trama 0 (parte de la ventana) , así que acepta la trama 0, como la 1ra trama del siguiente ciclo - un error.

Page 44: Lecture 23 control de error arq

• Solamente la la trama dañada o perdida en específico es retransmitida.

Selective Reject - ARQ

2S 2009 I. Zamora

44UniVII: Control de errores y flujo -ARQ.

Page 45: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 45

Diseño de protocolo Selective Reject ARQ

Page 46: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 46

Algoritmo del transmisor protocolo Selective Reject ARQ

Page 47: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 47

Algoritmo del transmisor protocolo Selective Reject ARQ (cont)

Page 48: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 48

Algoritmo del transmisor protocolo Selective Reject ARQ (cont)

Page 49: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 49

Algoritmo del receptor protocolo Selective Reject ARQ

Page 50: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 50

Algoritmo del receptor protocolo Selective Reject ARQ (cont)

Page 51: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 51

Rendimiento de Selective Reject ARQ

dB P1

1N

2a1N2a1

)PN(1

2a1NP1U

d

d

Aplicando el razonamiento usado en Stop-and-Wait ARQpodemos concluir:

Consecuentemente, la utilización del canal es:

Page 52: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 52

Rendimiento de Selective Reject ARQ

propb

B tR

nND 2

n

k

NB

1

•Otros parámetros de rendimiento en sistema ARQ son:•Tiempo medio de transmisión de un mensaje•Eficiencia de transmisión de información

Tiempo medio de tranmisión de un mensaje de k bits (usando código (n,k,d)):

Eficiencia del protocolo (usando código (n,k,d)):

Note que las ecuaciones son las mismas que para el protocolo Go-Back-N, lo cual se debe a que Selective Reject es un caso particular de dicho protocolo.

Page 53: Lecture 23 control de error arq

Go-Back-n and Selective-Reject

• Selective-reject da un mejor desempeño, pero en la práctica Go-Back-N es ampliamente usado por su simplicidad de implementación. – Debido a la complejidad en el sorteo y

almacenamiento requerido por el receptor, y la lógica extra necesaria para el transmisor para seleccionar tramas específicas a efecto de retransmisión, Selective-reject es caro y no es usado a menudo.

2S 2009 I. Zamora

53UniVII: Control de errores y flujo -ARQ.

Page 54: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 54

Comparación de rendimiento

Page 55: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 55

Desempeño de Sistemas ARQ

v

i

iniu pp

i

nP

0

11

•Otro parámetro que caracteriza a los sistemas ARQ es la probabilidad e errores no detectados Pu.

•En aplicaciones de computadoras este valor es menor de 10-10.

•Esta probabilidad depende de la capacidad de detección del código (n,k,d), es decir, del valor de v (número de errores detectables).

•Para un canal simétrico binario en el cual opera un sistema ARQ, con probabilidad de error de canal p, podemos estimar la cota superior de la probabilidad de error no detectado Pu, de acuero a la expresión:

Page 56: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Control de errores y flujo -ARQ. 56

Bonificación

BONIFICACIÓN 6:INVESTIGUE Y HAGA UN RESUMEN DEL

PROTOCOLO HDLC (HIGH LEVEL DATA LINK CONTROL PROTOCOL) SE ENTREGA EN UNA

SEMANA.

Page 57: Lecture 23 control de error arq

2S 2009 I. Zamora

UniVII: Det. Cods. Cíclic. Prob. Error.

57