La fórmula
tiempo = peso ÷ ancho de banda + latencia × tandas + saludo
De dónde sale
El peso dividido entre el ancho de banda solo explica una parte del tiempo. La otra la pone la latencia, que se paga una vez por cada viaje de ida y vuelta: primero el saludo TCP y TLS, que son tres o cuatro viajes antes del primer byte, y después cada tanda de peticiones. Sin multiplexado, el navegador abre seis conexiones y con cien recursos hay diecisiete tandas: con cincuenta milisegundos de ping son casi novecientos milisegundos que no dependen del tamaño de nada.
Cómo calcularlo a mano
- Pasa el peso a bits y divide entre la velocidad en bits por segundo
- Suma el saludo inicial: unos tres viajes de ida y vuelta
- Suma la espera de las peticiones, en tandas si no hay multiplexado
- La suma es el tiempo hasta que la página está completa
Lo que conviene saber
De aquí sale la decisión más útil para acelerar una web: mirar qué parte del tiempo es esperar y cuál es descargar. Si la espera manda, adelgazar las imágenes no arregla nada y lo que hay que reducir es el número de peticiones o acercar el servidor. Si manda la transferencia, entonces sí toca comprimir y recortar. Esta cuenta además es optimista a propósito: supone que todo se descarga en paralelo y no cuenta el tiempo de ejecutar el JavaScript ni de pintar, que en una página moderna cargada de scripts puede ser la mitad del tiempo que percibe quien espera. Para eso están las métricas reales del navegador.