Você está na página 1de 55

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle

de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Redes de Computadores
Aula 4: Controle de congestionamento

Prof. Silvana Rossetto

24 de mar co de 2010

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios, causas e custos do congestionamento nas redes Princ pios Causas e custos do congestionamento Solu c oes para controlar o congestionamento Princ pios gerais de controle de congestionamento Pol ticas de preven c ao de congestionamento Controle de congestionamento na camada de rede Controle de congestionamento em redes de circuitos virtuais Controle de congestionamento em redes de datagramas Algoritmo RED Controle do jitter Controle de congestionamento na camada de transporte Controle de congestionamento no transporte Controle de congestionamento no TCP Refer encias bibliogr acas
Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios Causas e custos do congestionamento

Princ pios de congestionamento nas redes

Nas redes cabeadas, as perdas de pacotes ocorrem tipicamente como resultado da satura c ao dos buers dos roteadores quando a rede ca congestionada A perda de pacotes e um sintoma do congestionamento da rede

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios Causas e custos do congestionamento

Demanda excedente ` a capacidade da rede

Figura: Fonte: Computer Networks, Tanenbaum, 4ed, 2003.


Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios Causas e custos do congestionamento

Fatores que causam congestionamento nas redes


Processamento lento ou largura de banda baixa Processadores lentos nos roteadores e/ou enlaces com largura de banda baixa geram las nos buers Enlaces de sa da compartilhados Pacotes que chegam de v arios enlaces de entrada e devem compartilhar um enlace de sa da:
1 2

se o buer e pequeno, pacotes ser ao perdidos se aumentar o buer, mais timeouts acontecer ao at e todos os pacotes serem transmitidos com sucesso, gerando duplica c oes

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios Causas e custos do congestionamento

Cen ario 1: dois emissores e buers innitos

Figura: Fonte: Computer Networking, Kurose-Ross, 5ed, 2010.

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios Causas e custos do congestionamento

Cen ario 1: dois emissores e buers innitos

Figura: Fonte: Computer Networking, Kurose-Ross, 5ed, 2010.

Custo da rede congestionada Grandes atrasos de la de buer quando a taxa de chegada de pacotes e pr oxima da capacidade do enlace
Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios Causas e custos do congestionamento

Cen ario 2: dois emissores e buers nitos

Figura: Fonte: Computer Networking, Kurose-Ross, 5ed, 2010.

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios Causas e custos do congestionamento

Cen ario 2: dois emissores e buers nitos

Figura: Fonte: Computer Networking, Kurose-Ross, 5ed, 2010.

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios Causas e custos do congestionamento

Cen ario 2: dois emissores e buers nitos

Custo da rede congestionada


1

O emissor precisa fazer retransmiss oes para compensar a perda de pacotes devido ao estouro dos buers Se h a retransmiss oes prematuras, o receptor ir a receber pacotes duplicados, gerando tr afego desnecess ario na rede O enlace da rede e usado com c opias desnecess arias de pacotes

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios Causas e custos do congestionamento

Cen ario 3: quatro emissores, buers nitos e v arios caminhos

Figura: Fonte: Computer Networking, Kurose-Ross, 5ed, 2010.


Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios Causas e custos do congestionamento

Cen ario 3: quatro emissores, buers nitos e v arios caminhos

Figura: Fonte: Computer Networking, Kurose-Ross, 5ed, 2010.

Custo da rede congestionada Quando um pacote e perdido ao longo do caminho de roteamento, os recursos j a usados nos saltos anteriores foram desperdi cados
Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios Causas e custos do congestionamento

Controle de congestionamento X controle de uxo

Controle de congestionamento Quest ao que envolve o comportamento dos terminais e roteadores da rede, com o objetivo de garantir que a rede seja capaz de dar conta do tr afego gerado Controle de uxo Quest ao que envolve apenas tr afego ponto-a-ponto, entre um emissor e um receptor, com o objetivo de garantir que o emissor n ao gere dados a uma taxa que o receptor n ao e capaz de consumir

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios Causas e custos do congestionamento

Controle de congestionamento X controle de uxo

Figura: Fonte: Computer Networks, Tanenbaum, 4ed, 2003.


Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios gerais de controle de congestionamento Pol ticas de preven c ao de congestionamento

Princ pios gerais de controle de congestionamento

Estrat egias de preven c ao Tomam decis oes a priori (programadas), sem levar em conta o estado da rede Usam ferramentas para:
1 2 3

decidir quando aceitar novo tr afego decidir quando descartar pacotes e quais pacotes descartar tomar decis oes de escalonamento em v arios pontos da rede

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios gerais de controle de congestionamento Pol ticas de preven c ao de congestionamento

Princ pios gerais de controle de congestionamento

Estrat egias de detec c ao e corre c ao


1

Monitoram o sistema para detectar a ocorr encia de congestionamento Passam essa informa c ao para os locais onde as a c oes devem ser executadas Ajustam a opera c ao do sistema para corrigir o problema

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios gerais de controle de congestionamento Pol ticas de preven c ao de congestionamento

Estrat egias de detec c ao e corre c ao

M etricas para o monitoramento Percentual de pacotes descartados nos buers Tamanho m edio das las dos buers N umero de pacotes retransmitidos por timeout Atraso m edio dos pacotes Desvio padr ao de atraso dos pacotes

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios gerais de controle de congestionamento Pol ticas de preven c ao de congestionamento

Estrat egias de detec c ao e corre c ao

Aviso de congestionamento Reservar um campo nos cabe calhos dos pacotes para os roteadores preencherem caso detectem congestionamento Terminais e roteadores enviarem pacotes probe periodicamente para perguntar explicitamente sobre congestionamento

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios gerais de controle de congestionamento Pol ticas de preven c ao de congestionamento

Estrat egias de detec c ao e corre c ao


T ecnicas para corre c ao do problema Existem v arios algoritmos de controle de congestionamento:
Yang and Reddy, A taxonomy for congestion control algorithms in packet switching networks, 1995.

Uma t ecnica e aumentar os recursos da rede (acionar roteadores de backup, aumentar n umero de enlaces alternativos, aumentar largura de banda dos enlaces) Outra t ecnica e diminuir a carga de dados (negar ou degradar servi cos dos usu arios, reescalonar as demandas dos usu arios) Podem ser aplicadas em redes de circuitos virtuais ou na camada de trasnporte
Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios gerais de controle de congestionamento Pol ticas de preven c ao de congestionamento

Pol ticas de preven c ao de congestionamento nas camadas

Figura: Fonte: Computer Networks, Tanenbaum, 4ed, 2003.


Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios gerais de controle de congestionamento Pol ticas de preven c ao de congestionamento

Pol ticas de preven c ao de congestionamento nas camadas


Preven c ao de congestionamento no enlace A pol tica de retransmiss ao de pacotes SR (Selective Repeat) e melhor para controle de congestionamento que GBN (Go-Back-N) A pol tica de aproveitar o tr afego reverso (piggback) para conrmar os pacotes recebidos (ACKs) e melhor para controle de congestionamento que gerar pacotes ACKs para cada pacote recebido
(para isso, faz-se necess ario um esquema de controle de uxo com janela pequena para reduzir o n umero de pacotes sem conrma c ao do lado do emissor)

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios gerais de controle de congestionamento Pol ticas de preven c ao de congestionamento

Pol ticas de preven c ao de congestionamento nas camadas


Preven c ao de congestionamento na rede Circuitos virtuais ou datagramas (algoritmos de controle de congestionamento apenas em redes de circuitos virtuais) Estrat egia de enleiramento de pacotes (uma la para cada enlace de entrada, ou de sa da, ou ambos) Ordem de processamento dos pacotes (FIFO, prioridade) e pol tica de descarte de pacotes Algoritmo de roteamento (distribui c ao eciente do tr afego em todas os enlaces) Ger encia do tempo de vida dos pacotes (timeouts antes da chegada dos pacotes ao destino geram retransmiss oes desnecess arias)
Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Princ pios gerais de controle de congestionamento Pol ticas de preven c ao de congestionamento

Pol ticas de preven c ao de congestionamento nas camadas

Preven c ao de congestionamento no transporte Al em de quest oes similares ` aquelas da camada de enlace, o desao e encontrar um bom intervalo de timeout para evitar retransmiss oes desnecess arias

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento em redes de circuitos virtuais Controle de congestionamento em redes de datagramas Algoritmo RED Controle do jitter

