HTTP2

Introducción Sobre HTTP2

Hoy voy a hablar sobre HTTP2, una actualización del protocolo HTTP actual que nos permitirá navegar más rápido. Ha sido desarrollado por Google y aunque aun no esta implantado, ha sido aprobado el 17 de febrero.

Deficiencias del protocolo actual

  • TCP es muy lento al iniciar una conexión
  • Solo es el cliente quien solicita los recursos
  • Páginas webs muy grandes
  • Se realizan múltiples conexiones
  • Cada petición es independiente

Esto no quiere decir que el protocolo HTTP actual sea malo. El problema es que ya tiene 15 años y ahora las páginas webs no son un poco de texto y unas imágenes, ahora son páginas con muchísimos recursos (scripts, css, librerías). El protocolo actual tiene que ir pidiendo todos estos recursos a su correspondiente servidor (no puede hacerlo todo a la vez) y por tanto el tiempo de carga se demora considerablemente.

HTTP2

HTTP2 revoluciona todo lo que teníamos hasta ahora, teniendo como cambios más significativo el hecho de que solo existirá una conexión. Con este nuevo protocolo tendremos sólo una conexión para cada comunicación entre un servidor y un cliente, la cual aprovechará la máxima velocidad posible y evitará las pausas entre cada petición. Por tanto se evitará lo que pasa ahora que es que el servidor tiene que esperar a que el cliente se de cuenta de los recursos que necesita.

Las características en que se basa este nuevo protocolo son:

  • Frames: Se dividirá la conexión en varios frames enumerados. Estos frames tendrán una cabecera de 9 bytes y podrán variar su tamaño.
  • Speculative Push: Los servidores tendrán Speculative push o push especulativo, que consiste en enviar cosas al navegador antes de que las solicite basándose en que el servidor sabrá que tarde o temprano le harán falta.
  • Conexión entre el cliente y el servidor: Como he dicho antes, tenemos una única conexión entre el cliente y el servidor aunque es posible tener más conexiones HTTP2, una por cada servidor que proporciona información a la página. Sin embargo, la clave está en que sólo habrá una única conexión por servidor. Por debajo seguirá existiendo HTTP/1.1 solo que se encapsulará en frames.
  • Stream Priority: Se puede priorizar el contenido de una web para servir primero lo más necesario. De ésta forma se sirve la pagina principal de forma inmediata, y después se van preparando el resto de páginas a las que enlaza la misma.
  • Header compression. En el protocolo HTTP/1.1 se manda una cabecera con cada paquete, aunque ésta sea igual para todos. Con el nuevo HTTP2, en lugar de hacer esto, se adjunta un puntero a la cabecera del primer paquete, de forma que el receptor irá a leer esta y no se necesitará retransmitir datos inútilmente.

Hasta aquí esta introducción a HTTP2, el cual pinta muy bien y del que se podrán sacar grandes beneficios. Además desde mi punto de vista, después de 15 años, ya hacía falta una actualización como esta.

Dejar un comentario

Uso de cookies

Este sitio web utiliza cookies para que usted tenga una mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información sobre las cookies utilizadas.plugin cookies

ACEPTAR
Aviso de cookies