Vous êtes sur la page 1sur 26

Clase 20

Control de flujo en TCP


Tema 5.- Nivel de transporte en Internet

Dr. Daniel Morat Redes de Ordenadores Ingeniero Tcnico de Telecomunicacin Especialidad en Sonido e Imagen, 3 curso

Temario
1.- Introduccin 2.- Nivel de enlace en LANs 3.- Interconexin de redes IP 4.- Enrutamiento con IP 5.- Nivel de transporte en Internet 6.- Nivel de aplicacin en Internet 7.- Ampliacin de temas

Control de flujo en TCP

1/25

Temario
1.- Introduccin 2.- Nivel de enlace en LANs 3.- Interconexin de redes IP 4.- Enrutamiento con IP 5.- Nivel de transporte en Internet Nivel de transporte: UDP TCP: Caractersticas. Establecimiento y finalizacin de conexiones Control de flujo en TCP 6.- Nivel de aplicacin en Internet 7.- Ampliacin de temas

Control de flujo en TCP

2/25

Objetivos
Transferencia

fiable y control de flujo

en TCP

Control de flujo en TCP

3/25

Contenido
Introduccin Control

de flujo Formato del segmento TCP

Control de flujo en TCP

4/25

Contenido
Introduccin Control

de flujo Formato del segmento TCP

Control de flujo en TCP

5/25

Transferencia fiable de datos

Importante en nivel de aplicacin, transporte, enlace


Aplicacin Aplicacin

Transporte

Canal fiable

Control de flujo en TCP

6/25

Transferencia fiable de datos

Importante en nivel de aplicacin, transporte, enlace


Aplicacin Aplicacin

Transporte

Canal fiable

Red Canal no fiable

Basado en nivel no fiable


Control de flujo en TCP 7/25

Transferencia fiable de datos


Cmo lograrla? Mecanismo de confirmaciones Se numeran los bytes para confirmarlos
Los SYNs establecen los nmeros de secuencia iniciales
1 Datos ACK 2 Datos ACK 3 Datos
2 1

Control de flujo en TCP

8/25

Servicio de entrega por Stream


UDP

TCP

Orientado a datagramas Recibe un bloque de datos de la aplicacin Le aade su cabecera Se lo entrega a IP

El proceso no ve un flujo de paquetes Ve que escribe datos y se reciben en el mismo orden Un flujo de datos

AS 2 AS 2

AS 1 AS 1 AS 3

AS 3

Control de flujo en TCP

9/25

Servicio de entrega por Stream


TCP Emisor
Emisor acumula datos para mandar paquetes grandes Mantiene los datos hasta que son confirmados
Aplicacin

TCP Receptor
Hay que reordenar los paquetes Aplicacin puede que lea ms despacio
Aplicacin

Transporte

Buffer TX

Buffer RX

Red Segmentos TCP en paquetes IP


Control de flujo en TCP 10/25

Contenido
Introduccin Control

de flujo Formato del segmento TCP

Control de flujo en TCP

11/25

Control de flujo
Receptor lee ms despacio que lo que recibe (. . .) Buffer se desbordara

Receptor informa a emisor del espacio libre

Aplicacin

Aplicacin
II I

Transporte

Buffer TX

No mandes ms! Se pierde


VIII

VII VI VI V IV III V IV III II III II I Buffer RX

Red Segmentos TCP en paquetes IP


Control de flujo en TCP 12/25

Un recordatorio ()
Comunicacin

full-duplex

Por simplicidad hablaremos solo de un sentido


Aplicacin Aplicacin

Transporte

Buffer TX Buffer RX

Buffer RX Buffer TX

Red Segmentos TCP en paquetes IP


Control de flujo en TCP 13/25

Buffers de emisin y recepcin


Buffer circular () Protocolo de Ventana Deslizante Se confirma el ltimo dato consecutivo recibido

Aplicacin

Aplicacin

Transporte

Buffer TX

Buffer RX

Red Segmentos TCP en paquetes IP


Control de flujo en TCP 14/25

Ventana deslizante en TCP