Controle de congestionamento em redes de circuitos virtuais (CVs)


Estrat egias de controle de admiss ao
1

Uma vez que o congestionamento foi sinalizado, n ao e permitido estabelecer novos circuitos virtuais at eo problema ser resolvido (tentativas para criar novas conex oes de transporte ir ao falhar) Uma alternativa e permitir novos CVs, mas desciar suas rotas para areas fora do congestionamento (redesenha o grafo da rede, excluindo os pontos de congestionamento) Outra alternativa e negociar acordo entre terminal e a subrede quando o CV e estabelecido (volume e tipo de tr afego, etc.), requer reserva de recursos ao longo do CV
Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento em redes de circuitos virtuais Controle de congestionamento em redes de datagramas Algoritmo RED Controle do jitter

Alternativa de desvio de rotas em CVs

Figura: Fonte: Computer Networks, Tanenbaum, 4ed, 2003.


Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento em redes de circuitos virtuais Controle de congestionamento em redes de datagramas Algoritmo RED Controle do jitter

Controle de congestionamento em redes de datagramas

Cada roteador pode manter uma vari avel u, para cada enlace, reetindo o percentual de utiliza c ao desse enlace Se o valor de u passar um limite estabelecido (threshold), o enlace entra em estado de alerta Quando um pacote chega em um enlace em estado de alerta, uma a c ao deve ser tomada

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento em redes de circuitos virtuais Controle de congestionamento em redes de datagramas Algoritmo RED Controle do jitter

