Creación Web

¿Qué es http2 y qué es ALPN?

qué es http2 y qué es alpn

¿Qué es http2 y ALPN? Desde Chrome 56 todo el mundo habla de la nueva versión de http. ¡No te quedes con la boca abierta!

“… Ya mami, si eso está muy bien. Seguro que si voy a 10 sitios para comprar 11 cosas consigo ahorrarme unos centimillos pero es que… ¿la gasolina? (ve andando) ¿el tiempo? Escucha a Oscar Feito, Javier Elices, Víctor Martín, Luis Méndez, Iñaky Berzal… Las madres son muy sabias, pijo…”

¡Hola de nuevo! ¿Qué tal estás llevando la semana? ¿Bien? ¡Me alegro mucho! Yo también, mucho lío, blah blah blah. ¿Sabes? Prefiero contarte algo nuevo. Mañana es el cumple de Marina.. ¡Todo preparado y yo que se me caen los rendondines (ovalados más bien, pero es por ilustrar) de la ilusión que me hace! Parque de bolas, bolsas de chuches, un trono azul para abrir los regalos… Alex no puede venir, pero es que tiene mucho follón con el tinglado de reventa de sus entradas. Pero por lo demás genial..

¿Y tú qué tal? ¿Bien también? Cuéntame, ¿vale?

Bueno, va, vamos a meternos en materia y continuar con el post anterior, en el que te explicaba qué es let’s encrypt, para ahora hablar sobre HTTP2 y ALPN. ¿Vamos?

¿Qué es HTTP2?

Ojo, acuérdate de que explico para que me entiendas. Si buscabas una definición mucho más técnica y exacta, echa un ojo al artículo de la Wikipedia sobre HTTP2.

HTTP es el nombre del protocolo que define cómo navegadores se comunican con servidores web y su primera versión fue aceptada en el RFC 1945 en el año 1996. Ahí es nada, cuando yo me ponía todo feliz con Bulma de Dragon Ball. Jajajajaja. En fin.

En 1999 se publicó una nueva versión, el http 1.1 y, desde entonces, nada de nada. Es decir que seguimos usando una especificación cuya última revisión es de 1999.

Como comprenderás, la tecnología y sociedad de la información ha evolucionado mucho desde entonces y el protocolo http está siendo usado para cosas que jamás se ubiesen pensado en 1999. ¿Me sigues?

Principales mejoras de HTTP2

Por eso, en 2015 se publicó una nueva revisión de este protocolo, la conocida como HTTP2 que incluye 3 puntos clave de mejora:

  • Una única conexión para todos los recursos. Aquí es donde entra en juego todo lo que te conté de la receta y de ir a comprar cada cosa a un sitio distinto. Con HTTP1.1, para poder mostrar una web, se requería abrir una conexión independiente con el servidor para cada elemento (la web, cada imagen, cada css, cada javascript, etc.). Con HTTP2 es como si fueses a un gran almacén. Abres una única conexión y de ahí lo coges todo.
  • Compresión de las cabeceras. No, no es que comprendas a tu pareja ni tampoco que vas a dormir con dolor de cuello. A lo que se refiere es que se ha optimizado mucho el protocolo, eliminando la información redundante, yendo al grano. Es como si el protocolo se hubiese hecho el curso de Maïder Tomasena y ahora se deje de paja, consiguiendo una comunicación fluida, directa y al grano. ¿Pillas?
  • Servicio Server Push. Esto mola mazo y es algo así como un “ya que estás, toma esto que necesitarás”. Si, básicamente eso. Digamos que un servidor recibe una petición de una página y sabe que, tras esa petición, siempre vienen 3 más a determinados recursos. Pues bien, con HTTP2 el servidor se puede adelantar y servir “lo que necesitarás” antes de que se lo pidas.

Seamos sinceros. ¿Para qué necesitamos saber todo esto? Es algo que se encargan de gestionar los servidores y los navegadores y, a lo sumo, los gestores como WordPress y los plugins de caché. ¿Entonces? Pues para vacilar de que lo sabemos, punto y final.

Lo que se nos debe quedar es que hay una nueva versión, que es más moderna y eficiente y a que Google le gusta.

¿Es necesario https para tener http2?

¡Una buenísima pregunta! En serio, ¡cómo te lo curras! Jejeje.

Veo mucha confusión sobre si es necesaria una conexión encriptada o no para usar http2. De hecho, se habla de http2 desde que ha salido la nueva versión de Chrome y todo el mundo habla de Let’s Encrypt y http2 como si fuesen uno. ¿Es así?

