Microsoft veut mener la danse sur l'intégration du HTTP/2

Microsoft veut mener la danse sur l’intégration du HTTP/2

Mais la concurrence est déjà là

Avatar de l'auteur
Vincent Hermann

Publié dans

Logiciel

13/10/2014 4 minutes
31

Microsoft veut mener la danse sur l'intégration du HTTP/2

Le HTTP 2.0, devenu entretemps le HTTP/2, est une révision majeure du protocole réseau, en cours de normalisation à l’IETF. Même si la version finale n’est pas encore publiée, rien n’empêche les navigateurs de l’intégrer dans sa forme actuelle pour préparer le terrain. C’est le cas d’Internet Explorer « 12 », présent dans Windows 10, et dont Microsoft détaille l’implémentation.

HTTP/2 doit accélérer le chargement des pages web

La dernière révision du protocole HTTP, estampillée 1.1, date d’il y a quinze ans. Depuis 1999, les défis et objectifs ont évolué et les buts de la version 2.0 sont nombreux. Elle doit principalement accélérer le chargement des pages, via notamment le multiplexage des connexions TCP et la compression des en-têtes sur les paquets. La latence globale doit donc être améliorée, mais pas seulement puisque HTTP/2 doit en outre faciliter les technologies utilisant le « push » (informations « poussées » vers les clients) et le chiffrement des données.

 

Plusieurs idées fondatrices se sont battues pour servir de socle à HTTP/2, mais c’est finalement la technologie SPDY de Google qui a été retenue (Internet Explorer 11 gère présentement SPDY 2.0 et une version expérimentale de SPDY 3.0). Attention cependant : il ne s’agit pas d’une simple reprise du protocole créé par Google. Même si SPDY est fondé sur l’idée du multiplexage, HTTP/2 va plus loin car il applique le multiplexage à toutes les communications avec différents hôtes en même temps.

Le protocole est géré dans la Technical Preview de Windows 10 

Microsoft avait initialement proposé sa propre idée de ce que devait être HTTP/2. Devant le succès de SPDY, la firme s’est finalement rangée derrière la majorité. Elle veut même être en tête de l’intégration du HTTP/2, en expliquant que les gains en termes de performances valent clairement l’effort. L’éditeur indique qu’il est temps de se débarrasser d’une méthode de chargement des pages web qui n’a pas réellement changé depuis « l’époque des écrans en 800 x 600 ».

 

Traduction : Internet Explorer 12, face à un site web compatible avec le nouveau protocole, pourra profiter de la bande passante disponible pour expédier toutes les requêtes d’une traite, et non de manière séquentielle comme c’est le cas aujourd’hui (chaque nouvelle requête doit attendre le résultat de la précédente).

 

twitter http/2

 

Microsoft invite donc les développeurs web à installer la préversion technique de Windows 10, seule à contenir le support préliminaire de HTTP/2. La firme fournit une liste d’exemples permettant de tester le protocole en situation réelle (c’est le cas de Twitter.com). Notez qu’implanter HTTP/2 sur un site web, même à l’état de brouillon, ne cassera pas la compatibilité avec HTTP 1.1. Les intéressés pourront également monter un serveur HTTP/2, le protocole étant supporté par IIS. Il y a cependant une limitation sur ces préversions d’Internet Explorer et IIS : seules les connexions sécurisées sont supportées.

La concurrence n'est pas en reste 

L’éditeur semble toujours aussi décidé à faire oublier la triste histoire d’Internet Explorer en accélérant le support des dernières technologies. Cependant, le navigateur garde une concurrence acharnée dans tous les cas, notamment avec Chrome et Firefox. Le premier intègre un support expérimental de HTTP/2, non actif par défaut, tandis que le second prévoit l’implémentation du protocole pour sa version 34. Dans les deux cas, et comme pour Internet Explorer, seules les connexions sécurisées par TLS sont prises en charge.

 

Difficile de savoir pour l’instant si Microsoft pourra réellement être leader sur la prise en charge du HTTP/S. SI la prochaine mouture d’Internet Explorer doit sortir avec Windows 10, cela signifie qu’elle ne sera pas entre les mains des utilisateurs avant l’été prochain. Ce qui laissera du temps aux autres navigateurs pour le proposer en version finale : la publication de la première mouture définitive du protocole est prévue pour février prochain. 

Écrit par Vincent Hermann

Tiens, en parlant de ça :

Sommaire de l'article

Introduction

HTTP/2 doit accélérer le chargement des pages web

Le protocole est géré dans la Technical Preview de Windows 10 

La concurrence n'est pas en reste 

Fermer

Commentaires (31)


Les pubs reçues plus vite, qui ne bloqueront plus le chargement d’une page.