A co es em enlaces em estado de alerta

Bit de alerta Seta um bit especial no cabe calho da mensagem No receptor, a entidade de transporte copia o bit no ACK enviado de volta para o emissor (problema dessa estrat egia: tempo necess ario para a informa c ao retornar ao emissor)

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento em redes de circuitos virtuais Controle de congestionamento em redes de datagramas Algoritmo RED Controle do jitter

A co es em enlaces em estado de alerta


Pacotes chocos (choke packets) O roteador envia um pacote choco de volta para o emissor diretamente (com a informa c ao de quem era o destinat ario) O pacote e rotulado (bit no cabe calho) para n ao gerar mais pacotes desse tipo no caminho de volta O emissor reduz a taxa de envio de pacotes para esse destino at e as condi c oes melhorarem Uma varia c ao e usar outros sinais (ao inv es do percentual de utiliza c ao do enlace): tamanho da la do buer ou utiliza c ao do buer

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento em redes de circuitos virtuais Controle de congestionamento em redes de datagramas Algoritmo RED Controle do jitter

A co es em enlaces em estado de alerta

Pacotes chocos (choke packets) Outra alternativa e o pacote choco ter efeito em todo o hop que ele passa, aumentando o tamanho dos buers nesses hops (al vio mais imediato do ponto de congestionamento, similar a um analg esico para dor enquanto a doen ca n ao e tratada)

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento em redes de circuitos virtuais Controle de congestionamento em redes de datagramas Algoritmo RED Controle do jitter

Envio e efeitos de pacotes chocos

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento em redes de circuitos virtuais Controle de congestionamento em redes de datagramas Algoritmo RED Controle do jitter

Descarte de pacotes
Load shedding (cortes no servi co) Um roteador inundado, escolhe os pacotes que ir a redirecionar A decis ao sobre quais pacotes descartar pode depender da aplica c ao:
em aplica c oes de transfer encia de arquivos, um pacote velho e mais importante que um pacote novo em aplica c oes de audio e v deo e o contr ario, um pacote novo e mais importante que um pacote velho em aplica c oes de transfer encia de documentos com imagens e texto, perder uma linha de pixels de uma gura e melhor que perder uma linha de texto

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento em redes de circuitos virtuais Controle de congestionamento em redes de datagramas Algoritmo RED Controle do jitter

RED (Random Early Detection)

Descarte antecipado de pacotes Id eia: tratar o problema de congestionamento assim que ele apresentar sinais, descartando pacotes antes que o espa co do buer que saturado Leva em conta o fato de ser aplicado em redes cabeadas, onde a perda de pacotes acontece principalmente devido ao estouro dos buers, ao inv es de erros de transmiss ao, e a resposta normalmente e reduzir a taxa de envio

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento em redes de circuitos virtuais Controle de congestionamento em redes de datagramas Algoritmo RED Controle do jitter

RED (Random Early Detection)

