Optimizar TCP/IP para reducir lag en juegos

  • La latencia depende de parámetros TCP/IP como MTU, MSS, ventana TCP y RTO, además de la ruta física y el estado de la red.
  • En casa, el mayor impacto en el ping lo tienen el WiFi, el router saturado, descargas en paralelo y el uso de VPN o proxies.
  • Ajustar QoS, usar cable Ethernet, elegir buenos DNS y controlar programas en segundo plano reduce notablemente lag y jitter.
  • En servidores y cloud, tunear la pila TCP, usar MTU mayores, HTTP/2/3 y caché en memoria recorta latencia y mejora el rendimiento.

Optimizar TCP IP para reducir lag

Si te peleas cada día con el lag, los tirones y el ping alto, no estás solo. Detrás de esa mala experiencia al jugar online, hacer videollamadas o trabajar en remoto hay un culpable muy claro: la combinación entre tu red doméstica y cómo está configurado el protocolo TCP/IP en tus dispositivos y servidores.

Optimizar TCP/IP para reducir lag no es solo cuestión de tocar un par de ajustes “mágicos”. Hace falta entender cómo funcionan conceptos como la MTU, el MSS, la ventana TCP, la latencia o el bufferbloat, y después aplicar cambios concretos en tu PC, router, red WiFi e incluso en servidores cloud o máquinas virtuales. Vamos a verlo paso a paso, pero con mentalidad práctica: qué es cada cosa y qué puedes hacer para que tu conexión responda más rápido.

Conceptos clave de TCP/IP que afectan al lag

Para poder exprimir al máximo tu conexión, conviene tener claros algunos parámetros básicos de TCP/IP que condicionan directamente el ping, la estabilidad y el rendimiento en juegos, videollamadas o accesos remotos.

MTU, fragmentación y LSO

La MTU (Maximum Transmission Unit) es el tamaño máximo, en bytes, del paquete que puede salir por una interfaz de red sin necesidad de fragmentarse. En la inmensa mayoría de redes Ethernet (y en máquinas virtuales en Azure o Google Cloud), el valor por defecto es 1500 bytes, que incluye cabeceras de red y datos.

Cuando un paquete supera esa MTU, la capa IP lo trocea en varios fragmentos más pequeños. Esta fragmentación IP implica más trabajo de CPU y memoria, tanto en el equipo que fragmenta como en el que reensambla los trozos al llegar. Esto introduce latencia extra y pérdida de rendimiento, sobre todo cuando el tráfico es muy intenso.

Además, existe el famoso bit “Don’t Fragment” (DF) en el encabezado IP. Si va activado y un router intermedio recibe un paquete más grande que su MTU, en vez de fragmentarlo lo descarta y manda de vuelta un mensaje ICMP “Fragmentation Needed”. Esto se usa en la detección de MTU en ruta (PMTUD). Pero si un firewall bloquea esos ICMP, el emisor seguirá intentando enviar paquetes demasiado grandes, provocando retrasos y retransmisiones.

En entornos como Azure o Google Cloud, los paquetes fragmentados además suelen perder las ventajas de las redes aceleradas, SR-IOV y SmartNICs. Se procesan por la ruta lenta del hipervisor, con más jitter, peor latencia y menos paquetes por segundo. Por eso, la recomendación general es evitar la fragmentación ajustando bien MTU y MSS y no inflando la MTU más de la cuenta si hay firewalls o VPN de por medio.

Por otro lado, la función Large Send Offload (LSO) permite que la pila TCP/IP del sistema operativo genere “superpaquetes” grandes y sea la tarjeta de red quien los trocee internamente según la MTU. Esto reduce bastante la carga de CPU, aunque en capturas de tráfico puedes ver frames aparentemente enormes que no significan que se esté fragmentando en la red, sino que el corte se hace en el propio adaptador.

MSS, PMTUD y VPN

El MSS (Maximum Segment Size) de TCP define cuántos bytes de datos útiles caben en cada segmento TCP, sin contar cabeceras IP y TCP. Por norma general, los sistemas calculan el MSS como:

MSS = MTU - (tamaño cabecera IP + tamaño cabecera TCP)

Con una MTU de 1500 y cabeceras IPv4+TCP de 20+20 bytes, el MSS típico es de 1460 bytes. Ese valor se negocia durante el “three-way handshake” de TCP y cada extremo propone el suyo. La conexión usa el menor de los dos.

Sin embargo, en el camino puede haber dispositivos (firewalls, routers, gateways VPN, etc.) con una MTU más pequeña que obligan a reducir efectivamente el MSS. Aquí entra en juego la Path MTU Discovery (PMTUD). Cuando un router no puede reenviar un paquete porque es demasiado grande y lleva el bit DF activado, lo tira y envía un ICMP “Fragmentation Needed” indicando la MTU máxima que soporta, para que el origen baje su tamaño.

Si esos ICMP se bloquean, la conexión entra en un bucle de reenvíos y pérdidas que se traduce en lag, retransmisiones y tiempos de carga eternos. Por eso, no siempre es buena idea subir alegremente la MTU en equipos o máquinas virtuales sin revisar toda la ruta ni la política de firewalls.

En redes con VPN IPsec u otros túneles, los encabezados adicionales reducen el espacio disponible para los datos, por lo que se recomiendan MTU y MSS más pequeños (por ejemplo, MTU 1400 y MSS ~1350 en túneles típicos) para evitar fragmentación en el túnel y retrasos asociados.

Latencia, RTT y ventana TCP

El famoso “ping” no es otra cosa que la latencia de ida y vuelta (RTT) entre dos puntos. A nivel físico está limitada por la velocidad de propagación de la luz en fibra (unos 200 km por milisegundo) y por la ruta real que siguen los datos. Rara vez es una línea recta.

En TCP, el rendimiento teórico máximo de una sola conexión viene determinado por esta fórmula básica:

rendimiento máximo ≈ tamaño de ventana TCP / RTT

La ventana TCP es la cantidad de datos que un emisor puede tener “en vuelo” sin haber recibido aún acuse de recibo (ACK). Con ventana 65.535 bytes y MSS 1460, solo se pueden enviar unos 45 paquetes antes de esperar ACK. Si el RTT es alto (por ejemplo 80-160 ms entre continentes), la ventana sin escalar se queda muy corta para aprovechar enlaces de alta capacidad.

Por defecto, el campo de ventana en la cabecera TCP es de 16 bits, lo que limita su valor máximo a 65.535 bytes. Para redes modernas esto es ridículo, así que hace años se introdujo el escalado de ventana TCP, que aplica un factor de multiplicación 2^n a ese valor y permite ventanas de cientos de MB o incluso GB.

En sistemas como Windows o Linux, el escalado de ventana se gestiona de forma automática con ajustes predefinidos (auto-tuning), y se puede ver o modificar mediante comandos como Get-NetTCPSetting o sysctl. Niveles más agresivos (por ejemplo “experimental”) permiten ventanas gigantes y pueden mejorar mucho el rendimiento en redes de larga distancia, siempre que no haya demasiada pérdida de paquetes.

Redes aceleradas, RSS y GRO/TSO

En plataformas cloud (Azure, Google Cloud, etc.) las interfaces de red tradicionales dependen fuertemente de la CPU del host para procesar cada paquete, aplicar reglas, encapsular y desencapsular. Esto provoca una carga brutal en el hipervisor cuando hay mucho tráfico y genera latencias inestables.

Por eso existen las llamadas redes aceleradas, basadas en tecnologías como SR-IOV y tarjetas SmartNIC con FPGA. La idea es que una parte importante de la pila de red definida por software se ejecuta en el hardware de la NIC, y el tráfico de datos puede ir prácticamente directo desde la VM a la tarjeta, saltándose el switch virtual del host.

Esto aporta varias ventajas:

  • Menos latencia, más PPS.
  • Menos Jitter
  • Menor consumo de CPU en el host y en la máquina virtual.

