Al fin has encontrado esa película que buscabas, le das al botón de descarga y tu ordenador te informa de que quedan diez minutos para que el proceso se complete. Después cinco, luego siete, doce, cuatro... Ahora son dos minutos. Te planteas si el equipo se ha vuelto loco o simplemente se está burlando de ti. ¿Por qué no se aclara con los tiempos de descarga? ¿Quién hace los cálculos?
No es el sistema operativo quien hace las estimaciones “porque no puede”, explica a HojaDeRouter.com Jesús Carretero, director del Grupo de Arquitectura de Computadores, Comunicaciones y Sistemas de la Universidad Carlos III de Madrid (UC3M). “Los valores los calculan las aplicaciones”, continúa, como los navegadores, los servidores web o de almacenamiento de ficheros en la 'nube', como Dropbox o Google Drive.
No hay que tomarse las cifras al pie de la letra (ni la espera muy a pecho): el tiempo que nos indica la pantalla “siempre será estimado”, afirma Carretero. Si la aplicación es poco sofisticada, solo realizará un cálculo simple y estático, “el más burdo”, que considera únicamente el tamaño total del archivo y lo divide entre la capacidad de la línea -“el ancho de banda que tienes contratado”.
Carretero asemeja la red a “un tubo por el que pasa información”: según la capacidad que tenga, podrá circular una cierta cantidad de datos a mayor o menor velocidad. En este punto es donde se quedan las típicas webs que calculan el tiempo que tardarás en descargarte un archivo en tu ordenador.
El porqué del baile de cifras
La primera estimación “suele ser optimista”, apunta el profesor de la UC3M. A pesar de que una cifra inmutable pueda dar sensación de seguridad, sucede justamente lo contrario: los programas más complejos no se quedan con este resultado. Tanto los navegadores para PC, como Mozilla Firefox o Internet Explorer, como los del sistema operativo iOS hacen la estimación inicial y después recalculan el tiempo de forma dinámica (de ahí el baile de cifras que nos confunde). La frecuencia con la que se produce esta operación no está establecida; depende del ‘software’, aunque suele ser del orden de unos pocos segundos.
Por eso una hora pasa a ser media, o dos minutos se convierten en quince. Son las circunstancias que rodean a la transferencia, como la congestión de la red o el sitio del que provienen los datos que estamos llevando a nuestro ordenador, los que determinan las variaciones. La velocidad y, por ende, el tiempo de descarga que indica la pantalla “se adaptan al flujo de datos de cada momento”.
Se le pueden aplicar además diferentes coeficientes reductores “por posibles problemas”, añade el investigador, debido a que el servicio de internet que normalmente tenemos contratado en casa “no suele ser muy fiable”. Si hablamos de ADSL, la velocidad de transmisión de datos puede variar, dependiendo del momento, “desde 20 Mbits por segundo hasta seis u ocho”. Con el tipo de red que usamos habitualmente (Ethernet), “es muy raro conseguir que funcione a más del 50 o 60% de su capacidad, de ahí que se aplique la corrección”.
Las aplicaciones más complejas tienen en cuenta también la experiencia previa, es decir, las descargas anteriores. “Guardan un histórico y, según la hora del día o el sitio del que vengan los archivos, aplican una serie de coeficientes correctores” a la cifra original estimada.
“En internet las conexiones se establecen desde un cliente (cualquiera de las aplicaciones) a un servidor: el primero solicita la información al segundo”, explica Carretero. Cualquier tipo de archivo que quieras descargar está guardado en un equipo localizado en otro lugar del globo y “no tarda lo mismo un documento guardado en un equipo de Madrid que en Wisconsin”Wisconsin.
Dropbox y otros servicios de almacenamiento en la nube hace cálculos más aproximados porque “tienen datos del emisor, de donde tú estás extrayendo el fichero”, indica el experto. En otras palabras, conocen la reputación de los servidores donde están guardados los archivos; saben, por experiencias previas, si están muy lejos, si son eficientes, si suelen tener fallos o si se colapsan fácilmente. A partir de estas variables, aplican las correcciones.
No obstante, hay parámetros que no pueden controlarse ni conocerse previamente, como el tiempo que tardará el ordenador ‘almacén’ en encontrar esos datos que le están pidiendo o qué pasará en la red, porque el camino que sigue la información hasta llegar a tu ordenador puede cambiar durante la transferencia. Cuando se trata de un archivo que le solicitan habitualmente, “tarda poco en encontrarlo porque está guardado en la memoria caché memoria cachédel equipo, no tiene que ir a buscarlo a ningún disco duro”, afirma el docente. Por ejemplo, en una página de descargas de películas, tardarán menos en alcanzar tu ordenador las más populares, porque se encontrarán en la memoria del dispositivo o en servidores intermedios más cercanos.
Aunque para algunos el número o el avance de una barra solo indique el tiempo que tardarán en poder ver una película, para otros la velocidad y calidad de la transmisión son muy importantes. Es el caso de las empresas que utilizan los servicios de Amazon para guardar y recuperar archivos porque “Amazon te cobra por el tiempo que estás utilizando sus sistemas”. También lo tienen muy en cuenta los propios Amazon o Google, que incluso “diseñan sus propios servidores, se los hacen a medida” para que sean más eficientes.
En cuanto al tipo de conexión, “el cable siempre va a ser más fiable que cualquier línea aérea porque no tiene interferencias y presenta menos errores”, indica Carretero. Le sigue el wifi, que tiene una mayor capacidad que el 3G; y por último las conexiones móviles, que “son de uso compartido y la velocidad de descarga depende de muchos parámetros difíciles de controlar”, como lo lejos que está la antena o el número de usuarios conectados.
Los únicos sistemas que pueden prometer un tiempo de transmisión fijo y cumplirlo al 100% son los deterministas. “Cuando pides la información, te indican lo que va a tardar exactamente”, afirma el experto de la UC3M. Por supuesto, esto no lo hacen los proveedores de internet doméstico, y aunque lo ofrecieran, sería demasiado caro. Un ejemplo de este tipo de conexiones son las que se utilizan para realizar operaciones de cirugía de forma remota: “Cuando un médico tiene que ver un vídeo en tiempo real durante una intervención o interactuar con un robot, necesita tener una capacidad de servicio del 100%”. No puede haber retrasos ni fallos.
Como seguramente no puedas disfrutar de semejante exactitud, lo mejor es tener paciencia y resignarte. Tómate las cifras como una aproximación: tu ordenador está haciendo lo que puede.
----------------------------------------------------------------------------------------------------
Las imágenes de este reportaje son propiedad, por orden de aparición, de Devin Stein, Nurudin Jahuari, Ministerio TIC Colombia