3. u n i d a d 9
Concepto de capa de transporte
Proporciona un servicio de comunicación directo y eficiente entre
aplicaciones que se ejecutan en diferentes máquinas.
Aplicaciones
y procesos
Cada una de las aplicaciones que se
encuentran en un dispositivo puede estar
ejecutándose, o no, en un momento dado.
Puertos
Permiten identificar los procesos en cada
máquina y, de esta forma, una misma máquina
origen podrá establecer enlaces lógicos
simultáneos con múltiples procesos de una o
más máquinas destino (multiplexación de
enlaces).
Cuando se está ejecutando recibe el
nombre de proceso.
Principales
protocolos de
transporte
User datagram protocol (UDP)
Transmission control protocol (TCP)
4. u n i d a d 9
User datagram protocol (UDP)
•PDU del protocolo UDP: datagrama.
•Multiplexación de envíos.
•Detección de errores.
•Envío del datagrama de forma independiente.
•Envío del datagrama y su orden sin etiquetar.
•Inexistencia de algún mecanismo que permita
garantizar que los datagramas llegan en orden.
•Inexistencia también de algún mecanismo que evite
las congestiones.
•No disposición de algún mecanismo de
fragmentación o de gestión de fragmentos.
Características
•El protocolo UDP permite elevadas velocidades
de transferencia, pero sin ofrecer garantías.
•Permite el tráfico de difusión y multidifusión
(broadcast y multicast).
Consecuencias
Cualquier otra funcionalidad que se precise deberá
implementarla la propia aplicación que haga uso
del protocolo UDP.
¿Y si se requieren
más servicios?
Es el protocolo de la capa de transporte más sencillo
de la pila TCP/IP.
5. u n i d a d 9
User datagram protocol (UDP)
Formato de los
datagramas
UDP
Puerto origen
Puerto destino
Longitud
Checksum
Transmisión de
datos mediante
UDP
Origen
Información
fragmentos
Capa de
transporte
Destino Datagrama Checksum
Aplicaciones
que utilizan
UDP
Protocolo DNS
Protocolo DHCP
Protocolos de streaming de voz y vídeo
Protocolos de difusión y multidifusión de datos
Algunos juegos online
6. u n i d a d 9
Transmission control protocol (TCP)
Características
•Orientación a conexión.
•Conexiones lógicas punto a punto.
•Multiplexación de conexiones.
•Fragmentación de los bloques de datos.
•Reordenación de los segmentos.
•Detección de errores.
•Entrega fiable.
•Retransmisión automática.
•Eliminación de segmentos duplicados.
•Control de flujo y de congestiones.
•El protocolo TCP garantiza que el mensaje podrá
ser reconstruido en el destino.
•Esta fiabilidad y la posibilidad de control de flujo y
de congestiones tienen un elevado coste a nivel de
eficiencia.
•Comparado con UDP, TCP es un protocolo mucho
más lento.
Consecuencias
Es el protocolo de la capa de transporte más popular
de la pila de protocolos TCP/IP.
7. u n i d a d 9
Transmission control protocol (TCP)
Formato
Número de secuencia
Puertos de origen y destino
Número de reconocimiento
Campo reservado (R)
Longitud de la cabecera (L)
URK, ACK, PSH, RST, SYN y FIN.
Indicadores (flags)
Ventana de recepción
Puntero de datos urgente
Checksum
Opciones
8. u n i d a d 9
Transmission control protocol (TCP)
Estados en
una conexión
TCP
Las conexiones TCP comunican entre sí dos
procesos de dos hosts. Cada proceso es
identificado por un número de puerto y durante la
vida del mismo su puerto puede encontrarse en
diferentes estados.
Antes de iniciar una conexión, los
puertos pueden encontrarse cerrados
(Closed) o en estado de espera de
nuevas conexiones (Listen).
Transmisión de datos mediante TCP
Fragmentación y entrega fiable de los segmentos TCP
Establecimiento de una conexión
Finalización de la conexión
Procedimiento del triple encaje de manos (three way
handshake)
(bit FIN activado)
9. u n i d a d 9
Puertos estándar y no estándar
Reservas
de IANA
Puertos
de sistema
Puertos
de usuario
Puertos dinámicos
y/o privado
Puertos
estándar
Tanto UDP como TCP utilizan puertos de 16 bits para identificar las
aplicaciones o procesos que participan en la comunicación entre hosts.
Del 0
al 1 023
Del 1 024
al 49 151
Del 49 512
al 65 535
Registrados
en la IANA
• netstat: comando para monitorización de puertos en
el propio host.
• nmap: el más utilizado para el descubrimiento de
puertos abiertos en un host remoto.
Monitorización
Para establecer una conexión a un determinado
puerto las aplicaciones suelen hacer uso de la
siguiente notación: direcciónIP:puerto
Notación
10. u n i d a d 9
Port address translation (PAT)
Es una ampliación del NAT que nos permite dar acceso a
Internet a múltiples hosts a través de una sola dirección IP.
Una misma dirección IP pública, que dispone de 65536
puertos, puede dar acceso a Internet a 65536 procesos
distintos que pueden estar ubicados en diferentes máquinas
de la red local.
Modo
estático
El administrador de la red asigna a un servicio
concreto de la red local un número de puerto
concreto de la dirección IP pública para que se
pueda acceder a este servicio desde Internet.
Modo dinámico
Los puertos de la dirección IP pública se asignan
automáticamente a medida que se necesitan.
Consecuencias
PAT permite ahorrar direcciones IP públicas, ya
que
con solo una de ellas se da acceso a Internet a una
gran cantidad de dispositivos de la LAN.