FR Tema3
FR Tema3
Capa de transporte
Fundamentos de Redes
Grado en Ingeniería Informática y dobles grados
Curso 3º
it
Ingen ería
Telemá
UGR
ica
© 2022
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
Esquema
Fundamentos de Redes – Grado en Ingeniería Informática y dobles grados
1. Introducción.
2. Protocolo de datagrama de usuario (UDP).
© 2022 v1.0 – Juan M. López Soler y Jorge Navarro Ortiz
2
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
Servicio de multiplexación/demultiplexación.
Servicio orientado a conexión frente a no orientado a
conexión.
Cómo conseguir una transferencia de datos fiable.
Cómo proporcionar control de flujo.
Cómo proporcionar control de congestión.
Cómo se han implementado estas funcionalidades en
Internet.
3
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
Bibliografía
Fundamentos de Redes – Grado en Ingeniería Informática y dobles grados
76896-8
Agradecimientos:
Transparencias originales de Juan Manuel López Soler, Pedro
García Teodoro, Jorge Navarro Ortiz, Departamento TSTC, UGR.
4
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
Esquema
Fundamentos de Redes – Grado en Ingeniería Informática y dobles grados
1. Introducción.
2. Protocolo de datagrama de usuario (UDP).
© 2022 v1.0 – Juan M. López Soler y Jorge Navarro Ortiz
5
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
1. Introducción.
Fundamentos de Redes – Grado en Ingeniería Informática y dobles grados
Protocolo UDP:
Multiplexación/demultiplexación de aplicaciones.
Servicio no orientado a conexión, no fiable.
Protocolo TCP:
Multiplexación/demultiplexación de aplicaciones.
Servicio orientado a conexión, fiable:
Control de errores y de flujo.
Control de la conexión.
Control de congestión.
Extensiones TCP
6
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
1. Introducción.
Fundamentos de Redes – Grado en Ingeniería Informática y dobles grados
host A host B
TPDU
TCP/UDP TCP/UDP
nodo
IP intermedio IP
datagrama IP IP datagrama IP
Interfaz de red Interfaz de red
Interfaz de red
red 1 red 2
Internet
7
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
Esquema
Fundamentos de Redes – Grado en Ingeniería Informática y dobles grados
1. Introducción.
2. Protocolo de datagrama de usuario (UDP).
© 2022 v1.0 – Juan M. López Soler y Jorge Navarro Ortiz
8
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
dirección IP
IP origen
IP capa de red
IP destino
9
Datagrama de usuario UDP.
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
Esquema
Fundamentos de Redes – Grado en Ingeniería Informática y dobles grados
1. Introducción.
2. Protocolo de datagrama de usuario (UDP).
© 2022 v1.0 – Juan M. López Soler y Jorge Navarro Ortiz
11
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
12
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
Funcionalidades de TCP:
Multiplexación/demultiplexación de aplicaciones.
Control de la conexión (establecimiento y cierre).
Control de errores y de flujo.
© 2022 v1.0 – Juan M. López Soler y Jorge Navarro Ortiz
Control de congestión.
TPDU TCP = Segmento TCP:
# de secuencia 0 4 10 16 31
del primer byte Puerto origen Puerto destino
del segmento
Numero de “secuencia” Cuenta de bytes
# del byte que se Número de “acuse” de recibo (no segmentos)
espera recibir
Hlen reservad Control de flujo
(acumulativos) UAPRSF “Ventana” del receptor (bytes)
(32 bits) o
Envío de datos
Longitud de Comprobación “Puntero” de datos urgentes
urgentes fuera
la cabecera TCP Opciones de banda
datos
.....
Multiplexación/demultiplexación de aplicaciones:
Transportar las TPDU al proceso correcto.
Existen puertos preasignados con servicios normalizados:
© 2022 v1.0 – Juan M. López Soler y Jorge Navarro Ortiz
14
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
SYN=1
#secuencia =X
“Apertura activa”: cliente
“Apertura pasiva”: servidor
Campos involucrados:
* Bit S (SYN) del campo control
ACK=1
# acuse =X+1 * Campo secuencia (valor aleatorio)
SYN=1 * Campo acuse
#secuencia =Y
* Bit A (ACK) del campo control
#acuse =Y+1
ACK=1
15 A B
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
17
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
1
seq=101, ac , ack=10
k =301, seq=301
18
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
19
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
Control de la conexión:
Cierre de la conexión: liberación de recursos.
© 2022 v1.0 – Juan M. López Soler y Jorge Navarro Ortiz
Control de la conexión:
Cierre de la conexión: caso normal.
© 2022 v1.0 – Juan M. López Soler y Jorge Navarro Ortiz
TCP A TCP B
ESTABLISHED ESTABLISHED
seq = 100, ack=
300, FIN, A
FIN-WAIT-1 CK
CLOSE -WAIT
CK
101 , FIN, A LAST-ACK
seq=300, ack=
seq=101 ack=
TIME-WAIT , 301 , ACK
CLOSED
2
MSL
CLOSED
22
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
inicio
Autómata de estados
CLOSED finitos TCP
apertura pasiva
-/ -
© 2022 v1.0 – Juan M. López Soler y Jorge Navarro Ortiz
apertura activa
Leyenda: a/b
- / syn LISTEN
- / syn Segmento a recibido,
reset
syn / syn+ack
segmento b transmitido.
SYN_SENT syn / ack
SYN_RCVD
2MSL
23
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
Iporigen
IPdestino
00...00 protocolo longitudTCP
24
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
Seq=92 timeout
00, 20
bytes
data
Seq=100 timeout
timeout
=100
ACK 0
K =10
pérdida X AC 0
=12
ACK
Seq=9 Seq=9
2, 8 b 2, 8 b
ytes d ytes d
ata ata
K= 120
=100 AC
ACK
26
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
29
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
a = 0.875
30
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
Ventana
ofertada
31
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
Control de flujo:
Emisor Receptor Buffer
0 4K
La aplicación
© 2022 v1.0 – Juan M. López Soler y Jorge Navarro Ortiz
2 KB Vacío
escribe 2 KB Se q = 0
Win = 2048 2 KB
Ack = 2 0 4 8 ,
La aplicación
2 KB
escribe 3 KB Seq = 2048
Lleno
Emisor Win = 0
Ack = 4 0 9 6 ,
Bloqueado La aplicación
Win = 2048 lee 2 KB
Ack = 4 0 9 6 ,
El emisor 2 KB
puede enviar 1K Se q = 4 0 9 6
hasta 2 KB
3 KB
32
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
34
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
Control de congestión:
En el emisor se utilizan dos ventanas y un umbral.
© 2022 v1.0 – Juan M. López Soler y Jorge Navarro Ortiz
Bytes_permitidos_enviar =
min{VentanaCongestion,VentanaDelReceptor}
VentanaCongestion:
Inicialmente VentanaCongestion = 1 (num. segmentos)
Prevención Si VentanaCongestion > umbral, cada vez que se recibe todos los ACKs pendientes
de la VentanaCongestion++ (crecimiento lineal)
congestión
Si hay timeout entonces
umbral=VentanaCongestion/2 y VentanaCongestion = 1
35
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
Prevención
de la “Timeout”
congestión Reno
Tahoe
Inicio lento
36
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
Esquema
Fundamentos de Redes – Grado en Ingeniería Informática y dobles grados
1. Introducción.
2. Protocolo de datagrama de usuario (UDP).
© 2022 v1.0 – Juan M. López Soler y Jorge Navarro Ortiz
37
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
4. Extensiones TCP.
Fundamentos de Redes – Grado en Ingeniería Informática y dobles grados
afectan a la interoperabilidad
entre los extremos
• Desde cualquier versión de
Linux con kernel mayor que la
2.6.19 se usa por defecto TCP
CuBIC
38
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
4. Extensiones TCP.
Fundamentos de Redes – Grado en Ingeniería Informática y dobles grados
Ventana escalada:
Opción TCP en segmentos SYN:
© 2022 v1.0 – Juan M. López Soler y Jorge Navarro Ortiz
Estimación RTT:
Opción TCP de sello de tiempo, en todos los segmentos.
Referencias:
RFCs
/usr/src/linux-2…/net/ipV4/tcp.c
/usr/include/netinet/tcp.h
http://www.cs.columbia.edu/~hgs/internet/tcp.html
Herramientas de análisis: ethereal/wireshark y tcpdump.
39
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
Esquema
Fundamentos de Redes – Grado en Ingeniería Informática y dobles grados
1. Introducción.
2. Protocolo de datagrama de usuario (UDP).
© 2022 v1.0 – Juan M. López Soler y Jorge Navarro Ortiz
40
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
5. Ejercicios
Fundamentos de Redes – Grado en Ingeniería Informática y dobles grados
41
Tema 3.del
[Nombre Capa
tema]de transporte en Internet
5. Ejercicios
Fundamentos de Redes – Grado en Ingeniería Informática y dobles grados
42