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

  1. Fiabilidad: Asegurar que los datos lleguen sin errores y en el orden correcto.
  2. Control de Flujo: Regular la cantidad de datos que se envían para evitar la congestión de la red.
  3. Control de Congestión: Evitar la sobrecarga de la red mediante la regulación del tráfico.
  4. Multiplexación: Permitir que múltiples aplicaciones utilicen la red simultáneamente.
  5. 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

  1. 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.
  2. 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.
  3. 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

  1. 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 No
Control de Congestión 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:

  1. Captura una sesión TCP y observa los segmentos SYN, SYN-ACK, y ACK.
  2. 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.

© Copyright 2024. Todos los derechos reservados