A id eia de antecipar o descarte de pacotes e ter tempo para a a c ao causar efeito a tempo de resolver o problema Mas, como avisar o emissor que o seu pacote foi descartado?
uma forma e enviar um choke de alerta (o problema e que ele gera mais tr afego no momento em que se deseja reduzi-lo) uma alternativa e descartar o pacote e n ao avisar (o emissor ir a detectar a falta e tomar as a c oes devidas, como ele sabe que o pacote foi descartado por conta do controle de congestionamento, a resposta dever a ser reduzir o tr afego, ao inv es de aument a-lo)

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento em redes de circuitos virtuais Controle de congestionamento em redes de datagramas Algoritmo RED Controle do jitter

Controle do jitter

Para aplica c oes de audio e v deo n ao faz muito diferen ca se o tempo de entrega dos pacotes e de 10mseg ou 20mseg , desde que seja constante A varia c ao, ou desvio padr ao, no tempo de entrega dos pacotes e chamada jitter Valores altos de jitter (ex., varia c oes entre 10mseg e 20mseg ) ocasionam perda da qualidade da informa c ao recebida

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento em redes de circuitos virtuais Controle de congestionamento em redes de datagramas Algoritmo RED Controle do jitter

Controle de jitter

Figura: Fonte: Computer Networks, Tanenbaum, 4ed, 2003.


Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento em redes de circuitos virtuais Controle de congestionamento em redes de datagramas Algoritmo RED Controle do jitter

Estrat egia para controle de jitter


Quando um pacote chega no roteador, o seu tempo e vericado e o pacote e rotulado com o tempo que ele est a adiantado ou atrasado em rela c ao ao tempo previsto O roteador d a prioridade para os pacotes atrasados e posterga a transmiss ao de pacotes adiantados Em aplica c oes de video sob demanda, o jitter pode ser eliminado buerizando os dados no receptor e repassando-os em seguida para a aplica c ao Em aplica c oes de tempo real (ex., video confer encia), essa estrat egia n ao e diretamente aplic avel

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento no transporte Controle de congestionamento no TCP

Controle de congestionamento no transporte


Quest oes a tratar: Cada emissor deve limitar a taxa de envio em fun c ao do congestionamento percebido na rede, tratando as seguintes quest oes:
1 2 3

Como limitar a taxa de envio? Como perceber o congestionamento? Qual algoritmo o emissor deve usar para mudar a sua taxa de transmiss ao como fun c ao do congestionamento percebido?

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento no transporte Controle de congestionamento no TCP

Controle de congestionamento no TCP


Como o TCP limita o tr afego? O mecanismo de controle de congestionamento do TCP do lado do emissor mantem uma vari avel adicional chamada janela de congestionamento (cwnd) Essa vari avel imp oe restri c oes sobre a taxa na qual o emissor TCP pode gerar tr afego na rede A quantidade de dados n ao conrmados (acked) n ao pode exceder o m nimo entre (cwnd , rwnd ), onde rwnd eo tamanho da janela de recebimento do receptor: LastByteSent LastByteAcked min{cwnd , rwnd }

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento no transporte Controle de congestionamento no TCP

Controle de congestionamento no TCP

Como o TCP percebe o congestionamento? A perda de um datagrama (contendo um segmento TCP) causa um evento de perda (timeout ou tr es ACKs duplicados) no emissor, o que indica congestionamento Como o TCP determina a taxa de envio de pacotes? O objetivo e n ao congestionar a rede e ao mesmo tempo usar toda a largura de banda dispon vel

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento no transporte Controle de congestionamento no TCP

Controle de congestionamento no TCP


