HTTP/2 

HTTP/2 

HTTP/2

Les sites web ont évolué, nous voyons maintenant des sites qui chargent différents types de contenus, tels que des images, des vidéos, des fichiers javascript, etc., cependant le protocole HTTP, lui, avait peu changé, ce n’est qu’avec l’arrivée de HTTP/2 que nous voyons un changement important, principalement au niveau des performances, pour envoyer des requêtes et recevoir du contenu. Allons voir plus en détail en quoi consiste ce protocole, les avantages qu’il offre et comment vérifier si votre site l’utilise.

I. Qu’est-ce que HTTP/2 ?

Cette question fait appel à certains concepts qu’il convient de clarifier :

1.1. Qu’est-ce qu’un protocole ?

Dans ce contexte, nous faisons référence à un protocole de communication, qui est un ensemble de règles permettant à deux systèmes de communiquer entre eux pour transmettre des informations.

1.2. Qu’est-ce que HTTP ?

HTTP = Hypertext Transfer Protocol, est le protocole de communication qui permet le transfert d’informations par le biais de fichiers, généralement HTML, sur l’internet.

1.3. Alors, qu’est-ce que HTTP2 ?

HTTP/2 est la nouvelle version de HTTP, dans l’image suivante nous voyons les différentes versions de ce protocole de communication dans le temps.

II. Caractéristiques du protocole HTTP/2

L’une des principales améliorations de HTTP/2 par rapport aux versions précédentes est la vitesse de communication. Pour y parvenir, le protocole HTTP/2 présente les caractéristiques suivantes :

2.1. Une seule connexion

Avec HTTP 1.x, plusieurs connexions TCP simultanées sont nécessaires pour charger un élément. Dans le cas de HTTP/2, une seule connexion est utilisée pour fournir plusieurs demandes et réponses en parallèle.

2.2. Élimination des informations redondantes

Une autre caractéristique est l’élimination des informations redondantes, évitant ainsi l’envoi de données répétées sur la même connexion, ce qui réduit la latence.

2.3. Multiplexage

Avec HTTP 1.x, le navigateur envoie une requête au serveur et doit attendre la réponse avant d’envoyer la requête suivante. Dans HTTP/2, le multiplexage permet d’envoyer et de recevoir plusieurs messages en même temps afin d’optimiser la communication, d’améliorer la vitesse et de réduire la surcharge du serveur.

2.4. Protocole binaire

Il est plus facile pour les systèmes de travailler avec des protocoles binaires, par opposition à un protocole texte, qui est ce que les versions antérieures de HTTP utilisaient. Les protocoles binaires sont également plus simples et moins sujets aux erreurs.

2.5. Service Push du serveur

Ce sont des estimations faites par le serveur pour envoyer des messages avant que le client ne les demande. Son fonctionnement consiste à envoyer plusieurs réponses à une seule demande, c’est-à-dire qu’en plus de la demande initiale, le serveur peut envoyer des ressources supplémentaires.

Un site web est composé de dizaines de fichiers référencés et grâce au service Server Push, le serveur les envoie après avoir reçu une seule demande, car il suppose que ces autres fichiers seront également nécessaires, ce qui évite les demandes inutiles.

2.6. Compression des en-têtes

Lorsqu’un client adresse de nombreuses demandes au serveur, les en-têtes changent à peine les uns des autres, si bien que de nombreuses informations redondantes sont envoyées. Avec HTTP/2, les en-têtes sont compressés, ce qui permet d’améliorer les temps de réponse. L’algorithme utilisé à cet effet est HPACK, qui supprime en outre les champs d’en-tête redondants et empêche les éventuelles vulnérabilités. 

2.7. Hiérarchisation des flux

Certains objets qui composent le web sont plus importants que d’autres, il est donc dans notre intérêt que les objets les plus importants aient une priorité plus élevée.Un message HTTP peut être divisé en plusieurs fragments, soit une demande du client, soit une réponse du serveur. Il est important de contrôler l’ordre et le délai dans lequel ces fragments sont transmis.

Pour contrôler la priorité, HTTP/2 permet d’attribuer un poids à chaque fragment (entre 1 et 256).  

III. Avantages de l’utilisation du protocole HTTP/2

En examinant les caractéristiques ci-dessus, nous pouvons constater que HTTP/2 offre de nombreux avantages, dont les principaux sont les suivants :

  • Vitesse de chargement plus rapide

Contrairement aux versions précédentes, où les demandes sont séquentielles, c’est-à-dire que vous devez terminer une demande pour envoyer la suivante, dans le cas de HTTP/2, ce problème est résolu grâce au multiplexage. Cela améliore la vitesse de chargement de 40 à 50 %.

  • Amélioration du positionnement sur le web

Bien qu’à l’heure actuelle les algorithmes de Google ne pénalisent pas l’utilisation des anciennes versions de HTTP, ce que l’on sait, c’est qu’ils récompensent les sites qui ont une bonne vitesse de chargement, on peut donc en déduire que HTTP/2 est positif pour le référencement d’un site web.

Il a également été confirmé que Google effectue des recherches avec HTTP/2, pour autant que le serveur le permette.

  • Priorité de charge