Por simplicidad analicemos solo un sentido

Control de flujo en TCP

15/25

Ventana deslizante en TCP

Por simplicidad analicemos solo un sentido


Ventana anunciada por el receptor

Emisor

Datos de la aplicacin a enviar


Enviados y conrmados Enviados No se pueden enviar hasta que se desplace la ventana Se pueden enviar

Receptor
Entregados a la App

Buffer de recepcin

Recibidos y conrmados

Ventana que anuncia


Control de flujo en TCP 16/25

Ventana deslizante en TCP

La aplicacin receptor lee bytes del stream


La ventana se abre en el emisor Se desliza en el receptor ()

Emisor

Ventana anunciada por el receptor

Datos de la aplicacin a enviar


Enviados y conrmados Enviados No se pueden enviar hasta que se desplace la ventana Se pueden enviar

Receptor
Entregados a la App

Buffer de recepcin

Recibidos y conrmados

Ventana que anuncia


Control de flujo en TCP 17/25

Ventana deslizante en TCP

La aplicacin receptor lee bytes del stream


La ventana se abre en el emisor Se desliza en el receptor

Emisor

Ventana anunciada por el receptor

Datos de la aplicacin a enviar


Enviados y conrmados Enviados No se pueden enviar hasta que se desplace la ventana

Se pueden enviar

Receptor
Entregados a la App Recibidos y conrmados

Buffer de recepcin

Ventana que anuncia


Control de flujo en TCP 18/25

Ventana deslizante en TCP


Se reciben ms confirmaciones La ventana se desliza en el emisor ()
Ventana anunciada por el receptor

Emisor

Datos de la aplicacin a enviar


Enviados y conrmados Enviados No se pueden enviar hasta que se desplace la ventana

Se pueden enviar

Receptor
Entregados a la App Recibidos y conrmados

Buffer de recepcin

Ventana que anuncia


Control de flujo en TCP 19/25

Ventana deslizante en TCP


Se reciben ms confirmaciones La ventana se desliza en el emisor
Ventana anunciada por el receptor

Emisor

Datos de la aplicacin a enviar


Enviados y conrmados Enviados No se pueden enviar hasta que se desplace la ventana

Se pueden enviar

Receptor
Entregados a la App Recibidos y conrmados

Buffer de recepcin

Ventana que anuncia


Control de flujo en TCP 20/25

Contenido
Introduccin Control

de flujo Formato del segmento TCP

Control de flujo en TCP

21/25

Segmento TCP
32 bits Tamao cabecera (palabras de 32bits) URG: datos urgentes (casi no se usa) ACK: El n ACK es vlido PSH: Push Entregar datos a App RST, SYN, FIN: establecimiento y fin de la conexin Internet checksum (como en UDP)

Puerto origen

Puerto destino

Nmero de secuencia Nmero de confirmacin


Long No cab. usado U A P R S F

Cuenta en bytes de datos (no en segmentos) Tamao de la ventana que se anuncia al emisor

Ventana
Puntero a urgentes

Checksum

Opciones (longitud variable) Datos de aplicacin (longitud variable)

Paquete IP

Segmento TCP

Control de flujo en TCP

22/25

Resumen

Fiable Stream de bytes Protocolo de ventana deslizante

Control de flujo en TCP

23/25

Temario
1.- Introduccin 2.- Nivel de enlace en LANs 3.- Interconexin de redes IP 4.- Enrutamiento con IP 5.- Nivel de transporte en Internet Nivel de transporte: UDP TCP: Caractersticas. Establecimiento y finalizacin de conexiones Control de flujo en TCP 6.- Nivel de aplicacin en Internet 7.- Ampliacin de temas

Control de flujo en TCP

24/25

Prxima clase
Nivel de aplicacin: WWW

Lecturas:
[Kurose05] 2-2.2.3 25 pginas

FTP. Telnet. Ejemplos

Lecturas
[Kurose05] 2.3 [Forouzan03] 19.1 5 pginas

Control de flujo en TCP

25/25

Vous aimerez peut-être aussi