Eso sí, hay detalles importantes. Por ejemplo, muchos sistemas de red acelerada no procesan paquetes fragmentados por la ruta rápida; si hay fragmentación IP, ese tráfico se deriva por la ruta lenta, con el consiguiente impacto en el rendimiento.

En el lado del sistema operativo invitado, es clave tener activadas tecnologías como el Receive Side Scaling (RSS), que reparte el procesamiento de paquetes entrantes entre varios núcleos de CPU, y las descargas de segmentación y agregación como TSO (Transmit Segmentation Offload) y GRO/LRO (Generic Receive Offload), que reducen el número de paquetes que tiene que manipular directamente la CPU.

TIME_WAIT y reutilización de sockets

Otro factor de rendimiento TCP menos conocido pero importante es el estado TIME_WAIT. Cuando se cierra una conexión TCP de forma normal, el extremo que envía el último ACK entra en TIME_WAIT durante decenas o incluso cientos de segundos. En ese tiempo, el sistema mantiene el socket reservado para asegurarse de que no reaparezcan paquetes retrasados de la conexión antigua que puedan confundirse con una nueva sesión.

En servidores o máquinas muy concurridas, es fácil acumular miles o decenas de miles de sockets en TIME_WAIT, lo que puede agotar el rango de puertos efímeros y causar errores al abrir nuevas conexiones. Por eso, muchos sistemas permiten ajustar tanto la duración de TIME_WAIT como el rango de puertos y ciertas políticas de reutilización.

Una técnica más agresiva, soportada por algunos kernels (por ejemplo Windows Server en Azure), es el llamado TIME_WAIT assassination: si llega un nuevo SYN con número de secuencia suficientemente avanzado comparado con el de la conexión antigua, el sistema puede forzar el cierre del socket en TIME_WAIT y aceptar la nueva conexión de inmediato. Esto aumenta la escalabilidad, pero mal configurado puede causar problemas de interoperabilidad con ciertos stacks TCP más conservadores.

ping

Por qué el ping importa tanto en tu día a día

Más allá de la teoría, la latencia tiene impacto directo en casi todo lo que hacemos hoy en Internet. No basta con “tener 600 megas”; si la respuesta tarda en llegar, la experiencia se resiente. Vamos a repasar los casos donde un ping “decente” marca la diferencia.

Juegos online y tipos de ping “jugable”

En juegos competitivos, cada milisegundo cuenta. Un ping por debajo de 20 ms es prácticamente ideal: las acciones se registran casi en tiempo real y apenas notarás retraso. Entre 20 y 50 ms, la experiencia sigue siendo muy buena. Cuando subes a 50-100 ms ya puedes notar pequeñas desincronizaciones, sobre todo si juegas en servidores lejanos.

A partir de los 100-300 ms empiezan los problemas serios: disparos que llegan tarde, movimientos que ves con retraso, coches que “rebotan” en un juego de carreras, etc. Por encima de los 300 ms el juego pasa a ser más una tortura que otra cosa, especialmente en shooters, conducción o deportes.

También influye mucho el tipo de juego. En FPS y juegos de carreras es prácticamente obligatorio tener menos de 50 ms para competir; en títulos deportivos online también es deseable mantenerse por debajo de 30-40 ms. En cambio, en MMO o juegos de estrategia por turnos, se puede “sobrevivir” con pings de 150-200 ms sin que se rompa la jugabilidad, aunque la sensación nunca será tan fluida. Si juegas en Windows, te puede interesar saber cómo reducir el input lag en Windows 11 para mejorar la respuesta en partidas competitivas.

Videollamadas, compartir pantalla y llamadas VoIP

En videollamadas con Zoom, Teams, Skype o similares, el ping también es crucial. Lo ideal es moverse en torno a los 20-40 ms, donde la conversación fluye natural, sin solaparse. Hasta unos 100 ms la mayoría de usuarios lo tolera, aunque ya se perciben ligeros retardos al hablar.

Cuando el ping supera los 100 ms, empiezas a interrumpir a la otra persona sin querer. Las respuestas llegan con “eco” temporal y los silencios incómodos se hacen frecuentes. Si además la conexión va justo de ancho de banda o la WiFi es mala, se suman cortes de vídeo y audio entrecortado.

