A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Redes de Computadores I Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo -

Apresentações semelhantes


Apresentação em tema: "Redes de Computadores I Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo -"— Transcrição da apresentação:

1 Redes de Computadores I Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo -

2 Redes de Computadores I – Prof. Mateus Raeder TCP – Controle de congestionamento Quando ocorre um congestionamento? –Quando a carga enviada para a rede é maior que sua capacidade A idéia, então, é não enviar um novo pacote até que um antigo tenha saído da rede A tentativa de evitar congestionamentos é manipulando dinamicamente o tamanho da janela O primeiro passo para gerenciar congestionamento é detectá-lo

3 Redes de Computadores I – Prof. Mateus Raeder TCP – Controle de congestionamento Antigamente, detectar congestionamentos era mais difícil –Timeouts eram causados ou por ruído na rede ou descarte por um roteador congestionado –Difícil saber a diferença entre os dois casos Hoje em dia, a perda de pacotes devido a erros de transmissão é rara Maioria dos timeouts da Internet é devido a congestionamentos

4 Redes de Computadores I – Prof. Mateus Raeder TCP – Controle de congestionamento Como o TCP evita congestionamentos? –Na conexão, deve-se escolher um tamanho de janela adequado –O remetente evita congestionamentos enviando pacotes dentro do tamanho da janela do receptor –Entretanto, ainda podem ocorrer devido a congestionamentos internos da rede –A solução é entender que existem estes dois tipos de congestionamentos (capacidade da rede e capacidade do receptor)

5 Redes de Computadores I – Prof. Mateus Raeder TCP – Controle de congestionamento Cada remetente possui 2 janelas –A do receptor –A de congestionamento Cada uma delas indica o número de bytes que o remetente pode enviar O número de bytes que podem ser transmitidos é o mínimo entre as duas janelas –Se receptor pedir 10KB e o remetente sabe que com mais de 6KB congestiona a rede, ele enviará 6KB –Se o remetente souber que até 32KB não congestiona a rede, enviará 8KB para não saturar o receptor

6 Redes de Computadores I – Prof. Mateus Raeder TCP – Controle de congestionamento Quando a conexão é estabelecida, janela de congestionamento é ajustada ao tamanho máximo do segmento em uso na conexão Envia um segmento máximo Se o segmento for confirmado antes do timeout –Coloca na janela de congestionamento mais um tamanho máximo de segmento –Assim, a janela de congestionamento agora possui capacidade equivalente a dois segmentos máximos –Em seguida, envia 2 segmentos

7 Redes de Computadores I – Prof. Mateus Raeder TCP – Controle de congestionamento Quando a janela de congestionamento chegar em n segmentos –se todos os n segmentos forem confirmados a tempo, a janela de congestionamento será aumentada em n segmentos –Assim sendo, cada rajada confirmada duplica a janela de congestionamento –O crescimento é exponencial, até que ocorra um timeout ou que a janela do receptor seja alcançada –Para evitar congestionamentos, então, quando ocorre um timeout a janela anterior é a que prevalece

8 Redes de Computadores I – Prof. Mateus Raeder TCP – Controle de congestionamento Inicialização lenta –É utilizada para determinar o que a rede é capaz de gerenciar –Quando um timeout ocorre, a janela fica com a metade do último tamanho (o que gerou timeout) –A partir de então, cada rajada (tentativa de envio) não é mais exponencial (dobro), mas sim linear (um MSS) –Ou seja, a janela cresce exponencialmente até quando pode, e segue crescendo linearmente depois

9 Redes de Computadores I – Prof. Mateus Raeder TCP – Gerenciamento de timers Dos vários timers que utiliza, o mais importante é o de retransmissão –Quando um segmento é enviado, um timer de transmissão é ativado –Se a confirmação do segmento chegar antes to final do timer, ele será interrompido –Senão, o segmento será retransmitido (mais um timer) Obviamente surge a pergunta: –Qual deve ser o intervalo do timer?

10 Redes de Computadores I – Prof. Mateus Raeder TCP – Gerenciamento de timers Não é fácil e é crítico –Se for muito pequeno: retransmissões desnecessárias –Se for muito grande: quando o pacote se perde demora- se muito a saber (retardo de retransmissão) Solução: algoritmo altamente dinâmico, que ajusta os intervalos de timeout com base na avaliação contínua da rede Descrito por Jacobson

