Todo el tráfico web a través de Internet utiliza el conocido protocolo HTTP. Lo que quizás no sepa es que en realidad se han publicado y utilizado varias versiones del protocolo HTTP en Internet. La primera versión publicada fue HTTP V0.9 y se lanzó en 1991, la versión 1.0 se lanzó en 1996 y se reemplazó en 1997 con HTTP / 1.1.
HTTP / 1.1 ha sido el protocolo de comunicaciones web estándar desde entonces. Aunque el protocolo ha tenido una serie de revisiones y aclaraciones que han dejado obsoletas las versiones anteriores, se ha utilizado el nombre HTTP / 1.1. Las revisiones más recientes se realizaron en 2014.
HTTP / 2 se publicó en 2015 y se diseñó para ofrecerse junto con el estándar HTTP / 1.1 anterior, en lugar de reemplazarlo. Se basa en el protocolo SPDY (pronunciado "rápido") desarrollado por Google y está diseñado para mantener la mayor compatibilidad posible con HTTP / 1.1, como con códigos de error y métodos de solicitud.
El protocolo HTTP / 2 también está diseñado para aumentar la velocidad a la que se cargan las páginas web mediante una serie de mejoras de eficiencia. Al no reemplazar HTTP / 1.1, los dispositivos más antiguos que no son compatibles con HTTP / 2 aún pueden funcionar, mientras que aquellos que sí son compatibles con el protocolo más nuevo pueden recibir los beneficios.
Mejoras de HTTP / 2
Uno de los grandes cambios en HTTP / 2 es que todos los recursos de una página se pueden solicitar y devolver en una sola conexión. Anteriormente, en HTTP / 1.1, el navegador web tenía que abrir una nueva conexión para cada recurso que se solicitaba y luego cerrarla. Esto genera una sobrecarga adicional, especialmente si una página tiene decenas o incluso cientos de recursos, lo que ralentiza los tiempos de carga de la página. Al solicitar todos los recursos en una conexión, el navegador solo tiene que negociar una única conexión con el servidor web, lo que reduce la sobrecarga de transmisión y la carga de recursos.
Sugerencia: Un recurso web es cualquier archivo que se utiliza en la visualización de una página web. Por ejemplo, esto incluye el código HTML, las imágenes, la información de estilo y los scripts.
Otra mejora en HTTP / 2 es que las solicitudes web ahora están "canalizadas", esto permite que se envíen múltiples solicitudes antes de que se hayan recibido las respuestas. Anteriormente en HTTP / 1.1, cada solicitud tenía que hacerse en orden, lo que significa que se pasaba tiempo esperando una respuesta a la solicitud anterior para solicitar el siguiente recurso, retrasando el tiempo de carga de la página.
Implementación en navegadores
Todos los navegadores modernos admiten HTTP / 2. Desafortunadamente, la tasa de implementación en sitios web es menos universal. Sin embargo, los usuarios pueden obtener los beneficios de HTTP / 2 en aquellos sitios web que han sido configurados para usarlo.
Si bien el protocolo HTTP / 2 en sí mismo no requiere el uso de encriptación, todas las implementaciones del navegador sí lo hacen. Como tal, el protocolo HTTP / 2 solo se puede utilizar en conexiones HTTPS.