Est ce que NextInpact a prévu d’implémenter cette technologie  ?

Depuis la version 10 de IE, le navigateur est assez bon pour être utilisé tout les jours. Il manque deux/trois choses, mais d’après les rumeurs cela devrait arriver dans le v12.


Quid des impacts si on veut l’implémenter ?



et microsoft pourrais pas faire la même chose sur leurs logiciels serveurs ? Parce que ca serait cool de pouvoir précharger toute la page et attendre juste les résultats de ton tableau sans avoir à recoder tout le truc à la mano.


 “Traduction : Internet Explorer 12, face à un site web compatible avec le nouveau protocole, pourra profiter de la bande passante disponible pour expédier toutes les requêtes d’une traite, et non de manière séquentielle comme c’est le cas aujourd’hui (chaque nouvelle requête doit attendre le résultat de la précédente).”



Pour ce que je me souvenais, c’est pas tout à fait ca. On pouvait faire 5 requêtes simultanées (plus ou moins en configurant le navigateur). Mais comme avec HTTP/2 toutes les requêtes peuvent être faites sur la même connexion, on gagne pas mal en terme de handshake.



Par contre le protocole pose de vrais problèmes en particulier avec websocket, qu’il est à priori impossible à intégrer sur HTTP/2 (parce qu’en fait, les 2 marchent plus ou moins pareil à bas niveau). Il y a également pas mal de petits détails qui peuvent poser soucis.








Northernlights a écrit :



Les pubs reçues plus vite, qui ne bloqueront plus le chargement d’une page.





Et qu’en plus tu ne pourras pas éviter puisqu’on est en push et que c’est le serveur qui choisi ce qu’il envoie au navigateur.

Je connais des hackers qui doivent se faire des rêves mouillées sur cette technologie, encore un bon moyen de sécuriser l’internet mondial…









Laere a écrit :



 “Traduction : Internet Explorer 12, face à un site web compatible avec le nouveau protocole, pourra profiter de la bande passante disponible pour expédier toutes les requêtes d’une traite, et non de manière séquentielle comme c’est le cas aujourd’hui (chaque nouvelle requête doit attendre le résultat de la précédente).”



Pour ce que je me souvenais, c’est pas tout à fait ca. On pouvait faire 5 requêtes simultanées (plus ou moins en configurant le navigateur). Mais comme avec HTTP/2 toutes les requêtes peuvent être faites sur la même connexion, on gagne pas mal en terme de handshake.





En effet, en HTTP 1.1 il y a déjà le pipelining, qu’on peut activer dans Firefox par exemple, mais dont je ne sais pas s’il était très utilisé, car il faut que le serveur Web le supporte. Cf cet article par exemple en 2005 :https://developer.mozilla.org/en-US/docs/Web/HTTP/Pipelining_FAQ .





HTTP/1.1 allows multiple HTTP requests to be written out to a socket

together without waiting for the corresponding responses. The requestor

then waits for the responses to arrive in the order in which they were

requested. The act of pipelining the requests can result in a dramatic improvement in page loading times, especially over high latency connections.

Pipelining can also dramatically reduce the number of TCP/IP packets.

With a typical MSS (maximum segment size) in the range of 536 to 1460

bytes, it is possible to pack several HTTP requests into one TCP/IP

packet. Reducing the number of packets required to load a page benefits

the internet as a whole, as fewer packets naturally reduces the burden

on IP routers and networks.









XMalek a écrit :



Quid des INpacts si on veut l’implémenter ?



<img data-src=" />

&nbsp;



flamwolf a écrit :



Et qu’en plus tu ne pourras pas éviter puisqu’on est en push et que c’est le serveur qui choisi ce qu’il envoie au navigateur.

Je connais des hackers qui doivent se faire des rêves mouillées sur cette technologie, encore un bon moyen de sécuriser l’internet mondial…



Tu as des sources précises sur le côté sécurité de la chose? Cela m’intéresse… à ce qu’il me semble, le push ne se fait qu’à la demande du client.



Ha ben c’est une bonne nouvelle pour un lundi matin.<img data-src=" />








flamwolf a écrit :



Et qu’en plus tu ne pourras pas éviter puisqu’on est en push et que c’est le serveur qui choisi ce qu’il envoie au navigateur.

Je connais des hackers qui doivent se faire des rêves mouillées sur cette technologie, encore un bon moyen de sécuriser l’internet mondial…





Une petite règle dans iptables devrait suffire, je pense.



C’est pas trop tôt, quand on voit par ex. le support dégueulasse de SVG dans IE11, ce navigateur ne donne pas envie.








Crysalide a écrit :



C’est pas trop tôt, quand on voit par ex. le support dégueulasse de SVG dans IE11, ce navigateur ne donne pas envie.





