La latencia de red es el tiempo que tarda un paquete de datos en ir de un lugar a otro. Reducir la latencia es una parte importante a la hora de crear una buena experiencia de usuario.
Después de leer este artículo podrás:
Contenido relacionado
Prueba la velocidad de tu sitio web
Cómo crear un sitio apto para móviles
Por qué es importante la velocidad del sitio web
Rendimiento y tasa de conversión
¿Qué es un optimizador de imágenes?
Suscríbete a theNET, el resumen mensual de Cloudflare sobre las ideas más populares de Internet.
Copiar el enlace del artículo
La latencia es el tiempo que tardan los datos en pasar de un punto a otro de una red. Supongamos que el Servidor A de Nueva York envía un paquete de datos al Servidor B de Londres. El servidor A envía el paquete a las 04:38:00.000 GMT y el servidor B lo recibe a las 04:38:00.145 GMT. La latencia en esta ruta es la diferencia entre estos dos tiempos: 0,145 segundos o 145 milisegundos.
Con mucha frecuencia, la latencia se mide entre el dispositivo de un usuario (el dispositivo "cliente" ) y un centro de datos. Esta medida ayuda a los desarrolladores a entender la rapidez con la que una página web o una aplicación se cargará para los usuarios.
Aunque los datos en Internet viajan a la velocidad de la luz, los efectos de la distancia y los retrasos causados por los equipos de la infraestructura de Internet provocan que nunca se pueda eliminar del todo la latencia. Sin embargo, puede y debe minimizarse. Una alta latencia provoca un mal rendimiento del sitio web, afecta negativamente a la SEO, y puede inducir a que los usuarios abandonen el sitio o la aplicación.
Una de las principales causas de la latencia de la red es la distancia, específicamente la distancia entre los dispositivos de los clientes que realizan las solicitudes y los servidores que responden a estas. Si un sitio web está alojado en un centro de datos de Columbus (Ohio), recibirá bastante rápido las solicitudes de los usuarios de Cincinnati (a unos 160 kilómetros de distancia), probablemente en 5-10 milisegundos. En cambio, las solicitudes de los usuarios de Los Ángeles (a unos 3 000 km) tardarán más en llegar, en torno a unos 40-50 milisegundos.
Puede que un aumento de unos pocos milisegundos no parezca mucho, pero esto se ve agravado por toda la comunicación de ida y vuelta necesaria para que el cliente y el servidor establezcan una conexión, el tamaño total y el tiempo de carga de la página, y cualquier problema con el equipo de red por el que pasan los datos en el camino. La cantidad de tiempo que tarda una respuesta en llegar a un dispositivo de cliente después de una solicitud del cliente se conoce como tiempo de ida y vuelta (RTT). El RTT equivale al doble de la latencia, ya que los datos tienen que viajar en ambas direcciones: ida y vuelta.
Lo habitual es que los datos que atraviesan Internet no tengan que cruzar una sola red, sino varias. Cuantas más redes tenga que atravesar una respuesta HTTP, más oportunidades habrá de que se produzcan retrasos. Por ejemplo, cuando los paquetes de datos cruzan entre redes, pasan por Puntos neutros (IXP). Allí, los enrutadores tienen que procesar y enrutar los paquetes de datos, y a veces los enrutadores pueden que tengan que dividirlos en paquetes más pequeños, todo lo cual añade unos milisegundos al RTT.
La latencia, el ancho de banda y el rendimiento están interrelacionados, pero todos ellos miden cosas diferentes. El ancho de banda es la cantidad máxima de datos que pueden pasar por la red en un momento determinado. El rendimiento es la cantidad media de datos que pasan en un periodo de tiempo determinado. El rendimiento no es necesariamente equivalente al ancho de banda, porque se ve afectado por la latencia y otros factores. La latencia es una medida de tiempo, no de la cantidad de datos que se descargan a lo largo del tiempo.
El uso de una CDN (red de provisión de contenidos) es un paso muy importante hacia la reducción de la latencia. Una CDN almacena contenidos estáticos y los presenta a los usuarios (Cloudflare CDN hace que sea posible almacenar contenidos dinámicos así como con Cloudflare Workers). Los servidores CDN se distribuyen en múltiples sitios, de forma que los contenidos se almacenan cerca de los usuarios finales y no necesitan viajar tanto como para llegarles. Esto significa que cargar una página demandará menos tiempo, mejorando la velocidad y el rendimiento de los sitios web.
Otros factores además de la latencia también pueden ralentizar el rendimiento. Los desarrolladores web pueden minimizar el número de recursos que bloquean la renderización (cargando JavaScript en último lugar, por ejemplo), optimizar las imágenes para que se carguen más rápido, y reducir el tamaño de los archivos siempre que sea posible. La minificación del código es una forma de reducir el tamaño de los archivos JavaScript y CSS.
Es posible mejorar el rendimiento percibido de la página si se cargan ciertos activos primero. Se puede configurar una página web para que cargue primero la zona por encima del pliegue de una página, de modo que los usuarios puedan empezar a interactuar con la página incluso antes de que termine de cargarse (por encima del pliegue hace referencia a lo que aparece en la ventana del navegador antes de que el usuario se desplace hacia abajo). Las páginas web también pueden cargar activos solo cuando se necesitan, mediante el uso de una técnica conocida como carga diferida. Estos enfoques no mejoran realmente la latencia de la red, pero sí que mejoran la percepción del usuario sobre la velocidad de la página.
En ocasiones, la "latencia" de la red (rendimiento lento de la red) se debe a problemas del lado del usuario, no del lado del servidor. Los consumidores siempre tienen la opción de comprar más ancho de banda si el rendimiento lento de la red es un problema constante, aunque el ancho de banda no es una garantía para un mejor rendimiento del sitio web. Cambiar a Ethernet en lugar de WiFi dará lugar a una conexión a Internet más consistente, y suele mejorar la velocidad de Internet. Los usuarios también deben asegurarse de que su equipo de Internet está actualizado, aplicando actualizaciones de firmware con regularidad y reemplazando todo el equipo si es necesario.