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

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

Universidade do Vale do Rio dos Sinos - São Leopoldo -

Apresentações semelhantes


Apresentação em tema: "Universidade do Vale do Rio dos Sinos - São Leopoldo -"— Transcrição da apresentação:

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

2 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 Redes de Computadores I – Prof. Mateus Raeder

3 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 Redes de Computadores I – Prof. Mateus Raeder

4 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) Redes de Computadores I – Prof. Mateus Raeder

5 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 Redes de Computadores I – Prof. Mateus Raeder

6 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 Redes de Computadores I – Prof. Mateus Raeder

7 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 Redes de Computadores I – Prof. Mateus Raeder

8 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 Redes de Computadores I – Prof. Mateus Raeder

9 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? Redes de Computadores I – Prof. Mateus Raeder

10 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 Redes de Computadores I – Prof. Mateus Raeder

11 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 Redes de Computadores I – Prof. Mateus Raeder

12 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 Redes de Computadores I – Prof. Mateus Raeder

13 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. Redes de Computadores I – Prof. Mateus Raeder

14 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 Redes de Computadores I – Prof. Mateus Raeder

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

16 TCP – Máquina de estados
Redes de Computadores I – Prof. Mateus Raeder 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 Redes de Computadores I – Prof. Mateus Raeder

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! Redes de Computadores I – Prof. Mateus Raeder

19 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) Redes de Computadores I – Prof. Mateus Raeder

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 Redes de Computadores I – Prof. Mateus Raeder

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

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

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

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

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á Redes de Computadores I – Prof. Mateus Raeder


Carregar ppt "Universidade do Vale do Rio dos Sinos - São Leopoldo -"

Apresentações semelhantes


Anúncios Google