Aclaración: Top10VPN es editorialmente independiente. Podemos ganar comisiones si compras una VPN a través de enlaces en nuestro sitio.

UDP o TCP: ¿en qué se diferencian?


JP Jones es nuestro CTO. Cuenta con más de 25 años de experiencia en el sector de la ingeniería de software y networking y supervisa todos los aspectos técnicos de nuestro proceso de pruebas

Nuestro veredicto

UDP es más rápido y eficiente que TCP porque usa menos datos para completar las mismas tareas. Sin embargo, TCP rastrea todos los paquetes de datos y se asegura de que se entreguen en el orden correcto, lo que hace que sea más seguro y fiable. Si utilizas el protocolo OpenVPN, te recomendamos que pruebes primero UDP y cambies a TCP solo si no funciona.

Diagrama de las diferencias entre UDP y TCP

UDP (Protocolo de Datagramas de Usuario) y TCP (Protocolo de Control de Transmisión) son dos protocolos de comunicación diferentes que se utilizan para enviar información en Internet.

En el software de VPN, el protocolo OpenVPN tiene que utilizar UDP o TCP para enviar datos entre tu dispositivo y el servidor VPN. ¿En qué se diferencian y cuál es mejor para tu conexión VPN?

Principales diferencias entre UDP y TCP

    • TCP tiene que establecer una conexión entre el emisor y el receptor para transmitir datos, mientras que UDP transmite paquetes a otro dispositivo sin tener que establecer un canal ni preguntar si el receptor está listo.
    • UDP es más rápido que TCP porque no ordena ni comprueba los errores de los paquetes de datos.
    • TCP es más fiable que UDP. Comprueba que no haya errores y garantiza que los paquetes de datos se entregan a la aplicación que se comunica en el orden correcto.
    • TCP es ligeramente más seguro que UDP y es más difícil insertar datos maliciosos porque rastrea todos los paquetes de datos.

 

Resumen: la principal diferencia entre TCP y UDP es el método en que establecen la conexión, que a su vez afecta a la velocidad y seguridad de cada protocolo.

En esta guía te explicamos qué son los protocolos UDP y TCP,
en qué se diferencian y cuál es mejor para streaming, juegos, navegación online y otras actividades.

¿En qué se diferencian UDP y TCP?

Aunque tanto TCP como UDP son protocolos de comunicación, su funcionamiento es bastante diferente.

La siguiente tabla te ayudará a ver las principales diferencias entre UDP y TCP:

UDP TCP
Funcionamiento No establece una conexión Establece una conexión
Velocidad Más rápido Más lento
Fiabilidad Más baja Más alta
¿Vuelve a enviar los paquetes perdidos? No
¿Garantiza que los paquetes lleguen en el orden correcto? No
Control de flujo No: los paquetes de datos pueden caerse (perderse) si el receptor está sobrepasado. : el receptor le dice al remitente el espacio que tiene para recibir paquetes. TCP guarda los paquetes hasta que haya espacio.
Uso de datos Más bajo Más alto
¿Para qué aplicaciones se usa en tu túnel VPN?
(Puedes usar TCP o UDP para tu túnel VPN)
  • Sistema de nombres de dominio (DNS)
  • Juegos en línea
  • Streaming de vídeo
  • Voz sobre protocolo de Internet (VoIP)
  • Dispositivos de Internet de las cosas (como sensores que envían datos a casa de forma esporádica)
  • Sistema de nombres de dominio (DNS)
  • Navegación web (HTTP, HTTPS)
  • Correo electrónico (SMTP, IMAP/POP)
  • Descargas/cargas (FTP)
  • Acceso remoto a ordenadores mediante shell seguro (SSH)
¿Es adecuado para aplicaciones en tiempo real? No

Principales diferencias entre UDP y TCP.

UDP es más rápido que TCP

Probamos ExpressVPN y NordVPN, las dos VPN más destacadas de 2022, para consultar una comparativa de sus velocidades al utilizar el protocolo OpenVPN con UDP y TCP.

Para cada tipo de OpenVPN y VPN nos conectamos desde nuestra sede en Reino Unido a un servidor en Reino Unido, Estados Unidos y Australia y medimos las velocidades de descarga. Estos son los resultados:

ExpressVPN (Mbps) NordVPN (Mbps)
País UDP TCP % de pérdida UDP TCP % de pérdida
RU 93,74 91,09 3 92,48 93,66 0
EE. UU. 61,6 47,11 23,5 85,49 16 81
AUS 75,03 46,68 38 67,28 4,34 93,5