Con compartición de pantalla o control remoto el efecto es parecido. Cada clic y cada movimiento de ratón tarda en reflejarse en la pantalla remota. Con pings altos se siente como si el ordenador reaccionara “a pedales”. Eso desespera a cualquiera que trate de trabajar de forma productiva.

Internet de las Cosas, domótica y teletrabajo

En el ecosistema de IoT y dispositivos inteligentes (altavoces, bombillas, cámaras, enchufes, robots, alimentadores de mascotas, etc.), la latencia también juega un rol clave. Aunque encender una luz con 500 ms de retraso no es dramático, cuando encadenas muchas acciones o interactúas con voz (Alexa, Google Assistant) se nota muchísimo.

En teletrabajo, acceder a escritorios remotos, servidores o aplicaciones en la nube con un lag constante convierte cualquier tarea en algo tedioso. Mucha gente piensa que “falta velocidad”, cuando en realidad lo que tiene es una latencia elevada y/o muy variable (jitter) provocada por WiFi saturada, routers colapsados o malas rutas hacia el servidor.

Latencia y seguridad: impacto indirecto

Una latencia alta en sí misma no supone un riesgo directo de seguridad, pero sí puede tener efectos colaterales. Si los sistemas de monitorización, IDS o firewalls reciben la información de forma muy retrasada, pueden reaccionar tarde frente a un ataque o incluso perder eventos críticos.

También, cuando los usuarios se desesperan por el lag, tienden a “puentear” controles de seguridad: desactivan el firewall, desinstalan el antivirus o abren puertos a lo loco en el router para intentar que “vaya más rápido”. Es ahí donde una mala experiencia de red puede acabar abriendo puertas innecesarias a amenazas reales.

Principales causas de latencia alta en redes domésticas

El ping que ves en un juego o en una prueba de velocidad es la suma de muchos factores: operador, ruta por Internet, servidor de destino… pero en casa hay un buen puñado de problemas típicos que puedes controlar tú mismo.

Mala cobertura WiFi e interferencias

La mayoría nos conectamos ya casi siempre por WiFi, y ahí empiezan los dramas. Una señal débil o llena de interferencias no solo reduce la velocidad, también dispara la latencia y el jitter porque los dispositivos necesitan retransmitir paquetes, bajar de modulación, esperar a que el canal quede libre, etc.

Si estás lejos del router, detrás de varias paredes o rodeado de redes vecinas en el mismo canal, tu ping se resentirá. Además, cuantos más clientes haya conectados a un punto de acceso, mayor será el tiempo de espera para que cada uno “tenga turno” de hablar. Y los clientes lentos perjudican al resto. Puedes descubrir cuántos dispositivos están en tu red WiFi para identificar clientes problemáticos.

Aquí ayudan bastante funciones como Airtime Fairness, que reparten el tiempo de aire entre dispositivos para que los más lentos no acaparen la radio. Aun así, siempre que puedas, para jugar y trabajar desde un fijo, tira de cable Ethernet y deja el WiFi para el resto.

Router desactualizado o saturado

Un router antiguo, con firmware sin actualizar o hardware muy justo, puede convertirse en un cuello de botella importante. Cuando el procesador del router se satura gestionando NAT, firewall, QoS y tráfico P2P, aumenta el retardo de cola y el bufferbloat: los paquetes se acumulan en un búfer gigante y salen con mucho retraso, arruinando el ping.

Actualizar el firmware, desactivar funciones innecesarias y, si hace falta, pedir a tu operador un cambio de equipo o comprar un router neutro más potente suele marcar un antes y un después. También conviene reiniciarlo de vez en cuando para limpiar estados y posibles fugas de memoria.

Descargas y otros equipos consumiendo ancho de banda

Si en tu red hay varios dispositivos descargando a lo bruto (P2P, actualizaciones, streaming 4K, copias de seguridad en la nube), es normal que tu ping se dispare. El problema no es tanto que “se acaben los megas”, sino cómo gestiona el router las colas de salida.

