Una de las principales causas de la latencia de la red, es la distancia, específicamente la que existe entre los dispositivos del cliente que realiza la solicitud y los servidores.
Es probable que muchas personas hayan escuchado el término latencia antes, pero ¿qué es exactamente? En términos de latencia de la red, se puede definir por el tiempo que le toma a una solicitud viajar del emisor al receptor.
La latencia la podemos percibir en los retrasos que tienen lugar dentro de una red o en internet y en términos prácticos, es el tiempo entre una acción del usuario y la respuesta del sitio web o la aplicación a esta acción, por ejemplo, el retraso de cuando un usuario hace clic en un enlace a una página web y cuando el navegador la muestra.
Lo deseable es que este tiempo permanezca lo más cerca posible de 0, sin embargo, puede haber algunas cosas en juego que eviten que los tiempos de latencia de su sitio web permanezcan bajos.
Una de las principales causas de la latencia de la red es la distancia, específicamente la que existe entre los dispositivos del cliente que realizan solicitudes y los servidores que responden a las mismas.
Si un sitio web está alojado en un centro de datos en San Francisco, California, responderá con bastante rapidez a las solicitudes de los usuarios en Norteamérica. Los usuarios en Sudamérica o en otros continentes, por otro lado, enfrentarán retrasos más largos.
Explicar la latencia nos lleva a hablar de Jitter o fluctuación. El camino que puede seguir un paquete entre un mismo transmisor y receptor puede variar en función de ciertos parámetros. A causa de esto y de otros factores, el retardo que puede sufrir un paquete (latencia) en relación a otro, enviado inmediatamente después, puede no ser el mismo. Esto es el jitter, la variación de retardos entre paquetes de la misma comunicación.
Mejorar la latencia
Para aplicaciones como VoIP o juegos multimedia no se necesita un ancho de banda elevado, pero para una buena calidad se precisa una latencia y jitter acotado para conseguir una buena experiencia de usuario, que perciba estas aplicaciones en tiempo real. Una persona es capaz de distinguir hasta unos 200 milisegundos de latencia, para valores menores no se percibe.
La latencia es algo que varía según el tipo de conexión que estemos utilizando, por ejmplo, ejemplo, la latencia media o ping medio en conexiones xDSL se situaba en 2015 en torno a los 36 milisegundos y se reducía hasta los 20 milisegundos para conexiones de fibra óptica o cable. En conexiones de datos móviles, la latencia varía entre distintos operadores y oscila entre los 29 y los 65 milisegundos.
Para disminuir la latencia y mejorar la experiencia de uso y navegación en aplicaciones sugerimos:
Uso de una CDN
La CDN ayuda a acercar los recursos al usuario, al almacenarlos en caché en múltiples ubicaciones en el mundo. Una vez que esos recursos se almacenan en el sistema, la solicitud de un usuario solo necesita viajar al punto de presencia más cercano para recuperar esos datos en lugar de volver al servidor de origen cada vez.
Menos solicitudes HTTP externas
La reducción de la cantidad de solicitudes HTTP no solo se aplica a las imágenes, también a otros recursos externos como archivos CSS o JS. Si hace referencia a información de un servidor que no es el suyo, está realizando una solicitud HTTP externa, que puede aumentar considerablemente la latencia del sitio web en función de la velocidad de conexión y la calidad del servidor de terceros.
Almacenamiento en caché del navegador
Otro tipo de almacenamiento en caché que puede utilizarse para reducir la latencia es el almacenamiento en caché del navegador. Los navegadores almacenarán en caché ciertos recursos de un sitio web localmente para ayudar a mejorar los tiempos de latencia y disminuir la cantidad de solicitudes de regreso al servidor.
Gestión de tráfico
El Traffic shaping o modelado de tráfico contribuye a mejorar la latencia, ya que pone en cola los paquetes y controla la velocidad a la que se envían. El modelado del tráfico se puede utilizar para evitar congestión de red y mantener la latencia bajo control (reducir el ping). Proporciona un medio para controlar el volumen de tráfico que se envía a una red en un período específico (limitación de ancho de banda), la velocidad máxima a la que se envía el tráfico (limitación de velocidad) o criterios más complejos como el algoritmo genérico de velocidad de celda.
Esta estrategia se aplica comúnmente en los bordes de la red (Edge) para controlar el tráfico que ingresa en las conexiones, pero también puede ser aplicado por la fuente de tráfico (computadora, tarjeta o un elemento en la red, por ejemplo).
La latencia es una parte inevitable del ecosistema de redes de hoy, y es algo que podemos minimizar pero no eliminar por completo. Sin embargo, las sugerencias mencionadas anteriormente son pasos importantes para reducir la latencia de una aplicación web y ayudar a mejorar los tiempos de carga de la página para los usuarios. Después de todo, en la era actual de internet, la importancia de aumentar la velocidad de las aplicaciones reduce a milisegundos y puede valer millones de dólares en ganancias obtenidas o perdidas.
Recuerde, contar con un aliado de tecnología con la experiencia y el conocimiento necesario, le ayudará a lograr sus objetivos comerciales, le invitamos a visitar https://www.kionetworks.com/es-mx/
Referencias:
Minseok Kwon, Dept. of Computer Science, Rochester Institute of Technology. (s/a).Tutorial de la latencia y sus mediciones https://www.cs.rit.edu/~jmk/papers/kwon.igi14.pdf consultado agosto, 2019.