Datos de pruebas de velocidad que comparan UDP y TCP en conexiones internacionales.

Tal y como muestran los datos, UDP suele ser más rápido que TCP, y la diferencia es mayor a medida que aumenta la distancia con el servidor. Esto se debe a que un paquete UDP contiene más carga útil que un paquete TCP (porque su encabezado es más pequeño), por lo que pueden caber más datos en un tubo de conexión de red determinado (digamos 100 Mbs), y así se obtiene un mayor rendimiento.

Además, TCP entrega los paquetes de datos en un flujo ordenado y a prueba de errores, y cualquier dato que sea incorrecto o falte tiene que volver a solicitarse al ordenador emisor, lo que añade retrasos.

Al utilizar TCP, las comunicaciones de ida y vuelta (back-and-forth) entre el emisor y el receptor hacen que cada mensaje tenga que viajar más lejos, por lo que la velocidad media de la VPN disminuye.

Al utilizar ExpressVPN, UDP fue un 23,5 % más rápido al conectarse desde Reino Unido a Estados Unidos, y un 38 % más rápido al conectarse a Australia.

La diferencia fue aún más clara al utilizar NordVPN. Perdimos el 81 % de nuestra velocidad de descarga al conectarnos a EE.UU. usando TCP, y el 93,5 % al conectarnos a Australia. Sin embargo, descubrimos que TCP era ligeramente más rápido que UDP cuando se conectaba a un servidor de NordVPN en el mismo país.

TCP consume más datos que UDP

TCP utiliza más datos que UDP porque incluye más información en el encabezado de cada paquete de datos. Esto hace que TCP sea más fiable, pero menos eficiente que UDP.

Cada paquete de datos que se envía por internet tiene un encabezado, algo parecido a escribir la dirección del destinatario en un sobre. Contiene la información necesaria para que los datos lleguen al lugar correcto, y cualquier información adicional que necesite el protocolo.

Tanto UDP como TCP muestran los puertos de origen y destino de los datos, la longitud del paquete de datos y la suma de comprobación en el encabezado. Sin embargo, TCP también incluye información adicional para garantizar una entrega correcta.

CONSEJO PROFESIONAL: La suma de comprobación es un cálculo que se realiza sobre los datos dos veces: antes de enviarlos y después de recibirlos. Si el resultado es diferente en el extremo DEL receptor, significa que los datos se han corrompido durante el tránsito.

Aquí tienes una comparación entre los encabezados de UDP y TCP:

UDP TCP
Tamaño del encabezado 8 bytes 20 bytes o más
Contenido del encabezado (en UDP y TCP)
  • Puerto de origen
  • Puerto de destino
  • Longitud
  • Suma de comprobación
  • Puerto de origen
  • Puerto de destino
  • Longitud
  • Suma de comprobación
Contenido del encabezado (solo TCP) No hay datos de encabezado adicionales
  • Número de secuencia
  • Número de confirmación o acuse de recibo
  • Flags de TCP (por ejemplo, los flags de sincronización y acuse de recibo que se usan para establecer una conexión).
  • Ventana (el tamaño del búfer receptor, para que el emisor no envíe demasiados datos).
  • Puntero urgente
  • Opciones TCP opcionales (como marcas de tiempo)

Datos que muestran las diferencias entre los encabezados UDP y TCP.

Como muestra esta tabla, en comparación con UDP, TCP utiliza más datos para gestionar las transferencias de datos cuando se envía información a través de Internet.

TCP también implica un mayor número de comunicaciones entre el emisor y el receptor. Esto se debe a que el receptor hace un ACK (acuse de recibo) de cada paquete que recibe utilizando TCP, y cualquier paquete que se pierda se vuelve a enviar. Como resultado, TCP utiliza más datos que UDP.

En nuestro análisis del uso de datos de la VPN medimos la cantidad de datos adicionales que utiliza una VPN cuando usa TCP en comparación con UDP. Aquí tienes un resumen de los resultados:

OpenVPN con UDP OpenVPN con TCP
Incremento de datos en comparación con situación en la que no se utiliza una VPN 17,23 % 19,96 %

Resultados de la prueba de uso de datos comparando la cantidad de datos que utilizan UDP y TCP.

Si tienes un plan de datos móviles en el que pagas por gigabyte o tienes un límite de datos fijo, llegarás antes al límite si usas TCP.

TCP es un poco más seguro que UDP