Il dit qu’il voit pas le rapport&nbsp;<img data-src=" /><img data-src=" />



Et ça donne quoi en terme de performance avec la preview?








gokudomatic a écrit :



Une petite règle dans iptables devrait suffire, je pense.



&nbsp;

Ca m’intéresse comment tu ferais ça?

A priori tout devrait passer par le 80 ou le 443 et je ne vois pas comment différencier les données en push de celles vraiment demandées, si t’as une soluce je suis preneur.









gigi.mignon a écrit :



Et ça donne quoi en terme de performance avec la preview?





IE12 n’est pas dans la preview pour le moment. Peut-être dans la mise à jour suivante (vu qu’il parait que c’est tous les 15 jours, ça devrait être demain).









Edtech a écrit :



IE12 n’est pas dans la preview pour le moment. Peut-être dans la mise à jour suivante (vu qu’il parait que c’est tous les 15 jours, ça devrait être demain).





Oui bon ne jouons pas sur les mots, il ne sera appelé IE12 réellement qu’une fois la nouvelle interface prête, mais le moteur est là et il continuera d’être amélioré avec les previews.



Avec IE11 sous Windows 10, je rencontre pas mal de soucis, notamment sur NI où certaines images clignotent sur la page d’accueil. D’autres rencontrent des soucis avec IE dans W10 ?








ghosta a écrit :



Avec IE11 sous Windows 10, je rencontre pas mal de soucis, notamment sur NI où certaines images clignotent sur la page d’accueil. D’autres rencontrent des soucis avec IE dans W10 ?





GPU Intel HD 3000 ? J’ai la même chose sur un Zenbook depuis Windows 8.1 (dont 10 du coup)…









Strimy a écrit :



GPU Intel HD 3000 ? J’ai la même chose sur un Zenbook depuis Windows 8.1 (dont 10 du coup)…





Exactement :-)

Pas de souci avec FF, ni sur W8.1 ni sur W10.









ghosta a écrit :



notamment sur NI où certaines images clignotent sur la page d’accueil.






Cdiscount a racheté NXI <img data-src=">


Microsoft n’a pas l’intention d’arrêter avec la numérotation ? J’entends de manière publique. Faire en gros comme Chrome et Firefox. Un navigateur qui se met à jour automatiquement et dont le grand public se fout de la version.


La feature la plus canon étant l’envoi par le serveur de ressources que le client n’a pas encore demandé, comme une feuille CSS ou une page suivante. Le chargement est alors ultra rapide car les prochaines potentielles requêtes sont déjà en cache.








kras a écrit :



Laissons déjà à NXI le temps de rediriger vers HTTPS, ça devrait mettre dix ans, après ils devraient s’intéresser au HTTP/2…





Quand on voit la qualité de tes commentaires on se dit que les chiffrer de ton terminal au serveur ce n’est pas utile, mieux vaut qu’ils soient en clairs pour que le monde en profite, NXi a raison.









Oiso a écrit :



Microsoft n’a pas l’intention d’arrêter avec la numérotation ? J’entends de manière publique. Faire en gros comme Chrome et Firefox. Un navigateur qui se met à jour automatiquement et dont le grand public se fout de la version.&nbsp;





Le grand public se fout déjà de la version. Le grand public ne lance pas IE11 ou Chrome 36 , il lance internet ou google (voire le e bleu pour certains).









kvasir a écrit :



Le grand public se fout déjà de la version. Le grand public ne lance pas IE11 ou Chrome 36 , il lance internet ou google (voire le e bleu pour certains).





je confirme ^^ (j’en ai au boulot qui lancent Google en cliquant sur le e bleu&nbsp; mais là, on dépasse les bornes des limites de l’entendement <img data-src=" />)









CrowTown a écrit :



en même temps quand on voit le nombre de geeks ou de medias spécialisés qui parlent eux-mêmes de faire des recherches dans “Google”, plutôt que de faire des recherche sur “Internet” ou mieux sur “un moteur de recherche” qui puisse être autre que Google search… après faut pas s’étonner que les Michu mélangent tout et n’importe quoi hein&nbsp;&nbsp;<img data-src=" />







Ca viens surement d’un deformation professionnel ^^




  • Lancez votre navigateur.

  • Quoi ?

  • Lancez google.

    &nbsp;

    10 min de gagné :P



Non Microsoft, aucun développeur ne viendra sur IE.

&nbsp;

Il fallait semer de meilleures graines ces 10 dernières années…


Un article intéressant sur le http 2.0 :

http://www.heavybit.com/library/developer-technical/video/2013-08-27-ilya-grigor…



Long, en anglais, mais très intéressant.


Ce qui serai intéressant serai d’en profiter pour revoir SSL et casser la gueule au principe du tiers de “confiance”