Resumo ’A Survey of Mechanisms for TCP Congestion Control’
Por: Alyson Lenzi • 19/3/2020 • Resenha • 834 Palavras (4 Páginas) • 193 Visualizações
Resumo—Mecanismosdecontroledecongestionamentogarantem eficiˆencia no uso de largura de banda e durante d´ecadas diversos modelos foram propostos. O artigo aborda alguns destes mecanismos mostrando suas diferenc¸as e utilizando o ns-2 como simulador.
I. INTRODUC ¸ ˜AO Com o avanc¸o das redes de computadores o congestionamento em redes se tornou um t´opico de alta importˆancia. Com issooprotocoloTCP(TransmissionControlProtocol)oferece mecanismos de controle de congestionamento, sendo assim um dos protocolos mais populares na camada de transporte. O principalobjetivodestesmecanismos ´emanteraredeoperando o mais pr´oximo poss´ıvel de sua capacidade, mesmo sofrendo uma sobrecarga. Esse objetivo pode ser subdividido em duas tarefas: A primeira ´e evitar a ocorrˆencia do congestionamento antes mesmo dele ocorrer e resolve-lo mesmo que ocorra. A segunda ´e oferecer um servic¸o justo para as diferentes conex˜oes. Geralmente existem duas maneiras de implementar controle de congestionamento: (1) Network-assisted congestion controls: onde ´e utilizado as filas dos roteadores para monitorar a rede; (2) End-to-End congestion controls: onde pontos finais s˜ao utilizados para monitorar o congestionamento (Geralmente implementado na camada de transporte).
O TCP ´e um protocolo confi´avel, orientado a conex˜ao, ponto-a-ponto, de entrega sequencial e livre de erros. Ao enviar um pacote, o remetente espera uma confirmac¸˜ao do recebimento (ACK), caso n˜ao receba no per´ıodo de tempo definido, o pacote que falta ´e retransmitido. Se um pacote fora de ordem ´e recebido o receptor envia um ACK indicando qual segmento ele esperava receber.
II. ALGORITMOS DE CONTROLE DE CONGESTIONAMENTO - Algoritmo Slow Start (SS): Ap´os o tree-way handshake o TCP manda rajadas de pacotes de acordo com o tamanho de janela (wnd) acordado;Conforme a rede cresce isso se torna um problema pois pode haver gargalos na rede que n˜ao ir˜ao suportar essas rajadas vindas de diversas conex˜oes. Com isso o Slow Start utilizada da seguinte t´ecnica: Duas vari´aveis s˜ao usadas, a ’slow start threshold’ (ssthresh) e a
’congestion window’ (cwnd), quando a transmiss˜ao se inicia a cwnd ´e setada em 1 MSS e o valor da ssthresh depende do OS utilizado. O n´umero de pacotes transmitidos em cada rajada ´ e determinado por ’min[cwnd,wnd]’. A cada ACK recebido a cwnd ´e incrementada em 1. Sendo assim a transmiss˜ao sempre se iniciar´a em 1 pacote e crescer´a exponencialmente. Caso seja detectado uma perda ou ’cwnd = ssthresh’ o algoritmo de prevenc¸˜ao de congestionamento assume o controle. - Algoritmo de prevenc¸˜ao de congestionamento (CA): Quando ele ´e iniciado comec¸a-se por parar o crescimento exponencial do cwnd para ent˜ao ser incrementado em 1 por ACK. Caso ocorra o ’Retransmit Time Out (RTO)’ o CA ir´a considerar como uma perda de pacote, ent˜ao ir´a setar o ssthresh como a metade do cwnd atual e resetar o cwnd iniciando o SS novamente. - Algoritmo de retransmiss˜ao r´apida (FRet): Ao receber 3 DUPACKs (Acks duplicados) ou um RTO ele retransmite o pacote, seta o ssthresh para metade do cwnd, reseta o cwnd e restarta o SS. Esse algoritmo faz com que n˜ao seja necess´ario esperar um RTO para retransmiss˜ao. - Algoritmo de recuperac¸˜ao r´apida: Acontece quando a retransmiss˜ao r´apida n˜ao ativa o SS. Seta ’ssthresh = cwnd/2’ e ’cwnd = ssthresh + 3’. A cada
...