Pues sí y no. En su definición, HTTP2 es como su predecesor, permite ambos tipos de conexiones (http y https). Sin embargo, muchos de los navegadores, según anuncios de sus equipos de desarrollo, sólo van a implementar HTTP2 en su versión “segura”.

Se juntan Google y los desarrolladores de Chrome, Firefox, Mozilla y no sé quién más y dicen que sólo aceptarán HTTP2 con encriptación así que, en lo práctico, queda casi forzado usar https si quieres activar HTTP2.

Application-Layer Protocol Negotiation ALPN

Que si http1.1, que si http2, que si este servidor es compatible, que si este navegador no… ¿Cómo apañamos esto? Claro, si aún hay gente que viste cazadoras de cuero amarillas, valgamelseñor, ¿cómo íbamos a esperar que todo el mundo implementase las novedades en un tris? No se puede. Hay que mantener convivencia entre protocolos. ¿Verdad?

Dejando fuera los conceptos más técnicos, aun a riesgo de que algún experto me arree una torta de oreja a oreja, te cuento qué es ALPN en un diálogo murciano:

  • Acho, tú de qué vas.
  • De lo que te haga farta, pijo.
  • Pos le tiramos con lo nuevo.

¿Lo ha pillado? ¿Si? ALPN sirve para que navegador y servidor decidan qué protocolo usar… en una conexión segura. No vale con la normal, pero es para eso…

¿Por qué se habla ahora de ALPN tanto?

ALPN cierra el puzzle de la imposición de Google quien hace unos años trató de crear una alternativa a http: el SPDY. Luego, cuando HTTP2 cobró fuerza y se aceptó como estándar, Google tiró para atrás y dijo que Chrome ya no iba a soportar SPDY sino que sólo iba a funcionar con ALPN.

En lo que se traduce es que muchos de los ISP van a tener que correr para instalar actualizaciones que permitan ALPN para poder usar HTTP2 y, claro, pues escándalo…

Por ponerte un ejemplo, CentOS 6 y CentOS 7, que son sistemas operativos muy comunes en servidores web, vienen con una versión anterior que no soporta ALPN así que, o tenemos conocimientos técnicos, o hasta dentro de un año no vamos a tener soporte fácil de HTTP2 en este tipo de servidores.

Conclusiones finales

Después de las más de 1.000 palabras del post anterior sobre Let’s Encrypt y de las más de 1.000 palabras de éste, podría preguntarte: ¿cómo te sientes? ¿Con más sabiduría?

Estoy convencido de que te sentirás como cuando te compraste la bicicleta estática: te hizo ilusión, pero ya sabías que no la ibas a usar nunca. Jajaja. ¿Si o no?

¡Vaaaale, lo acepto! Un poquito más de cultura general y nada de aplicación práctica, pero por lo menos ya lo sabes. Que tampoco está de más. Más perdiste leyendo 50 sombras y nadie te ha dicho nada.

Ahora, la pregunta más difícil: ¿quieres HTTP2? ¿Piensas que Google va a premiar a quienes lo implementen en sus servidores? ¿Preguntarás a tu “servidor” si puedes ponerlo en tu web? ¿Dónde compras los fideos chinos esos ondulados tan ricos? ¡Cuenta, cuenta!

Acerca del autor

Víctor Campuzano

Growth Hacker no soy, pero lo vivo. De mi blog no vivo, pero aquí si que soy como soy. Marketing Digital, Creatividad y Blogging con pasión y desenfado. Alumno del Postgrado de Growth Hacking por IEBS.

Ahora es tu momento

*

