Protocolo De Transferencia De Hipertexto (HTTP), el protocolo de capa de aplicación simple, restringido y finalmente aburrido, constituye la base de la Red Mundial. En esencia, HTTP permite la recuperación de recursos conectados a la red disponibles en todo el mundo cibernético y ha evolucionado a través de las décadas para ofrecer un medio rápido, seguro y rico para la comunicación digital.
En Kinsta somos adictos a optimizar los tiempos de carga de los sitios web alojados en nuestra plataforma y hemos lanzado numerosas guías sobre el tema anteriormente, solo eche un vistazo a La Guía de un Principiante a la Optimización de Velocidad de Sitios Web.
Como siempre estamos a la vanguardia de las nuevas tecnologías, nos aseguramos de que todo el sitio web y administración de Kinsta se ejecute en HTTP/2 y nuestra infraestructura basada en Google Cloud soporta HTTP/2 para todos nuestros clientes Este extenso recurso de información explica HTTP/2 para usuarios finales, desarrolladores y empresas que buscan la innovación. Desde información básica hasta temas más avanzados, aprenderá todo lo que necesita saber sobre HTTP/2.
Esta Guía Resalta los Siguientes Aspectos Clave de HTTP/2:
¿Qué es HTTP/2?
HTTP fue propuesto originalmente por Tim Berners-Lee, el pionero de la Red Mundial que diseñó el protocolo de aplicación teniendo en mente la simplicidad de alto nivel para realizar las funciones de comunicación de datos entre servidores y clientes Web.
La primera versión documentada de HTTP fue lanzada en 1991 como HTTP0.9, que luego condujo a la introducción oficial y reconocimiento de HTTP1.0 en 1996. HTTP1.1 seguida en 1997 y desde entonces ha recibido pocas mejoras iterativas.
En febrero de 2015, el IETF (Grupo de Trabajo de Ingeniería de Internet) un Grupo de Trabajo HTTP revisó y desarrolló la segunda versión de la aplicación en forma de protocolo HTTP/2. En mayo de 2015, la especificación HTTP/2 aplicación oficialmente fue estandarizada en respuesta al protocolo SPDY compatible con HTTP. El argumento HTTP/2 vs SPDY continúa a lo largo de la guía.
¿Qué Es un Protocolo?
El debate HTTP/2 vs HTTP1 debe proceder con una breve guía sobre el término protocolo utilizado frecuentemente en este recurso. Un protocolo es un conjunto de reglas que rigen los mecanismos de comunicación de datos entre los clientes (por ejemplo, navegadores web utilizados por los usuarios de internet para solicitar información) y servidores (las máquinas que contengan la información solicitada).
Los protocolos generalmente consisten de tres partes principales: Encabezado, carga útil y pie de página. El Encabezado colocado antes de la carga útil contiene información tal como las direcciones de origen y destino, así como otros detalles (como el tamaño y tipo) con respecto a la carga útil. La carga útil es la información transmitida mediante el protocolo. El pie sigue la carga y funciona como un campo de control para enrutar las solicitudes de cliente-servidor a los destinatarios, junto con el encabezado para asegurar que la carga útil se transmita libres de errores.
El sistema es similar al servicio de correo. La carta (Carga útil) se inserta en un sobre (Encabezado) con dirección de destino escrita en ella y sellada con pegamento y sello (pie de página) antes de que se expidan. Excepto que la transmisión de información digital en forma de 0s y 1s no es tan sencillo y requiere una nueva dimensión de innovación en respuesta a aumentar los avances tecnológicos que surgen con el crecimiento explosivo del uso de internet.
Protocolo HTTP constaba inicialmente de comandos básicos: GET, para recuperar la información del servidor y POST, para entregar la información solicitada por el cliente. Este sencillo y aparentemente aburrido conjunto de algunos comandos para obtener datos y enviar una respuesta esencialmente establecieron las bases para la construcción de otros protocolos de red. El protocolo es otra iniciativa destinada a mejorar la experiencia y eficacia del usuario de internet, necesitándose aplicación HTTP/2 para mejorar la presencia en línea.
El Objetivo de Crear HTTP/2
Desde sus inicios a principios de los años noventa, HTTP ha visto sólo unas pocas grandes revisiones. La versión más reciente, HTTP1.1 ha servido al mundo cibernético durante más de 15 años. Las páginas Web en la actual era de actualizaciones en información dinámica, formatos de contenido multimedia intensivos en recursos y excesiva inclinación hacia el rendimiento web han colocado a las tecnologías de protocolo antiguas en la categoría de legado. Estas tendencias exigen importantes HTTP/2 cambios para mejorar la experiencia de internet.
El objetivo principal de la investigación y el desarrollo de una nueva versión de HTTP se centra alrededor de tres cualidades raramente asociadas con un único protocolo de red sin requerir tecnologías de redes adicionales de alto rendimiento, simplicidad y solidez. Estos objetivos se logran mediante la introducción de funciones que reducen la latencia en la tramitación de las solicitudes del navegador con técnicas como la multiplexación, la compresión, la priorización y la solicitud de inserción de servidor.
Mecanismos tales como el control de flujo, manejo de errores y actualización funcionan como mejoras para el protocolo HTTP para desarrolladores para asegurar un alto rendimiento y flexibilidad de aplicaciones basadas en web.
El sistema colectivo permite a los servidores responder eficientemente con más contenido que originalmente solicitado por los clientes, eliminando la intervención del usuario para solicitar información continuamente hasta que el sitio web esté completamente cargado en el navegador web. Por ejemplo, la capacidad de inserción del servidor con HTTP/2 permite a los servidores responder con una página llena de contenidos distintos de la información ya disponible en la cache del navegador. La compresión eficiente de archivos de encabezado HTTP minimiza el exceso de protocolo para mejorar el rendimiento con cada solicitud del explorador y la respuesta del servidor.
Los cambios a HTTP/2 están diseñados para mantener la interoperabilidad y compatibilidad con las ventajas HTTP1.1. HTTP/2 se espera aumenten con el tiempo sobre la base de experimentos del mundo real y su capacidad para abordar cuestiones relacionadas con el rendimiento real en comparación en el mundo real con HTTP1.1 impactará en gran medida su evolución a largo plazo.
«…No estamos sustituyendo todo el HTTP – los métodos, códigos de estado, y la mayoría de los encabezados que se utilizan hoy en día serán los mismos. En su lugar, estamos redefiniendo la forma en que se usa «en el cable» de modo que sea más eficiente, y por lo que es más suave con el propio internet…»Mark Nottingham, Presidente del Grupo de trabajo IETF HTTP y miembro de la W3C TAG. Fuente
Es importante señalar que la nueva versión de HTTP viene como una extensión de su predecesor y no se espera que reemplace HTTP1.1 en ningún momento pronto. La aplicación de HTTP/2 no permitirá soporte automático para todos los tipos de cifrado disponibles con HTTP1.1, pero sin duda abre la puerta a mejores alternativas de cifrado adicionales o actualizaciones de compatibilidad en el futuro cercano. Sin embargo, comparaciones de características tales como HTTP/2 vs HTTP1 y SPDY vs HTTP/2 presentan sólo el último protocolo de aplicación como el ganador en términos de rendimiento, seguridad y confiabilidad por igual.
¿Qué Estaba Mal con HTTP1.1?
HTTP1.1 estaba limitado a procesar solamente una solicitud pendiente por conexión TCP, obligando a los exploradores a utilizar múltiples conexiones TCP para procesar varias solicitudes simultáneamente.
Sin embargo, el uso de demasiadas conexiones TCP en paralelo lleva a congestión TCP que causa la monopolización injusta de los recursos de la red. Los navegadores Web utilizando varias conexiones para procesar peticiones adicionales ocupan una proporción mayor de los recursos de red disponibles, por lo tanto, degradan el rendimiento de la red para otros usuarios.
Emitir varias solicitudes desde el navegador también provoca la duplicación de datos en cables de transmisión de datos, lo que a su vez requiere protocolos adicionales para extraer la información deseada, libre de errores en los nodos finales.
La industria del internet fue naturalmente obligada a piratear estas limitaciones, con prácticas tales como domain sharding, Concatenación, datos en línea y spriting, entre otros. El uso ineficaz de las conexiones TCP con HTTP1.1 subyacente también conduce a la priorización de recursos pobres, provocando una degradación del rendimiento exponencial conforme las aplicaciones web crecen en términos de complejidad, funcionalidad y alcance.
La web ha evolucionado mucho más allá de la capacidad del legado de tecnologías de redes basadas en HTTP. Las cualidades esenciales de HTTP1.1 desarrolladas hace más de una década han abierto las puertas a muchas embarazosas lagunas de seguridad y rendimiento.
El Cookie Hack por ejemplo, permite a los ciberdelincuentes reutilizar una sesión de trabajo anterior para comprometer las contraseñas de las cuentas de transacción porque HTTP1.1 no proporciona ninguna facilidad de tiempo fuera de sesión de identidad. Mientras que los problemas de seguridad similares seguirán atormentando a HTTP/2, el nuevo protocolo de aplicación está diseñado con mejores capacidades de seguridad tales como la mejora en la aplicación de las nuevas características de TLS.
Actualizaciones de las Características de HTTP/2
Flujos multiplexados
Secuencia de fotogramas de formato de texto bi-direccional enviadas a través del protocolo HTTP/2 intercambiados entre el servidor y el cliente se conocen como «flujos». Iteraciones anteriores del protocolo HTTP eran capaces de transmitir sólo una secuencia a la vez junto con cierto tiempo de retardo entre cada transmisión de flujo.
Recibir toneladas de contenido multimedia a través de secuencias individuales enviadas una por una es ineficiente y consume recursos. Los cambios a HTTP/2 han ayudado a establecer una nueva capa binaria de enmarcado para abordar estas preocupaciones.
Esta capa permite al cliente y al servidor HTTP desintegrar la carga hacia la pequeña secuencia de fotogramas entrelazados, independiente y administrable. Esta información es luego montada en el otro extremo.
Los formatos de marco binario permiten el intercambio de múltiples, secuencias abiertas al mismo tiempo, independientes, bi-direccional es sin latencia entre secuencias sucesivas. Este enfoque presenta una matriz de beneficios de HTTP/2 explicados a continuación:
- Las solicitudes multiplexadas paralelas y respuestas no se bloquean recíprocamente.
- Una única conexión TCP se utiliza para garantizar la eficacia de la utilización de recursos de red, a pesar de transmitir múltiples flujos de datos.
- No hay necesidad de aplicar hacks de optimización – innecesarios como sprites de imagen, concatenación y domain sharding, entre otros – que compromete otros aspectos del rendimiento de la red.
- Latencia reducida, más rápido, mejor rendimiento en la web en las clasificaciones de los motores de búsqueda.
- OpEx reducidos y CapEx en la red en funcionamiento y recursos de TI.
Con esta capacidad, los paquetes de datos desde múltiples flujos son esencialmente desiguales y transmitidos a través de una única conexión TCP. Estos paquetes se dividen entonces en el extremo receptor y se presentan como flujos de datos individuales. Transmitir varias solicitudes paralelas simultáneamente utilizando HTTP versión 1.1 o anterior requiere múltiples conexiones TCP, que inherentemente crean cuellos de botella en el rendimiento global de la red, a pesar de transmitir más flujos de datos con mayor rapidez.
HTTP/2 Server Push
Esta capacidad permite que el servidor envíe información en cache adicional al cliente que no es solicitada, pero anticipada en futuras solicitudes. Por ejemplo, si el cliente solicita el recurso X y se entiende que el recurso Y se hace referencia con el archivo solicitado, el servidor puede elegir empujar a Y junto con X en lugar de esperar a una petición del cliente apropiada.
El cliente coloca el recurso empujado Y en su cache para su uso futuro. Este mecanismo ahorra un viaje de ida y vuelta de solicitud-respuesta y reduce la latencia de la red. Server Push se introdujo originalmente en el protocolo SPDY de Google. Identificadores Stream que contienen pseudo encabezados tales como :ruta permiten al servidor iniciar el empuje para la información que se puede almacenar en la cache. El cliente debe permitir explícitamente al servidor empujar recursos cacheables con HTTP/2 o terminar corrientes empujadas con un identificador de secuencia específica.
Otros cambios de HTTP/2, tales como Server Push actualiza de forma proactiva o invalida la cache del cliente y también es conocida como “Cache Push». Las consecuencias a largo plazo centran alrededor de la capacidad de servidores para identificar posibles recursos capaces de empuje que el cliente realmente no quiere.
La implementación de HTTP/2 ofrece desempeño significativo de recursos empujados, junto con otros beneficios de HTTP/2 explicados a continuación:
- El cliente ahorra recursos empujados en la cache.
- El cliente puede reutilizar esos recursos almacenados en cache en diferentes páginas.
- El servidor puede empujar recursos multiplexados junto con la información solicitada originalmente dentro de la misma conexión TCP.
- El servidor puede priorizar empujado recursos – un diferenciador clave de rendimiento de HTTP/2 vs HTTP1.
- El cliente puede rechazar recursos empujados para mantener un eficaz repositorio de recursos almacenados en cache o desactivar Server Push completamente.
- El cliente también puede limitar el número de secuencias empujadas multiplexadas simultáneamente.
Capacidades de Push similares ya están disponibles con capacidades técnicas subóptimas de Inlining to Push para empujar las respuestas del servidor, mientras que Server Push presenta una solución de nivel de protocolo para evitar complejidades con hacks de optimización secundarios a las capacidades básicas del protocolo de las aplicaciones en sí.
El HTTP/2 multiplexa y prioriza la corriente de datos empujados para garantizar un mejor rendimiento de la transmisión tal como se ha visto con otros flujos de datos de solicitud-respuesta. Como un mecanismo de seguridad integrado, el servidor debe estar autorizado para empujar los recursos de antemano.
Protocolos Binarios
La última versión de HTTP ha evolucionado significativamente en términos de capacidades y atributos tales como la transformación de un texto de protocolo a un protocolo binario. HTTP1.x solía procesar los comandos de texto para completar ciclos de solicitud-respuesta. HTTP/2 utilizará comandos binarios (en 1s y 0s) para ejecutar las mismas tareas. Este atributo facilita complicaciones con el encuadre y simplifica la implementación de comandos que estaban confusamente mezclados debido a los comandos que contienen el texto y espacio opcional.
Aunque probablemente tardará más esfuerzos para leer binario en comparación con comandos de texto, es más fácil para la red generar y analizar marcos disponibles en formato binario. La semántica actual permanece inalterada.
Los navegadores utilizando implementación HTTP/2 convertirán los mismos comandos de texto en binario antes de transmitirlos por la red. La capa de enmarcado binaria no es compatible con HTTP1.x para clientes y servidores y un factor clave para una mejora significativa del rendimiento sobre SPDY y HTTP1.x. Utilizando comandos binarios para habilitar ventajas empresariales claves para empresas de internet y los negocios en línea como se detalla con beneficios de HTTP/2 explicados a continuación:
- Baja sobrecarga en el análisis de datos – una proposición de valor crítico en HTTP HTTP/2 vs1.
- Menos propenso a errores.
- Presencia de red más ligera.
- Eficaz utilización de los recursos en la red.
- Eliminando los problemas de seguridad asociados con la naturaleza textual de HTTP1.x, como los ataques de división de respuesta.
- Permite otras capacidades del HTTP/2 incluyendo la compresión, multiplexación, priorización, control de flujo y el manejo eficaz de la TLS.
- Representación compacta de comandos para facilitar la tramitación y ejecución.
- Robusta y eficiente en términos de procesamiento de datos entre el cliente y el servidor.
- Reduce la latencia de red y rendimiento mejorado.
Priorización de Flujo
La implementación de HTTP/2 permite que el cliente proporcione preferencia a determinadas corrientes de datos. Aunque el servidor no está obligado a seguir estas instrucciones del cliente, el mecanismo permite al servidor de la red optimizar la asignación de recursos basada en las necesidades del usuario final.
La priorización de flujo funciona con dependencias y peso asignado a cada secuencia. Aunque todas las secuencias son inherentemente dependientes una de la otra, excepto que los flujos dependientes también se les asigna peso entre 1 y 256. Los detalles de los mecanismos de priorización de flujo aún son objeto de debate.
En el mundo real, sin embargo, rara vez el servidor tiene el control sobre los recursos como el CPU y las conexiones de bases de datos. La complejidad de la implementación en sí impide que los servidores acomoden solicitudes prioritarias de flujo. La investigación y desarrollo en esta área es particularmente importante para el éxito a largo plazo de HTTP/2, ya que el protocolo es capaz de procesar varios flujos de datos con una única conexión TCP.
Esta capacidad puede conducir a la llegada simultánea de las peticiones al servidor que realmente difieren en términos de prioridad, desde la perspectiva del usuario final. Mantener las solicitudes de procesamiento de flujo de datos sobre una base aleatoria socava la eficacia y experiencia de usuario final prometida por cambios a HTTP/2. Al mismo tiempo, un inteligente y ampliamente adoptado mecanismo de prioridad de flujo presenta ventajas de HTTP/2 explicadas como sigue:
- La utilización eficaz de los recursos de la red.
- Tiempo reducido para entregar solicitudes de contenido principal.
- Mejora de la velocidad de carga de la página y la experiencia del usuario final.
- Comunicación de datos optimizada entre el cliente y el servidor.
- Reduce el efecto negativo de preocupaciones de latencia de la red.
Compresión de Encabezado Stateful
Entregando una experiencia de usuario web de última gama requiere sitios web ricos en contenido y gráficos. El protocolo de aplicación HTTP es stateless, lo que significa que cada solicitud de cliente debe incluir tanta información como la que necesita el servidor para realizar la operación deseada. Este mecanismo hace que los flujos de datos transporten varios marcos repetitivos de información tal que el servidor no tiene que almacenar información de anteriores solicitudes de cliente.
En el caso de sitios web que sirven contenido multimedia rico, los clientes empujan varios marcos de encabezado casi idénticos que conducen a la latencia y el consumo innecesario de los limitados recursos de la red. Una mezcla de prioridades de los flujos de datos no puede alcanzar los estándares de desempeño deseado de paralelismo sin optimizar este mecanismo.
La implementación de HTTP/2 resuelve estos problemas con la capacidad de comprimir gran número de marcos de encabezados redundantes. Utiliza la especificación HPACK como un método sencillo y seguro para la compresión del encabezado. Tanto el cliente como el servidor mantiene una lista de los encabezados utilizados en las anteriores solicitudes de cliente-servidor.
HPACK comprime el valor individual de cada encabezado antes de transferirla al servidor, que luego busca la información codificada en la lista de valores de encabezado previamente transferidas para reconstruir toda la información del encabezado. La compresión de encabezado HPACK para la implementación de HTTP/2 presenta enormes ventajas de rendimiento, incluidos algunos beneficios de HTTP/2 que se explican a continuación:
- Priorización de flujo efectiva.
- La eficacia en la utilización de mecanismos de multiplexación.
- Reduce la sobrecarga de recursos – una de las primeras áreas de preocupación en los debates sobre HTTP/2 vs HTTP 1 y HTTP/2 vs SPDY.
- Codifica los encabezados grandes así como los encabezados utilizados comúnmente lo que elimina la necesidad de enviar todo el marco del encabezado mismo. El tamaño de transferencia individual de cada flujo de datos disminuye rápidamente.
- No es vulnerable a ataques de seguridad tales como flujos de explotación de datos de CRIME con compresión de encabezados.
Similitudes con HTTP1.x y SPDY
La semántica de la aplicación subyacente de HTTP incluyendo los códigos de estado de HTTP, URIs, metodologías y ficheros de encabezado permanecen iguales en la última iteración del HTTP/2. HTTP/2 se basa en SPDY, la alternativa de Google a http1.x. Las verdaderas diferencias radican en los mecanismos utilizados para procesar solicitudes de cliente-servidor. La siguiente tabla identifica algunas áreas de similitudes y mejoras entre HTTP1.x, SPDY y HTTP/2:
HTTP1.x | SPDY | HTTP2 |
---|---|---|
SSL no es necesario, pero es recomendable. | Se requiere SSL. | SSL no es requerido pero recomendado. |
Cifrado lento. | Cifrado rápido. | Cifrado aún más rápido. |
Una petición de cliente-servidor por conexión TCP. | Varias solicitudes cliente-servidor por conexión TCP. Se produce en un único alojamiento al mismo tiempo. | Multi-alojamiento multiplexado. Se produce en varios alojamientos en un solo instante. |
Sin compresión de encabezado. | Compresión de encabezados introducida. | Compresión de encabezados utilizando algoritmos mejorados que mejoran el rendimiento, así como el de la seguridad. |
Sin priorización de flujo. | Priorización de flujo introducida. | Mecanismos mejorados de priorización de flujo se usan. |
Cómo HTTP/2 Funciona con HTTPS
HTTPS se utiliza para establecer una red ultra-segura conectando computadoras, servidores y máquinas para procesar información confidencial de empresas y consumidores. Procesar las transacciones financieras de los bancos y de las instituciones de salud, mantener registros de pacientes son el objetivo principal de delitos cibernéticos criminales. HTTPS funciona como una capa eficaz contra amenazas a la ciberdelincuencia persistentes, aunque no es la única implementación de seguridad utilizada para evitar ataques sofisticados cibernéticos vulnerando redes corporativas de alto valor.
El soporte del navegador HTTP/2 incluye cifrado HTTPS y realmente complementa el rendimiento general de la seguridad de las implementaciones de HTTPS. Características como menos apretones de manos de TLS, bajo consumo de recursos tanto en el lado del cliente como en el servidor y capacidades mejoradas en la reutilización de sesiones web existente mientras elimina las vulnerabilidades relacionadas con HTTP1.x presentan a HTTP/2 como un factor clave para asegurar la comunicación digital sensible en entornos de red.
HTTPS no está limitado a organizaciones de alto perfil y la seguridad cibernética es igualmente valiosa para los dueños de negocios en línea, blogueros casuales, comercio electrónico, comerciantes e incluso los usuarios de medios sociales. El HTTP/2 exige intrínsecamente la más reciente más segura versión de TLS y todas las comunidades en línea, propietarios de negocios y webmasters deben asegurarse de que sus sitios web utilicen HTTPS de forma predeterminada.
Procesos habituales para configurar HTTPS incluyen el uso de planes de alojamiento web, comprar, activar e instalar un certificado de seguridad y, finalmente, la actualización de la página web para que utilice HTTPS.
Los Principales Beneficios de HTTP/2
La velocidad de Internet no es la misma en todas las redes y ubicaciones geográficas. La base de usuarios móviles cada vez demanda más internet de alto rendimiento integrado en todos los factores de forma de dispositivos aunque las redes celulares congestionadas no pueden competir con internet de banda ancha de alta velocidad. Un mecanismo de comunicación de datos completamente modernizado y reformado de redes en la forma de HTTP/2 surgió como una solución viable con las siguientes ventajas significativas.
Rendimiento Web
El término resume todas las ventajas de los cambios HTTP/2. Resultados de rendimiento de HTTP/2 (véase en el capítulo: Análisis comparativo de rendimiento de HTTP, SPDY y HTTPS/2) demuestra las mejoras de rendimiento de HTTP/2 sobre sus predecesores y alternativas similares.
La habilidad del protocolo de enviar y recibir más datos por ciclo de comunicación cliente-servidor no es un hack de optimización sino una ventaja real, práctica y realizable de HTTP/2 en términos de rendimiento. La analogía es similar a la idea de trenes de tubo de vacío (Vactrain) en comparación con el ferrocarril normal: la eliminación de la resistencia del aire en túneles de Vactrain permite al vehículo viajar más rápido y transportar más pasajeros con la mejor utilización de los canales disponibles sin tener que concentrarse en la instalación de motores más grandes, reduciendo el peso y haciendo que el vehículo sea más aerodinámico.
Tecnologías como Multiplexación crean espacio adicional para llevar y transmitir más datos de forma simultánea, como compartimentos de asientos de varios pisos en el avión de Airbus.
¿Y qué sucede cuando el mecanismo de comunicación de datos elimina todos los obstáculos para mejorar el rendimiento en la web? El subproducto de mejor rendimiento del sitio web incluye el aumento de la satisfacción del cliente, mejor optimización de motores de búsqueda, alta productividad y utilización de recursos, ampliar la base de usuarios, mejores cifras de ventas y mucho más.
Afortunadamente, la adopción de los protocolos HTTP/2 es mucho más práctica que la creación de cámaras de vacío para grandes locomotoras con varios pisos.
Rendimiento Web Móvil
Millones de usuarios de internet acceden a la web desde sus dispositivos móviles como una puerta de enlace principal para el ciber mundo. La era post PC ha impulsado la adopción del teléfono inteligente para acceder a servicios basados en la Web desde la palma de su mano, y realizar la mayoría de las tareas informáticas mundanas sobre la marcha en lugar de sentarse delante de las computadoras de escritorio durante períodos prolongados de tiempo.
HTTP/2 está diseñado en el contexto de las actuales tendencias del uso de la web. Capacidades como multiplexación y compresión de encabezados funcionan bien para reducir la latencia en el acceso a servicios de internet a través de redes de datos móviles que ofrecen un ancho de banda limitado por usuario. HTTP/2 optimiza la experiencia web de los usuarios móviles con un alto rendimiento y seguridad sólo atribuidas al uso de internet de escritorio anteriormente. Las ventajas de HTTP/2 para usuarios móviles prometen un impacto positivo inmediato en la forma en que las empresas en línea apuntan a clientes en el mundo cibernético.
Internet Más Barato
El costo de internet se ha hundido rápidamente desde el amanecer de la Word Wide Web. Ampliar el acceso a la web y aumentando la velocidad de internet fue siempre el objetivo con los avances en las tecnologías de internet. Mientras tanto, mejoras en el costo parecen haberse embotellado, especialmente teniendo en cuenta las denuncias que rodean el monopolio de los proveedores de servicios de telecomunicaciones.
El HTTP/2 prometiendo un aumento del rendimiento y eficacia de las comunicaciones de datos mejorada permitirá a los proveedores de telecomunicaciones reducir los gastos operativos, manteniendo los estándares de internet de alta velocidad. La reducción de los gastos operativos (OpEx) alentará a los proveedores de servicio a reducir los precios para el mercado de gama baja y ofrecer niveles de servicio de alta velocidad en lugar del modelo de precios actual.
Alcance Expansivo
Los mercados asiáticos y africanos densamente poblados siguen desatendidos con acceso limitado a internet. Los proveedores de servicios de internet centrarán sus inversiones para producir los mayores beneficios de los servicios ofrecidos sólo para zonas urbanas y desarrolladas. Las ventajas principales de HTTP/2 para la adopción a gran escala del protocolo de aplicaciones avanzadas naturalmente, reducirá la congestión de la red para ahorrar recursos y ancho de banda para distantes ubicaciones geográficas marginadas.
Experiencia Rica en Medios
La experiencia web moderna es todo acerca de la entrega de contenido multimedia en rapidísimas velocidades de carga de la página. Los usuarios de internet ostensiblemente demandan contenidos multimedia y servicios actualizados sobre una base regular. El costo de la infraestructura subyacente entregada incluso a través de la nube como una solución basada en suscripción no siempre es asequible para las startups en internet. Las ventajas y características tecnológicas de HTTP/2, como la compresión de encabezado podrían no reducir el tamaño real del archivo, pero sí afeitar algunos bytes de tamaño superior que consuman recursos para transmitir contenido multimedia entre clientes y servidores.
Experiencia Móvil Mejorada
Los negocios en línea progresivos siguen una estrategia Móvil Primero para eficazmente tener como objetivo la base de usuarios de móviles a reventar. Las limitaciones de hardware de dispositivos móviles son, quizás, el mayor obstáculo a la experiencia web móvil impactada por el prolongado tiempo necesario para procesar las peticiones del navegador. El HTTP/2 reduce los tiempos de carga y la latencia de la red móvil a niveles manejables.
Utilización de Tecnología Mejorada
Ha aumentado considerablemente el consumo de recursos del cliente y el servidor para procesar las solicitudes del navegador multimedia para entregar contenido de medios sociales y complejos diseños Web. Aunque los desarrolladores web han trabajado en los hacks de optimización adecuados, una solución robusta y fiable en la forma de HTTP/2 era inevitable. Características tales como compresión de encabezados, Server Push, Dependencias de flujo y Multiplexación todas contribuyen a mejorar la utilización de la red como una ventaja HTTP/2 clave.
Seguridad
Las ventajas de HTTP/2 se extienden más allá del rendimiento ya que el algoritmo HPACK permite a HTTP/2 eludir las frecuentes amenazas contra la seguridad de la capa de aplicación basado en texto de los protocolos. HTTP/2 contiene comandos en binario y habilita la compresión del encabezado HTTP en metadatos siguiendo un enfoque de «seguridad por oscuridad» para proteger los datos confidenciales transmitidos entre clientes y servidores. El protocolo también ofrece soporte completo para el cifrado y requiere una versión mejorada de la seguridad de la capa de transporte (TLS1.2) para mejorar la protección de los datos.
Innovación
HTTP/2 encarna la innovación y el concepto de web de alto rendimiento. HTTP/2 apuntala el mundo cibernético como lo conocemos hoy, y los cambios HTTP/2 se basan principalmente en el protocolo SPDY de Google que tuvo grandes saltos delante de las versiones de HTTP1.x anticuadas y casi enteramente sustituirá a SPDY así como todas las anteriores iteraciones de HTTP en el futuro cercano. La liberación de complejos hacks de optimización web presenta al soporte del navegador de HTTP/2 como una solución viable para los desarrolladores web para producir sitios web de alto rendimiento y servicios en línea.
La Ventaja de SEO de HTTP/2
La disciplina de SEO marketing se sitúa entre el arte y la ciencia. Las prácticas tradicionales de SEO de sombrero negro fallan para manipular las clasificaciones de los motores de búsqueda tras cada vez más complejos algoritmos propios utilizados por los motores de búsqueda más populares. Los negocios en línea deben evolucionar sus tácticas de marketing en consecuencia. Inversiones más inteligentes en la forma de implementar sitios web bien diseñados a fondo no sólo optimizados para velocidad sino construidos para un rendimiento superior, seguridad y experiencia del usuario desde el suelo hacia arriba. Estos atributos son los preferidos como medios para devolver las consultas de búsqueda con la información más precisa y servicios accesibles, a través de una audiencia global.
Los procesos estandarizados de la industria para la optimización de motor de búsqueda van más allá de las tácticas de marketing de front-end, y abarcan todo el ciclo de vida de la comunicación cliente-servidor. Los SEOs que una vez fueron el alimento básico en los equipos de mercado de internet no están disfrutando de las mismas posiciones desde la llegada de las últimas tecnologías digitales de comunicación. Entre estos, la prevalencia de HTTP/2 marca un cambio tectónico clave forzando a los desarrolladores web y los publicistas de nuevo a la mesa de dibujo.
Implantar y optimizar la infraestructura para HTTP/2 y las prometedoras ventajas de rendimiento es ahora un factor clave para la optimización de motores de búsqueda. Los negocios en línea que carecen de base orgánica de usuario no pueden permitirse desatender HTTP/2 y el consiguiente impulso SEO mientras compiten contra imperios empresariales en línea en crecimiento por motivos de innovación y servicio en línea de gran valor clasificado aún mayor con la aplicación de HTTP/2 en el lado del servidor.
Análisis Comparativo de Rendimiento de HTTPS, SPDY y HTTP/2
Las siguientes comparaciones entre el rendimiento de puntos de referencia de HTTPS, SPDY y HTTP/2 pintan una imagen clara mejoras en el rendimiento de la web con el último protocolo de aplicación.
Los resultados de puntos de referencia HTTP/2 confirman las ideas que la compresión de encabezados, server push y otros mecanismos utilizados específicamente para mejorar la velocidad de la página y la experiencia del usuario entregan sistemáticamente en el mundo real:
Detalles de la prueba: Esta prueba comparando HTTPS, SPDY3.1 y HTTP/2 presenta los siguientes resultados:
- El tamaño de la solicitud del cliente y los encabezados de respuesta del servidor: Los puntos de referencia HTTP/2 demuestran cómo el uso del mecanismo de compresión del encabezado reducen significativamente el tamaño del encabezado, mientras que SPDY sólo encoge el encabezado utilizado en la respuesta del servidor para esta solicitud en particular. HTTPS no reduce el tamaño del encabezado, tanto en la solicitud como en la respuesta de comandos.
- Tamaño del mensaje de respuesta del servidor: Aunque la respuesta del servidor HTTP/2 fue mayor en tamaño, proporciona un cifrado más sólido para la mejora de la seguridad como una de las principales desventajas.
- Número de conexiones TCP utilizadas: HTTP/2 y SPDY utilizan menos recursos de red mediante el procesamiento de varias solicitudes simultáneas (multiplexación) y por lo tanto reduciendo la latencia.
- La velocidad de carga de la página: HTTP fue consistentemente más rápida que SPDY. HTTPS fue significativamente más lento debido a la falta de compresión de encabezados y capacidades de inserción de servidor.
Preparándose para un Internet Mejor: Disponibilidad y Compatibilidad de HTTP/2 del Navegador
HTTP/2 ya está disponible con el servidor web, el navegador adecuado y soporte móvil. Tecnologías ejecutándose en HTTP1.x no están comprometidas en la aplicación HTTP/2 para su sitio web, pero requieren una actualización rápida para apoyar el nuevo protocolo. Puede considerar los protocolos de red como los lenguajes hablados. Comunicarse con nuevos idiomas sólo es posible si se entiende adecuadamente. Asimismo, el cliente y el servidor deben ser actualizados para apoyar la comunicación de datos a través del protocolo HTTP/2.
Soporte al Cliente
Los consumidores de internet no necesitan preocuparse configurando a sus navegadores de escritorio y navegadores móviles para ser compatibles con HTTP/2. Chrome de Google y Firefox han apoyado la tecnología durante años y Apple agregó la compatibilidad del navegador HTTP/2 para el Safari en 2014. Internet Explorer requiere que los usuarios ejecuten Windows 8 para apoyar el último protocolo de aplicación.
Los principales navegadores web móviles incluyendo el acertadamente llamado Android, el navegador Chrome para Android y iOS, así como Safari en iOS 8 y superior son compatibles con HTTP/2 para obtener acceso móvil a la web. A los usuarios de internet se les recomienda instalar las últimas versiones estables de móviles y navegadores web de escritorio para experimentar el máximo rendimiento y ventajas de seguridad del protocolo de aplicación como se ve en la sección de rendimiento de HTTP/2.
Compatibilidad con el Servidor Web: Apache y Nginx
Los proveedores de servicios en línea ejecutando servidores in situ o en la nube tendrán que actualizar y configurar servidores web para añadir soporte para HTTP/2. En Kinsta ya hemos modificado nuestros servidores en consecuencia por supuesto! Considerando la analogía del idioma hablado descrita anteriormente, los visitantes de internet que acceden a la información entregada desde estos servidores sólo pueden utilizar HTTP/2 mientras el servidor web está actualizado y configurado para este fin.
Los Servidores Nginx que constituyen el 66 por ciento de todos los activos de servidores web cuentan con soporte nativo para HTTP/2 mientras que los servidores Apache usan El módulo mod_spdy para ofrecer soporte del navegador HTTP/2. El módulo fue desarrollado por Google para apoyar características SPDY como multiplexación y compresión de encabezados para servidores Apache 2.2 y el software ahora es donado a la Fundación de Software Apache.
Cómo Puede Empezar Utilizando HTTP/2
Siga estos sencillos pasos para configurar HTTP/2 para su sitio web:
Paso 1
- Asegúrese de que HTTPS esté activado: Adquiera un certificado SSL o TLS de una autoridad válida, o use SSL de forma gratuita desde el Let’s Encrypt si está disponible.
- Active el certificado de seguridad.
- Instale el certificado.
- Actualice la página web para habilitar el protocolo HTTPS.
Para los Clientes de Kinsta
Si usted es un cliente de Kinsta la instalación de su certificado SSL puede ser efectuada con un solo clic.
Paso 2
Asegúrese de que la infraestructura de red subyacente incluyendo software de servidor sea compatible con HTTP/2. Los servidores Nginx son compatibles con HTTP/2 de forma nativa, mientras que Apache añadió soporte nativo en octubre de 2015 (en 2.4), lo que significa que los servidores Apache podrían requerir módulos adicionales para permitir la comunicación de datos mediante la compatibilidad del navegador HTTP/2.
Nota: HTTP/2 es activado por defecto en Kinsta para todos los sitios que se ejecutan HTTPS.
Paso 3
Actualice, configure y pruebe sus servidores HTTP/2. Este artículo describe la configuración y el procedimiento de prueba para los servidores Apache. Póngase en contacto con su proveedor de alojamiento web para asegurarse de que HTTP/2 esté listo para su sitio web.
Paso 4
Utilice esta herramienta para verificar si ha configurado correctamente HTTP/2.
Conclusión
La dominación y supremacía de HTTP/2 en el ciber mundo es inevitable. El protocolo de aplicación parece hacer desaparecer el legado de HTTP1.x que transformó al mundo cibernético con la revolucionaria capacidad de transmisión de datos. HTTP/2 sobresale de sus predecesores con superioridad tecnológica mucho mayor que la brecha de innovación que HTTP1.x estableció contra los mecanismos de comunicación de datos tradicionales de entonces.
Sin embargo, activar HTTP/2 está a sólo un paso del extenso viaje para mejorar la velocidad de la página. Esta «Guía para principiantes para optimización de velocidad de sitio» de Kinsta describe cómo construir un sitio para la velocidad, atender cuellos de botella de rendimiento y ventajas estratégicas de negocio asociados con el rendimiento web superior.
Great article Ali, just one thing. Arrows need to be other way around on this image.
https://kinsta.com/es/wp-content/themes/kinsta/images/learn/what-is-http2/http_requests.png
Thanks!
Thanks Udara it has been fixed.
I have a question just to see if I understand well. With this aproach, will we need to be prepared or to configure our servers to support more requests per second?
It depends on what you mean requests per second (http requests or web app requests?) but I think you meant http requests and then the answer is no :)
Really nice guide – thanks! What HTTP/2 web server would you recommend to start using? I see there are alternatives like H20, ShimmerCat, etc?
Thank you Kinsta and Ali for Sharing this awesome guide on Http/2.
It is time to use Http/2 on all my websites. Cheers!
Excellent article, love the details, and in depth approach.
Just an FYI, the tweet suggestion above:
«HTTP/2 brings significant performance imrpovements for pushed resources and more»
has a typo in the word improvements.
Are you adding HSTS?
Great article!