Ni UDP ni TCP se han diseñado pensando en la seguridad. Se usan para enviar paquetes de datos por Internet, y esos paquetes pueden ser texto plano o estar cifrados. Otros protocolos o aplicaciones más arriba en la pila de comunicaciones sí suelen encargarse de la seguridad.

Como los paquetes se secuencian y se reconocen en TCP, es más difícil que un hacker inyecte datos maliciosos que con UDP.

En términos prácticos, ninguno de los dos protocolos presenta problemas de seguridad cuando se utiliza con una VPN. Tanto TCP como UDP son compatibles con las funciones de seguridad y privacidad que se utilizan para mantenerte a salvo.

¿Cómo utilizan UDP y TCP las VPN?

OpenVPN es un protocolo VPN de código abierto que se utiliza en la mayoría de los servicios VPN seguros. En muchos casos, los usuarios pueden elegir entre OpenVPN UDP y OpenVPN TCP. En este apartado, explicaremos cómo afecta esta decisión a la funcionalidad de tu VPN.

Configuración del protocolo de NordVPN.

Las funciones UDP y TCP de NordVPN se pueden encontrar en el menú de protocolos.

En primer lugar, imagina que navegas por una página web sin usar una VPN. La conexión entre tu dispositivo y el servidor web utilizará TCP porque es más fiable que UDP. Funciona así:

Explicación del funcionamiento de TCP

Cómo se enruta el tráfico TCP a través de Internet sin una VPN.

Cuando empiezas a usar una VPN, las comunicaciones nuevas se envuelven en un túnel OpenVPN entre tu dispositivo y el servidor VPN. Ese túnel se conecta entre tu dispositivo y el servidor VPN, y puede utilizar UDP o TCP.

Explicación del cifrado de tu tráfico con una VPN

Cómo envuelve el tráfico TCP OpenVPN UDP o TCP.

Cuando modificas la configuración de tu VPN, decides qué tipo de envoltura quieres hacer. ¿Cuál es mejor?

UDP o TCP: ¿cuál es mejor?

RESUMEN: si tu VPN te da a elegir entre UDP o TCP, prueba antes con UDP, porque es más rápido que TCP, y puedes seguir utilizando TCP para actividades como la navegación web dentro de tu túnel VPN UDP. Utilizar TCP con tu VPN puede ser útil si UDP está bloqueado por un cortafuegos o tienes una conexión poco fiable.

El protocolo de comunicación superior depende del motivo por el que estés usando una VPN. En este apartado, explicaremos si UDP o TCP son mejores para el streaming, la navegación en general, para evitar la censura o para el uso general con una VPN.

Conexiones VPN normales

Utilizar OpenVPN con UDP es la mejor opción para casi todas las conexiones VPN generales porque es más rápido que TCP y utiliza menos datos.

Las aplicaciones siguen usando TCP para la conexión dentro de tu túnel VPN UDP, lo que significa que cualquier servicio que requiera la entrega de paquetes garantizada de TCP puede seguir teniéndola.

Streaming y juegos

Los juegos y el streaming de vídeo suelen usar conexiones UDP, porque es mejor saltarse una pequeña parte de la transmisión que sufrir retrasos al intentar recuperarla.

Por eso recomendamos elegir UDP si usas la VPN para hacer streaming o jugar a videojuegos.

Si utilizas OpenVPN TCP, tu VPN puede intentar recuperar los paquetes de datos perdidos innecesariamente. Si esperas a que se vuelvan a enviar los paquetes perdidos, el juego o la reproducción de contenido habrá avanzado cuando se actualice la pantalla.

CONSEJO PROFESIONAL: Netflix y Amazon Prime utilizan TCP porque es más fácil controlar el uso de ancho de banda. Se puede utilizar todo el ancho de banda disponible entre el servidor y el receptor, lo que permite enviar los paquetes de datos más rápido. También pueden modificar la calidad del vídeo para mejorar la experiencia del usuario.

Correos electrónicos y navegación web

Es recomendable utilizar OpenVPN UDP para enviar correos electrónicos y navegar por la web.

Explicación del cifrado de tu tráfico con una VPN

Cómo funciona OpenVPN UDP con el tráfico TCP.

Es un error muy habitual pensar que hay que usar un túnel VPN basado en TCP para las aplicaciones que requieren más fiabilidad; no es así y no suele ser una buena idea. La conexión interna sigue teniendo TCP si lo necesita y al túnel VPN no le hace falta añadir otra capa.

