3: Camada de Transporte3c-1 Conteúdo do Capítulo 3 r 3.1 Serviços da camada de transporte r 3.2...
Transcript of 3: Camada de Transporte3c-1 Conteúdo do Capítulo 3 r 3.1 Serviços da camada de transporte r 3.2...
3 Camada de Transporte 3c-1
Conteuacutedo do Capiacutetulo 3
31 Serviccedilos da camada de transporte
32 Multiplexaccedilatildeo e demultiplexaccedilatildeo
33 UDP Transporte natildeo orientado a conexatildeo
34 Princiacutepios da transferecircncia confiaacutevel de dados
35 Transporte orientado a conexatildeo TCP transferecircncia
confiaacutevel controle de fluxo gerenciamento de
conexotildees 36 Princiacutepios de
controle de congestionamento
37 Controle de congestionamento do TCP
3 Camada de Transporte 3c-2
Princiacutepios de Controle de Congestionamento
Congestionamento informalmente ldquomuitas fontes enviando muitos
dados muito rapidamente para a rede poder tratarrdquo
diferente de controle de fluxo manifestaccedilotildees
perda de pacotes (esgotamento de buffers em roteadores)
longos atrasos (enfileiramento nos buffers dos roteadores)
um dos 10 problemas mais importantes em redes
3 Camada de Transporte 3c-3
Causascustos de congestionamento cenaacuterio 1
dois remetentes dois receptores
um roteador buffers infinitos
sem retransmissatildeo
grandes retardos qdo congestionada
vazatildeo maacutexima alcanccedilaacutevel
unlimited shared output link buffers
Host Ain original data
Host B
out
3 Camada de Transporte 3c-4
Causascustos de congestionamento cenaacuterio 2
Um roteador buffers finitos retransmissatildeo pelo remetente de
pacote perdido
finite shared output link buffers
Host A in original data
Host B
out
in original data plus retransmitted data
3 Camada de Transporte 3c-5
sempre (goodput)
retransmissatildeo ldquoperfeitardquo apenas com perdas
retransmissatildeo de pacotes atrasados (natildeo perdidos) torna
maior (do que o caso perfeito) para o mesmo
Causascustos de congestionamento cenaacuterio 2
in
out
=
in
out
gt
in
outR2
R2in
ou
t
b
R2
R2in
ou
t
a
R2
R2in
ou
t
c
R4
R3
ldquocustosrdquo de congestionamento mais trabalho (retransmissatildeo) para dado ldquogoodputrdquo retransmissotildees desnecessaacuterias enviadas muacuteltiplas coacutepias do pacote
3 Camada de Transporte 3c-6
Causascustos de congestionamento cenaacuterio 3 quatro remetentes caminhos com muacuteltiplos enlaces temporizaccedilatildeoretransmissatildeo
in
P o que acontece agrave medida que e crescem
in
finite shared output link buffers
Host Ain original data
Host B
out
in original data plus retransmitted data
3 Camada de Transporte 3c-7
Causascustos de congestionamento cenaacuterio 3
Outro ldquocustordquo de congestionamento quando pacote eacute descartado qq capacidade de transmissatildeo jaacute
usada (antes do descarte) para esse pacote foi desperdiccedilada
Host A
Host B
o
u
t
3 Camada de Transporte 3c-8
Abordagens de controle de congestionamento
Controle de congestionamento fim a fim
natildeo tem realimentaccedilatildeo expliacutecita pela rede
congestionamento inferido a partir das perdas retardo observados pelo sistema terminal
abordagem usada pelo TCP
Controle de congestionamento com apoio da rede
roteadores realimentam os sistemas terminais bit indicando
congestionamento (SNA DECbit TCPIP ECN ATM)
taxa expliacutecita p envio pelo remetente
Duas abordagens amplas para controle de congestionamento
3 Camada de Transporte 3c-9
Estudo de caso controle de congestionamento no ABR da ATM
ABR (available bit rate)
ldquoserviccedilo elaacutesticordquo se caminho do
remetente ldquosubcarregadordquo remetente deveria
usar banda disponiacutevel se caminho do
remetente congestionado remetente reduzido agrave
taxa miacutenima garantida
ceacutelulas RM (resource management)
enviadas pelo remetente intercaladas com ceacutelulas de dados
bits na ceacutelula RM iniciados por comutadores (ldquoapoio da rederdquo) bit NI natildeo aumente a taxa
(congestionamento moderado) bit CI indicaccedilatildeo de
congestionamento ceacutelulas RM devolvidas ao
remetente pelo receptor sem alteraccedilatildeo dos bits
3 Camada de Transporte 3c-10
Estudo de caso controle de congestionamento em ABR da ATM
Campo ER (explicit rate) de 2 bytes na ceacutelula RM comutador congestionado pode diminuir valor ER na ceacutelula taxa do remetente assim ajustada p menor valor possiacutevel entre os
comutadores do caminho bit EFCI em ceacutelulas de dados ligado por comutador
congestionado se EFCI ligado na ceacutelula de dados antes da ceacutelula RM receptor liga
bit CI na ceacutelula RM devolvida
3 Camada de Transporte 3c-11
Conteuacutedo do Capiacutetulo 3
31 Serviccedilos da camada de transporte
32 Multiplexaccedilatildeo e demultiplexaccedilatildeo
33 UDP Transporte natildeo orientado a conexatildeo
34 Princiacutepios da transferecircncia confiaacutevel de dados
35 Transporte orientado a conexatildeo TCP transferecircncia
confiaacutevel controle de fluxo gerenciamento de
conexotildees 36 Princiacutepios de
controle de congestionamento
37 Controle de congestionamento do TCP
3 Camada de Transporte 3c-12
Controle de Congestionamento do TCP
controle fim-a-fim (sem assistecircncia da rede)
transmissor limita a transmissatildeo LastByteSent-LastByteAcked
CongWin Praticamente
CongWin eacute dinacircmica em funccedilatildeo do congestionamento percebido da rede
Como o transmissor percebe o congestionamento
evento de perda = estouro do temporizador ou 3 acks duplicados
transmissor TCP reduz a taxa (CongWin) apoacutes evento de perda
trecircs mecanismos AIMD partida lenta conservador apoacutes
eventos de estouro de temporizaccedilatildeo
taxa = CongWin
RTT Bytesseg
3 Camada de Transporte 3c-13
AIMD do TCP
8 Kbytes
16 Kbytes
24 Kbytes
time
congestionwindow
decrescimento multiplicativo corta CongWin pela metade apoacutes evento de perda
crescimento aditivo incrementa CongWin de 1 MSS a cada RTT na ausecircncia de eventos de perda sondagem
Conexatildeo TCP de longa duraccedilatildeo
3 Camada de Transporte 3c-14
Partida Lenta do TCP
No iniacutecio da conexatildeo CongWin = 1 MSS Exemplo MSS = 500
bytes amp RTT = 200 mseg
taxa inicial = 20 kbps
largura de banda disponiacutevel pode ser gtgt MSSRTT eacute desejaacutevel um
crescimento raacutepido ateacute uma taxa consideraacutevel
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda
3 Camada de Transporte 3c-15
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda duplica CongWin a
cada RTT atraveacutes do incremento
da CongWin para cada ACK recebido
Resumo taxa inicial eacute baixa mas cresce rapidamente de forma exponencial
TCP Partida lenta (mais)
Estaccedilatildeo A
um segmento
RTT
Estaccedilatildeo B
tempo
dois segmentos
quqtro segmentos
3 Camada de Transporte 3c-16
Refinamento Apoacutes 3 ACKs duplicados
corta CongWin pela metade a janela depois cresce linearmente
Mas apoacutes estouro de temporizador CongWin eacute reduzida a 1 MSS janela cresce exponencialmente ateacute um limiar depois cresce
linearmente
bull 3 ACKs duplicados indica que a rede eacute capaz de entregar alguns segmentos bull estouro de temporizador antes de 3 ACKs duplicados eacute mais ldquoalarmanterdquo
Filosofia
3 Camada de Transporte 3c-17
Refinamento (mais)P Quando o crescimento
exponencial deve mudar para linear
R Quando CongWin atinge 12 do seu valor antes do estouro do temporizador
Implementaccedilatildeo Limiar (Threshold)
variaacutevel Com uma perda o limiar
passa a ser 12 da CongWin imediatamente anterior agrave perda
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-2
Princiacutepios de Controle de Congestionamento
Congestionamento informalmente ldquomuitas fontes enviando muitos
dados muito rapidamente para a rede poder tratarrdquo
diferente de controle de fluxo manifestaccedilotildees
perda de pacotes (esgotamento de buffers em roteadores)
longos atrasos (enfileiramento nos buffers dos roteadores)
um dos 10 problemas mais importantes em redes
3 Camada de Transporte 3c-3
Causascustos de congestionamento cenaacuterio 1
dois remetentes dois receptores
um roteador buffers infinitos
sem retransmissatildeo
grandes retardos qdo congestionada
vazatildeo maacutexima alcanccedilaacutevel
unlimited shared output link buffers
Host Ain original data
Host B
out
3 Camada de Transporte 3c-4
Causascustos de congestionamento cenaacuterio 2
Um roteador buffers finitos retransmissatildeo pelo remetente de
pacote perdido
finite shared output link buffers
Host A in original data
Host B
out
in original data plus retransmitted data
3 Camada de Transporte 3c-5
sempre (goodput)
retransmissatildeo ldquoperfeitardquo apenas com perdas
retransmissatildeo de pacotes atrasados (natildeo perdidos) torna
maior (do que o caso perfeito) para o mesmo
Causascustos de congestionamento cenaacuterio 2
in
out
=
in
out
gt
in
outR2
R2in
ou
t
b
R2
R2in
ou
t
a
R2
R2in
ou
t
c
R4
R3
ldquocustosrdquo de congestionamento mais trabalho (retransmissatildeo) para dado ldquogoodputrdquo retransmissotildees desnecessaacuterias enviadas muacuteltiplas coacutepias do pacote
3 Camada de Transporte 3c-6
Causascustos de congestionamento cenaacuterio 3 quatro remetentes caminhos com muacuteltiplos enlaces temporizaccedilatildeoretransmissatildeo
in
P o que acontece agrave medida que e crescem
in
finite shared output link buffers
Host Ain original data
Host B
out
in original data plus retransmitted data
3 Camada de Transporte 3c-7
Causascustos de congestionamento cenaacuterio 3
Outro ldquocustordquo de congestionamento quando pacote eacute descartado qq capacidade de transmissatildeo jaacute
usada (antes do descarte) para esse pacote foi desperdiccedilada
Host A
Host B
o
u
t
3 Camada de Transporte 3c-8
Abordagens de controle de congestionamento
Controle de congestionamento fim a fim
natildeo tem realimentaccedilatildeo expliacutecita pela rede
congestionamento inferido a partir das perdas retardo observados pelo sistema terminal
abordagem usada pelo TCP
Controle de congestionamento com apoio da rede
roteadores realimentam os sistemas terminais bit indicando
congestionamento (SNA DECbit TCPIP ECN ATM)
taxa expliacutecita p envio pelo remetente
Duas abordagens amplas para controle de congestionamento
3 Camada de Transporte 3c-9
Estudo de caso controle de congestionamento no ABR da ATM
ABR (available bit rate)
ldquoserviccedilo elaacutesticordquo se caminho do
remetente ldquosubcarregadordquo remetente deveria
usar banda disponiacutevel se caminho do
remetente congestionado remetente reduzido agrave
taxa miacutenima garantida
ceacutelulas RM (resource management)
enviadas pelo remetente intercaladas com ceacutelulas de dados
bits na ceacutelula RM iniciados por comutadores (ldquoapoio da rederdquo) bit NI natildeo aumente a taxa
(congestionamento moderado) bit CI indicaccedilatildeo de
congestionamento ceacutelulas RM devolvidas ao
remetente pelo receptor sem alteraccedilatildeo dos bits
3 Camada de Transporte 3c-10
Estudo de caso controle de congestionamento em ABR da ATM
Campo ER (explicit rate) de 2 bytes na ceacutelula RM comutador congestionado pode diminuir valor ER na ceacutelula taxa do remetente assim ajustada p menor valor possiacutevel entre os
comutadores do caminho bit EFCI em ceacutelulas de dados ligado por comutador
congestionado se EFCI ligado na ceacutelula de dados antes da ceacutelula RM receptor liga
bit CI na ceacutelula RM devolvida
3 Camada de Transporte 3c-11
Conteuacutedo do Capiacutetulo 3
31 Serviccedilos da camada de transporte
32 Multiplexaccedilatildeo e demultiplexaccedilatildeo
33 UDP Transporte natildeo orientado a conexatildeo
34 Princiacutepios da transferecircncia confiaacutevel de dados
35 Transporte orientado a conexatildeo TCP transferecircncia
confiaacutevel controle de fluxo gerenciamento de
conexotildees 36 Princiacutepios de
controle de congestionamento
37 Controle de congestionamento do TCP
3 Camada de Transporte 3c-12
Controle de Congestionamento do TCP
controle fim-a-fim (sem assistecircncia da rede)
transmissor limita a transmissatildeo LastByteSent-LastByteAcked
CongWin Praticamente
CongWin eacute dinacircmica em funccedilatildeo do congestionamento percebido da rede
Como o transmissor percebe o congestionamento
evento de perda = estouro do temporizador ou 3 acks duplicados
transmissor TCP reduz a taxa (CongWin) apoacutes evento de perda
trecircs mecanismos AIMD partida lenta conservador apoacutes
eventos de estouro de temporizaccedilatildeo
taxa = CongWin
RTT Bytesseg
3 Camada de Transporte 3c-13
AIMD do TCP
8 Kbytes
16 Kbytes
24 Kbytes
time
congestionwindow
decrescimento multiplicativo corta CongWin pela metade apoacutes evento de perda
crescimento aditivo incrementa CongWin de 1 MSS a cada RTT na ausecircncia de eventos de perda sondagem
Conexatildeo TCP de longa duraccedilatildeo
3 Camada de Transporte 3c-14
Partida Lenta do TCP
No iniacutecio da conexatildeo CongWin = 1 MSS Exemplo MSS = 500
bytes amp RTT = 200 mseg
taxa inicial = 20 kbps
largura de banda disponiacutevel pode ser gtgt MSSRTT eacute desejaacutevel um
crescimento raacutepido ateacute uma taxa consideraacutevel
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda
3 Camada de Transporte 3c-15
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda duplica CongWin a
cada RTT atraveacutes do incremento
da CongWin para cada ACK recebido
Resumo taxa inicial eacute baixa mas cresce rapidamente de forma exponencial
TCP Partida lenta (mais)
Estaccedilatildeo A
um segmento
RTT
Estaccedilatildeo B
tempo
dois segmentos
quqtro segmentos
3 Camada de Transporte 3c-16
Refinamento Apoacutes 3 ACKs duplicados
corta CongWin pela metade a janela depois cresce linearmente
Mas apoacutes estouro de temporizador CongWin eacute reduzida a 1 MSS janela cresce exponencialmente ateacute um limiar depois cresce
linearmente
bull 3 ACKs duplicados indica que a rede eacute capaz de entregar alguns segmentos bull estouro de temporizador antes de 3 ACKs duplicados eacute mais ldquoalarmanterdquo
Filosofia
3 Camada de Transporte 3c-17
Refinamento (mais)P Quando o crescimento
exponencial deve mudar para linear
R Quando CongWin atinge 12 do seu valor antes do estouro do temporizador
Implementaccedilatildeo Limiar (Threshold)
variaacutevel Com uma perda o limiar
passa a ser 12 da CongWin imediatamente anterior agrave perda
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-3
Causascustos de congestionamento cenaacuterio 1
dois remetentes dois receptores
um roteador buffers infinitos
sem retransmissatildeo
grandes retardos qdo congestionada
vazatildeo maacutexima alcanccedilaacutevel
unlimited shared output link buffers
Host Ain original data
Host B
out
3 Camada de Transporte 3c-4
Causascustos de congestionamento cenaacuterio 2
Um roteador buffers finitos retransmissatildeo pelo remetente de
pacote perdido
finite shared output link buffers
Host A in original data
Host B
out
in original data plus retransmitted data
3 Camada de Transporte 3c-5
sempre (goodput)
retransmissatildeo ldquoperfeitardquo apenas com perdas
retransmissatildeo de pacotes atrasados (natildeo perdidos) torna
maior (do que o caso perfeito) para o mesmo
Causascustos de congestionamento cenaacuterio 2
in
out
=
in
out
gt
in
outR2
R2in
ou
t
b
R2
R2in
ou
t
a
R2
R2in
ou
t
c
R4
R3
ldquocustosrdquo de congestionamento mais trabalho (retransmissatildeo) para dado ldquogoodputrdquo retransmissotildees desnecessaacuterias enviadas muacuteltiplas coacutepias do pacote
3 Camada de Transporte 3c-6
Causascustos de congestionamento cenaacuterio 3 quatro remetentes caminhos com muacuteltiplos enlaces temporizaccedilatildeoretransmissatildeo
in
P o que acontece agrave medida que e crescem
in
finite shared output link buffers
Host Ain original data
Host B
out
in original data plus retransmitted data
3 Camada de Transporte 3c-7
Causascustos de congestionamento cenaacuterio 3
Outro ldquocustordquo de congestionamento quando pacote eacute descartado qq capacidade de transmissatildeo jaacute
usada (antes do descarte) para esse pacote foi desperdiccedilada
Host A
Host B
o
u
t
3 Camada de Transporte 3c-8
Abordagens de controle de congestionamento
Controle de congestionamento fim a fim
natildeo tem realimentaccedilatildeo expliacutecita pela rede
congestionamento inferido a partir das perdas retardo observados pelo sistema terminal
abordagem usada pelo TCP
Controle de congestionamento com apoio da rede
roteadores realimentam os sistemas terminais bit indicando
congestionamento (SNA DECbit TCPIP ECN ATM)
taxa expliacutecita p envio pelo remetente
Duas abordagens amplas para controle de congestionamento
3 Camada de Transporte 3c-9
Estudo de caso controle de congestionamento no ABR da ATM
ABR (available bit rate)
ldquoserviccedilo elaacutesticordquo se caminho do
remetente ldquosubcarregadordquo remetente deveria
usar banda disponiacutevel se caminho do
remetente congestionado remetente reduzido agrave
taxa miacutenima garantida
ceacutelulas RM (resource management)
enviadas pelo remetente intercaladas com ceacutelulas de dados
bits na ceacutelula RM iniciados por comutadores (ldquoapoio da rederdquo) bit NI natildeo aumente a taxa
(congestionamento moderado) bit CI indicaccedilatildeo de
congestionamento ceacutelulas RM devolvidas ao
remetente pelo receptor sem alteraccedilatildeo dos bits
3 Camada de Transporte 3c-10
Estudo de caso controle de congestionamento em ABR da ATM
Campo ER (explicit rate) de 2 bytes na ceacutelula RM comutador congestionado pode diminuir valor ER na ceacutelula taxa do remetente assim ajustada p menor valor possiacutevel entre os
comutadores do caminho bit EFCI em ceacutelulas de dados ligado por comutador
congestionado se EFCI ligado na ceacutelula de dados antes da ceacutelula RM receptor liga
bit CI na ceacutelula RM devolvida
3 Camada de Transporte 3c-11
Conteuacutedo do Capiacutetulo 3
31 Serviccedilos da camada de transporte
32 Multiplexaccedilatildeo e demultiplexaccedilatildeo
33 UDP Transporte natildeo orientado a conexatildeo
34 Princiacutepios da transferecircncia confiaacutevel de dados
35 Transporte orientado a conexatildeo TCP transferecircncia
confiaacutevel controle de fluxo gerenciamento de
conexotildees 36 Princiacutepios de
controle de congestionamento
37 Controle de congestionamento do TCP
3 Camada de Transporte 3c-12
Controle de Congestionamento do TCP
controle fim-a-fim (sem assistecircncia da rede)
transmissor limita a transmissatildeo LastByteSent-LastByteAcked
CongWin Praticamente
CongWin eacute dinacircmica em funccedilatildeo do congestionamento percebido da rede
Como o transmissor percebe o congestionamento
evento de perda = estouro do temporizador ou 3 acks duplicados
transmissor TCP reduz a taxa (CongWin) apoacutes evento de perda
trecircs mecanismos AIMD partida lenta conservador apoacutes
eventos de estouro de temporizaccedilatildeo
taxa = CongWin
RTT Bytesseg
3 Camada de Transporte 3c-13
AIMD do TCP
8 Kbytes
16 Kbytes
24 Kbytes
time
congestionwindow
decrescimento multiplicativo corta CongWin pela metade apoacutes evento de perda
crescimento aditivo incrementa CongWin de 1 MSS a cada RTT na ausecircncia de eventos de perda sondagem
Conexatildeo TCP de longa duraccedilatildeo
3 Camada de Transporte 3c-14
Partida Lenta do TCP
No iniacutecio da conexatildeo CongWin = 1 MSS Exemplo MSS = 500
bytes amp RTT = 200 mseg
taxa inicial = 20 kbps
largura de banda disponiacutevel pode ser gtgt MSSRTT eacute desejaacutevel um
crescimento raacutepido ateacute uma taxa consideraacutevel
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda
3 Camada de Transporte 3c-15
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda duplica CongWin a
cada RTT atraveacutes do incremento
da CongWin para cada ACK recebido
Resumo taxa inicial eacute baixa mas cresce rapidamente de forma exponencial
TCP Partida lenta (mais)
Estaccedilatildeo A
um segmento
RTT
Estaccedilatildeo B
tempo
dois segmentos
quqtro segmentos
3 Camada de Transporte 3c-16
Refinamento Apoacutes 3 ACKs duplicados
corta CongWin pela metade a janela depois cresce linearmente
Mas apoacutes estouro de temporizador CongWin eacute reduzida a 1 MSS janela cresce exponencialmente ateacute um limiar depois cresce
linearmente
bull 3 ACKs duplicados indica que a rede eacute capaz de entregar alguns segmentos bull estouro de temporizador antes de 3 ACKs duplicados eacute mais ldquoalarmanterdquo
Filosofia
3 Camada de Transporte 3c-17
Refinamento (mais)P Quando o crescimento
exponencial deve mudar para linear
R Quando CongWin atinge 12 do seu valor antes do estouro do temporizador
Implementaccedilatildeo Limiar (Threshold)
variaacutevel Com uma perda o limiar
passa a ser 12 da CongWin imediatamente anterior agrave perda
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-4
Causascustos de congestionamento cenaacuterio 2
Um roteador buffers finitos retransmissatildeo pelo remetente de
pacote perdido
finite shared output link buffers
Host A in original data
Host B
out
in original data plus retransmitted data
3 Camada de Transporte 3c-5
sempre (goodput)
retransmissatildeo ldquoperfeitardquo apenas com perdas
retransmissatildeo de pacotes atrasados (natildeo perdidos) torna
maior (do que o caso perfeito) para o mesmo
Causascustos de congestionamento cenaacuterio 2
in
out
=
in
out
gt
in
outR2
R2in
ou
t
b
R2
R2in
ou
t
a
R2
R2in
ou
t
c
R4
R3
ldquocustosrdquo de congestionamento mais trabalho (retransmissatildeo) para dado ldquogoodputrdquo retransmissotildees desnecessaacuterias enviadas muacuteltiplas coacutepias do pacote
3 Camada de Transporte 3c-6
Causascustos de congestionamento cenaacuterio 3 quatro remetentes caminhos com muacuteltiplos enlaces temporizaccedilatildeoretransmissatildeo
in
P o que acontece agrave medida que e crescem
in
finite shared output link buffers
Host Ain original data
Host B
out
in original data plus retransmitted data
3 Camada de Transporte 3c-7
Causascustos de congestionamento cenaacuterio 3
Outro ldquocustordquo de congestionamento quando pacote eacute descartado qq capacidade de transmissatildeo jaacute
usada (antes do descarte) para esse pacote foi desperdiccedilada
Host A
Host B
o
u
t
3 Camada de Transporte 3c-8
Abordagens de controle de congestionamento
Controle de congestionamento fim a fim
natildeo tem realimentaccedilatildeo expliacutecita pela rede
congestionamento inferido a partir das perdas retardo observados pelo sistema terminal
abordagem usada pelo TCP
Controle de congestionamento com apoio da rede
roteadores realimentam os sistemas terminais bit indicando
congestionamento (SNA DECbit TCPIP ECN ATM)
taxa expliacutecita p envio pelo remetente
Duas abordagens amplas para controle de congestionamento
3 Camada de Transporte 3c-9
Estudo de caso controle de congestionamento no ABR da ATM
ABR (available bit rate)
ldquoserviccedilo elaacutesticordquo se caminho do
remetente ldquosubcarregadordquo remetente deveria
usar banda disponiacutevel se caminho do
remetente congestionado remetente reduzido agrave
taxa miacutenima garantida
ceacutelulas RM (resource management)
enviadas pelo remetente intercaladas com ceacutelulas de dados
bits na ceacutelula RM iniciados por comutadores (ldquoapoio da rederdquo) bit NI natildeo aumente a taxa
(congestionamento moderado) bit CI indicaccedilatildeo de
congestionamento ceacutelulas RM devolvidas ao
remetente pelo receptor sem alteraccedilatildeo dos bits
3 Camada de Transporte 3c-10
Estudo de caso controle de congestionamento em ABR da ATM
Campo ER (explicit rate) de 2 bytes na ceacutelula RM comutador congestionado pode diminuir valor ER na ceacutelula taxa do remetente assim ajustada p menor valor possiacutevel entre os
comutadores do caminho bit EFCI em ceacutelulas de dados ligado por comutador
congestionado se EFCI ligado na ceacutelula de dados antes da ceacutelula RM receptor liga
bit CI na ceacutelula RM devolvida
3 Camada de Transporte 3c-11
Conteuacutedo do Capiacutetulo 3
31 Serviccedilos da camada de transporte
32 Multiplexaccedilatildeo e demultiplexaccedilatildeo
33 UDP Transporte natildeo orientado a conexatildeo
34 Princiacutepios da transferecircncia confiaacutevel de dados
35 Transporte orientado a conexatildeo TCP transferecircncia
confiaacutevel controle de fluxo gerenciamento de
conexotildees 36 Princiacutepios de
controle de congestionamento
37 Controle de congestionamento do TCP
3 Camada de Transporte 3c-12
Controle de Congestionamento do TCP
controle fim-a-fim (sem assistecircncia da rede)
transmissor limita a transmissatildeo LastByteSent-LastByteAcked
CongWin Praticamente
CongWin eacute dinacircmica em funccedilatildeo do congestionamento percebido da rede
Como o transmissor percebe o congestionamento
evento de perda = estouro do temporizador ou 3 acks duplicados
transmissor TCP reduz a taxa (CongWin) apoacutes evento de perda
trecircs mecanismos AIMD partida lenta conservador apoacutes
eventos de estouro de temporizaccedilatildeo
taxa = CongWin
RTT Bytesseg
3 Camada de Transporte 3c-13
AIMD do TCP
8 Kbytes
16 Kbytes
24 Kbytes
time
congestionwindow
decrescimento multiplicativo corta CongWin pela metade apoacutes evento de perda
crescimento aditivo incrementa CongWin de 1 MSS a cada RTT na ausecircncia de eventos de perda sondagem
Conexatildeo TCP de longa duraccedilatildeo
3 Camada de Transporte 3c-14
Partida Lenta do TCP
No iniacutecio da conexatildeo CongWin = 1 MSS Exemplo MSS = 500
bytes amp RTT = 200 mseg
taxa inicial = 20 kbps
largura de banda disponiacutevel pode ser gtgt MSSRTT eacute desejaacutevel um
crescimento raacutepido ateacute uma taxa consideraacutevel
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda
3 Camada de Transporte 3c-15
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda duplica CongWin a
cada RTT atraveacutes do incremento
da CongWin para cada ACK recebido
Resumo taxa inicial eacute baixa mas cresce rapidamente de forma exponencial
TCP Partida lenta (mais)
Estaccedilatildeo A
um segmento
RTT
Estaccedilatildeo B
tempo
dois segmentos
quqtro segmentos
3 Camada de Transporte 3c-16
Refinamento Apoacutes 3 ACKs duplicados
corta CongWin pela metade a janela depois cresce linearmente
Mas apoacutes estouro de temporizador CongWin eacute reduzida a 1 MSS janela cresce exponencialmente ateacute um limiar depois cresce
linearmente
bull 3 ACKs duplicados indica que a rede eacute capaz de entregar alguns segmentos bull estouro de temporizador antes de 3 ACKs duplicados eacute mais ldquoalarmanterdquo
Filosofia
3 Camada de Transporte 3c-17
Refinamento (mais)P Quando o crescimento
exponencial deve mudar para linear
R Quando CongWin atinge 12 do seu valor antes do estouro do temporizador
Implementaccedilatildeo Limiar (Threshold)
variaacutevel Com uma perda o limiar
passa a ser 12 da CongWin imediatamente anterior agrave perda
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-5
sempre (goodput)
retransmissatildeo ldquoperfeitardquo apenas com perdas
retransmissatildeo de pacotes atrasados (natildeo perdidos) torna
maior (do que o caso perfeito) para o mesmo
Causascustos de congestionamento cenaacuterio 2
in
out
=
in
out
gt
in
outR2
R2in
ou
t
b
R2
R2in
ou
t
a
R2
R2in
ou
t
c
R4
R3
ldquocustosrdquo de congestionamento mais trabalho (retransmissatildeo) para dado ldquogoodputrdquo retransmissotildees desnecessaacuterias enviadas muacuteltiplas coacutepias do pacote
3 Camada de Transporte 3c-6
Causascustos de congestionamento cenaacuterio 3 quatro remetentes caminhos com muacuteltiplos enlaces temporizaccedilatildeoretransmissatildeo
in
P o que acontece agrave medida que e crescem
in
finite shared output link buffers
Host Ain original data
Host B
out
in original data plus retransmitted data
3 Camada de Transporte 3c-7
Causascustos de congestionamento cenaacuterio 3
Outro ldquocustordquo de congestionamento quando pacote eacute descartado qq capacidade de transmissatildeo jaacute
usada (antes do descarte) para esse pacote foi desperdiccedilada
Host A
Host B
o
u
t
3 Camada de Transporte 3c-8
Abordagens de controle de congestionamento
Controle de congestionamento fim a fim
natildeo tem realimentaccedilatildeo expliacutecita pela rede
congestionamento inferido a partir das perdas retardo observados pelo sistema terminal
abordagem usada pelo TCP
Controle de congestionamento com apoio da rede
roteadores realimentam os sistemas terminais bit indicando
congestionamento (SNA DECbit TCPIP ECN ATM)
taxa expliacutecita p envio pelo remetente
Duas abordagens amplas para controle de congestionamento
3 Camada de Transporte 3c-9
Estudo de caso controle de congestionamento no ABR da ATM
ABR (available bit rate)
ldquoserviccedilo elaacutesticordquo se caminho do
remetente ldquosubcarregadordquo remetente deveria
usar banda disponiacutevel se caminho do
remetente congestionado remetente reduzido agrave
taxa miacutenima garantida
ceacutelulas RM (resource management)
enviadas pelo remetente intercaladas com ceacutelulas de dados
bits na ceacutelula RM iniciados por comutadores (ldquoapoio da rederdquo) bit NI natildeo aumente a taxa
(congestionamento moderado) bit CI indicaccedilatildeo de
congestionamento ceacutelulas RM devolvidas ao
remetente pelo receptor sem alteraccedilatildeo dos bits
3 Camada de Transporte 3c-10
Estudo de caso controle de congestionamento em ABR da ATM
Campo ER (explicit rate) de 2 bytes na ceacutelula RM comutador congestionado pode diminuir valor ER na ceacutelula taxa do remetente assim ajustada p menor valor possiacutevel entre os
comutadores do caminho bit EFCI em ceacutelulas de dados ligado por comutador
congestionado se EFCI ligado na ceacutelula de dados antes da ceacutelula RM receptor liga
bit CI na ceacutelula RM devolvida
3 Camada de Transporte 3c-11
Conteuacutedo do Capiacutetulo 3
31 Serviccedilos da camada de transporte
32 Multiplexaccedilatildeo e demultiplexaccedilatildeo
33 UDP Transporte natildeo orientado a conexatildeo
34 Princiacutepios da transferecircncia confiaacutevel de dados
35 Transporte orientado a conexatildeo TCP transferecircncia
confiaacutevel controle de fluxo gerenciamento de
conexotildees 36 Princiacutepios de
controle de congestionamento
37 Controle de congestionamento do TCP
3 Camada de Transporte 3c-12
Controle de Congestionamento do TCP
controle fim-a-fim (sem assistecircncia da rede)
transmissor limita a transmissatildeo LastByteSent-LastByteAcked
CongWin Praticamente
CongWin eacute dinacircmica em funccedilatildeo do congestionamento percebido da rede
Como o transmissor percebe o congestionamento
evento de perda = estouro do temporizador ou 3 acks duplicados
transmissor TCP reduz a taxa (CongWin) apoacutes evento de perda
trecircs mecanismos AIMD partida lenta conservador apoacutes
eventos de estouro de temporizaccedilatildeo
taxa = CongWin
RTT Bytesseg
3 Camada de Transporte 3c-13
AIMD do TCP
8 Kbytes
16 Kbytes
24 Kbytes
time
congestionwindow
decrescimento multiplicativo corta CongWin pela metade apoacutes evento de perda
crescimento aditivo incrementa CongWin de 1 MSS a cada RTT na ausecircncia de eventos de perda sondagem
Conexatildeo TCP de longa duraccedilatildeo
3 Camada de Transporte 3c-14
Partida Lenta do TCP
No iniacutecio da conexatildeo CongWin = 1 MSS Exemplo MSS = 500
bytes amp RTT = 200 mseg
taxa inicial = 20 kbps
largura de banda disponiacutevel pode ser gtgt MSSRTT eacute desejaacutevel um
crescimento raacutepido ateacute uma taxa consideraacutevel
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda
3 Camada de Transporte 3c-15
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda duplica CongWin a
cada RTT atraveacutes do incremento
da CongWin para cada ACK recebido
Resumo taxa inicial eacute baixa mas cresce rapidamente de forma exponencial
TCP Partida lenta (mais)
Estaccedilatildeo A
um segmento
RTT
Estaccedilatildeo B
tempo
dois segmentos
quqtro segmentos
3 Camada de Transporte 3c-16
Refinamento Apoacutes 3 ACKs duplicados
corta CongWin pela metade a janela depois cresce linearmente
Mas apoacutes estouro de temporizador CongWin eacute reduzida a 1 MSS janela cresce exponencialmente ateacute um limiar depois cresce
linearmente
bull 3 ACKs duplicados indica que a rede eacute capaz de entregar alguns segmentos bull estouro de temporizador antes de 3 ACKs duplicados eacute mais ldquoalarmanterdquo
Filosofia
3 Camada de Transporte 3c-17
Refinamento (mais)P Quando o crescimento
exponencial deve mudar para linear
R Quando CongWin atinge 12 do seu valor antes do estouro do temporizador
Implementaccedilatildeo Limiar (Threshold)
variaacutevel Com uma perda o limiar
passa a ser 12 da CongWin imediatamente anterior agrave perda
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-6
Causascustos de congestionamento cenaacuterio 3 quatro remetentes caminhos com muacuteltiplos enlaces temporizaccedilatildeoretransmissatildeo
in
P o que acontece agrave medida que e crescem
in
finite shared output link buffers
Host Ain original data
Host B
out
in original data plus retransmitted data
3 Camada de Transporte 3c-7
Causascustos de congestionamento cenaacuterio 3
Outro ldquocustordquo de congestionamento quando pacote eacute descartado qq capacidade de transmissatildeo jaacute
usada (antes do descarte) para esse pacote foi desperdiccedilada
Host A
Host B
o
u
t
3 Camada de Transporte 3c-8
Abordagens de controle de congestionamento
Controle de congestionamento fim a fim
natildeo tem realimentaccedilatildeo expliacutecita pela rede
congestionamento inferido a partir das perdas retardo observados pelo sistema terminal
abordagem usada pelo TCP
Controle de congestionamento com apoio da rede
roteadores realimentam os sistemas terminais bit indicando
congestionamento (SNA DECbit TCPIP ECN ATM)
taxa expliacutecita p envio pelo remetente
Duas abordagens amplas para controle de congestionamento
3 Camada de Transporte 3c-9
Estudo de caso controle de congestionamento no ABR da ATM
ABR (available bit rate)
ldquoserviccedilo elaacutesticordquo se caminho do
remetente ldquosubcarregadordquo remetente deveria
usar banda disponiacutevel se caminho do
remetente congestionado remetente reduzido agrave
taxa miacutenima garantida
ceacutelulas RM (resource management)
enviadas pelo remetente intercaladas com ceacutelulas de dados
bits na ceacutelula RM iniciados por comutadores (ldquoapoio da rederdquo) bit NI natildeo aumente a taxa
(congestionamento moderado) bit CI indicaccedilatildeo de
congestionamento ceacutelulas RM devolvidas ao
remetente pelo receptor sem alteraccedilatildeo dos bits
3 Camada de Transporte 3c-10
Estudo de caso controle de congestionamento em ABR da ATM
Campo ER (explicit rate) de 2 bytes na ceacutelula RM comutador congestionado pode diminuir valor ER na ceacutelula taxa do remetente assim ajustada p menor valor possiacutevel entre os
comutadores do caminho bit EFCI em ceacutelulas de dados ligado por comutador
congestionado se EFCI ligado na ceacutelula de dados antes da ceacutelula RM receptor liga
bit CI na ceacutelula RM devolvida
3 Camada de Transporte 3c-11
Conteuacutedo do Capiacutetulo 3
31 Serviccedilos da camada de transporte
32 Multiplexaccedilatildeo e demultiplexaccedilatildeo
33 UDP Transporte natildeo orientado a conexatildeo
34 Princiacutepios da transferecircncia confiaacutevel de dados
35 Transporte orientado a conexatildeo TCP transferecircncia
confiaacutevel controle de fluxo gerenciamento de
conexotildees 36 Princiacutepios de
controle de congestionamento
37 Controle de congestionamento do TCP
3 Camada de Transporte 3c-12
Controle de Congestionamento do TCP
controle fim-a-fim (sem assistecircncia da rede)
transmissor limita a transmissatildeo LastByteSent-LastByteAcked
CongWin Praticamente
CongWin eacute dinacircmica em funccedilatildeo do congestionamento percebido da rede
Como o transmissor percebe o congestionamento
evento de perda = estouro do temporizador ou 3 acks duplicados
transmissor TCP reduz a taxa (CongWin) apoacutes evento de perda
trecircs mecanismos AIMD partida lenta conservador apoacutes
eventos de estouro de temporizaccedilatildeo
taxa = CongWin
RTT Bytesseg
3 Camada de Transporte 3c-13
AIMD do TCP
8 Kbytes
16 Kbytes
24 Kbytes
time
congestionwindow
decrescimento multiplicativo corta CongWin pela metade apoacutes evento de perda
crescimento aditivo incrementa CongWin de 1 MSS a cada RTT na ausecircncia de eventos de perda sondagem
Conexatildeo TCP de longa duraccedilatildeo
3 Camada de Transporte 3c-14
Partida Lenta do TCP
No iniacutecio da conexatildeo CongWin = 1 MSS Exemplo MSS = 500
bytes amp RTT = 200 mseg
taxa inicial = 20 kbps
largura de banda disponiacutevel pode ser gtgt MSSRTT eacute desejaacutevel um
crescimento raacutepido ateacute uma taxa consideraacutevel
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda
3 Camada de Transporte 3c-15
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda duplica CongWin a
cada RTT atraveacutes do incremento
da CongWin para cada ACK recebido
Resumo taxa inicial eacute baixa mas cresce rapidamente de forma exponencial
TCP Partida lenta (mais)
Estaccedilatildeo A
um segmento
RTT
Estaccedilatildeo B
tempo
dois segmentos
quqtro segmentos
3 Camada de Transporte 3c-16
Refinamento Apoacutes 3 ACKs duplicados
corta CongWin pela metade a janela depois cresce linearmente
Mas apoacutes estouro de temporizador CongWin eacute reduzida a 1 MSS janela cresce exponencialmente ateacute um limiar depois cresce
linearmente
bull 3 ACKs duplicados indica que a rede eacute capaz de entregar alguns segmentos bull estouro de temporizador antes de 3 ACKs duplicados eacute mais ldquoalarmanterdquo
Filosofia
3 Camada de Transporte 3c-17
Refinamento (mais)P Quando o crescimento
exponencial deve mudar para linear
R Quando CongWin atinge 12 do seu valor antes do estouro do temporizador
Implementaccedilatildeo Limiar (Threshold)
variaacutevel Com uma perda o limiar
passa a ser 12 da CongWin imediatamente anterior agrave perda
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-7
Causascustos de congestionamento cenaacuterio 3
Outro ldquocustordquo de congestionamento quando pacote eacute descartado qq capacidade de transmissatildeo jaacute
usada (antes do descarte) para esse pacote foi desperdiccedilada
Host A
Host B
o
u
t
3 Camada de Transporte 3c-8
Abordagens de controle de congestionamento
Controle de congestionamento fim a fim
natildeo tem realimentaccedilatildeo expliacutecita pela rede
congestionamento inferido a partir das perdas retardo observados pelo sistema terminal
abordagem usada pelo TCP
Controle de congestionamento com apoio da rede
roteadores realimentam os sistemas terminais bit indicando
congestionamento (SNA DECbit TCPIP ECN ATM)
taxa expliacutecita p envio pelo remetente
Duas abordagens amplas para controle de congestionamento
3 Camada de Transporte 3c-9
Estudo de caso controle de congestionamento no ABR da ATM
ABR (available bit rate)
ldquoserviccedilo elaacutesticordquo se caminho do
remetente ldquosubcarregadordquo remetente deveria
usar banda disponiacutevel se caminho do
remetente congestionado remetente reduzido agrave
taxa miacutenima garantida
ceacutelulas RM (resource management)
enviadas pelo remetente intercaladas com ceacutelulas de dados
bits na ceacutelula RM iniciados por comutadores (ldquoapoio da rederdquo) bit NI natildeo aumente a taxa
(congestionamento moderado) bit CI indicaccedilatildeo de
congestionamento ceacutelulas RM devolvidas ao
remetente pelo receptor sem alteraccedilatildeo dos bits
3 Camada de Transporte 3c-10
Estudo de caso controle de congestionamento em ABR da ATM
Campo ER (explicit rate) de 2 bytes na ceacutelula RM comutador congestionado pode diminuir valor ER na ceacutelula taxa do remetente assim ajustada p menor valor possiacutevel entre os
comutadores do caminho bit EFCI em ceacutelulas de dados ligado por comutador
congestionado se EFCI ligado na ceacutelula de dados antes da ceacutelula RM receptor liga
bit CI na ceacutelula RM devolvida
3 Camada de Transporte 3c-11
Conteuacutedo do Capiacutetulo 3
31 Serviccedilos da camada de transporte
32 Multiplexaccedilatildeo e demultiplexaccedilatildeo
33 UDP Transporte natildeo orientado a conexatildeo
34 Princiacutepios da transferecircncia confiaacutevel de dados
35 Transporte orientado a conexatildeo TCP transferecircncia
confiaacutevel controle de fluxo gerenciamento de
conexotildees 36 Princiacutepios de
controle de congestionamento
37 Controle de congestionamento do TCP
3 Camada de Transporte 3c-12
Controle de Congestionamento do TCP
controle fim-a-fim (sem assistecircncia da rede)
transmissor limita a transmissatildeo LastByteSent-LastByteAcked
CongWin Praticamente
CongWin eacute dinacircmica em funccedilatildeo do congestionamento percebido da rede
Como o transmissor percebe o congestionamento
evento de perda = estouro do temporizador ou 3 acks duplicados
transmissor TCP reduz a taxa (CongWin) apoacutes evento de perda
trecircs mecanismos AIMD partida lenta conservador apoacutes
eventos de estouro de temporizaccedilatildeo
taxa = CongWin
RTT Bytesseg
3 Camada de Transporte 3c-13
AIMD do TCP
8 Kbytes
16 Kbytes
24 Kbytes
time
congestionwindow
decrescimento multiplicativo corta CongWin pela metade apoacutes evento de perda
crescimento aditivo incrementa CongWin de 1 MSS a cada RTT na ausecircncia de eventos de perda sondagem
Conexatildeo TCP de longa duraccedilatildeo
3 Camada de Transporte 3c-14
Partida Lenta do TCP
No iniacutecio da conexatildeo CongWin = 1 MSS Exemplo MSS = 500
bytes amp RTT = 200 mseg
taxa inicial = 20 kbps
largura de banda disponiacutevel pode ser gtgt MSSRTT eacute desejaacutevel um
crescimento raacutepido ateacute uma taxa consideraacutevel
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda
3 Camada de Transporte 3c-15
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda duplica CongWin a
cada RTT atraveacutes do incremento
da CongWin para cada ACK recebido
Resumo taxa inicial eacute baixa mas cresce rapidamente de forma exponencial
TCP Partida lenta (mais)
Estaccedilatildeo A
um segmento
RTT
Estaccedilatildeo B
tempo
dois segmentos
quqtro segmentos
3 Camada de Transporte 3c-16
Refinamento Apoacutes 3 ACKs duplicados
corta CongWin pela metade a janela depois cresce linearmente
Mas apoacutes estouro de temporizador CongWin eacute reduzida a 1 MSS janela cresce exponencialmente ateacute um limiar depois cresce
linearmente
bull 3 ACKs duplicados indica que a rede eacute capaz de entregar alguns segmentos bull estouro de temporizador antes de 3 ACKs duplicados eacute mais ldquoalarmanterdquo
Filosofia
3 Camada de Transporte 3c-17
Refinamento (mais)P Quando o crescimento
exponencial deve mudar para linear
R Quando CongWin atinge 12 do seu valor antes do estouro do temporizador
Implementaccedilatildeo Limiar (Threshold)
variaacutevel Com uma perda o limiar
passa a ser 12 da CongWin imediatamente anterior agrave perda
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-8
Abordagens de controle de congestionamento
Controle de congestionamento fim a fim
natildeo tem realimentaccedilatildeo expliacutecita pela rede
congestionamento inferido a partir das perdas retardo observados pelo sistema terminal
abordagem usada pelo TCP
Controle de congestionamento com apoio da rede
roteadores realimentam os sistemas terminais bit indicando
congestionamento (SNA DECbit TCPIP ECN ATM)
taxa expliacutecita p envio pelo remetente
Duas abordagens amplas para controle de congestionamento
3 Camada de Transporte 3c-9
Estudo de caso controle de congestionamento no ABR da ATM
ABR (available bit rate)
ldquoserviccedilo elaacutesticordquo se caminho do
remetente ldquosubcarregadordquo remetente deveria
usar banda disponiacutevel se caminho do
remetente congestionado remetente reduzido agrave
taxa miacutenima garantida
ceacutelulas RM (resource management)
enviadas pelo remetente intercaladas com ceacutelulas de dados
bits na ceacutelula RM iniciados por comutadores (ldquoapoio da rederdquo) bit NI natildeo aumente a taxa
(congestionamento moderado) bit CI indicaccedilatildeo de
congestionamento ceacutelulas RM devolvidas ao
remetente pelo receptor sem alteraccedilatildeo dos bits
3 Camada de Transporte 3c-10
Estudo de caso controle de congestionamento em ABR da ATM
Campo ER (explicit rate) de 2 bytes na ceacutelula RM comutador congestionado pode diminuir valor ER na ceacutelula taxa do remetente assim ajustada p menor valor possiacutevel entre os
comutadores do caminho bit EFCI em ceacutelulas de dados ligado por comutador
congestionado se EFCI ligado na ceacutelula de dados antes da ceacutelula RM receptor liga
bit CI na ceacutelula RM devolvida
3 Camada de Transporte 3c-11
Conteuacutedo do Capiacutetulo 3
31 Serviccedilos da camada de transporte
32 Multiplexaccedilatildeo e demultiplexaccedilatildeo
33 UDP Transporte natildeo orientado a conexatildeo
34 Princiacutepios da transferecircncia confiaacutevel de dados
35 Transporte orientado a conexatildeo TCP transferecircncia
confiaacutevel controle de fluxo gerenciamento de
conexotildees 36 Princiacutepios de
controle de congestionamento
37 Controle de congestionamento do TCP
3 Camada de Transporte 3c-12
Controle de Congestionamento do TCP
controle fim-a-fim (sem assistecircncia da rede)
transmissor limita a transmissatildeo LastByteSent-LastByteAcked
CongWin Praticamente
CongWin eacute dinacircmica em funccedilatildeo do congestionamento percebido da rede
Como o transmissor percebe o congestionamento
evento de perda = estouro do temporizador ou 3 acks duplicados
transmissor TCP reduz a taxa (CongWin) apoacutes evento de perda
trecircs mecanismos AIMD partida lenta conservador apoacutes
eventos de estouro de temporizaccedilatildeo
taxa = CongWin
RTT Bytesseg
3 Camada de Transporte 3c-13
AIMD do TCP
8 Kbytes
16 Kbytes
24 Kbytes
time
congestionwindow
decrescimento multiplicativo corta CongWin pela metade apoacutes evento de perda
crescimento aditivo incrementa CongWin de 1 MSS a cada RTT na ausecircncia de eventos de perda sondagem
Conexatildeo TCP de longa duraccedilatildeo
3 Camada de Transporte 3c-14
Partida Lenta do TCP
No iniacutecio da conexatildeo CongWin = 1 MSS Exemplo MSS = 500
bytes amp RTT = 200 mseg
taxa inicial = 20 kbps
largura de banda disponiacutevel pode ser gtgt MSSRTT eacute desejaacutevel um
crescimento raacutepido ateacute uma taxa consideraacutevel
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda
3 Camada de Transporte 3c-15
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda duplica CongWin a
cada RTT atraveacutes do incremento
da CongWin para cada ACK recebido
Resumo taxa inicial eacute baixa mas cresce rapidamente de forma exponencial
TCP Partida lenta (mais)
Estaccedilatildeo A
um segmento
RTT
Estaccedilatildeo B
tempo
dois segmentos
quqtro segmentos
3 Camada de Transporte 3c-16
Refinamento Apoacutes 3 ACKs duplicados
corta CongWin pela metade a janela depois cresce linearmente
Mas apoacutes estouro de temporizador CongWin eacute reduzida a 1 MSS janela cresce exponencialmente ateacute um limiar depois cresce
linearmente
bull 3 ACKs duplicados indica que a rede eacute capaz de entregar alguns segmentos bull estouro de temporizador antes de 3 ACKs duplicados eacute mais ldquoalarmanterdquo
Filosofia
3 Camada de Transporte 3c-17
Refinamento (mais)P Quando o crescimento
exponencial deve mudar para linear
R Quando CongWin atinge 12 do seu valor antes do estouro do temporizador
Implementaccedilatildeo Limiar (Threshold)
variaacutevel Com uma perda o limiar
passa a ser 12 da CongWin imediatamente anterior agrave perda
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-9
Estudo de caso controle de congestionamento no ABR da ATM
ABR (available bit rate)
ldquoserviccedilo elaacutesticordquo se caminho do
remetente ldquosubcarregadordquo remetente deveria
usar banda disponiacutevel se caminho do
remetente congestionado remetente reduzido agrave
taxa miacutenima garantida
ceacutelulas RM (resource management)
enviadas pelo remetente intercaladas com ceacutelulas de dados
bits na ceacutelula RM iniciados por comutadores (ldquoapoio da rederdquo) bit NI natildeo aumente a taxa
(congestionamento moderado) bit CI indicaccedilatildeo de
congestionamento ceacutelulas RM devolvidas ao
remetente pelo receptor sem alteraccedilatildeo dos bits
3 Camada de Transporte 3c-10
Estudo de caso controle de congestionamento em ABR da ATM
Campo ER (explicit rate) de 2 bytes na ceacutelula RM comutador congestionado pode diminuir valor ER na ceacutelula taxa do remetente assim ajustada p menor valor possiacutevel entre os
comutadores do caminho bit EFCI em ceacutelulas de dados ligado por comutador
congestionado se EFCI ligado na ceacutelula de dados antes da ceacutelula RM receptor liga
bit CI na ceacutelula RM devolvida
3 Camada de Transporte 3c-11
Conteuacutedo do Capiacutetulo 3
31 Serviccedilos da camada de transporte
32 Multiplexaccedilatildeo e demultiplexaccedilatildeo
33 UDP Transporte natildeo orientado a conexatildeo
34 Princiacutepios da transferecircncia confiaacutevel de dados
35 Transporte orientado a conexatildeo TCP transferecircncia
confiaacutevel controle de fluxo gerenciamento de
conexotildees 36 Princiacutepios de
controle de congestionamento
37 Controle de congestionamento do TCP
3 Camada de Transporte 3c-12
Controle de Congestionamento do TCP
controle fim-a-fim (sem assistecircncia da rede)
transmissor limita a transmissatildeo LastByteSent-LastByteAcked
CongWin Praticamente
CongWin eacute dinacircmica em funccedilatildeo do congestionamento percebido da rede
Como o transmissor percebe o congestionamento
evento de perda = estouro do temporizador ou 3 acks duplicados
transmissor TCP reduz a taxa (CongWin) apoacutes evento de perda
trecircs mecanismos AIMD partida lenta conservador apoacutes
eventos de estouro de temporizaccedilatildeo
taxa = CongWin
RTT Bytesseg
3 Camada de Transporte 3c-13
AIMD do TCP
8 Kbytes
16 Kbytes
24 Kbytes
time
congestionwindow
decrescimento multiplicativo corta CongWin pela metade apoacutes evento de perda
crescimento aditivo incrementa CongWin de 1 MSS a cada RTT na ausecircncia de eventos de perda sondagem
Conexatildeo TCP de longa duraccedilatildeo
3 Camada de Transporte 3c-14
Partida Lenta do TCP
No iniacutecio da conexatildeo CongWin = 1 MSS Exemplo MSS = 500
bytes amp RTT = 200 mseg
taxa inicial = 20 kbps
largura de banda disponiacutevel pode ser gtgt MSSRTT eacute desejaacutevel um
crescimento raacutepido ateacute uma taxa consideraacutevel
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda
3 Camada de Transporte 3c-15
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda duplica CongWin a
cada RTT atraveacutes do incremento
da CongWin para cada ACK recebido
Resumo taxa inicial eacute baixa mas cresce rapidamente de forma exponencial
TCP Partida lenta (mais)
Estaccedilatildeo A
um segmento
RTT
Estaccedilatildeo B
tempo
dois segmentos
quqtro segmentos
3 Camada de Transporte 3c-16
Refinamento Apoacutes 3 ACKs duplicados
corta CongWin pela metade a janela depois cresce linearmente
Mas apoacutes estouro de temporizador CongWin eacute reduzida a 1 MSS janela cresce exponencialmente ateacute um limiar depois cresce
linearmente
bull 3 ACKs duplicados indica que a rede eacute capaz de entregar alguns segmentos bull estouro de temporizador antes de 3 ACKs duplicados eacute mais ldquoalarmanterdquo
Filosofia
3 Camada de Transporte 3c-17
Refinamento (mais)P Quando o crescimento
exponencial deve mudar para linear
R Quando CongWin atinge 12 do seu valor antes do estouro do temporizador
Implementaccedilatildeo Limiar (Threshold)
variaacutevel Com uma perda o limiar
passa a ser 12 da CongWin imediatamente anterior agrave perda
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-10
Estudo de caso controle de congestionamento em ABR da ATM
Campo ER (explicit rate) de 2 bytes na ceacutelula RM comutador congestionado pode diminuir valor ER na ceacutelula taxa do remetente assim ajustada p menor valor possiacutevel entre os
comutadores do caminho bit EFCI em ceacutelulas de dados ligado por comutador
congestionado se EFCI ligado na ceacutelula de dados antes da ceacutelula RM receptor liga
bit CI na ceacutelula RM devolvida
3 Camada de Transporte 3c-11
Conteuacutedo do Capiacutetulo 3
31 Serviccedilos da camada de transporte
32 Multiplexaccedilatildeo e demultiplexaccedilatildeo
33 UDP Transporte natildeo orientado a conexatildeo
34 Princiacutepios da transferecircncia confiaacutevel de dados
35 Transporte orientado a conexatildeo TCP transferecircncia
confiaacutevel controle de fluxo gerenciamento de
conexotildees 36 Princiacutepios de
controle de congestionamento
37 Controle de congestionamento do TCP
3 Camada de Transporte 3c-12
Controle de Congestionamento do TCP
controle fim-a-fim (sem assistecircncia da rede)
transmissor limita a transmissatildeo LastByteSent-LastByteAcked
CongWin Praticamente
CongWin eacute dinacircmica em funccedilatildeo do congestionamento percebido da rede
Como o transmissor percebe o congestionamento
evento de perda = estouro do temporizador ou 3 acks duplicados
transmissor TCP reduz a taxa (CongWin) apoacutes evento de perda
trecircs mecanismos AIMD partida lenta conservador apoacutes
eventos de estouro de temporizaccedilatildeo
taxa = CongWin
RTT Bytesseg
3 Camada de Transporte 3c-13
AIMD do TCP
8 Kbytes
16 Kbytes
24 Kbytes
time
congestionwindow
decrescimento multiplicativo corta CongWin pela metade apoacutes evento de perda
crescimento aditivo incrementa CongWin de 1 MSS a cada RTT na ausecircncia de eventos de perda sondagem
Conexatildeo TCP de longa duraccedilatildeo
3 Camada de Transporte 3c-14
Partida Lenta do TCP
No iniacutecio da conexatildeo CongWin = 1 MSS Exemplo MSS = 500
bytes amp RTT = 200 mseg
taxa inicial = 20 kbps
largura de banda disponiacutevel pode ser gtgt MSSRTT eacute desejaacutevel um
crescimento raacutepido ateacute uma taxa consideraacutevel
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda
3 Camada de Transporte 3c-15
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda duplica CongWin a
cada RTT atraveacutes do incremento
da CongWin para cada ACK recebido
Resumo taxa inicial eacute baixa mas cresce rapidamente de forma exponencial
TCP Partida lenta (mais)
Estaccedilatildeo A
um segmento
RTT
Estaccedilatildeo B
tempo
dois segmentos
quqtro segmentos
3 Camada de Transporte 3c-16
Refinamento Apoacutes 3 ACKs duplicados
corta CongWin pela metade a janela depois cresce linearmente
Mas apoacutes estouro de temporizador CongWin eacute reduzida a 1 MSS janela cresce exponencialmente ateacute um limiar depois cresce
linearmente
bull 3 ACKs duplicados indica que a rede eacute capaz de entregar alguns segmentos bull estouro de temporizador antes de 3 ACKs duplicados eacute mais ldquoalarmanterdquo
Filosofia
3 Camada de Transporte 3c-17
Refinamento (mais)P Quando o crescimento
exponencial deve mudar para linear
R Quando CongWin atinge 12 do seu valor antes do estouro do temporizador
Implementaccedilatildeo Limiar (Threshold)
variaacutevel Com uma perda o limiar
passa a ser 12 da CongWin imediatamente anterior agrave perda
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-11
Conteuacutedo do Capiacutetulo 3
31 Serviccedilos da camada de transporte
32 Multiplexaccedilatildeo e demultiplexaccedilatildeo
33 UDP Transporte natildeo orientado a conexatildeo
34 Princiacutepios da transferecircncia confiaacutevel de dados
35 Transporte orientado a conexatildeo TCP transferecircncia
confiaacutevel controle de fluxo gerenciamento de
conexotildees 36 Princiacutepios de
controle de congestionamento
37 Controle de congestionamento do TCP
3 Camada de Transporte 3c-12
Controle de Congestionamento do TCP
controle fim-a-fim (sem assistecircncia da rede)
transmissor limita a transmissatildeo LastByteSent-LastByteAcked
CongWin Praticamente
CongWin eacute dinacircmica em funccedilatildeo do congestionamento percebido da rede
Como o transmissor percebe o congestionamento
evento de perda = estouro do temporizador ou 3 acks duplicados
transmissor TCP reduz a taxa (CongWin) apoacutes evento de perda
trecircs mecanismos AIMD partida lenta conservador apoacutes
eventos de estouro de temporizaccedilatildeo
taxa = CongWin
RTT Bytesseg
3 Camada de Transporte 3c-13
AIMD do TCP
8 Kbytes
16 Kbytes
24 Kbytes
time
congestionwindow
decrescimento multiplicativo corta CongWin pela metade apoacutes evento de perda
crescimento aditivo incrementa CongWin de 1 MSS a cada RTT na ausecircncia de eventos de perda sondagem
Conexatildeo TCP de longa duraccedilatildeo
3 Camada de Transporte 3c-14
Partida Lenta do TCP
No iniacutecio da conexatildeo CongWin = 1 MSS Exemplo MSS = 500
bytes amp RTT = 200 mseg
taxa inicial = 20 kbps
largura de banda disponiacutevel pode ser gtgt MSSRTT eacute desejaacutevel um
crescimento raacutepido ateacute uma taxa consideraacutevel
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda
3 Camada de Transporte 3c-15
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda duplica CongWin a
cada RTT atraveacutes do incremento
da CongWin para cada ACK recebido
Resumo taxa inicial eacute baixa mas cresce rapidamente de forma exponencial
TCP Partida lenta (mais)
Estaccedilatildeo A
um segmento
RTT
Estaccedilatildeo B
tempo
dois segmentos
quqtro segmentos
3 Camada de Transporte 3c-16
Refinamento Apoacutes 3 ACKs duplicados
corta CongWin pela metade a janela depois cresce linearmente
Mas apoacutes estouro de temporizador CongWin eacute reduzida a 1 MSS janela cresce exponencialmente ateacute um limiar depois cresce
linearmente
bull 3 ACKs duplicados indica que a rede eacute capaz de entregar alguns segmentos bull estouro de temporizador antes de 3 ACKs duplicados eacute mais ldquoalarmanterdquo
Filosofia
3 Camada de Transporte 3c-17
Refinamento (mais)P Quando o crescimento
exponencial deve mudar para linear
R Quando CongWin atinge 12 do seu valor antes do estouro do temporizador
Implementaccedilatildeo Limiar (Threshold)
variaacutevel Com uma perda o limiar
passa a ser 12 da CongWin imediatamente anterior agrave perda
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-12
Controle de Congestionamento do TCP
controle fim-a-fim (sem assistecircncia da rede)
transmissor limita a transmissatildeo LastByteSent-LastByteAcked
CongWin Praticamente
CongWin eacute dinacircmica em funccedilatildeo do congestionamento percebido da rede
Como o transmissor percebe o congestionamento
evento de perda = estouro do temporizador ou 3 acks duplicados
transmissor TCP reduz a taxa (CongWin) apoacutes evento de perda
trecircs mecanismos AIMD partida lenta conservador apoacutes
eventos de estouro de temporizaccedilatildeo
taxa = CongWin
RTT Bytesseg
3 Camada de Transporte 3c-13
AIMD do TCP
8 Kbytes
16 Kbytes
24 Kbytes
time
congestionwindow
decrescimento multiplicativo corta CongWin pela metade apoacutes evento de perda
crescimento aditivo incrementa CongWin de 1 MSS a cada RTT na ausecircncia de eventos de perda sondagem
Conexatildeo TCP de longa duraccedilatildeo
3 Camada de Transporte 3c-14
Partida Lenta do TCP
No iniacutecio da conexatildeo CongWin = 1 MSS Exemplo MSS = 500
bytes amp RTT = 200 mseg
taxa inicial = 20 kbps
largura de banda disponiacutevel pode ser gtgt MSSRTT eacute desejaacutevel um
crescimento raacutepido ateacute uma taxa consideraacutevel
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda
3 Camada de Transporte 3c-15
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda duplica CongWin a
cada RTT atraveacutes do incremento
da CongWin para cada ACK recebido
Resumo taxa inicial eacute baixa mas cresce rapidamente de forma exponencial
TCP Partida lenta (mais)
Estaccedilatildeo A
um segmento
RTT
Estaccedilatildeo B
tempo
dois segmentos
quqtro segmentos
3 Camada de Transporte 3c-16
Refinamento Apoacutes 3 ACKs duplicados
corta CongWin pela metade a janela depois cresce linearmente
Mas apoacutes estouro de temporizador CongWin eacute reduzida a 1 MSS janela cresce exponencialmente ateacute um limiar depois cresce
linearmente
bull 3 ACKs duplicados indica que a rede eacute capaz de entregar alguns segmentos bull estouro de temporizador antes de 3 ACKs duplicados eacute mais ldquoalarmanterdquo
Filosofia
3 Camada de Transporte 3c-17
Refinamento (mais)P Quando o crescimento
exponencial deve mudar para linear
R Quando CongWin atinge 12 do seu valor antes do estouro do temporizador
Implementaccedilatildeo Limiar (Threshold)
variaacutevel Com uma perda o limiar
passa a ser 12 da CongWin imediatamente anterior agrave perda
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-13
AIMD do TCP
8 Kbytes
16 Kbytes
24 Kbytes
time
congestionwindow
decrescimento multiplicativo corta CongWin pela metade apoacutes evento de perda
crescimento aditivo incrementa CongWin de 1 MSS a cada RTT na ausecircncia de eventos de perda sondagem
Conexatildeo TCP de longa duraccedilatildeo
3 Camada de Transporte 3c-14
Partida Lenta do TCP
No iniacutecio da conexatildeo CongWin = 1 MSS Exemplo MSS = 500
bytes amp RTT = 200 mseg
taxa inicial = 20 kbps
largura de banda disponiacutevel pode ser gtgt MSSRTT eacute desejaacutevel um
crescimento raacutepido ateacute uma taxa consideraacutevel
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda
3 Camada de Transporte 3c-15
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda duplica CongWin a
cada RTT atraveacutes do incremento
da CongWin para cada ACK recebido
Resumo taxa inicial eacute baixa mas cresce rapidamente de forma exponencial
TCP Partida lenta (mais)
Estaccedilatildeo A
um segmento
RTT
Estaccedilatildeo B
tempo
dois segmentos
quqtro segmentos
3 Camada de Transporte 3c-16
Refinamento Apoacutes 3 ACKs duplicados
corta CongWin pela metade a janela depois cresce linearmente
Mas apoacutes estouro de temporizador CongWin eacute reduzida a 1 MSS janela cresce exponencialmente ateacute um limiar depois cresce
linearmente
bull 3 ACKs duplicados indica que a rede eacute capaz de entregar alguns segmentos bull estouro de temporizador antes de 3 ACKs duplicados eacute mais ldquoalarmanterdquo
Filosofia
3 Camada de Transporte 3c-17
Refinamento (mais)P Quando o crescimento
exponencial deve mudar para linear
R Quando CongWin atinge 12 do seu valor antes do estouro do temporizador
Implementaccedilatildeo Limiar (Threshold)
variaacutevel Com uma perda o limiar
passa a ser 12 da CongWin imediatamente anterior agrave perda
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-14
Partida Lenta do TCP
No iniacutecio da conexatildeo CongWin = 1 MSS Exemplo MSS = 500
bytes amp RTT = 200 mseg
taxa inicial = 20 kbps
largura de banda disponiacutevel pode ser gtgt MSSRTT eacute desejaacutevel um
crescimento raacutepido ateacute uma taxa consideraacutevel
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda
3 Camada de Transporte 3c-15
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda duplica CongWin a
cada RTT atraveacutes do incremento
da CongWin para cada ACK recebido
Resumo taxa inicial eacute baixa mas cresce rapidamente de forma exponencial
TCP Partida lenta (mais)
Estaccedilatildeo A
um segmento
RTT
Estaccedilatildeo B
tempo
dois segmentos
quqtro segmentos
3 Camada de Transporte 3c-16
Refinamento Apoacutes 3 ACKs duplicados
corta CongWin pela metade a janela depois cresce linearmente
Mas apoacutes estouro de temporizador CongWin eacute reduzida a 1 MSS janela cresce exponencialmente ateacute um limiar depois cresce
linearmente
bull 3 ACKs duplicados indica que a rede eacute capaz de entregar alguns segmentos bull estouro de temporizador antes de 3 ACKs duplicados eacute mais ldquoalarmanterdquo
Filosofia
3 Camada de Transporte 3c-17
Refinamento (mais)P Quando o crescimento
exponencial deve mudar para linear
R Quando CongWin atinge 12 do seu valor antes do estouro do temporizador
Implementaccedilatildeo Limiar (Threshold)
variaacutevel Com uma perda o limiar
passa a ser 12 da CongWin imediatamente anterior agrave perda
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-15
No iniacutecio da conexatildeo aumenta a taxa exponencialmente ateacute o primeiro evento de perda duplica CongWin a
cada RTT atraveacutes do incremento
da CongWin para cada ACK recebido
Resumo taxa inicial eacute baixa mas cresce rapidamente de forma exponencial
TCP Partida lenta (mais)
Estaccedilatildeo A
um segmento
RTT
Estaccedilatildeo B
tempo
dois segmentos
quqtro segmentos
3 Camada de Transporte 3c-16
Refinamento Apoacutes 3 ACKs duplicados
corta CongWin pela metade a janela depois cresce linearmente
Mas apoacutes estouro de temporizador CongWin eacute reduzida a 1 MSS janela cresce exponencialmente ateacute um limiar depois cresce
linearmente
bull 3 ACKs duplicados indica que a rede eacute capaz de entregar alguns segmentos bull estouro de temporizador antes de 3 ACKs duplicados eacute mais ldquoalarmanterdquo
Filosofia
3 Camada de Transporte 3c-17
Refinamento (mais)P Quando o crescimento
exponencial deve mudar para linear
R Quando CongWin atinge 12 do seu valor antes do estouro do temporizador
Implementaccedilatildeo Limiar (Threshold)
variaacutevel Com uma perda o limiar
passa a ser 12 da CongWin imediatamente anterior agrave perda
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-16
Refinamento Apoacutes 3 ACKs duplicados
corta CongWin pela metade a janela depois cresce linearmente
Mas apoacutes estouro de temporizador CongWin eacute reduzida a 1 MSS janela cresce exponencialmente ateacute um limiar depois cresce
linearmente
bull 3 ACKs duplicados indica que a rede eacute capaz de entregar alguns segmentos bull estouro de temporizador antes de 3 ACKs duplicados eacute mais ldquoalarmanterdquo
Filosofia
3 Camada de Transporte 3c-17
Refinamento (mais)P Quando o crescimento
exponencial deve mudar para linear
R Quando CongWin atinge 12 do seu valor antes do estouro do temporizador
Implementaccedilatildeo Limiar (Threshold)
variaacutevel Com uma perda o limiar
passa a ser 12 da CongWin imediatamente anterior agrave perda
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-17
Refinamento (mais)P Quando o crescimento
exponencial deve mudar para linear
R Quando CongWin atinge 12 do seu valor antes do estouro do temporizador
Implementaccedilatildeo Limiar (Threshold)
variaacutevel Com uma perda o limiar
passa a ser 12 da CongWin imediatamente anterior agrave perda
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-18
Resumo Controle de Congestionamento do TCP Quando a CongWin estaacute abaixo do limiar
transmissor estaacute na fase de iniacutecio lento janela cresce exponencialmente
Quando a CongWin estaacute acima do limiar transmissor estaacute na fase de evitar congestionamento janela cresce linearmente
Quando chegam ACKs triplicados Limiar passa a ser CongWin2 e CongWin passa ao valor do Limiar
Quando estoura o temporizador Limiar passa a ser CongWin2 e CongWin passa a ser 1 MSS
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-19
Controle de congestionamento do transmissor TCP
Evento Estado Accedilatildeo do Transmissor TCP Comentaacuterio
ACK recebido para dados ainda natildeo reconhecidos
Partida lenta
CongWin = CongWin + MSS If (CongWin gt Limiar) seta estado para ldquoEvitar congestionamentordquo
Resulta na duplicaccedilatildeo da CongWin a cada RTT
ACK recebido para dados ainda natildeo reconhecidos
Evitar congestionamento
CongWin = CongWin+MSS (MSSCongWin)
Incremento aditivo resultando no incremento da CongWin de 1 MSS a cada RTT
Perda detectada por ACKs triplicados
qualquer Limiar = CongWin2 CongWin = LimiarSeta estado para ldquoEvitar Congestionamentordquo
Recuperaccedilatildeo raacutepida implementa decrescimento multiplicativo CongWin natildeo cai abaixo de 1 MSS
Estouro de temporizador
qualquer Limiar = CongWin2 CongWin = 1 MSSSeta estado para ldquoPartida lentardquo
Entra estado de ldquopartida lentardquo
ACK duplicado
qualquer Incrementa contador de ACKs duplicados para o segmento que estaacute sendo reconhecido
CongWin e Threshold natildeo se alteram
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-20
Vazatildeo (throughput) do TCP
Qual eacute a vazatildeo meacutedia do TCP em funccedilatildeo do tamanho da janela e do RTT Ignore a partida lenta
Seja W o tamanho da janela quando ocorre a perda
Quando a janela eacute W a vazatildeo eacute WRTT Imediatamente apoacutes a perda janela cai
a W2 vazatildeo cai para W2RTT Vazatildeo meacutedia = 075 WRTT
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-21
Futuro do TCP
Exemplo segmentos de 1500 bytes RTT de 100ms deseja vazatildeo de 10 Gbps
Requer janela de W = 83333 segmentos em tracircnsito
Vazatildeo em termos de taxa de perdas
L = 210-10 Taxa de perdas demasiado baixa
Satildeo necessaacuterias novas versotildees do TCP para altas velocidades
LRTT
MSS221
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-22
Equidade (Fairness) do TCP
Meta de equidade se K sessotildees TCP compartilham o mesmo enlace de gargalo com largura de banda R cada uma deve obter uma taxa meacutedia de RK
TCP conexatildeo 1
Roteadorgargalo
capacidade R
TCP conexatildeo 2
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-23
Por quecirc TCP eacute justo
Duas sessotildees concorrentes Aumento aditivo daacute gradiente de 1 enquanto vazatildeo
aumenta decremento multiplicativo diminui vazatildeo proporcionalmente
R
R
compartilhamento igual da banda
Vazatildeo da conexatildeo 1
Vazatilde
o d
a c
onexatildeo 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
evitar congestionamento aumento aditivoperda diminui janela por fator de 2
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-24
Justeza (mais)
Justeza e UDP Apls multimiacutedia
frequumlentemente natildeo usam TCP natildeo desperdiccedilam taxa
regulada pelo controle de congestionamento
Preferem usar o UDP Injeta aacuteudioviacutedeo a uma
taxa constante tolera perda de pacotes
Aacuterea de Pesquisa amigaacutevel ao TCP (TCP friendly)
Justeza e conexotildees TCP em paralelo
nada impede que as apls abram conexotildees paralelas entre 2 hosts
Os browsers Web fazem isto Exemplo canal com taxa R
compartilhado por 9 conexotildees nova apl pede 1 TCP recebe
taxa R10 nova apl pede 11 TCPs
recebe taxa R2
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-25
TCP modelagem de latecircncia
P Quanto tempo leva para receber um objeto de um servidor WWW depois de enviar o pedido
Estabelecimento de conexatildeo TCP
retardo de transferecircncia de dados
Notaccedilatildeo suposiccedilotildees Supomos um enlace entre
cliente e servidor de taxa R Supomos janela de
congestionamento fixo W segmentos
S MSS (bits) O tamanho do objeto (bits) sem retransmissotildees (sem
perdas sem erros)Dois casos a considerar WSR gt RTT + SR ACK do primeiro segmento na
janela chega antes de enviar todos dados na janela WSR lt RTT + SR aguarda ACK depois de enviar
todos os dados na janela
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-26
Janela de congestionamento fixa (1)
Primeiro casoWSR gt RTT + SR ACK
para o primeiro segmento na janela retorna antes da transmissatildeo de uma janela completa de dados
latecircncia = 2RTT + OR
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-27
Janela de congestionamento fixa (2)
Segundo caso WSR lt RTT + SR
espera por ACK apoacutes transmitir uma janela completa de dados
latecircncia = 2RTT + OR+ (K-1)[SR + RTT - WSR]
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-28
TCP modelagem de latecircncia partida lenta Agora supomos que a janela cresce agrave la partida lenta Mostramos que a latecircncia de um objeto de tamanho O
eacute
R
S
R
SRTTP
R
ORTTLatecircncia P )12(2
onde P eacute o nuacutemero de vezes que o TCP para no servidor
1min KQP
- onde Q eacute o nuacutemero de vezes que o servidor pararia se o objeto fosse de tamanho infinito
- e K eacute o nuacutemero de janelas que cobrem o objeto
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-29
TCP modelagem de latecircncia partida lenta (cont)
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
Exemplobull OS = 15 segmentosbull K = 4 janelasbull Q = 2bull P = minK-1Q = 2
Servidor ocioso P=2 unidades de tempo
Componentes da latecircnciabull 2 RTTs para estab conexatildeo e pedido bull OR para transmitir o objetobull tempo ocioso do servidor devido agrave partida lenta
Servidor ocioso P = minK-1Q unidades de tempo
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-30
TCP modelagem de latecircncia partida lenta (cont)
R
S
R
SRTTPRTT
R
O
R
SRTT
R
SRTT
R
O
oTempoparadRTTR
O
P
P
k
k
P
pp
)12(2
22
2latecircncia
1
1
1
janela eacutesima a apoacutes parado tempo
2 1
k
R
SRTT
R
S k
entosreconhecim os recebaservidor o que ateacute
segmentosenviar a comeccedilaservidor o que desde tempoRTTR
S
janela eacutesima-k ar transmitipara tempo2 1
R
Sk
RTT
initia te TCPconnection
requestobject
first w indow= S R
second w indow= 2S R
third w indow= 4S R
fourth w indow= 8S R
com pletetransm issionobject
delivered
tim e atc lient
tim e atserver
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-31
Modelagem de Latecircncia do TCP (4)
)1(log
)1(logmin
12min
222min
222min
2
2
110
110
S
OS
Okk
S
Ok
SOk
OSSSkK
k
k
k
Caacutelculo de Q nuacutemero de intervalos ociosos para um objeto detamanho infinito eacute semelhante (veja exerciacutecio)
Lembre que K = nuacutemero de janelas que cobrem objeto Como podemos calcular K
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-32
Modelagem do HTTP Assuma que a paacutegina Web eacute composta por
1 paacutegina base HTML (de tamanho O bits) M imagens (cada uma de tamanho O bits)
HTTP natildeo-persistente M+1 connexotildees TCP em seacuterie Tempo de resposta = (M+1)OR + (M+1)2RTT +
soma dos tempos ociosos HTTP persistente
2 RTT para pedir e receber arquivo HTML 1 RTT para pedir e receber M imagens Tempo de resposta = (M+1)OR + 3RTT + soma dos
tempos ociosos HTTP natildeo-persistente com X conexotildees paralelas
Suponha que MX seja um inteiro 1 conexatildeo TCP para arquivo base Conjuntos de MX conexotildees paralelas para as
imagens Tempo de resposta = (M+1)OR + (MX + 1)2RTT +
soma dos tempos ociosos
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-33
02468
101214161820
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
Tempo de resposta do HTTPRTT = 100 mseg O = 5 Kbytes M=10 and X=5
Para largura de banda baixa os tempos de conexatildeo e de resposta satildeo dominados pelo tempo de transmissatildeo
Conexotildees persistentes resultam num melhoramento pequeno em relaccedilatildeo agraves conexotildees paralelas
em segundos
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-34
0
10
20
30
40
50
60
70
28Kbps
100Kbps
1Mbps
10Mbps
non-persistent
persistent
parallel non-persistent
RTT =1 sec O = 5 Kbytes M=10 e X=5
Para grandes RTTs o tempo de resposta eacute dominado pelos atrasos de estabelecimento de conexotildees e de partida lentaConexotildees persistentes apresentam um melhor desempenho particularmente em redes com valor alto do produto atraso largura de banda
Tempo de resposta do HTTP
em segundos
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-
3 Camada de Transporte 3c-35
Capiacutetulo 3 Resumo
Princiacutepios atraacutes dos serviccedilos da camada de transporte multiplexaccedilatildeo
demultiplexaccedilatildeo transferecircncia confiaacutevel de
dados controle de fluxo controle de congestionamento
instanciaccedilatildeo e implementaccedilatildeo na Internet UDP TCP
Proacuteximo capiacutetulo saiacutemos da ldquobordardquo da
rede (camadas de aplicaccedilatildeo e transporte)
entramos no ldquonuacutecleordquoda rede
- Slide 1
- Slide 2
- Slide 3
- Slide 4
- Slide 5
- Slide 6
- Slide 7
- Slide 8
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- Slide 13
- Slide 14
- Slide 15
- Slide 16
- Slide 17
- Slide 18
- Slide 19
- Slide 20
- Slide 21
- Slide 22
- Slide 23
- Slide 24
- Slide 25
- Slide 26
- Slide 27
- Slide 28
- Slide 29
- Slide 30
- Slide 31
- Slide 32
- Slide 33
- Slide 34
- Slide 35
-