Protocolo de transporte confiável
PTC2550 – Redes de Comunicação de Dados e Transporte Multimídia
Protocolo de Transporte Confiável
Índice
O Protocolo e a Simulação Sobre o Emulador Funções Implementadas Manual do Usuário Conclusão Código do Programa (Completo)
2 5 5 9 12 12
1
O Protocolo e a Simulação
Este exercício programa tem o intuito de simular um canal de transmissão com erros e perdas presentes. Para minimizar esses problemas, utilizamos checksums, números de sequencias, ACKs e retransmissões, porém ainda encontrando problemas em algumas situações. Um deles consiste, por exemplo, no que se segue. Um transmissor espera um tempo razoável pelo ACK. Se este nao for recebido, há o aviso de tempo excedido (pacote perdido). Se o pacote estiver apenas atrasado, haverá transmissão duplicada (números de sequencia entraram em jogo). Para um melhor entendimento, passaremos, a seguir, a uma breve explanação do funcionamento do protocolo simulado. A figura a seguir, representa as operações do protocolo na tentativa de assegurar a transmissão livre de erros.
2
A seguir, mostramos também, as representações gráficas do tratamento dos pacotes nos diversos casos de operação, com e sem erros.
rdt3.0 em ação
em ação
(a) operação sem perda
(b) pac
Cap. 3: Cama
ção sem perda (b) pacote perdido
Cap. 3: Camada de Transporte 29
3
rdt3.0 em ação
0 em ação
(c) ACK perdido
(d) timeout prematur
Cap. 3: Camada de Tra
ACK perdido
(d) timeout prematuro
Vale lembrar que, apesar de estarmos simulando o ambiente de 30 os eventos rede, Cap. 3: Camada de Transporte encontrados estão altamente correlacionados com a realidade.
4
A título de curiosidade quanto ao desempenho do protocolo, imaginemos um enlace de 1Gbps, 15ms de atraso de propagação com pacotes de 1kB. Como resultado, teremos uma vazão de aproximadamente 33kB/seg sobre um canal de 1Gbps, mostrando que o protocolo limita o uso dos recursos