Si envuelves una conexión TCP con un túnel VPN TCP, corres el riesgo de sufrir lo que se denomina «TCP meltdown». Esto ocurre cuando las dos capas de TCP intentan compensar los paquetes perdidos y sucede porque las capas TCP interna y externa tienen temporizadores independientes que se utilizan para decidir cuándo se pierde un paquete.

Evitar cortafuegos y eludir la censura

Si lo que buscas es evadir la censura o eludir un cortafuegos, elige TCP para OpenVPN.

Cuando usas TCP en el puerto 4433, tu tráfico VPN tiene el mismo aspecto que el tráfico web cifrado HTTPS. Si bloqueas el puerto TCP 443, se cierran todos los sitios web de comercio electrónico, por lo que se suele permitir este tráfico a través de los cortafuegos.

Algunas VPN también son compatibles con el puerto TCP 80, que se suele usar para el tráfico web no cifrado y que también pasará a través de un cortafuegos sin ningún problema.

Varios estudiantes han dicho que utilizar OpenVPN con TCP les permitió saltarse los cortafuegos del campus, mientras que UDP está bloqueado.

TCP puede funcionar en países en los que las VPN están bloqueadas oficialmente, pero ten en cuenta que tu tráfico de VPN podría identificarse mediante la inspección profunda de paquetes. TCP por sí solo no te protege si el uso de la VPN no es legal o seguro en tu país.

Prueba siempre antes UDP para OpenVPN. Es más rápido y tus aplicaciones pueden seguir usando TCP en el túnel interior si lo necesitan para garantizar la fiabilidad.

OpenVPN Inc., la empresa que crea software VPN basado en el protocolo OpenVPN, dice:

«El protocolo OpenVPN en sí mismo funciona mejor solo con el protocolo UDP. Y de forma predeterminada, las conexiones… están preprogramadas para probar siempre antes con UDP, y si falla, intentar con TCP».

Dicho esto, si tu VPN no funciona con UDP por problemas de red, quizás lo soluciones utilizando OpenVPN con TCP. TCP está diseñado para compensar las conexiones de red poco fiables.

¿Qué es TCP?

TCP crea una conexión entre dos dispositivos, como tu ordenador y un servidor web. Los datos se envían a través de esa conexión. Es como una llamada de teléfono en la que los dos dispositivos hablan entre sí para poder comprobar si la información se ha recibido correctamente.

Cuándo usar TCP:

  • Garantiza la recepción de todos los paquetes. Si el receptor no confirma que ha recibido un paquete, el emisor lo vuelve a enviar.
  • Los paquetes se secuencian para garantizar que llegan al receptor en el mismo orden en el que se enviaron. Los paquetes no se envían si el receptor no está preparado para recibirlos.
  • Los paquetes no se envían si el receptor no está preparado para recibirlos.

CONSEJO PROFESIONAL: Es posible que hayas visto menciones a TCP/IP. IP significa Protocolo de Internet, y es la forma en que TCP encuentra la dirección IP a la que tiene que enviar los datos. No puedes usar TCP sin IP, así que para lo que nos ocupa, TCP/IP y TCP son lo mismo.

¿Qué es UDP?

A diferencia de TCP, UDP es un protocolo sin conexión. Los datos se envían, pero no hay ningún mecanismo de retroalimentación para confirmar que se han recibido correctamente. UDP se parece más a enviar algo por correo: lo pones en el buzón y te olvidas de ello.

Cuándo usar UDP:

  • Los paquetes de datos pueden perderse durante el tránsito y el remitente no lo sabrá.
  • Los paquetes que se envíen a un receptor desbordado se descartan (pierden) y no se pueden recuperar.
  • No hay ningún mecanismo de recuperación integrado en UDP para los datos perdidos o dañados, pero las aplicaciones que utilizan UDP pueden incluir sus propios mecanismos de recuperación.

Como UDP no necesita establecer y mantener una conexión, es más rápido que TCP. Es perfecto para aplicaciones muy sensibles a la latencia, como las videoconferencias y los juegos en línea.

Un paquete perdido puede dar lugar a un fallo, pero es mejor que el retraso que se produciría cuando TCP reenvía el paquete.

El Sistema de Nombres de Dominio (DNS) puede utilizar y utiliza UDP y TCP. Aunque utiliza más TCP a medida que aumentan los paquetes de consulta, UDP es el protocolo predeterminado para garantizar la mayor velocidad posible.