Introduction
Dans le monde ultra-connecté d'aujourd'hui, la rapidité et l'efficacité des connexions Internet sont cruciales pour offrir une expérience utilisateur optimale. Un des moyens d'améliorer cette efficacité est d'utiliser des enregistrements DNS HTTPS pour annoncer le support de HTTP/3. C'est là qu'intervient "savearoundtrip". En publiant un enregistrement DNS HTTPS, les sites peuvent éviter un aller-retour inutile, ce qui réduit la latence et améliore les performances globales.
Pourquoi utiliser un enregistrement DNS HTTPS ?
Les navigateurs peuvent découvrir le support HTTP/3 d'un site de deux manières : soit en se connectant d'abord via HTTP/1 ou HTTP/2 et en lisant l'en-tête HTTP Alt-Svc, soit immédiatement via une recherche d'enregistrement DNS HTTPS. L'enregistrement DNS permet au navigateur d'utiliser HTTP/3 dès la première connexion. En évitant un aller-retour, on économise du temps précieux, surtout sur les connexions à longue distance.
L'impact des aller-retour
Un aller-retour, c'est une requête au serveur et une réponse, limité par la vitesse de la lumière : environ 5 à 20 ms dans une ville, 40 à 80 ms à travers un pays, et 150 ms ou plus à travers un océan ou un réseau mobile. Selon le Nielsen Norman Group, une interaction ressentie comme instantanée se situe sous les 100 ms. Au-delà, l'utilisateur ressent une attente.
Le problème avec Alt-Svc
L'en-tête Alt-Svc est une réponse HTTP. Pour le lire, le client doit terminer une requête, ce qui signifie qu'il a déjà ouvert une connexion TCP, effectué une poignée de main TLS et parlé HTTP/1.1 ou HTTP/2. Ce n'est qu'à ce moment-là qu'il apprend qu'il peut aussi parler HTTP/3, ce qui se produit lors de la connexion suivante.
Diagramme de séquence
Prenons un exemple :
``sequence débutant C comme Client débutant D comme DNS débutant S comme Serveur Note sur C,S: Première connexion C->>D: recherche A / AAAA D-->>C: adresse IP C->>S: TCP SYN S-->>C: SYN-ACK C->>S: TLS ClientHello S-->>C: TLS ServerHello, Terminé C->>S: requête HTTP/2 S-->>C: réponse + Alt-Svc: h3 Note sur C,S: le client apprend seulement maintenant que tu parles HTTP/3 Note sur C,S: Seconde connexion C->>S: QUIC + poignée de main HTTP/3 S-->>C: connecté (HTTP/3) ``
Avantages du DNS HTTPS
Un enregistrement HTTPS (RFC 9460) porte le même signal "Je parle HTTP/3", mais dans le DNS. Le client peut ainsi immédiatement établir une connexion HTTP/3 sans attendre une seconde requête.
Cas d'usage et chiffres
Prenons le cas de Firefox Nightly, où de nombreuses connexions n'atteignent HTTP/3 que lors d'une connexion ultérieure. En publiant un enregistrement HTTPS, chaque connexion pourrait économiser un aller-retour dès la première interaction.
En 2023, environ 40% des sites majeurs utilisent déjà HTTP/3, mais seulement une fraction d'entre eux utilise des enregistrements DNS HTTPS pour optimiser la découverte du protocole.
Conclusion
Utiliser des enregistrements DNS HTTPS est une stratégie efficace pour réduire la latence et améliorer l'expérience utilisateur. En intégrant cette méthode, tu peux offrir des connexions plus rapides et plus fiables à tes utilisateurs.
Discutons de ton projet en 15 minutes.