La solución pasa por dos vías:

  • Por un lado, controlar mejor qué se está descargando en segundo plano (PC, móviles, consolas, NAS…).
  • Por otro, activar y ajustar bien el QoS y el anti-bufferbloat del router para que el tráfico interactivo (juegos, VoIP, videollamadas) tenga prioridad frente a descargas masivas.

VPN, proxy, firewall y programas en segundo plano

Las VPN son muy útiles para cifrar tráfico o saltarse bloqueos geográficos, pero casi siempre añaden latencia porque tu conexión pasa por un servidor intermedio. Si encima la VPN es gratuita o de mala calidad, puede ser directamente letal para el ping. Lo mismo ocurre con ciertos proxies.

Los firewalls, tanto en el PC como en el router, también añaden algo de retardo al inspeccionar cada paquete, y si están mal configurados pueden ralentizar la conexión más de la cuenta. A eso suma procesos en segundo plano (actualizaciones de Windows, clientes de nube, juegos descargando parches, etc.) que chupan ancho de banda sin que te enteres.

Malware y dispositivos comprometidos

Un equipo infectado con malware puede generar tráfico oculto (envío de spam, ataques DDoS, minería, descarga de datos) o consumir muchos recursos de CPU y disco, lo que repercute en la calidad de la conexión. Si notas que todo va lento y el ping se dispara sin motivo aparente, conviene pasar un buen análisis con un antivirus de confianza en todos los dispositivos. Además, es recomendable seguir buenas prácticas para mantener la infraestructura de red saludable y evitar equipos comprometidos.

winmtr

Herramientas para medir latencia y detectar problemas

Antes de tocar nada, es fundamental medir bien. No te quedes solo con el test de velocidad del navegador: hay herramientas específicas que te ayudan a ver dónde se está yendo el ping al cielo y si el problema está en tu red local, en tu operador o en el servidor de destino.

Ping básico y traceroute

La utilidad ping, presente en todos los sistemas operativos, es el punto de partida. Con un simple ping 8.8.8.8 (por ejemplo) puedes ver la latencia media, mínima y máxima hacia un destino concreto y si hay pérdida de paquetes. Si haces ping a la puerta de enlace de tu router, obtienes la latencia de tu red local.

Si añades un -t en Windows (ping 8.8.8.8 -t) puedes dejarlo corriendo para ver si hay picos, cortes o jitter. Y con traceroute/tracert verificas qué saltos atraviesan tus paquetes y en qué punto empieza a aumentar la latencia de forma sospechosa.

Herramientas avanzadas: WinMTR, PingPlotter y compañía

Programas como WinMTR combinan traceroute y ping continuo, mostrando para cada salto el porcentaje de pérdida y los tiempos de respuesta mínimos, medios y máximos. Son muy útiles para identificar si el problema está en el primer salto de tu ISP, en un backbone intermedio o ya en el servidor del juego.

Otras utilidades como NetworkLatencyView (NirSoft) miden la latencia real de las conexiones TCP que abre tu PC. También hay suites como NetScan Tools incluyen ping gráfico, scanner de puertos, traceroute y DNS. Todo en uno.

Medir ping en móvil: apps para Android e iOS

En smartphones y tablets también puedes medir latencia usando apps tipo Fing, He.net Network Tools, NetX o herramientas de ping específicas en iOS. Son perfectas para comprobar si el problema es el WiFi concreto de una habitación, la red móvil, o si la línea fija en sí está dando mala calidad.

Optimización avanzada de TCP/IP en servidores y cloud

Si administras servidores, máquinas virtuales en cloud o proyectos web exigentes, hay muchos más parámetros de TCP/IP y kernel que puedes ajustar para bajar la latencia y aumentar el rendimiento. Sobre todo en redes de alta velocidad.

Ajustes de kernel y pila TCP en Linux