15 comentarios

  • Gracias por la información.

    Acabo de pasar mi hosting a php 7.1, ya que mi empresa de hosting me dice que, incluye:

    Mejoras en el módulo Curl: con el soporte al Server Push de HTTP/2 acelerarás los tiempos de carga de tu página, enviando los recursos al cliente de forma directa e inmediata.

    Y no he tardado ni 1 minuto en cambiar la versión y la web, en joomla 3.5.6, funciona a la perfección.
    Un saludo

  • Me estás provocando, reconócelo, sino como me explicas dos post seguidos sobre seguridad. Aix Victor, Victor… del mismo modo que yo salí del lado oscuro de la tecnología para abrazar el marketing -y descubrir que efectivamente, era marketing- te veo programando webs en modo texto usando el comando vi web.pgp.gz, a pelo, como los hombres de verdad.

    Pero más allá de la seguridad y estas cosas, a nivel técnico creo que es una mejora que debería ayudar al rendimiento de las páginas webs y controlar el desquicio de tener que controlar workers, memorias y subprocesos pero queda un poco lejos para la mayoría de gente.

    Pero que quede lejos no significa que no existan personas como tu que intentas acercar jerga de frikies que no han visto el sol ni en fotos a personas normales, que si han visto el sol aunque sea en fotos. Mereces mi respeto en tu esfuerzo didáctico, pero el pulpo me sale mejor a mí 😛

    • Jajajajajaja. Eres grande José… Que lo sepas, tienes un reto-invitación a cocinar pulpo juntos a ver quien gana. De antemano sé que ganarás tú, pero disfrutaré un montón compitiendo contigo y viendo cómo se hacen de verdad las cosas. 🙂

      Que sepas que con vim me manejo bien: ESC / , // para buscar siguiente, Shift+E para seleccionar líneas, X para cortar, P para pegar, :q! para mierda la que he liado por favor sal sin guardar ….

      Fuerte abrazo amigo! 🙂

  • Me gusta este tipo de artículos porque yo soy muy curiosón jjjj.
    Y sobre todo las preguntas del final.
    Ale Vic que te respondo.
    Yo uso blogger con un dominio externo.
    A día de hoy no se puede poner https con dominio externo, sólo si se usa blogspot.com.
    En las webs que tengo son externos los he habilitado pero hasta que Google no me diga que estoy obligado seguiré tan tranquilo y sinceramente no creo que me afecte.
    Otra cosa es tener una tienda online con pasarela de pago etc.
    Un abrazo crack

    • Ahí está el Súper Gastre. Cachesenlamar que súper honor tenerte por aquí.

      Gracias por esta ristra de respuestas, son muy de agradecer pero me falta la más importante. ¿Dónde compras los fideos chinos? No me digas en Aliexpress que ya está usado. Jajajaja.

      Me parece muy buena tu postura pero yo voy a jugármela con todas estas cositas… jejeje.

      Abrazacos crack! 🙂

    • jajaja, los fideos chinos no los compro ni en aliexpress ni en mercadona.
      Yo también soy de jugarmela, pero en cuanto abrán la veda en blogger, de momento nada puedo hacer, ni siquiera poner amp que lo estoy deseando.

      Un abrazaco.

      En el marketing today ya pusimos https y fueron dos horas como mucho, muy sencillo el proceso.

  • Como comprenderás, no me enterado de nada de las cuestiones técnicas. Pero sí hay un detalle que me ha gustado del post: Google tuvo que recular en un momento determinado de uno de sus manejos.

    Siempre habrá intentos de controlar todo lo que se pueda, pero tal como está repartida la tarta TIC, cada especialista se acabará imponiendo en su sector o nicho.

    • Totalmente de acuerdo #Jerby! Cachis, todos adoramos a Google y sin embargo atacamos cuando lo vemos débil… jajaja. En fin.

      Un fuerte abrazo ratonzuelo! 🙂

  • ¿Llegó tarde para felicitar a Marina? 🙂

    En cuanto a si la implementación de http2 va a tener (o tiene) un impacto en las SERPS, estoy seguro. No de forma directa, pero obviamente que una mejora en la velocidad de carga de nuestra página web tendrá un efecto dominó: usuario más contento, mayor tiempo de permanencia en el sitio, mejora en los rankings. El http2 supone una mejora especialmente para situaciones en donde la conexión es lenta (algo parecido a la tecnología AMP), es decir, para dispositivos móviles. Algo en lo que Google está poniendo mucho énfasis como se ve en los updates de sus algoritmos.

    De hecho, por lo que he leído (ojo, no he experimentado suficiente con esto), implementar http2 mejora la velocidad de carga del dominio más de lo que hace AMP, y sin perder nada por el camino.

    Ambas tecnologías no son excluyentes, pueden trabajar juntas 😉

    En fin, que me enrollo. Un abrazo!

    • Genial aportación Eduard!!

      Ya ves, si que es así. Yo ya lo he implementado en algún cliente y la verdad es que se nota bastante. En Webempresa lo tienen activado por defecto y en Raiola no es difícil hacerlo con sus vps.

      Yo, como ves, estoy planificando la migración a https://vicampuzano.com … ¡Muy pronto lo comparto todo! 🙂

Uso de cookies

Esta web utiliza cookies propias y de terceros, como Google Analytics, para optimizar su navegación y realizar tareas de análisis y las pertenecientes a WordPress. Advierto que si continuas navegando, aceptas su uso. Puede cambiar la configuración, desactivarlas u obtener más información.

ACEPTAR