HTTP/3 versus HTTP/2

HTTP/3 versus HTTP/2

Le HTTP/3 plus rapide et plus sécurisé que le HTTP/2 ? De HTTP/0.9 à HTTP/3 Avant d’aborder HTTP/3, rappelons que le protocole HTTP (HyperText Transfer Protocole) a eu plusieurs améliorations au cours du temps. La 1ère version a été introduite en 1990 et a eu 2 variantes : HTTP et HTTPS (pour la version sécurisée). Le principe est simple : établir une connexion TCP et servir la ressource. Une version plus optimisée du protocole, portant le nom HTTP/1.1, est apparue ensuite en 1997. Elle visait à améliorer la gestion du cache et à résoudre un nombre de soucis majeurs. Une autre la suit en 2014, le protocole HTTP/1.1 bis, pour apporter d’autres évolutions. Cependant, le contexte d’internet a changé, la navigation n’est plus la même et les besoins des sites web ont évolué. Les pages demandent de plus en plus de ressources et le protocole commence à avoir du mal à répondre aux requêtes des internautes. D’où, la 2ème version majeure de HTTP qui élimine l’établissement de la connexion TCP pour chaque ressource et remplace cela par une seule connexion permettant ainsi le multiplexage des ressources. HTTP/2 propose entre autres d’autres techniques pour accélérer le chargement des pages (requêtes binaires, compression des Headers, …) mais l’avantage principal du protocole est le chargement parallèle des ressources. HTTP/2 avait donc réussi à éliminer le problème de saturation des en-têtes de file (Head-of-line blocking) au niveau de la couche application par le multiplexage, mais le problème persiste toujours au niveau de la couche TCP. Et c’est justement ce problème qui pousse l’organisme IETF (Internet Engineering Task Force) à développer la nouvelle version...
HTTP/3 est officiel ! Quel impact sur la performance web ?

HTTP/3 est officiel ! Quel impact sur la performance web ?

Le protocole créé par Google longtemps intitulé « HTTP-over-QUIC » est officiellement renommé HTTP/3. Ce changement de nom est loin d’être anecdotique, car il s’accompagnera vraisemblablement dans un futur proche de son officialisation dans le standard HTTP. Dans cet article nous vous expliquons à quoi il correspond techniquement et les impacts auxquels vous pouvez vous attendre sur votre performance web. TCP/2 plutôt que HTTP/3 ? La nouveauté principale apportée par HTTP/3 c’est la possibilité d’utiliser QUIC plutôt que TCP pour échanger des messages HTTP. Qu’est-ce donc que le protocole QUIC ? Et qu’a-t-il de plus que nos bons vieux TCP et UDP ? TCP c’est le protocole de la couche transport le plus utilisé de nos jours en raison de sa fiabilité. En contrepartie, il s’accompagne d’une certaine lourdeur dans les phases d’établissement de connexion. UDP quant à lui n’apporte aucune garantie de fiabilité, mais n’a pas de phase d’établissement de connexion. QUIC est en quelque sorte une version de UDP plus complète, dont les garanties : fiabilité, vérification des erreurs, ordres des paquets sont équivalentes à celle de TCP. De plus le protocole TCP comporte de nombreuses fonctionnalités qui n’ont plus vraiment de sens de nos jours, et qui l’alourdissent inutilement.   « QUIC win » pour la performance web? D’un point de vue de la performance de vos pages web, les gains principaux se situeront à deux niveaux. D’une part, la phase d’établissement de connexion sera supprimée ce qui aura tendance à améliorer le temps de connexion (premier segment sur l’exemple appYuser) ainsi que le temps d’affichage (quatrième segment), notamment sur les sites qui utilisent de nombreuses ressources externes. D’autre part,...