11 Redes de Computadores I – Prof. Mateus Raeder TCP – Gerenciamento de timers Algoritmo de Jacobson –Para cada conexão, guarda-se um valor RTT (melhor estimativa no momento para a ida e volta de 1 segmento) –O timer é disparado transmissão –Se voltar o ACK antes do timer, o TCP mede o tempo necessário, que será M –Assim, de acordo com a fórmula RTT = α RTT + (1 – α) M –onde α é um fator de suavização que determina o peso dado ao antigo valor

12 Redes de Computadores I – Prof. Mateus Raeder TCP – Gerenciamento de timers O que fazer quando um pacote é retransmitido? –Pois não necessariamente a confirmação é do último pacote Phil Karn sugeriu o seguinte: –Não atualizar o RTT em qualquer segmento enviado –Ao invés disso, duplica-se o timeout a cada falha ocorrida, até chegarem no destino pela primeira vez

13 Redes de Computadores I – Prof. Mateus Raeder TCP – Gerenciamento de timers Existe ainda o timer de persistência –Receptor envia janela 0 –Remetente para de enviar (timer) –Receptor atualiza a janela para continuar recebendo (envia mensagem) –Mensagem do receptor se perde –Ambas as extremidades aguardando a outra fazer alguma coisa –Quando o timer de persistência expirar, envia teste ao receptor. A resposta fornece o tamanho da janela.

14 Redes de Computadores I – Prof. Mateus Raeder TCP – Máquina de estados A conexão e desconexão podem ser representadas por uma máquina de estados finito com 11 estados A cada estado, eventos podem ocorrer e gerar determinadas ações TCP possui estados, UDP não

15 Redes de Computadores I – Prof. Mateus Raeder TCP – Máquina de estados Estados e significados

16 Redes de Computadores I – Prof. Mateus Raeder TCP – Máquina de estados Fonte: slides Prof. Luiz Arthur

17 Redes de Computadores I – Prof. Mateus Raeder TCP x UDP UDP –Entrega não confiável –Não ordenada –Sem controle nenhum sobre os dados Erro, fluxo, congestionamento, retransmissão, etc. TCP –Entrega confiável –Ordenada –Controle de fluxo, congestionamento, retransmissão de pacotes, controle de erros

18 Redes de Computadores I – Prof. Mateus Raeder Mas por que existe o UDP? Elimina retardos de conexão Não mantém estado entre o transmissor e receptor Cabeçalho muito mais simples Como não controla congestionamento, transfere o mais rápido possível Utilizado para aplicações com a idéia de continuidade (vídeo, áudio) Quem deve controlar a confiabilidade no UDP? –A própria aplicação!

19 Redes de Computadores I – Prof. Mateus Raeder Questão para discussão Por que foram criadas camadas de protocolos? –Independência entre as camadas –Cada uma com suas funções Cite um aspecto da Camada de Transporte que rompe este objetivo. –Checksum PseudoHeader (informações da camada de rede)

20 Redes de Computadores I – Prof. Mateus Raeder Exemplo de checksum Transmissor –Coloca checksum em 0 –Soma com complemento de 1 todos os campos –Coloca complemento de 1 no campo checksum –Envia Receptor –Calcula checksum –Verifica se é zero Se SIM, pacote correto; se NÃO, erro detectado

21 Redes de Computadores I – Prof. Mateus Raeder Exemplo de checksum Exemplo: Três palavras de 16 bits enviadas: Somando as duas primeiras:

22 Redes de Computadores I – Prof. Mateus Raeder Lembrando somas de bits Soma de bits utilizada nos protocolos: 0¹0¹1¹1¹0¹0¹0¹ = 0 = 00 (vai zero) = 1 = 01 (vai zero) = 1 = 01 (vai zero) = 2 = 10 (vai um) = 3 = 11 (vai um)

23 Redes de Computadores I – Prof. Mateus Raeder Lembrando carry Quando ocorre carry, a o bit é adicionado ao resultado:

24 Redes de Computadores I – Prof. Mateus Raeder Voltando... Exemplo de checksum Exemplo: Três palavras de 16 bits enviadas: Somando as duas primeiras: Somando com a última: checksum Complemento de 1: inverter bits

25 Redes de Computadores I – Prof. Mateus Raeder Exemplo de checksum No receptor, todos os campos são somados, inclusive o checksum Se não houver erros, a soma deve resultar em –O complemento de 1 será


Carregar ppt "Redes de Computadores I Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo -"

Apresentações semelhantes


Anúncios Google