· Actualizado: · Lectura: ~7 min

TCP es un protocolo orientado a conexión que ofrece un servicio de flujo de bytes fiable y ordenado; antes de enviar datos establece la conexión con el saludo en tres pasos (SYN, SYN-ACK, ACK). UDP no establece conexión y no garantiza la entrega ni la protección frente a duplicados, a cambio de una cabecera mínima de ocho octetos.

La capa de transporte es una de las más preguntadas del tema 16 de nuestro temario TI (modelo OSI y TCP/IP). La duda típica es la diferencia entre TCP y UDP y el orden exacto del three-way handshake. Las definiciones que siguen se contrastan con las especificaciones originales: RFC 9293 (TCP, agosto de 2022, que sustituye a la RFC 793) y RFC 768 (UDP, 28 de agosto de 1980).

TCP frente a UDP en una tabla

CaracterísticaTCPUDP
ConexiónOrientado a conexión: handshake antes de los datosSin conexión
FiabilidadDetecta pérdidas con números de secuencia y errores con sumas de comprobación por segmento, y las corrige retransmitiendoLa entrega y la protección frente a duplicados no están garantizadas (RFC 768)
OrdenServicio de flujo de bytes ordenadoSin garantía de orden
Unidad de datos (PDU)SegmentoDatagrama
CabeceraIncluye puertos, números de secuencia y de confirmación y banderas de controlFija de 8 octetos: puerto de origen, puerto de destino, longitud y suma de comprobación
Control adicionalControl de flujo y de congestiónNinguno propio
Usos típicosWeb, correo, SSH, transferencia de ficherosConsultas DNS, DHCP, SNMP