Introducción
Los protocolos de transporte son fundamentales en la comunicación de redes, ya que se encargan de la transferencia de datos entre sistemas finales. Estos protocolos aseguran que los datos se entreguen de manera confiable y en el orden correcto. Los dos protocolos de transporte más conocidos son el Protocolo de Control de Transmisión (TCP) y el Protocolo de Datagramas de Usuario (UDP).
Objetivos de los Protocolos de Transporte
- Fiabilidad: Asegurar que los datos lleguen sin errores y en el orden correcto.
- Control de Flujo: Regular la cantidad de datos que se envían para evitar la congestión de la red.
- Control de Congestión: Evitar la sobrecarga de la red mediante la regulación del tráfico.
- Multiplexación: Permitir que múltiples aplicaciones utilicen la red simultáneamente.
- Integridad de Datos: Verificar que los datos no se corrompan durante la transmisión.
Protocolo de Control de Transmisión (TCP)
Características de TCP
- Orientado a conexión: TCP establece una conexión antes de transmitir datos.
- Fiabilidad: TCP garantiza la entrega de datos sin errores y en el orden correcto.
- Control de flujo y congestión: TCP ajusta la velocidad de transmisión según la capacidad de la red y del receptor.
- Segmentación y reensamblaje: TCP divide los datos en segmentos y los reensambla en el destino.
Funcionamiento de TCP
-
Establecimiento de Conexión (Three-Way Handshake):
- SYN: El cliente envía un segmento SYN al servidor para iniciar la conexión.
- SYN-ACK: El servidor responde con un segmento SYN-ACK.
- ACK: El cliente envía un segmento ACK para confirmar la conexión.
-
Transferencia de Datos:
- Los datos se envían en segmentos numerados.
- El receptor envía acuses de recibo (ACK) para confirmar la recepción de los segmentos.
-
Terminación de Conexión:
- FIN: Una de las partes envía un segmento FIN para finalizar la conexión.
- ACK: La otra parte responde con un segmento ACK.
- FIN-ACK: La parte que recibió el FIN envía un segmento FIN-ACK.
- ACK: La conexión se cierra después de recibir el último ACK.
Ejemplo de TCP
Cliente Servidor | | |------ SYN -------------->| |<----- SYN-ACK -----------| |------ ACK -------------->| | | |------ Datos ------------>| |<----- ACK ---------------| | | |------ FIN -------------->| |<----- ACK ---------------| |<----- FIN ---------------| |------ ACK -------------->| | |
Protocolo de Datagramas de Usuario (UDP)
Características de UDP
- No orientado a conexión: UDP no establece una conexión antes de transmitir datos.
- No fiable: UDP no garantiza la entrega de datos ni el orden de los mismos.
- Sin control de flujo ni congestión: UDP no ajusta la velocidad de transmisión.
- Menor sobrecarga: UDP tiene menos sobrecarga que TCP, lo que lo hace más rápido.
Funcionamiento de UDP
- Envío de Datos:
- Los datos se envían en datagramas sin establecer una conexión previa.
- No se requiere acuse de recibo (ACK) ni reensamblaje de datos.
Ejemplo de UDP
Cliente Servidor | | |------ Datos ------------>| | | |------ Datos ------------>| | | |------ Datos ------------>| | |
Comparación entre TCP y UDP
Característica | TCP | UDP |
---|---|---|
Orientación | Orientado a conexión | No orientado a conexión |
Fiabilidad | Fiable | No fiable |
Control de Flujo | Sí | No |
Control de Congestión | Sí | No |
Velocidad | Más lento debido a la sobrecarga | Más rápido debido a la menor sobrecarga |
Uso Típico | Transferencia de archivos, correos electrónicos, navegación web | Streaming de video/audio, juegos en línea, DNS |
Ejercicios Prácticos
Ejercicio 1: Identificar el Protocolo
Pregunta: ¿Qué protocolo utilizarías para una aplicación de videoconferencia en tiempo real, TCP o UDP? Justifica tu respuesta.
Respuesta: UDP, porque la videoconferencia en tiempo real requiere baja latencia y puede tolerar la pérdida de algunos paquetes, lo que hace que la menor sobrecarga de UDP sea más adecuada.
Ejercicio 2: Análisis de Captura de Paquetes
Instrucciones: Utiliza una herramienta de captura de paquetes como Wireshark para capturar y analizar una sesión TCP y una sesión UDP. Identifica los segmentos SYN, SYN-ACK, y ACK en la sesión TCP y compara la estructura de los paquetes UDP.
Solución:
- Captura una sesión TCP y observa los segmentos SYN, SYN-ACK, y ACK.
- Captura una sesión UDP y observa la estructura simple de los datagramas.
Conclusión
En esta sección, hemos explorado los protocolos de transporte TCP y UDP, sus características, funcionamiento y diferencias. TCP es adecuado para aplicaciones que requieren fiabilidad y control de flujo, mientras que UDP es ideal para aplicaciones que necesitan baja latencia y pueden tolerar la pérdida de algunos datos. Con esta base, estás preparado para profundizar en otros aspectos de los protocolos de comunicación en redes.
Curso de Redes
Módulo 1: Introducción a las Redes
Módulo 2: Protocolos de Comunicación
- Introducción a los Protocolos de Comunicación
- Protocolos de Enlace de Datos
- Protocolos de Red
- Protocolos de Transporte
- Protocolos de Aplicación
Módulo 3: Modelo OSI
- Introducción al Modelo OSI
- Capa Física
- Capa de Enlace de Datos
- Capa de Red
- Capa de Transporte
- Capa de Sesión
- Capa de Presentación
- Capa de Aplicación
Módulo 4: Modelo TCP/IP
- Introducción al Modelo TCP/IP
- Capa de Acceso a la Red
- Capa de Internet
- Capa de Transporte
- Capa de Aplicación