En Linux, mediante sysctl y herramientas como tc o ethtool puedes aplicar optimizaciones avanzadas como:

  • Bajar el RTO mínimo (net.ipv4.tcp_rto_min_us) a valores seguros como 5000 µs (5 ms) en redes internas de baja latencia. Para recuperar más rápido de pérdidas de paquetes.
  • Activar Fair Queueing (FQ) con tc qdisc replace dev <iface> root fq. Para repartir mejor el ancho de banda entre flujos y evitar ráfagas excesivas de una sola conexión.
  • Desactivar el slow start tras inactividad (net.ipv4.tcp_slow_start_after_idle=0) en servidores que usan conexiones persistentes. Para que no vuelvan a empezar desde un caudal ridículo cada vez que salen de reposo.
  • Inhabilitar la parte problemática de HyStart (detección por tren de ACK) en TCP Cubic. Para que no frene el crecimiento de la ventana por falsos positivos de congestión.
  • Aumentar los buffers TCP (tcp_rmem, tcp_wmem, rmem_max, wmem_max). para poder sostener caudales altos en enlaces con RTT elevado, evitando que los sockets se queden cortos de memoria.
  • Limitar tcp_notsent_lowat . Para que no se acumulen demasiados datos no enviados en el kernel, lo que protegerá al sistema de consumos de memoria excesivos.
  • Habilitar GRO/LRO de hardware en NIC compatibles (ethtool -K <iface> rx-gro-hw on) . Para agrupar paquetes y reducir la carga de CPU por interrupción.

MTU grandes y redes de alto rendimiento

En redes internas de cloud (por ejemplo VPC de Google Cloud) donde se soportan MTU jumbo de hasta ~8900 bytes, es muy recomendable subir la MTU (por ejemplo a unos 4082 bytes compatibles con páginas de memoria de 4 KB) para disminuir el número de paquetes procesados por segundo y mejorar la eficiencia de CPU.

Eso sí, hay que tener cuidado con el tráfico que sale a Internet o atraviesa VPNs: ahí conviene o bien mantener MTU estándar de 1500 o ajustar por ruta (ip route change con mtu y advmss) para que las comunicaciones externas no sufran fragmentación o pérdidas por paquetes demasiado grandes.

Servidores web, HTTP/2/3 y caché

En servidores web (Nginx, Apache, etc.), además de tunear TCP, puedes reducir mucho la latencia percibida activando HTTP/2 y HTTP/3 (QUIC), que permiten multiplexar múltiples peticiones sobre una sola conexión y reducir el coste de los handshakes.

También es clave habilitar compresión GZIP o Brotli, utilizar caché en memoria (Redis, Memcached), minificar CSS/JS y servir estáticos a través de una CDN con puntos de presencia cercanos al usuario. Cada milisegundo que ahorras en TTFB (Time To First Byte) y en RTT de red se traduce en un sitio que responde más “rápido” a ojos del visitante.

Monitorización continua y métricas de latencia

Por último, si te tomas en serio el rendimiento, necesitas medir de forma continua. Herramientas como ApacheBench, wrk, JMeter o suites de observabilidad (Prometheus + Grafana, New Relic, Datadog…) te permiten monitorizar RTT, TTFB, percentiles de latencia, throughput y tasa de errores bajo carga.

Configurar alertas cuando el TTFB supera ciertos umbrales, cuando el ping interno entre servicios se dispara o cuando aumenta la pérdida de paquetes ayuda a detectar problemas de red, saturación de CPU, cambios de ruta o cuellos de botella de forma proactiva, antes de que el lag llegue al usuario final.

Con todos estos conceptos y ajustes sobre la mesa, desde la MTU y el MSS hasta el QoS del router, las redes aceleradas de cloud y la configuración de servidores web, queda claro que el lag no es fruto de un único factor mágico. Es la suma de muchas piezas de red y del propio TCP/IP que, bien afinadas, permiten que juegos, videollamadas, teletrabajo y webs respondan con esa sensación de inmediatez que todos buscamos, y que a menudo se consigue más ajustando y entendiendo la red que contratando “más megas” sin más.

Cómo configurar una red Ethernet en Windows paso a paso
Artículo relacionado:
Cómo configurar una red Ethernet en Windows paso a paso