Controle de s Inst tituto de Info ormátic ca - UF FRGS Redes de Computadores Controle de Aula 8 É o processo de garantir a entrega confiável dos dados, isto é, sem s, sem duplicação e entregues na ordem da emissão Fundamental para serviços orientados a conexão Técnicas usuais: Envio de confirmação ao transmissor por parte do receptor: Positiva: quadro foi recebido corretamente Negativa: um quadro não foi recebido corretamente Em caso de confirmação negativa retransmite o quadro Reenvio automático de um quadro de dados após um tempo pré-determinado (time-out) t) caso não seja recebido uma confirmação (positiva ou negativa) Automatic Repeat request (ARQ) Redes de Computadores 2 Protocolos Automatic Repeat request (ARQ) Stop and Wait ARQ Stop and Wait - ARQ Go-Back n Selective Repeat (selective reject ou selective retransmission) Emissor envia um quadro i e espera confirmação do receptor Se receptor detecta s no quadro de dados descarta quadro Após time-out, t o transmissor reenvia o quadro de dadosd Se transmissor detecta s no quadro de ACK descarta quadro Transmissor reenvia quadro de dados quando ocorrer time-out timeout Q,n Qn Q,n ack timeout Q,n ack Q,n ack Duplicado!!! Solução: Numerar quadros Q (n) e sua confirmação Redes de Computadores 3 Redes de Computadores 4
Esquema stop-and-wait Protocolo Go-back n Ack Ack Ack Time-out (c) (d) Tim me-out Vantagens e desvantagens: Simples Ineficiente (afinal é um stop-and-wait!!!) t Time-ou Janela deslizante Baseado no princípio de janela deslizante Na ausência de s faz confirmação positiva Envia número do próximo quadro a ser recebido (ACK positivo RR n ou RNRn) Na presença de s faz confirmação negativa Descarta quadro de dados e sinaliza (ACK negativo REJ n) Em caso de detecção de : Destino: descarta o quadro com e todos os subsequentes até que o quadro com seja corretamente recebido Fonte: reenvia o quadro c/ e todos os subsequentes que porventura já tenham sido enviados (go back n) Controle de fluxo é o tamanho da janela Redes de Computadores 5 Redes de Computadores 6 Go-back n ARQ: princípio p de funcionamento Janela para Go-back N ARQ: Receptor k = 3, números de sequência de a 7, janela máxima de 7 k = 2 bits (,,2,3) Janela = 3 quadros Quadros recebidos e Quadros que ainda não podem ser aceitos Tamanho da janela: 2 k - (o por quê veremos na sequência...) Redes de Computadores 7... 3 4 5 6 7 2 3... Quadro recebido, mas Quadro a receber Redes de Computadores 8
Janela para Go-back N ARQ: Emissor Go-back n: s possíveis k = 3, números de sequência de a 7, janela máxima de 7 Quadros enviados e Quadro enviado, mas Quadros que poderão ser enviados... 3 4 5 6 7 2 3... Próximo a ser enviado Quadros podem ser perdidos ou adulterados () Resultado final é o mesmo, pois um quadro adulterado é descartado Três situações genéricas: /perda no quadro de dados /perda no quadro de confirmação positiva (RR n ou RNR n) /perda no quadro de confirmação negativa (REJ n) Recuperação do /perda baseada: Na retransmissão apropriada de quadros Estouro de timeout OU via solicitação explícita Efeito acumulativo do RR n ou RNR n Redes de Computadores 9 Redes de Computadores Go-back n: em quadro de dados Go-back n: em quadro de controle (RR ou RNR) Otimização possível: Confirmação negativa out Time + + out Time + + (c) RR i+ + RR i+2 Ti imeout RR i+ e) RR, i+ Com quadro RNR o comportamento é idêntico. Descarte (duplicado) RNR i+ + RNR i+ (c) Redes de Computadores Redes de Computadores 2
Go-back n: em quadro de controle (REJ) Protocolo Selective Repeat ARQ + +2 + RR i+ Descarta (rejeita) apenas os quadros com Literatura também se encontra o termo selective reject Quadros corretos subseqüentes a um quadro com (ou perdido) são aceitos Necessário bufferizar quadros no receptor Minimiza retransmissões porém exige um controle mais complexo Qi + +2 + + +3 Para o selective repeat o tamanho da janela é 2 (k-) Redes de Computadores 3 Redes de Computadores 4 Selective repeat: em quadro de dados e controle Janela para Selective repeat ARQ: receptor - + RR i+2 Timeou ut + +2 RR i+3 - Qi + +2 (c) k = 3, números de sequência de a 7, janela máxima de 4 Quadros recebidos e Quadro recebido, mas Quadros que não podem ser aceitos... 3 4 5 6 7 2 3... Quadros a receber Redes de Computadores 5 Redes de Computadores 6
Janela para Selective repeat ARQ: emissor Problema: tamanho da janela k = 3, números de sequência de a 7, janela máxima de 4 Quadros enviados e Quadro enviado, mas Quadros que não podem ser aceitos... 3 4 5 6 7 2 3... Quadros possíveis de Serem enviados Quadros são numerados em módulo m Consequência direta: repetição cíclica da sequência de numeração Questão: como diferenciar um quadro i novo de uma retransmissão de um quadro i antigo? Solução: evitar que uma sequência nova sobreponha a numeração de uma antiga limitando o tamanho da janela Redes de Computadores 7 Redes de Computadores 8 Problema do tamanho da janela Go-back n ARQ: tamanho da janela 2 3 4 5 6 7 RR... Nova série ( a 7) 2 3 4 5 6 7 RR... Retransmissão é, neamente, recebida como um quadro de uma nova série Redes de Computadores 9 Tamanho máximo: 2 m - Redes de Computadores 2
Selective repeat: tamanho da janela Análise de desempenho (probabilidade P s) Stop-and-wait U P 2a a t t prop quadro Go back N Selective Repeat eficiência P ( 2aP ) W ( P) 2a ( P WP) para para W 2 a W 2a Redes de Computadores 2 eficiência para W ( P ) 2a W 2a W 2a Redes de Computadores 22 para Leituras complementares Stallings, W. Data and Computer Communications (6 th edition), Prentice Hall 999. Capítulo 7, seção 7 7. e 73 7.3 Tanenbaum, A. Redes de Computadores (4 a edição), Editora Campus, 23. Capítulo 3, seções 3.3 e 3.4 Redes de Computadores 23