Como o TCP determina a taxa de envio de pacotes? A estrat egia do TCP para ajustar sua taxa de transmiss ao e aument a-la em resposta ` a chegada de ACKs at e que ocorra um evento de perda, nesse ponto a taxa e reduzida N ao h a uma sinaliza c ao expl cita da rede sobre o estado de congestionamento: ACKs e eventos de perda s ao sinais impl citos! Cada emissor TCP age sobre as informa c oes locais de forma ass ncrona em rela c ao aos outros emissores TCP

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento no transporte Controle de congestionamento no TCP

Algoritmo de controle de congestionamento no TCP (RFC2581)

Composto de tr es partes:
1 2

In cio lento (slow start): mandat orio na implementa c ao TCP Preven c ao de congestionamento (congestion avoidance): mandat orio na implementa c ao TCP Recupera c ao r apida (fast recovery): recomendado na implementa c ao TCP

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento no transporte Controle de congestionamento no TCP

Primeira parte: in cio lento

Come ca com um valor para cwnd de 1MSS (Maximum Segment Size), resultando em uma taxa de transmiss ao de 1MSSbytes /RTTmseg A cada segmento conrmado, o valor de cwnd aumenta de 1 (crescimento exponencial)

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento no transporte Controle de congestionamento no TCP

Primeira parte: in cio lento

Figura: Fonte: Computer Networking, Kurose-Ross, 5ed, 2010.


Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento no transporte Controle de congestionamento no TCP

Primeira parte: in cio lento

Se ocorrer um evento de perda, o emissor seta cwnd de volta para 1MSS e recome ca o processo Al em disso, a vari avel ssthresh (slow start threshold) e setada para cwnd /2 (metade do valor da janela de congestionamento quando o congestionamento foi detectado) Quando o valor de cwnd alcan ca o valor de ssthresh, a parte in cio lento termina sua execu c ao e o algoritmo passa para a parte preven c ao de congestionamento (incrementa o valor de cwnd de um u nico MSS a cada RTT)

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento no transporte Controle de congestionamento no TCP

Segunda parte: preven c ao do congestionamento

Incrementa o valor de cwnd de forma mais conservadora: um MSS a cada RTT Quando um timeout ocorre, o valor de cwnd e setado de volta para 1MSS e o valor de ssthresh e atualizado para cwnd /2 (quando o evento de perda ocorreu)

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento no transporte Controle de congestionamento no TCP

Algoritmo de controle de congestionamento do TCP

Figura: Fonte: Computer Networking, Kurose-Ross, 5ed, 2010.


Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento no transporte Controle de congestionamento no TCP

Exemplo de funcionamento do algoritmo do TCP

Figura: Fonte: Computer Networks, Tanenbaum, 4ed, 2003.


Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento no transporte Controle de congestionamento no TCP

Terceira parte: recupera c ao r apida

Se tr es ACKs duplicados s ao recebidos, a parte in cio lento e encerrada imediatamente e o TCP executa uma retransmiss ao r apida (retransmite o segmento perdido antes do timeout expirar)

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento no transporte Controle de congestionamento no TCP

Terceira parte: recupera c ao r apida

Figura: Fonte: Computer Networking, Kurose-Ross, 5ed, 2010.


Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento no transporte Controle de congestionamento no TCP

Terceira parte: recupera c ao r apida

O pacote perdido e retransmitido e o valor de cwnd e incrementado de 1MSS a cada ACK duplicado recebido para o segmento que fez o TCP entrar nesse modo Quando o ACK desse segmento e recebido, o TCP volta ao modo de preven c ao de congestionamento Se um timeout ocorre, o TCP vai para o modo in cio lento depois de fazer cwnd voltar a 1MSS e ssthresh para metade do valor corrente de cwnd

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento no transporte Controle de congestionamento no TCP

Algoritmo de controle de congestionamento do TCP

Figura: Fonte: Computer Networking, Kurose-Ross, 5ed, 2010.


Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Controle de congestionamento no transporte Controle de congestionamento no TCP

Algoritmo de controle de congestionamento do TCP

Figura: Fonte: Computer Networking, Kurose-Ross, 5ed, 2010.


Prof. Silvana Rossetto Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Area de pesquisa atual

Desenvolver mecanismos de controle de congestionamento para a Internet que leve em conta o tr afego UDP (n ao segue as regras de controle de congestionamento)
1

Kohler et al, DDCP: designing DCCP: congestion control without reliability, 2006 (ver RFCs mais recentes que tratam de controle de congestionamento)

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Outras refer encias sobre controle de congestionamento

RFC 2581, TCP Congestion Control, 1999 Gevros et al, Congestion Control mechanisms and the best eort service model, 2001 Srikant, The mathematics of Internet congestion control, 2004 Ha et al, CUBIC: a new TCP friendly high speed TCP variant, 2008 Floyd, References on RED (Randon Early Detection) queue management, 2009

Prof. Silvana Rossetto

Controle de congestionamento

Sum ario Princ pios, causas e custos do congestionamento nas redes Solu c oes para controlar o congestionamento Controle de congestionamento na camada de rede Controle de congestionamento na camada de transporte Refer encias bibliogr acas

Refer encias bibliogr acas

1 2

KUROSE and ROSS, Computer Networking, 5ed, 2010. TANENBAUM, Computer Networks, 4ed, 2003.

Prof. Silvana Rossetto

Controle de congestionamento

Você também pode gostar