60-Transporte
Transcript of 60-Transporte
-
8/9/2019 60-Transporte
1/55
3-1
El Servicio de TransporteEl Servicio de Transporte
Servicios Brindados a las Capas
superiores Primitivas del Servicio de Transporte
Berkeley Sockets
-
8/9/2019 60-Transporte
2/55
3-2
Servicios Brindados a lasCapas superiores
Servicios Brindados a lasCapas superiores
-
8/9/2019 60-Transporte
3/55
3-3
PrimitivasPrimitivas
-
8/9/2019 60-Transporte
4/55
3-4
ENCAPSULADOENCAPSULADO
-
8/9/2019 60-Transporte
5/55
3-5
Primitivas (2)Primitivas (2)
Las lneas llenas representan la secuencia de estados decleinte. Las punteadas las secuencias de estados del server.
-
8/9/2019 60-Transporte
6/55
3-6
Berkeley Sockets para TCPBerkeley Sockets para TCP
-
8/9/2019 60-Transporte
7/55
3-7
Elementos de Protocolos deTransporte
Elementos de Protocolos deTransporte
Direccionamiento Establecimiento de Conexin
Liberacin de conexin Control de Flujo y Buffering
Multiplexing
Recuperacin de Caidas
-
8/9/2019 60-Transporte
8/55
3-8
Protocolo de TransporteProtocolo de Transporte
(a) Ambiente de capa data link
(b) Ambiente de capa de transporte.
-
8/9/2019 60-Transporte
9/55
3-9
DireccionamientoDireccionamiento
TSAPs, NSAPs y conexiones de transporte.
-
8/9/2019 60-Transporte
10/55
-
8/9/2019 60-Transporte
11/55
3-11
(a) TPDUs no pueden entrar en la regin prohibida.
(b) El problema de la resincronizacin
Establecimiento de la ConexinEstablecimiento de la Conexin
-
8/9/2019 60-Transporte
12/55
3-12
Establecimiento de la Conexin(3)Establecimiento de la Conexin(3)
Three protocol scenarios for establishing a connection using a three-wayhandshake. CR denotes CONNECTION REQUEST.(a) Normal operation,(b) Old CONNECTION REQUEST appearing out of nowhere.
(c) Duplicate CONNECTION REQUEST and duplicate ACK.
-
8/9/2019 60-Transporte
13/55
3-13
Liberacin de la ConexinLiberacin de la Conexin
Desconexin abripta con perdida de datos.
-
8/9/2019 60-Transporte
14/55
3-14
Connection Release (2)Connection Release (2)
The two-army problem.
-
8/9/2019 60-Transporte
15/55
3-15
Cuatro escenarios de protocolo para liberacin de conexin.(a) Caso normal ( three-way handshake.)(b) Prdida de ACK .
6-14, a, b
Liberacin de la ConexinLiberacin de la Conexin
-
8/9/2019 60-Transporte
16/55
3-16
(c) Respuesta perdida. ( d) Respuestaperdida y prdida de DRs .
6-14, c,d
Liberacin de la ConexinLiberacin de la Conexin
-
8/9/2019 60-Transporte
17/55
3-17
Control de Flujo y BufferingControl de Flujo y Buffering
(a) Chained fixed-size buffers. (b) Chained variable-sized buffers.(c) One large circular buffer per connection.
-
8/9/2019 60-Transporte
18/55
3-18Dynamic buffer allocation. The arrows show the direction oftransmission. An ellipsis () indicates a lost TPDU.
Control de Flujo y BufferingControl de Flujo y Buffering
-
8/9/2019 60-Transporte
19/55
3-19
MultiplexingMultiplexing
(a) Upward multiplexing.
(b) Downward multiplexing.
-
8/9/2019 60-Transporte
20/55
3-20
Crash RecoveryCrash Recovery
Diferentes combinaciones de estrategia de server y cliente
-
8/9/2019 60-Transporte
21/55
3-21
A Simple Transport ProtocolA Simple Transport Protocol
The Example Service Primitives
The Example Transport Entity
The Example as a Finite State
Machine
-
8/9/2019 60-Transporte
22/55
3-22
The Example Transport EntityThe Example Transport Entity
-
8/9/2019 60-Transporte
23/55
3-23
The Example Transport Entity(2)
The Example Transport Entity(2)
Each connection is in one of seven states: Idle Connection not established yet.
Waiting CONNECT has been executed, CALL REQUEST sent.
Queued A CALL REQUEST has arrived; no LISTEN yet.
Established The connection has been established.
Sending The user is waiting for permission to send a packet.
Receiving A RECEIVE has been done.
DISCONNECTING a DISCONNECT has been done locally.
-
8/9/2019 60-Transporte
24/55
3-24
The Example as a Finite StateMachine
The Example as a Finite StateMachine
The example protocol as afinite state machine. Eachentry has an optionalpredicate, an optionalaction, and the new state.
The tilde indicates that nomajor action is taken. Anoverbar above a predicateindicate the negation of the
predicate. Blank entriescorrespond to impossibleor invalid events.
-
8/9/2019 60-Transporte
25/55
3-25
The Example as a Finite StateMachine (2)
The Example as a Finite State
Machine (2)
-
8/9/2019 60-Transporte
26/55
3-26
The Internet TransportProtocols: UDP
The Internet TransportProtocols: UDP
Introduction to UDP
Remote Procedure Call The Real-Time Transport
Protocol
-
8/9/2019 60-Transporte
27/55
3-27
Introduction to UDPIntroduction to UDP
El Encabezado UDP.
-
8/9/2019 60-Transporte
28/55
3-28
Remote Procedure CallRemote Procedure Call
Steps in making a remote procedure call.The stubs are shaded.
-
8/9/2019 60-Transporte
29/55
3-29
The Real-Time TransportProtocol
The Real-Time TransportProtocol
(a) La posicion de RTP en el stack de protocolos .
(b) Packet nesting.
-
8/9/2019 60-Transporte
30/55
3-30
The Real-Time TransportProtocol (2)
The Real-Time TransportProtocol (2)
The RTP header.
-
8/9/2019 60-Transporte
31/55
3-31
The Internet TransportProtocols: TCP
The Internet Transport
Protocols: TCP Introduction to TCP
The TCP Service Model The TCP Protocol The TCP Segment Header TCP Connection Establishment TCP Connection Release TCP Connection Management Modeling TCP Transmission Policy
TCP Congestion Control TCP Timer Management Wireless TCP and UDP Transactional TCP
-
8/9/2019 60-Transporte
32/55
3-32
The TCP Service ModelThe TCP Service Model
Port Protocol Use21 FTP File transfer23 Telnet Remote login
25 SMTP E-mail
69 TFTP Trivial File Transfer Protocol
79 Finger Lookup info about a user
80 HTTP World Wide Web
110 POP-3 Remote e-mail access119 NNTP USENET news
-
8/9/2019 60-Transporte
33/55
3-33
The TCP Service Model (2)The TCP Service Model (2)
(a) Four 512-byte segments sent as separate IP datagrams.
(b) The 2048 bytes of data delivered to the application in asingle READ CALL.
-
8/9/2019 60-Transporte
34/55
3-34
The TCP Segment HeaderThe TCP Segment Header
TCP Header.
-
8/9/2019 60-Transporte
35/55
3-35
The TCP Segment Header (2)The TCP Segment Header (2)
The pseudoheader included in the TCP checksum.
-
8/9/2019 60-Transporte
36/55
3-36
TCP Connection EstablishmentTCP Connection Establishment
(a) TCP connection establishment in the normal case.
(b) Call collision.
6-31
-
8/9/2019 60-Transporte
37/55
-
8/9/2019 60-Transporte
38/55
3-38
TCP Connection Management
Modeling (2)
TCP Connection Management
Modeling (2)TCP connectionmanagement finite
state machine.The heavy solidline is the normalpath for a client.The heavy dashed
line is the normalpath for a server.The light lines areunusual events.Each transition is
labeled by theevent causing itand the actionresulting from it,separated by a
slash.
-
8/9/2019 60-Transporte
39/55
3-39
TCP Transmission PolicyTCP Transmission Policy
Window management in TCP.
-
8/9/2019 60-Transporte
40/55
3-40
TCP Transmission Policy (2)TCP Transmission Policy (2)
Silly window syndrome.
-
8/9/2019 60-Transporte
41/55
3-41
TCP Congestion ControlTCP Congestion Control
(a) A fast network feeding a low capacity receiver.
(b) A slow network feeding a high-capacity receiver.
-
8/9/2019 60-Transporte
42/55
3-42
TCP Congestion Control (2)TCP Congestion Control (2)
An example of the Internet congestion algorithm.
-
8/9/2019 60-Transporte
43/55
3-43
TCP Timer ManagementTCP Timer Management
(a) Probability density of ACK arrival times in the data link layer.
(b) Probability density of ACK arrival times for TCP.
-
8/9/2019 60-Transporte
44/55
3-44
Wireless TCP and UDPWireless TCP and UDP
Splitting a TCP connection into two connections.
-
8/9/2019 60-Transporte
45/55
3-45
Transitional TCPTransitional TCP
(a) RPC using normal TPC.
(b) RPC using T/TCP.
-
8/9/2019 60-Transporte
46/55
3-46
Performance IssuesPerformance Issues
Performance Problems in ComputerNetworks
Network Performance Measurement System Design for Better Performance
Fast TPDU Processing Protocols for Gigabit Networks
Performance Problems in ComputerPerformance Problems in Computer
-
8/9/2019 60-Transporte
47/55
3-47
Performance Problems in Computer
Networks
Performance Problems in Computer
Networks
The state of transmitting one megabit from San Diego toBoston
(a) At t = 0, (b) After 500 sec, (c) After 20 msec, (d) after40 msec.
Network PerformanceNetwork Performance
-
8/9/2019 60-Transporte
48/55
3-48
Network Performance
Measurement
Network Performance
Measurement
The basic loop for improving networkperformance.
Measure relevant network parameters,performance.
Try to understand what is going on.
Change one parameter.
System Design for BetterSystem Design for Better
-
8/9/2019 60-Transporte
49/55
3-49
System Design for Better
Performance
System Design for Better
PerformanceRules:
CPU speed is more important than network speed. Reduce packet count to reduce software overhead.
Minimize context switches.
Minimize copying.
You can buy more bandwidth but not lower delay.
Avoiding congestion is better than recovering fromit.
Avoid timeouts.
System Design for BetterSystem Design for Better
-
8/9/2019 60-Transporte
50/55
3-50
System Design for Better
Performance (2)
System Design for Better
Performance (2)
Response as a function of load.
System Design for BetterSystem Design for Better
-
8/9/2019 60-Transporte
51/55
3-51
System Design for Better
Performance (3)
System Design for Better
Performance (3)
Four context switches to handle one packet
with a user-space network manager.
F TPDU P i
-
8/9/2019 60-Transporte
52/55
3-52
Fast TPDU ProcessingFast TPDU Processing
The fast path from sender to receiver is shown with a heavy line.
The processing steps on this path are shaded.
F TPDU P i (2)F TPDU P i (2)
-
8/9/2019 60-Transporte
53/55
3-53
Fast TPDU Processing (2)Fast TPDU Processing (2)
(a) TCP header. (b) IP header. In both cases, the shadedfields are taken from the prototype without change.
F TPDU P i (3)F TPDU P i (3)
-
8/9/2019 60-Transporte
54/55
3-54
Fast TPDU Processing (3)Fast TPDU Processing (3)
A timing wheel.
P t l f Gi bit N t kP t l f Gi bit N t k
-
8/9/2019 60-Transporte
55/55
3-55
Protocols for Gigabit NetworksProtocols for Gigabit Networks
Time to transfer and acknowledge a 1-megabit file over a4000-km line.