60-Transporte

download 60-Transporte

of 55

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.