Clase 20 Control de flujo en TCP Tema 5.- Nivel de transporte en Internet Dr. Daniel Morató Redes de Ordenadores Ingeniero Técnico de Telecomunicación Especialidad en Sonido e Imagen, 3º curso
Temario 1.- Introducción 2.- Nivel de enlace en LANs 3.- Interconexión de redes IP 4.- Enrutamiento con IP 5.- Nivel de transporte en Internet 6.- Nivel de aplicación en Internet 7.- Ampliación de temas Control de flujo en TCP 1/25
Temario 1.- Introducción 2.- Nivel de enlace en LANs 3.- Interconexión de redes IP 4.- Enrutamiento con IP 5.- Nivel de transporte en Internet Nivel de transporte: UDP TCP: Características. Establecimiento y finalización de conexiones Control de flujo en TCP 6.- Nivel de aplicación en Internet 7.- Ampliación 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 Introducción Control de flujo Formato del segmento TCP Control de flujo en TCP 4/25
Contenido Introducción Control de flujo Formato del segmento TCP Control de flujo en TCP 5/25
Transferencia fiable de datos Importante en nivel de aplicación, transporte, enlace Aplicación Aplicación Transporte Canal fiable Control de flujo en TCP 6/25
Transferencia fiable de datos Importante en nivel de aplicación, transporte, enlace Aplicación Aplicación Transporte Canal fiable Red Canal no fiable Basado en nivel no fiable Control de flujo en TCP 7/25
Transferencia fiable de datos ¿Cómo lograrla? Mecanismo de confirmaciones Datos 1 Se numeran los bytes para confirmarlos 1 ACK – Los SYNs establecen los Datos números de secuencia iniciales 2 2 ACK Datos 3 Control de flujo en TCP 8/25
Servicio de entrega por Stream UDP TCP Orientado a datagramas El proceso no ve un flujo de paquetes Recibe un bloque de datos de la aplicación Ve que escribe datos y se reciben en el mismo orden Le añade su cabecera Un flujo de datos Se lo entrega a IP AS 2 AS 2 AS 1 AS 3 AS 1 AS 3 Control de flujo en TCP 9/25
Servicio de entrega por Stream TCP Emisor TCP Receptor Emisor acumula datos para Hay que reordenar los mandar paquetes grandes paquetes Mantiene los datos hasta Aplicación puede que lea que son confirmados más despacio Aplicación Aplicación Transporte Buffer TX Buffer RX Red Segmentos TCP en paquetes IP Control de flujo en TCP 10/25
Contenido Introducción Control de flujo Formato del segmento TCP Control de flujo en TCP 11/25
Control de flujo Receptor lee más despacio Receptor informa a emisor que lo que recibe (. . .) del espacio libre Buffer se desbordaría Aplicación Aplicación II I ¡No mandes más! Se pierde Transporte Buffer TX Buffer RX VIII VII VI VI V III IV V IV III II III II I Red Segmentos TCP en paquetes IP Control de flujo en TCP 12/25
Un recordatorio (…) Comunicación full-duplex Por simplicidad hablaremos solo de un sentido Aplicación Aplicación Transporte Buffer TX Buffer RX Buffer RX Buffer TX Red Segmentos TCP en paquetes IP Control de flujo en TCP 13/25
Buffers de emisión y recepción Buffer circular (…) Protocolo de Ventana Deslizante Se confirma el último dato consecutivo recibido Aplicación Aplicación 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 aplicación a enviar No se pueden enviar hasta que se desplace Enviados y confirmados la ventana Enviados Se pueden enviar Buffer de recepción Receptor Entregados a la App Ventana que anuncia Recibidos y confirmados Control de flujo en TCP 16/25
Ventana deslizante en TCP La aplicación receptor lee bytes del stream – La ventana se abre en el emisor – Se desliza en el receptor (…) Ventana anunciada por el receptor Emisor Datos de la aplicación a enviar No se pueden enviar hasta que se desplace Enviados y confirmados la ventana Enviados Se pueden enviar Buffer de recepción Receptor Entregados a la App Ventana que anuncia Recibidos y confirmados Control de flujo en TCP 17/25
Ventana deslizante en TCP La aplicación receptor lee bytes del stream – La ventana se abre en el emisor – Se desliza en el receptor Ventana anunciada por el receptor Emisor Datos de la aplicación a enviar No se pueden enviar hasta que se Enviados y confirmados desplace la ventana Enviados Se pueden enviar Buffer de recepción Receptor Entregados a la App Ventana que anuncia Recibidos y confirmados Control de flujo en TCP 18/25
Ventana deslizante en TCP Se reciben más confirmaciones La ventana se desliza en el emisor (…) Ventana anunciada por el receptor Emisor Datos de la aplicación a enviar No se pueden enviar hasta que se Enviados y confirmados desplace la ventana Enviados Se pueden enviar Buffer de recepción Receptor Entregados a la App Ventana que anuncia Recibidos y confirmados Control de flujo en TCP 19/25
Ventana deslizante en TCP Se reciben más confirmaciones La ventana se desliza en el emisor Ventana anunciada por el receptor Emisor Datos de la aplicación a enviar No se pueden enviar hasta que se Enviados y confirmados desplace la ventana Enviados Se pueden enviar Buffer de recepción Receptor Entregados a la App Ventana que anuncia Recibidos y confirmados Control de flujo en TCP 20/25
Contenido Introducción Control de flujo Formato del segmento TCP Control de flujo en TCP 21/25
Segmento TCP 32 bits Cuenta en bytes Tamaño cabecera Puerto origen Puerto destino (palabras de 32bits) de datos Número de secuencia (no en segmentos) URG: datos urgentes Número de confirmación (casi no se usa) Tamaño de la Long No Ventana ACK: El nº ACK U A P R S F cab. usado ventana que es válido se anuncia al Checksum Puntero a urgentes PSH: Push emisor Entregar datos a App Opciones (longitud variable) RST, SYN, FIN: Datos de establecimiento y fin Paquete IP Segmento TCP aplicación de la conexión (longitud variable) Internet checksum (como en UDP) 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.- Introducción 2.- Nivel de enlace en LANs 3.- Interconexión de redes IP 4.- Enrutamiento con IP 5.- Nivel de transporte en Internet Nivel de transporte: UDP TCP: Características. Establecimiento y finalización de conexiones Control de flujo en TCP 6.- Nivel de aplicación en Internet 7.- Ampliación de temas Control de flujo en TCP 24/25
Próxima clase Nivel de aplicación: WWW Lecturas: – [Kurose05] 2-2.2.3 – 25 páginas FTP. Telnet. Ejemplos Lecturas – [Kurose05] 2.3 – [Forouzan03] 19.1 – 5 páginas Control de flujo en TCP 25/25
Recommend
More recommend