Actualizado el 8 de Mayo del 2021 (Publicado el 14 de Enero del 2017)
688 visualizaciones desde el 14 de Enero del 2017
377,5 KB
26 paginas
Creado hace 19a (14/10/2005)
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
6.- Nivel de aplicación en Internet
7.- Ampliación de temas
Nivel de transporte: UDP
TCP: Características. Establecimiento y finalización de
conexiones
Control de flujo en TCP
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
Red
Canal fiable
Basado en nivel no fiable
Canal no fiable
Control de flujo en TCP
7/25
Transferencia fiable de datos
¿Cómo lograrla?
Mecanismo de confirmaciones
Se numeran
los bytes para
establecen
los
confirmarlos
– Los SYNs
números de secuencia iniciales
1
2
3
Datos
ACK
Datos
ACK
Datos
1
2
Control de flujo en TCP
8/25
Servicio de entrega por Stream
UDP
Orientado a datagramas
Recibe un bloque de datos de
la aplicación
Le añade su cabecera
Se lo entrega a IP
TCP
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 3
AS 1
AS 3
Control de flujo en TCP
9/25
Servicio de entrega por Stream
TCP Emisor
Emisor acumula datos para
TCP Receptor
Hay que
reordenar
mandar paquetes grandes
Mantiene
los datos hasta
que son confirmados
paquetes
Aplicación puede que
más despacio
los
lea
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
que lo que recibe (. . .)
Buffer se desbordaría
Receptor informa a emisor
del espacio libre
Aplicación
Aplicación
I
II
Transporte
Buffer TX
¡No mandes más!
Se pierde
VIII
III
IVVVI
VII
I
II
III
Buffer RX
IVVVI
II
III
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
Red
Buffer TX
Buffer RX
Buffer RX
Buffer TX
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
Emisor
Ventana anunciada por el receptor
Datos de la aplicación a enviar
Enviados y confirmados
Enviados
Receptor
No se pueden enviar hasta que se desplace
la ventana
Se pueden enviar
Buffer de recepción
Entregados a la App
Recibidos y confirmados
Ventana que anuncia
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 (…)
Emisor
Ventana anunciada por el receptor
Datos de la aplicación a enviar
Enviados y confirmados
Enviados
Receptor
No se pueden enviar hasta que se desplace
la ventana
Se pueden enviar
Buffer de recepción
Entregados a la App
Recibidos y confirmados
Ventana que anuncia
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
Emisor
Ventana anunciada por el receptor
Datos de la aplicación a enviar
Enviados y confirmados
Enviados
Receptor
Se pueden enviar
Buffer de recepción
No se pueden enviar hasta que se
desplace la ventana
Entregados a la App
Recibidos y confirmados
Ventana que anuncia
Control de flujo en TCP
18/25
Ventana deslizante en TCP
Se reciben más confirmaciones
La ventana se desliza en el emisor (…)
Emisor
Ventana anunciada por el receptor
Datos de la aplicación a enviar
Enviados y confirmados
Enviados
Receptor
Se pueden enviar
Buffer de recepción
No se pueden enviar hasta que se
desplace la ventana
Entregados a la App
Recibidos y confirmados
Ventana que anuncia
Control de flujo en TCP
19/25
Ventana deslizante en TCP
Se reciben más confirmaciones
La ventana se desliza en el emisor
Emisor
Ventana anunciada por el receptor
Enviados y confirmados
Enviados
Receptor
Entregados a la App
Recibidos y confirmados
Datos de la aplicación a enviar
No se pueden enviar hasta que se
desplace la ventana
Se pueden enviar
Buffer de recepción
Ventana que anuncia
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
Tamaño cabecera
(palabras de 32bits)
URG: datos urgentes
(casi no se usa)
ACK: El nº ACK
es válido
PSH: Push
Entregar datos a App
RST, SYN, FIN:
establecimiento y fin
de la conexión
Internet
checksum
(como en UDP)
Puerto origen
Puerto destino
Número de secuencia
Número de confirmación
No
Ventana
U A P R S F
Long
cab.
usado
Checksum
Puntero a urgentes
Opciones (longitud variable)
Datos de
aplicación
(longitud variable)
Cuenta en bytes
de datos
(no en segmentos)
Tamaño de la
ventana que
se anuncia al
emisor
P
a
q
u
e
t
e
I
P
S
e
g
m
e
n
t
o
T
C
P
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
6.- Nivel de aplicación en Internet
7.- Ampliación de temas
Nivel de transporte: UDP
TCP: Características. Establecimiento y finalización de
conexiones
Control de flujo en TCP
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
Comentarios de: Clase 20 Control de flujo en TCP (0)
No hay comentarios