capadetransporte
TRANSCRIPT
-
8/16/2019 capaDeTransporte
1/118
Capa de transporte 3-1
LA CAPA DE TRANSPORTE
-
8/16/2019 capaDeTransporte
2/118
Capa de transporte 3-2
El contexto de la capa de transporte
-
8/16/2019 capaDeTransporte
3/118
Capa de transporte 3-3
La capa de transporte
Principios detrás de los
servicios de la capa de
transporte
!"ltiplexado#de!"ltiplexado
Trans$erencia de datos
$ia%le
Control de $l"&o
Control decon'estiona!iento
Los protocolos de
transporte en (nternet )DP transporte no orientado
a la conexi*n
TCP transporte orientado a
la conexi*n
SCTP Strea! Control
trans!ission Protocol
-
8/16/2019 capaDeTransporte
4/118
Capa de transporte 3-+
Servicios , protocolos de transporte
Proporcionar comunicación lógica entre procesos de aplicaciones
e&ec"tándose en osts di$erentes
Los protocolos de transporte se
e&ec"tan en siste!as $inales
Lado e!isor dividir los
!ensa&es de las aplicaciones
en se'!entos. pasarlos a la
capa de red
Lado receptor re ensa!%lar
se'!entos en !ensa&es. pasar
a la capa de aplicaci*n /ás de "n protocolo de transporte
disponi%le para las aplicaciones
TCP . )DP , SCTP
-
8/16/2019 capaDeTransporte
5/118
Capa de transporte 3-0
Capa de transporte vs capa de red
Capa de red:
co!"nicaci*n l*'ica
entre osts
Capa de transporte:
Co!"nicaci*n l*'ica
entre procesos Opera so%re la capa de
red , !e&ora los serviciosde la capa de red
Analo'a con "na $a!ilia
12 niños envían cartas a
otros 12 niños
Procesos 4 ni5os
/ensa&es de aplicaci*n 4 cartas
en so%res
6osts 4 casas
Protocolo de transporte 4 Ana ,
7ill Protocolo de la capa de red 4
servicio postal
-
8/16/2019 capaDeTransporte
6/118
Capa de transporte 3-8
N9!ero de p"erto
)n p"erto es "na inter$a: l*'ica asociada a "naaplicaci*n de red
Se de$ine !ediante "n entero de 18 %its
-
8/16/2019 capaDeTransporte
7/118
Capa de transporte 3-;
N9!ero de p"erto
Los n9!eros de p"erto son ad!inistrados por (CANN
-
8/16/2019 capaDeTransporte
8/118
Capa de transporte 3-
Direcci*n (P , n9!ero de p"erto
Direcci*n (P ? (denti$ica al ost N9!ero de p"erto ? identi$ica al servicio
-
8/16/2019 capaDeTransporte
9/118
Capa de transporte 3-B
SOCET
Es "n extre!o en "na co!"nicaci*n interprocesos a
travFs de "na red de co!p"tadoras
La direcci*n de "n socGet se deter!ina por la direcci*n
(P del ost , el n9!ero de p"erto del servicio
-
8/16/2019 capaDeTransporte
10/118
Capa de transporte 3-1>
Encaps"la!iento , desencaps"la!iento
-
8/16/2019 capaDeTransporte
11/118
Capa de transporte 3-11
Protocolos de la capa de transporte
Entre'a $ia%le , ordenadaTCP Control de con'estiona!iento
Control de $l"&o
Con$i'"raci*n de conexi*n Entre'a no $ia%le , $"era de
orden )DP )na extensi*n sin !as del
protocolo (P de @!e&or
es$"er:o
Servicios no disponi%les Harantas de retardo
Harantas de anco de %anda
applicationtransportnetworkdata linkphysical
networkdata linkphysical
network
data linkphysical
networkdata linkphysical
networkdata linkphysical
networkdata linkphysical
networkdata linkphysical
applicationtransport
networkdata linkphysical
l o g i c a l e n d - e n d t r a n s p o r t
-
8/16/2019 capaDeTransporte
12/118
Capa de transporte 3-12
Servicio no orientado a la conexi*n
-
8/16/2019 capaDeTransporte
13/118
Capa de transporte 3-13
Servicio orientado a la conexi*n
-
8/16/2019 capaDeTransporte
14/118
Capa de transporte 3-1+
/"ltiplexado ,de!"ltiplexado
-
8/16/2019 capaDeTransporte
15/118
Capa de transporte 3-10
/"ltiplexado , de!"ltiplexado
-
8/16/2019 capaDeTransporte
16/118
Capa de transporte 3-18
/"ltiplexado#de!"ltiplexado
Entre'ar los se'!entos reci%idos
al socGet correcto
De!"ltiplexado en el ost receptor Re"nir datos de !9ltiples
socGets. eti"etando los datos
con "n enca%e:ado
-
8/16/2019 capaDeTransporte
17/118
Capa de transporte 3-1;
Co!o $"nciona el de!"ltiplexado
)n ost reci%e data'ra!as (P
Cada data'ra!a tiene "na direcci*n (P de ori'en , "na
direcci*n (P de destino
Cada data'ra!a transporta 1 se'!ento de la capa de
transporte
Cada se'!ento tiene "n n9!ero de p"erto de ori'en , dedestino
El ost "sa las direcciones (P , los n9!eros de p"erto para diri'ir
los se'!entos a los socGets apropiados
-
8/16/2019 capaDeTransporte
18/118
Capa de transporte 3-1
De!"ltiplexado no orientado a la conexi*n
Crear socGets con
n9!eros de p"ertoDatagramSocket mySocket1 =
new DatagramSocket(12534);
DatagramSocket mySocket2 =
new DatagramSocket(12535);
)n socGet )DP se
identi$ica por la t"pla
-
8/16/2019 capaDeTransporte
19/118
Capa de transporte 3-1B
De!"ltiplexado no orientado a la conexi*n
DatagramSocket serverSocket = new DatagramSocket(6428);
IP deCliente:B
P2
IP deCliente: A
P1P1P3
IP de Servidor: C
SP: 62!
"P: #1$%
SP: #1$%
"P: 62!
SP: 62!
"P: $%%$
SP: $%%$
"P: 62!
SP proporciona la @direcci*n de retorno
-
8/16/2019 capaDeTransporte
20/118
Capa de transporte 3-2>
De!"ltiplexado orientado a la conexi*n
)n socGet TCP se
identi$ica por la t"pla Direcci*n (P de ori'en
N9!ero de p"erto ori'en
Direcci*n (P de destino N9!ero de p"erto destino
El ost receptor "sa los
+ valores para diri'ir el
se'!ento al socGetapropiado
El ost servidor p"ede
ad!itir !"cos socGets
TCP si!"ltáneos Cada socGet se identi$ica
!ediante s" propia t"pla
Los servidores Je% tiene
di$erentes socGets para
cada conexi*n de cliente
6TTP no persistente tendrásocGets di$erentes para
cada cons"lta
-
8/16/2019 capaDeTransporte
21/118
Capa de transporte 3-21
De!"ltiplexado orientado a la conexi*n
-
8/16/2019 capaDeTransporte
22/118
Capa de transporte 3-22
De!"ltiplexado orientado a la conexi*n
Je% Server !"ltiilo
IP deCliente:B
P1
IP deCliente: A
P1P2
IP deServidor: C
SP: #1$%
"P: !&
SP: #1$%
"P: !&
P P3
"-IP:C
S-IP: A
"-IP:C
S-IP: B
SP: $%%$
"P: !&
"-IP:C
S-IP: B
-
8/16/2019 capaDeTransporte
23/118
/"ltiplexado , de!"ltiplexado TPC#(P
-
8/16/2019 capaDeTransporte
24/118
Capa de transporte 3-2+
Transporte no orientado a la conexi*n
)DP
-
8/16/2019 capaDeTransporte
25/118
Capa de transporte 3-20
)DP )ser Data'ra! Protocol KRC ;8M
Protocolo de transporte de(nternet @sin adornos
Servicio de @!e&or es$"er:o.
los se'!entos )DP p"eden
ser
Perdidos Entre'ados $"era de orden
a las aplicaciones
No orientado a la conexión:
Sin andsaGin' entre el
e!isor , receptor )DP
Cada se'!ento )DP se
!ane&a independiente!ente
de los de!ás
Por"F existe )DP
No a, esta%leci!iento de
conexi*n
-
8/16/2019 capaDeTransporte
26/118
Capa de transporte 3-28
)DP
Co!9n!ente "tili:ado paraaplicaciones de di$"si*n
!"lti!edia
Tolerante a pFrdidas
Sensi%les a la velocidad
Otros "sos para )DP
DNS
SN/P
Trans$erencia $ia%le so%re )DP
a're'ar $ia%ilidad en la capa de
aplicaci*n
Rec"peraci*n de errores
espec$ica de cada
aplicaci*n
p"erto ori'en p"erto dest
32 %its
Datos de aplicaci*n
or!ato de se'!ento )DP
Lon'it"d cecGs"!
Lon'it"d. en %,tes. de se'!ento )DP.incl",endo el enca%e:ado
-
8/16/2019 capaDeTransporte
27/118
Capa de transporte 3-2;
CecGs"! )DP
E!isor Procesa "n se'!ento co!o "na sec"encia de enteros de 18 %its
CecGs"! s"!a
-
8/16/2019 capaDeTransporte
28/118
Capa de transporte 3-2
CecGs"! )DP
E&e!plo El ca!po cecGs"! tiene "n valor inicial de cero
Desp"Fs de calc"lar la s"!a de veri$icaci*n. el pse"doenca%e:ado
se descarta
-
8/16/2019 capaDeTransporte
29/118
Capa de transporte 3-2B
CecGs"! )DP
Receptor Calc"la la s"!a de veri$icaci*n del se'!ento reci%ido Q
pse"doenca%e:ado
Ieri$ica si la s"!a calc"lada es i'"al al valor del ca!po cecGs"!
NO ? error detectado
S( ? no se detectaron errores
-
8/16/2019 capaDeTransporte
30/118
Capa de transporte 3-3>
E&e!plo de cecGs"! (nternet
Nota
C"ando se s"!a n9!eros. "n acarreo del %it !ássi'ni$icativo de%e s"!arse al res"ltado
1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0
1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1
1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0
1 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 1
raparo"nd
s"!
cecGs"!
-
8/16/2019 capaDeTransporte
31/118
Capa de transporte 3-31
Principios de trans$erencia
de datos $ia%le
-
8/16/2019 capaDeTransporte
32/118
Capa de transporte 3-32
Principios de tras$erencia de datos $ia%le
(!portante en las capas de aplicaci*n. transporte , enlace
En la lista de los 1> t*picos !ás i!portantes de redes
Las caractersticas del canal no $ia%le deter!inarán la co!ple&idad
del protocolo de trans$erencia de datos $ia%le
-
8/16/2019 capaDeTransporte
33/118
Capa de transporte 3-33
Principios de tras$erencia de datos $ia%le
(!portante en las capas de aplicaci*n. transporte , enlace
En la lista de los 1> t*picos !ás i!portantes de redes
Las caractersticas del canal no $ia%le deter!inarán la co!ple&idad
del protocolo de trans$erencia de datos $ia%le
-
8/16/2019 capaDeTransporte
34/118
Capa de transporte 3-3+
Principios de tras$erencia de datos
$ia%le
(!portante en las capas de aplicaci*n. transporte , enlace En la lista de los 1> t*picos !ás i!portantes de redes
Las caractersticas del canal no $ia%le deter!inarán la co!ple&idad
del protocolo de trans$erencia de datos $ia%le
-
8/16/2019 capaDeTransporte
35/118
Capa de transporte 3-30
Trans$erencia de datos $ia%le co!en:ando
'adoe(isor
'adoreceptor
rdt_send(): lla!ado de arri%a.
-
8/16/2019 capaDeTransporte
36/118
Capa de transporte 3-38
Trans$erencia de datos $ia%le co!en:ando
"F are!os
Desarrollar incre!ental!ente los extre!os e!isor , receptor delprotocolo de trans$erencia de datos $ia%le
-
8/16/2019 capaDeTransporte
37/118
Capa de transporte 3-3;
Rdt1> Trans$erencia $ia%le so%re "n canal $ia%le
Canal s"%,ascente per$ecta!ente $ia%le No a, errores de %it
No a, pFrdida de pa"etes
S/s separados para e!isor. receptor E!isor envia datos al canal s"%,ascente
Receptor lee datos del canal s"%,ascente
Espera
lla!ada
de arri%a pacGet 4 !aGeUpGt
-
8/16/2019 capaDeTransporte
38/118
Capa de transporte 3-3
Rdt2> canal con errores de %it
Canal s"%,ascente p"ede invertir los %its en "npa"ete cecGs"! para detectar errores de %it
La pregunta: co!o rec"perarse de errores confirmación (ACKs: el receptor explcita!ente le dice al
e!isor "e "n pa"ete se reci%io %ien
Confirmación negativa (NAKs: el receptor explcita!ente le
dice al e!isor "e el pa"ete t"vo errores
El e!isor retrans!ite el pa"ete al reci%ir "n NA
N"evos !ecanis!os en rdt2.0
-
8/16/2019 capaDeTransporte
39/118
Capa de transporte 3-3B
rdt2> Especi$icaci*n S/
Espera
lla!ada de
arri%a
snGpGt 4 !aGeUpGt
-
8/16/2019 capaDeTransporte
40/118
Capa de transporte 3-+>
rdt2> operaci*n sin errores
Espera
lla!ada de
arri%a
snGpGt 4 !aGeUpGt
-
8/16/2019 capaDeTransporte
41/118
Capa de transporte 3-+1
rdt2> Escenario con error
Espera
lla!ada de
arri%a
snGpGt 4 !aGeUpGt
-
8/16/2019 capaDeTransporte
42/118
Capa de transporte 3-+2
rdt2> tiene "na $alla $atal
"F oc"rre si los
AC#NA se corro!pen
El e!isor no sa%e "e oc"rri*
en el receptor No p"ede retrans!itir
si!ple!ente posi%le
d"plicado
/ane&ar d"plicados El e!isor retrans!ite el
pa"ete at"al si el AC#NA
está da5ado
El e!isor a're'a "n n!mero desecuencia a cada pa"ete
El receptor descarta
-
8/16/2019 capaDeTransporte
43/118
Capa de transporte 3-+3
rdt21 El e!isor !ane&a AC#NAs
da5ados
Espera
lla!ada >
de arri%a
sndpGt 4 !aGeUpGt. data. cecGs"!="dtUsend
-
8/16/2019 capaDeTransporte
44/118
Capa de transporte 3-++
rdt21 el receptor !ane&a AC#NAs
da5ados
Espera
> de
a%a&o
sndpGt 4 !aGeUpGt
-
8/16/2019 capaDeTransporte
45/118
Capa de transporte 3-+0
rdt21 Disc"si*n
E!isor
sec a're'ado al
pa"ete
Dos sec .1= serán
s"$icientes Por"F
De%e veri$icar si el
AC#NA reci%ido esta
da5ado
Dos veces !as estados )n estado de%e @recordar
si el pa"ete @act"al tiene
sec > o 1
Receptor
De%e veri$icar si el
pa"ete reci%ido es
d"plicado El estado indica si el
sec esperado es > o 1
nota el receptor no
p"ede sa%er si s"
9lti!o AC#NA $"Freci%ido correcta!ente
en el e!isor
-
8/16/2019 capaDeTransporte
46/118
Capa de transporte 3-+8
rdt22 )n protocolo li%re de NA
La !is!a $"ncionalidad "e rdt21. "sando solo ACs
En ve: de "n NA. el receptor enva "n AC por el
9lti!o pa"ete reci%ido O El receptor de%e incl"ir explcita!ente el sec del pa"ete
con$ir!ado )n AC d"plicado en el e!isor res"lta en la !is!a
acci*n "e "n NA se retrans!ite el pa"ete act"al
-
8/16/2019 capaDeTransporte
47/118
Capa de transporte 3-+;
rdt22 ra'!entos del e!isor , receptor
Jait $or
call > $ro!
a%ove
sndpGt 4 !aGeUpGt. data. cecGs"!="dtUsend $ro!
%elo
rdtUrcv
-
8/16/2019 capaDeTransporte
48/118
Capa de transporte 3-+
rdt3> Canal con errores , pFrdida
N"eva pres"nci*n
El canal s"%,ascente
p"ede ta!%iFn perder
pa"etes
-
8/16/2019 capaDeTransporte
49/118
Capa de transporte 3-+B
rdt3> e!isor
sndpGt 4 !aGeUpGt. data. cecGs"!=
"dtUsend
-
8/16/2019 capaDeTransporte
50/118
Capa de transporte 3-0>
rdt3> en acci*n
-
8/16/2019 capaDeTransporte
51/118
Capa de transporte 3-01
rdt3> en acci*n
-
8/16/2019 capaDeTransporte
52/118
3-02
Dese!pe5o de rdt3>
rdt3> $"nciona. pero el dese!pe5o es %a&o
E&e!plo
En "n enlace de 1 H%ps. con retardo de propa'aci*n de 10 !s. ,
ta!a5o de pa"ete de >>> %its
)tili:aci*n del e!isor
" emisor racci*n de tie!po "e el e!isor está oc"padoenviando
#$$ Tie!po de ida , v"elta
-
8/16/2019 capaDeTransporte
53/118
3-03
rdt3> operaci*n de parada , espera
Pri!er %it de pa"ete trans!itido. t 4 >
e!isor receptor
RTT
)lti!o %it de pa"ete trans!itido.
t 4 L # R
Lle'a pri!er %it de pa"ete
Lle'a 9lti!o %it de pa"ete. enviar
AC
AC lle'a. enviar si'"ientepa"ete.
t 4 RTT Q L # R
1 PD) de 17 cada 3> !s 337ps
-
8/16/2019 capaDeTransporte
54/118
3-0+
Protocolos ent"%ados
-
8/16/2019 capaDeTransporte
55/118
3-00
Enca":a!iento "tili:aci*n !e&orada
Pri!er %it de pa trans!itido. t 4 >
sender receiver
RTT
)lti!o %it trans!itido.
t 4 L # R
Lle'a pri!er %it de pa"ete
Lle'a 9lti!o %it de pa"ete. enviar AC
AC lle'a. enviar si'"iente pa"ete.
t 4 RTT Q L # R
Lle'a 9lti!o %it de 2X pa"ete. enviar AC
Lle'a 9lti!o %it de 3X pa"ete. enviar AC
(ncre!enta la "tili:aci*n
en "n $actor de 3
-
8/16/2019 capaDeTransporte
56/118
3-08
Protocolos enca":ados
Re'resar a N
El e!isor p"ede tener asta Npa"etes sin con$ir!ar en elca"ce
El receptor solo enva ACsac"!"lativos No con$ir!a "n pa"ete si existe
"n espacio
El e!isor tiene "n te!pori:adorpara el pa"ete !as vie&o sincon$ir!ar Si el te!pori:ador expira.
retrans!ite todos los pa"etesno con$ir!ados
Repetici*n selectiva
El e!isor p"ede tener astaN pa"etes sin con$ir!ar enel ca"ce
El receptor con$ir!apa"etes individ"ales
El e!isor !antiene "nte!pori:ador por cadapa"ete sin con$ir!ar C"ando expira el
te!pori:ador. retrans!itesolo el pa"ete nocon$ir!ado
-
8/16/2019 capaDeTransporte
57/118
3-0;
Re'resar a N
E!isor sec de G %its en enca%e:ado de pa"ete @Ientana de asta N. pa"etes consec"tivos sin con$ir!ar per!itidos
AC
-
8/16/2019 capaDeTransporte
58/118
3-0
Re'resar a N S/ extendido del e!isor
Esperar startUti!er
"dtUsend
-
8/16/2019 capaDeTransporte
59/118
3-0B
Re'resar a N S/ extendido del receptor
AC-onl, sie!pre enva "n AC por pa"ete correcta!ente reci%ido con
el !a,or sec en orden P"ede 'enerar ACs d"plicados
Solo necesita recordar expectedseqnum Pa"etes $"era de orden
descartar
-
8/16/2019 capaDeTransporte
60/118
3-8>
Re'resar a N en acci*n
-
8/16/2019 capaDeTransporte
61/118
3-81
Repetici*n selectiva
El receptor con$ir!a individ"al!ente todos lospa"etes correcta!ente reci%idos Pone en %"$$er los pa"etes. se'9n se re"iera. para s"
event"al entre'a ordenada a la capa s"perior
El e!isor solo reenva los pa"etes para los c"ales nose reci%i* "n AC )n ti!er por cada pa"ete no con$ir!ado en el e!isor
Ientana del e!isor N sec consec"tivos
Li!ita los sec de pa"etes enviados sin con$ir!ar
R ti i* l ti t d i
-
8/16/2019 capaDeTransporte
62/118
3-82
Repetici*n selectiva ventanas de e!isor ,
receptor
R ti i* l ti
-
8/16/2019 capaDeTransporte
63/118
3-83
Repetici*n selectiva
Datos desde arri%a Si el si'"iente sec disponi%le
esta en la ventana. enviar
pa"ete
Ti!eo"t
-
8/16/2019 capaDeTransporte
64/118
3-8+
Repetici*n selectiva en acci*n
Repetici*n selectiva
-
8/16/2019 capaDeTransporte
65/118
3-80
Repetici*n selectiva
dile!a
E&e!plo ^s sec >. 1. 2. 3
Ta!a5o de ventana43
El receptor no ve nin'"na
di$erencia en los dos escenarios Erronea!ente pasa datos
d"plicados co!o n"evos en
-
8/16/2019 capaDeTransporte
66/118
3-88
TCP
Trans!ission Control Protocol
-
8/16/2019 capaDeTransporte
67/118
3-8;
TCP Revisi*n RCs ;B3. 1122. 1323. 2>1. 201 Trans!isi*n $"ll d"plex
l"&o de datos %idireccional enla !is!a conexi*n
/SS !axi!"! se'!ent si:e
Orientado a la conexi*n
andsaGin'
-
8/16/2019 capaDeTransporte
68/118
3-8
Estr"ct"ra de se'!ento TCP
p"erto ori'en p"erto dest
32 %its
Datos de aplicaci*n
-
8/16/2019 capaDeTransporte
69/118
3-8B
sec , ACs TCP
Sec
@n9!ero de %,te en el$l"&o del pri!er %,te
en el se'!ento de
datos
ACs
N9!ero de sec"enciadel si'"iente %,te
esperado del otro lado
AC ac"!"lativos
P C*!o !ane&a el
receptor los se'!entos
$"era de orden
R TCP de&a esto al
i!ple!entador
6ost A 6ost 7
S e 4 +2 . AC E 4 ; B . d a t a 4 ` C ̂
S e 4 ; B. A
C E 4 + 3. d a t a 4 ̀C ^
S e 4 +3 . AC E 4 D >
)s"ario
escri%e
`C^
ost ACs
La recepci*n
del `C^
reenviado
ost con$ir!a
La recepci*n
de`C^
Dev"elve ̀ C^
tie!poESCENAR(O S(/PLE DE TELNET
TCP R d T i Ti Ti t
-
8/16/2019 capaDeTransporte
70/118
3-;>
TCP Ro"nd Trip Ti!e , Ti!eo"t
P Co!o esta%lecer elvalor del ti!eo"t de
TCP /a,or "e RTT
pero RTT vara
/", corto ti!eo"t pre!at"ro Retrans!isiones
innecesarias
/", lar'o reacci*n lenta
ante la pFrdida de
se'!entos
P Co!o esti!ar RTT SampleRTT tie!po !edidodesde la trans!isi*n del
se'!ento asta la recepci*n
del AC
('norar retrans!isiones SampleRTT variará . se
re"iere "n RTT esti!ado
@s"ave
Pro!ediar varias
!ediciones recientes. nosolo el SampleRTT actual
TCP R d T i Ti Ti t
-
8/16/2019 capaDeTransporte
71/118
3-;1
TCP Ro"nd Trip Ti!e , Ti!eo"t
/edia !*vil ponderada exponencial
-
8/16/2019 capaDeTransporte
72/118
3-;2
E&e!plo de esti!aci*n RTT
TCP R d T i Ti Ti t
-
8/16/2019 capaDeTransporte
73/118
3-;3
TCP Ro"nd Trip Ti!e , Ti!eo"t
Esta%leci!iento del ti!eo"t
EstimatedRTT !ás "n @!ar'en de se'"ridad
/a,or variacion en EstimatedRTT - !ar'en de se'"ridad !a,or
Pri!ero esti!ar en c"ánto SampleRTT se desva delEstimatedRTT
-
8/16/2019 capaDeTransporte
74/118
3-;+
TCP
Transporte orientado a la conexi*n TCP Estr"ct"ra de se'!ento
Trans$erencia de datos $ia%le
Control de $l"&o
Hesti*n de conexi*n Principios de control de con'estiona!iento
Control de con'estiona!iento TCP
Trans$erencia de datos $ia%le TCP
-
8/16/2019 capaDeTransporte
75/118
3-;0
Trans$erencia de datos $ia%le TCP
TCP crea "n servicioTD so%re el servicio
no $ia%le de (P
Se'!entos ent"%ados
ACs ac"!"lativos TCP "tili:a "n
te!pori:ador de
retrans!isi*n 9nico
Las retrans!isionesoc"rren c"ando Oc"rre "n ti!eo"t
Se reci%e acGs d"plicados
Considere inicial!ente "ne!isor TCP si!pli$icado ('nora acGs d"plicados
('nora control de $l"&o ,
control de con'estiona!iento
Eventos del e!isor TCP
-
8/16/2019 capaDeTransporte
76/118
3-;8
Eventos del e!isor TCPDatos reci%idos de la aplicaci*n
Crear se'!ento con se)& se)& es el n9!ero en el $l"&o
de %,tes del pri!er %,te de
datos del se'!ento
(niciar ti!er si Fste a9n no esta
activado
-
8/16/2019 capaDeTransporte
77/118
3-;;
NextSeqNum=InitialSeqNumberSendBase=InitialSeqNumberloop (eternamente) { switch(event) event: Datos recibidos desde desde aplicacion Crear segmento TCP on numero de seuenia NextSeqNum if (timer no esta orriendo) Iniiar timer !asar segmento a IP NextSeqNum = NextSeqNum " length(datos) brea#$ event: Timeout de timer
%etransmitir segmento aun&no&on'irmado on el menor numero deseuenia Iniiar timer brea#$ event: ACK recibido, con campo ACK igual a y if ( SendBase) { SendBase= if (existen segmentos aun&no&reonoidos) Iniiar timer * brea#$*
Sen#$ase%1 9lti!o %,te con$ir!ado ac"!"lativa!ente
E&e!plo
Si Sen#$ase%1 = &1; y = &3. entonces el receptor espera ;3Q
Si y ' Sen#$ase. entonces se con$ir!a se'!entos previa!ente no con$ir!ados
TCP Escenarios de retrans!isi*n
-
8/16/2019 capaDeTransporte
78/118
3-;
TCP Escenarios de retrans!isi*n
ACK !"#$%$&
SendBase =+,,
La pFrdida de "n AC o%li'a "na
retrans!isi*n
TCP Escenarios de retrans!isi*n
-
8/16/2019 capaDeTransporte
79/118
3-;B
TCP Escenarios de retrans!isi*n
'%"&' !#"A'#&
Sendbase =+,,SendBase =+-,SendBase =+-,
El se'!ento 1>> nose retrans!ite
TCP ? Escenarios de retrans!isi*n
-
8/16/2019 capaDeTransporte
80/118
3->
TCP Escenarios de retrans!isi*n
ACK AC*A'%+&
SendBase =+-,
El acG ac"!"lativoevita la retrans!isi*n
del pri!er se'!ento
H i* d AC TCP
-
8/16/2019 capaDeTransporte
81/118
3-1
Heneraci*n de AC TCP KRC 1122. RC 201M
Evento en el Receptor Lle'ada de se'!ento con se
esperado
Todos los datos asta el se
esperado ,a con$ir!ados
Lle'ada de se'!ento con se
esperado Otro se'!ento tiene
"n AC pendiente
Lle'ada de "n se'!ento $"era
de orden con se !a,or al
esperado Se detecta "n "eco
Lle'ada de "n se'!ento "e
llena parcial o co!pleta!ente
"n "eco
Acci*n en el Receptor TCP AC retrasado Esperar asta 0>>
!s por "n si'"iente se'!ento-en-
orden
Si no a,. enviar AC
Enviar in!ediata!ente "n 9nico AC Ac"!"lativo. con$ir!ando los dos
se'!entos lle'ados en orden
Enviar in!ediata!ente "n ACK
duplicado. (ndicando el se del s'te
%,te esperado
-
8/16/2019 capaDeTransporte
82/118
3-2
Retrans!isi*n rápida
Periodo de Ti!eo"t s"eleser relativa!ente lar'o Retardo lar'o antes de
reenviar "n pa"ete perdido
Detecci*n de se'!entos
perdidos !ediante ACsd"plicados El e!isor s"ele enviar
!"cos se'!entos
se'"idos
-
8/16/2019 capaDeTransporte
83/118
Capa de transporte 3-3
Reenvio de "n se'!ento desp"Fs de "n AC d"plicado '#" veces
Antes "e ven:a elte!pori:ador
Al it d R t i i* Rá id
-
8/16/2019 capaDeTransporte
84/118
3-+
evento AC reci%ido. con ca!po AC con valor ,
si
-
8/16/2019 capaDeTransporte
85/118
3-0
event: ACK recibido, con campo ACK igual a y if ( SendBase) { SendBase = if (existen segmentos aun&no&on'irmados) Iniiar timer * else { ./ un 0C1 du!liado !ara un segmento a on'irmado /. Inrementar ontador de 0C1s du!liados reibidos !ara if (numero de 0C1s du!liados !ara == 2) ./ %etransmisi3n r4!ida TCP /. reenviar segmento on numero de seuenia * brea#$
Al'orit!o de Retrans!isi*n Rápida
-
8/16/2019 capaDeTransporte
86/118
C t l d $l & TCP
-
8/16/2019 capaDeTransporte
87/118
Capa de transporte 3-;
Control de $l"&o TCP
El receptor TCP tiene"n %"$$er de recepci*n
El control de $l"&o es "n
servicio de conciliaci*n de
velocidad
Conciliar la tasa de
trans!isi*n con la tasa de
rec"peraci*n de laaplicaci*n receptora
El proceso de la aplicaci*n
p"ede ser lento al leer del
%"$$er
El e!isor no des%ordará el%"$$er del receptor
trans!itiendo de!asiado a
excesiva velocidad
Control de $l"&o
Control de $l &o TCP C*!o $ nciona
-
8/16/2019 capaDeTransporte
88/118
3-
Control de $l"&o TCP C*!o $"nciona
El receptor noti$ica espacio
li%re incl",endo el valor de
RcvWindow en los
se'!entos
El e!isor li!ita datos no
con$ir!ados a RcvWindow Haranti:a "e el %"$$er de
recepci*n no se des%ordará
R
-
8/16/2019 capaDeTransporte
89/118
Capa de transporte 3-B
Hesti*n de conexi*n TCP
Hestion de conexi*n TCP
-
8/16/2019 capaDeTransporte
90/118
Capa de transporte 3-B>
Rec"erde el e!isor , el receptor TCP esta%lecen "na conexi*n
antes de interca!%iar se'!entos de datos (niciali:ar varia%les TCP
se s
%"$$ers. in$or!aci*n de control de $l"&o
-
8/16/2019 capaDeTransporte
91/118
Capa de transporte 3-B1
Tree a, andsaGe
1 El cliente enva "n se'!entoTCP S_N al servidor
Especi$ica s" se inicial
No enva datos
2 El servidor reci%e S_N. responde
con "n se'!ento S_N-AC
Servidor asi'na %"$$ers
Especi$ica el se inicial del
servidor
3 El cliente reci%e S_N-AC
responde con "n se'!ento
AC. "e p"ede contener datos
-
8/16/2019 capaDeTransporte
92/118
Capa de transporte 3-B2
Hesti*n de conexi*n TCP
Cierre de conexi*n
Cliente cierra socGet
clientcket.clse()/
Paso 1 ost cliente enva "n
se'!ento de control TCP(N al servidor
Paso 2 ost servidor reci%e
(N. responde con AC
Cierrra conexi*n. envia (N
client
L ( N
server
A C E
AC E
L ( N
close
close
closed t i ( e d
w a i t
-
8/16/2019 capaDeTransporte
93/118
Capa de transporte 3-B3
Hestion de conexi*n TCP
Paso 3 ost cliente reci%e
(N. responde con AC
(n'resa en @ti!ed ait ?
responderá con AC a
los (Ns reci%idosPaso + ost servidor . reci%e
AC Conexi*n cerrada
client
L ( N
server
A C E
AC E
L ( N
closing
closing
closed t i ( e d
w a i t
closed
Hestion de conexi*n TCP
-
8/16/2019 capaDeTransporte
94/118
Capa de transporte 3-B+
Ciclo de vida de cliente TCP
Hestion de conexi*n TCP
Hestion de conexi*n TCP
-
8/16/2019 capaDeTransporte
95/118
Capa de transporte 3-B0
Ciclo de vida de servidor TCP
Hestion de conexi*n TCP
-
8/16/2019 capaDeTransporte
96/118
Capa de transporte 3-B8
Principios de control decon'estiona!iento
-
8/16/2019 capaDeTransporte
97/118
Ca"sas#costos de la con'estion escenario 1
-
8/16/2019 capaDeTransporte
98/118
Capa de transporte 3-B
'
Dos e!isores. dosreceptores
)n enr"tador. %"$$er
in$inito
Sin retrans!isi*n
Retardos lar'os
c"ando
con'estionado Rendi!iento
!áxi!o alcan:a%le
7"$$ers de enlace de
salida co!partidos in$inito
6ost Aλin datos ori'inales
6ost 7
λo"t
Ca"sas#costos de la con'estion escenario 2
-
8/16/2019 capaDeTransporte
99/118
Capa de transporte 3-BB
Ca"sas#costos de la con'estion escenario 2
)n enr"tador. %"$$er finito Retrans!ision de pa"etes perdidos por el e!isor
7"$$ers de enlace de
salida co!partidos $inito
6ost Aλin datos ori'inales
6ost 7
λo"t
λbin datos ori'inales . !as
datos retrans!itidos
-
8/16/2019 capaDeTransporte
100/118
Ca"sas#costos de la con'estion escenario 3
-
8/16/2019 capaDeTransporte
101/118
Capa de transporte 3-1>1
Ca"sas#costos de la con'estion escenario 3
C"atro e!isores
R"tas !"ltisalto
Ti!eo"t # retrans!isi*n
"e pasa c"ando in , ^in
se incre!entan
7"$$ers de enlace de
salida co!partidos $inito
6ost Aλin datos ori'inales
6ost 7
λo"t
λbin datos ori'inales. !as
datos retrans!itidos
Ca"sas#costos de la con'estion escenario 3
-
8/16/2019 capaDeTransporte
102/118
Capa de transporte 3-1>2
Ca"sas#costos de la con'estion escenario 3
Otro @costo de la con'esti*n
C"ando "n pa"ete es descartado. toda capacidad de
trans!isi*n "sada para dico pa"ete $"e desperdiciada
6
o
s
t
A
6
o
s
t
7
λ
o
"
t
En$o"es para el control de con'estiona!iento
-
8/16/2019 capaDeTransporte
103/118
Capa de transporte 3-1>3
En$o"es para el control de con'estiona!iento
Control de con'estiona!iento
extre!o-extre!o
No a, retroali!entaci*nexplicita de la red
El con'estiona!iento se in$iere
de las pFrdidas , retardos
o%servados por el siste!a $inal
Es el en$o"e to!ado por TCP
Control de con'estiona!iento
asistido por la red
Los enr"tadores proveen
retroali!entaci*n a los siste!as
$inales
7it indicador de con'esti*n
-
8/16/2019 capaDeTransporte
104/118
Control de con'estiona!iento TCP Detalles
-
8/16/2019 capaDeTransporte
105/118
Capa de transporte 3-1>0
'
E!isor li!ita la trans!isi*n
LastByteSent – LastByteAcked ≤ Congin
Aproxi!ada!ente.
Cnin es diná!ica , $"nci*n del
con'estiona!iento de red perci%ido
C*!o perci%e el e!isor el
con'estiona!iento
loss event 4 ti!eo"t o 3 acGs
d"plicados
E!isor TCP red"ce tasa
-
8/16/2019 capaDeTransporte
106/118
Capa de transporte 3-1>8
incre!ento aditivo. decre!ento !"ltiplicativo
-
8/16/2019 capaDeTransporte
107/118
Capa de transporte 3-1>;
TCP Slo Start
C"ando se inicia "naconexi*n. se esta%lece
Cnin 4 1 /SS
E&e!plo /SS 4 0>> %,tes V
RTT 4 2>> !sec Tasa inicial 4 2> G%ps
Anco de %anda disponi%le
p"ede ser ]] /SS#RTT
Es desea%le escalar
rápida!ente a "na tasa
respeta%le
C"ando "na conexi*nco!ien:a. incre!entar la
tasa exponencial!ente
asta "e oc"rra la pri!era
pFrdida
TCP Slo Start
-
8/16/2019 capaDeTransporte
108/118
Capa de transporte 3-1>
TCP Slo Start
C"ando "na conexi*nco!ien:a. incre!entar la
tasa exponencial!ente
asta "e oc"rra la pri!era
pFrdida
D"plicar Cnin cadaRTT
Se consi'"e incre!entando
Cnin por cada AC
reci%ido
Res"!en tasa inicial es
%a&a pero escala
exponencial!ente rápido
ost A
o ne se '!e nt
3 4 4
ost B
ti(e
t R o se '!e nt s
$ o "r se '!e nt s
Re$ina!iento in$iriendo pFrdida
-
8/16/2019 capaDeTransporte
109/118
Capa de transporte 3-1>B
Re$ina!iento in$iriendo pFrdida
Desp"Fs de 3 ACs d"plicados Cnin se red"ce a la
!itad
L"e'o la ventana crece
lineal!ente
Pero desp"Fs de "n ti!eo"t Cnin se esta%lece en 1
/SS
L"e'o la ventana crece
exponencial!ente asta "n
"!%ral. l"e'o crecelineal!ente
3 ACs d"plicados indican
"e la red p"ede entre'ar
al'"nos se'!entos )n ti!eo"t indica "n
escenario de con'esti*n
@!as alar!ante
iloso$ia
Re$ina!iento
-
8/16/2019 capaDeTransporte
110/118
Capa de transporte 3-11>
P C"ando. de%e el
creci!iento exponencialpasar a ser lineal
R c"ando Cnin sea
i'"al a de s" valor
antes de "n ti!eo"t
(!ple!entaci*n )!%ral
-
8/16/2019 capaDeTransporte
111/118
Capa de transporte 3-111
Res"!en Control de con'estiona!ientoTCP
C"ando Con'Jin esta por de%a&o del Tresold. el e!isoren $ase slo-start. la ventana crece exponencial!ente
C"ando Con'Jin esta por enci!a del Tresold. el e!isor
esta en $ase con'estion-avoidance. la ventana crece
lineal!ente
C"ando oc"rre triple AC d"plicado. el Tresold se i'"ala
a Con'Jin#2 , Con'Jin se i'"ala al Tresold
C"ando oc"rre "n ti!eo"t. el Tresold se i'"ala a
Con'Jin#2 , Con'Jin se i'"ala a 1 /SS
Control de con'estiona!iento de e!isor TCP
-
8/16/2019 capaDeTransporte
112/118
Capa de transporte 3-112
"stad "vent Acci2n de "misr 'C! Cmentari
Slo Start
-
8/16/2019 capaDeTransporte
113/118
Capa de transporte 3-113
T 4
Con'Jin 4 1 /SS# slo start o incre!ento exponencial #
Jile
-
8/16/2019 capaDeTransporte
114/118
Capa de transporte 3-11+
C"al es el rendi!iento pro!edio de TCP en $"nci*n
del ta!a5o de ventana , el RTT ('nore slo start
Sea J el ta!a5o de la ventana c"ando oc"rre "na perdida
C"ando la ventana es J. el rendi!iento es J#RTT
f"sto desp"Fs de la perdida. la ventana cae a J#2 , el
rendi!iento a J#2RTT
Rendi!iento pro!edio 4 >;0J#RTT
TCP a $"t"ro TCP so%re lineas de alta velocidad
-
8/16/2019 capaDeTransporte
115/118
Capa de transporte 3-110
Por e&e!plo se'!entos de 10>> %,tes. RTT de 1>>!s.se desea "n rendi!iento de 1>H%ps
Se re"iere "na ventana de ta!a5o J 4 3.333
se'!entos
-
8/16/2019 capaDeTransporte
116/118
Capa de transporte 3-118
O%&etivo de e"idad si sesiones TCP co!parten el !is!o
enlace con anco de %anda R. cada "no de%e tener "na tasa
pro!edio de R#
Conexi*n TCP 1
Ro"ter con
capacidad RConexi*n TCP 2
Por "F TCP es e"itativo
-
8/16/2019 capaDeTransporte
117/118
Capa de transporte 3-11;
Por "F TCP es e"itativo
Dos sesiones conc"rrentes (ncre!ento aditivo 'enera "na pendiente de 1 a !edida se incre!enta
Decre!ento !"ltiplicativo dis!in",e el rendi!iento proporcional!ente
Ig+al 0raccin de ancho de ,anda
Rendi!iento de Conexi*n 1
Rendi!ie
ntodeConexi*n2
congestion avoidance: incre(ento aditivoloss: decre(enta ventana a la (itad
loss: decre(enta ventana a la (itadcongestion avoidance: incre(ento aditivo
E"idad
-
8/16/2019 capaDeTransporte
118/118
E"idad , )DP
Las aplicaciones!"lti!edia 'eneral!enteno "san TCP No desean ao'ar la
tasa por el control decon'estiona!iento
En s" l"'ar "san )DP 7o!%ean a"dio#video a
tasa constante. toleranpFrdida de pa"etes
E"idad , conexiones TCP paralelas
Nada pro%e a las aplicacionesde a%rir conexiones paralelasentre 2 osts
Los nave'adores e% lo acen
Por e&e!plo "n enlace de tasa R"e soporta B conexiones )na n"eva aplicaci*n pide 1 TCP.
reci%e "na tasa de R#1> )na n"eva aplicaci*n pide 11
TCPs. reci%e R#2