Avant HTTP/2, les fichiers d’un site web devaient être chargés dans un ordre spécifique, ce qui n’offrait évidemment pas une bonne expérience utilisateur. Avec HTTP/2, cependant, toutes les demandes sont envoyées sur une seule connexion et le navigateur décide de la priorité de chaque fichier.

  • Moins de consommation de bande passante

HTTP/2 compresse les en-têtes répétitifs et supprime les informations redondantes, ce qui réduit considérablement le transfert de données et, par conséquent, la consommation de bande passante.

  • Présentation immédiate

Avec HTTP/2, le serveur peut envoyer des données non sollicitées de sa propre initiative, en déduisant que l’utilisateur aura besoin de ces données dans une demande ultérieure.

IV. SPDY et HTTP/2

En 2010, Google a lancé le protocole SPDY comme une proposition visant à améliorer les demandes et les réponses HTTP. Il se concentre sur la réduction de la latence via TCP, ainsi que sur la compression et d’autres fonctionnalités. 

HTTP/2 s’appuie sur SPDY et apporte des améliorations supplémentaires. Google a donc annoncé qu’il abandonnerait la prise en charge de SPDY au profit de HTTP/2. 

4.1. Comparaison de HTTPS, SPDY et HTTP/2 

HTTPS

SPDY HTTP/2
Ne nécessite pas de SSL SSL requis SSL recommandé 
Cryptage lent Cryptage rapide Cryptage très rapide 
Une connexion pour chaque demande  Plusieurs demandes par connexion TCP Plusieurs demandes par connexion TCP
Pas de compression d’en-tête  Compression d’en-tête améliorer Compression d’en-tête améliorer
Pas de priorisation des flux Priorisation des flux  Mécanismes de priorisation des flux améliorés

4.2. HTTPS et HTTP/2

HTTPS est un moyen de crypter les communications du protocole HTTP, enveloppant les messages dans un format crypté à l’aide de SSL/TLSHTTPS et HTTP/2 se complètent tous deux. Actuellement, il est recommandé d’utiliser HTTPS car, outre les avantages en matière de sécurité, il est également considéré par les moteurs de recherche pour donner un bon score à votre site. 

4.3. Vérifiez que votre site Web utilise HTTP/2 

Tous les serveurs ont déjà le protocole HTTP/2 activé par défaut. Cependant, cela dépend aussi de votre navigateur qui supporte ce protocole. Vous pouvez vérifier les différentes versions des navigateurs qui supportent HTTP2. Les navigateurs actuels prennent déjà en charge HTTP/2. 

Un moyen simple de vérifier si votre site web utilise HTTP/2 est d’utiliser l’inspecteur de code de votre navigateur. Pour ouvrir l’inspecteur de code, vous pouvez utiliser :

    • Sur Mac et Linux : Cmd + Option + i
    • Sur Windows : Ctrl + Shift + i 

Vous verrez qu’une section apparaîtra en bas, à partir de là, localisez l’onglet réseau et chargez ensuite le site Web que vous voulez vérifier dans la barre d’adresse de votre navigateur.  

V. HTTP2 et le positionnement SEO  

Bien que Google ne prend pas initialement en compte HTTP/2 dans ses algorithmes, il est une réalité que la vitesse de chargement est l’un des facteurs qui influencent le positionnement SEO. Par conséquent, comme pour toute autre amélioration, l’arrivée de ce nouveau protocole aura un impact indirect sur le SEO. 

Depuis des années, la vitesse de chargement d’un site web est l’un des facteurs décisifs pour que Google le classe mieux ou moins bien. Avec l’avènement des appareils mobiles et l’augmentation significative du nombre d’utilisateurs qui se servent de leurs smartphones pour surfer sur le web, les sites web qui n’étaient pas optimisés pour ce type d’appareil ont perdu des positions. Rappelons que plus de la moitié des utilisateurs qui visitent un site web lent l’abandonnent s’il met trop de temps à se charger ou s’il n’est pas optimisé pour les appareils mobiles. L’arrivée de HTTP/2 semble être la solution à ce problème, même si, comme toujours, il est nécessaire d’évoluer pour gravir les échelons.

D’autres facteurs tels que l’expérience utilisateur et la sécurité ont également une incidence sur le référencement. Tout semble donc indiquer que l’arrivée de HTTP/2 aura un effet positif sur les performances des sites web et sera bénéfique pour le référencement. 

Il semble que l’arrivée de HTTP/2 soit tout bénéfice et qu’elle marque un avant et un après sur l’Internet. En outre, sa mise en œuvre semble assez simple et ne pose aucun inconvénient pour les propriétaires de sites web, puisque la plupart des navigateurs sont déjà compatibles avec ce nouveau protocole. 

CONCLUSION SUR HTTP/2 

Les technologies évoluent pour améliorer l’expérience de l’utilisateur lorsqu’il navigue sur l’internet, et une partie de cette évolution concerne la vitesse à laquelle le navigateur communique avec le serveur.

Les fonctionnalités de HTTP/2 visant à améliorer la vitesse de communication, telles que la multiplication, l’élimination des informations redondantes, la compression des en-têtes, etc, représentent un changement majeur du protocole HTTP.