Auteur Sujet: http/2: Mécanisme de négociation http2 vs http1.1 dans un GET https  (Lu 50739 fois)

0 Membres et 1 Invité sur ce sujet

Marin

  • Client Bbox vdsl
  • Modérateur
  • *
  • Messages: 2 804
  • 73

turold

  • Profil non complété
  • ******
  • Messages: 1 683
  • mp fermée (sauf admin et exceptions temporaires)
http/2: Mécanisme de négociation http2 vs http1.1 dans un GET https
« Réponse #37 le: 22 février 2016 à 03:59:16 »
Pour Safari, faut remettre les choses dans l'ordre.
Webkit et Safari sont tous les 2 créés par Apple!
Google s'est ensuite imposé dans Webkit, pour le mettre dans Chrome et Chromium.
Et enfin, Google a créé le fork Blink (désaccord avec Apple qui garde les fondamentaux de Webkit), qui est en parallèle de Webkit, où Google y est encore pour des raisons de compatibilité avec iOS (Webkit obligatoire pour les navigateurs dont le moteur de rendu est en local).

vivien

  • Administrateur
  • *
  • Messages: 47 170
    • Twitter LaFibre.info
http/2: Mécanisme de négociation http2 vs http1.1 dans un GET https
« Réponse #38 le: 22 février 2016 à 08:16:26 »
WebKit est un fork du moteur de rendu KHTML du projet KDE (l’environnement de bureau Linux) utilisé notamment dans le navigateur Konqueror.

KHTML a été développé en même temps que la technologie à composants KPart qu'il utilise pour être intégré à Konqueror, le gestionnaire de fichiers de KDE. Il est sorti en 2000, en même temps que la version 2 de KDE.

En 2002 Apple choisit KHTML ainsi que KJS pour l'interpréteur JavaScript comme base de son moteur de rendu HTML qu'utilisera son navigateur web Safari. Ce nouveau moteur, placé sous licence LGPL et appelé WebKit subit de nombreuses modifications visant notamment à réduire les dépendances aux bibliothèques KDE, à tel point que les échanges de code entre les deux moteurs devinrent très compliqués. Ces problèmes ont été réglés lorsque Apple a ouvert le développement de Webkit en utilisant un dépôt SVN et un système de suivi des bug utilisant Bugzilla1. C'est ainsi que certaines modification d'Apple ont pu être intégrées à KHTML, comme celles ayant permis au moteur de rendu de KDE de passer le test Acid2.

Source : Wikipedia

On voit ici les gains de l'OpenSource : tu prends un produit et tu l’améliores en rendant publiques tes modifications. Il y a un beau travail de base créée par les équipes de KDE qui a été amélioré par Apple puis Google.

Aujourd'hui la masse de travail pour faire un bon moteur de rendu fait qu'il n'y aura plus de nouveaux moteurs autre que des fork. C'est pour cela qu'il faut vraiment éviter que Firefox abandonne Gecko. A noter que Firefox sous iOS utilise Webkit (obligation d'Apple).

hwti

  • Abonné Orange Fibre
  • *
  • Messages: 2 237
  • Chambly (60)
http/2: Mécanisme de négociation http2 vs http1.1 dans un GET https
« Réponse #39 le: 22 février 2016 à 10:39:26 »
il faut vraiment éviter que Firefox abandonne TridentGecko.
Il travaillent aussi sur Servo, qui est un nouveau moteur (même si certaines parties sont conservées comme SpiderMonkey pour le JS).

vivien

  • Administrateur
  • *
  • Messages: 47 170
    • Twitter LaFibre.info
http/2: Mécanisme de négociation http2 vs http1.1 dans un GET https
« Réponse #40 le: 30 avril 2016 à 18:04:16 »
CloudFlare dit être la première société à activer largement HTTP / 2 Push Server et annonce un gain de temps de chargement de 15%

Schéma pour expliquer les gains de HTTP/2 Push Server vs HTTP/2 vs HTTP/1.1 :


jack

  • Professionnel des télécoms
  • *
  • Messages: 1 676
  • La Madeleine (59)
http/2: Mécanisme de négociation http2 vs http1.1 dans un GET https
« Réponse #41 le: 30 avril 2016 à 18:30:57 »
Ce truc me parait une bonne idée, mais cela doit être traité avec une attention particulière, non ?

Dans ton cas, l'image, css et js peuvent et sont potentiellement présent dans le cache local : dans ce dernier cas, tu vas faire télécharger plus de données que nécessaire par le client, ce qui peut-être problèmatique pour les héres propulsés par DSL (ou pire, par onde)

minidou

  • Abonné Orange Fibre
  • *
  • Messages: 403
  • FTTH 1 Gb/s sur Nantes (44)
http/2: Mécanisme de négociation http2 vs http1.1 dans un GET https
« Réponse #42 le: 30 avril 2016 à 21:15:59 »
le graphique est pas terrible, les navigateurs n'attendent pas d'avoir récupérer x.css avant de lancer le téléchargement de X.js
pas contre en http2, cela n'utilise qu'une connexion ouverte (c'est donc des poignées de main en moins)

jack

  • Professionnel des télécoms
  • *
  • Messages: 1 676
  • La Madeleine (59)
http/2: Mécanisme de négociation http2 vs http1.1 dans un GET https
« Réponse #43 le: 30 avril 2016 à 21:17:55 »
Le nombre de connexion parallèle est limitée
Pour 3 objets, tu as raison
Pour 30 objets, tu as tort

kgersen

  • Modérateur
  • Abonné Bbox fibre
  • *
  • Messages: 9 091
  • Paris (75)
http/2: Mécanisme de négociation http2 vs http1.1 dans un GET https
« Réponse #44 le: 30 avril 2016 à 22:20:54 »
Ce truc me parait une bonne idée, mais cela doit être traité avec une attention particulière, non ?

Dans ton cas, l'image, css et js peuvent et sont potentiellement présent dans le cache local : dans ce dernier cas, tu vas faire télécharger plus de données que nécessaire par le client, ce qui peut-être problèmatique pour les héres propulsés par DSL (ou pire, par onde)

Il existe un mécanisme d'annulation de la part du client quand il commence a recevoir un truc 'pushé' qu'il a déjà en cache (le client envoi un RST_STREAM).

En pratique ca marche bien et l'overhead est minime.

Sur les réseaux sensibles a la conso, le client peut explicitement interdire le push.

source: http://http2.github.io/http2-spec/#PushResources

vivien

  • Administrateur
  • *
  • Messages: 47 170
    • Twitter LaFibre.info
http/2: Mécanisme de négociation http2 vs http1.1 dans un GET https
« Réponse #45 le: 30 avril 2016 à 22:58:38 »
http/2 (avec ou sans PUSH) va aussi économiser des ouvertures de connexions https (cela consomme pas mal de données d'ouvrir une connexion https, il faut échanger le certificat ect.)

Coté serveur, cela va aussi bien diminuer la chargé liée aux nombreuses connexions ouvertes.

oxomichael

  • Abonné SFR fibre FttH
  • *
  • Messages: 51
  • Gallardon (28)
http/2: Mécanisme de négociation http2 vs http1.1 dans un GET https
« Réponse #46 le: 10 juin 2016 à 00:29:58 »
Si je comprends bien avec http/2 il y a quand même un changement de paradigme. Car on peut rassembler toutes ces ressources sur le même domaine (tous les fichiers mais jusqu'à combien) pour échanger une seule poignée de main et un seul canal de communication.

Et donc que le fonctionnement avec des domaines pour les fichiers statiques semblent compromis. Quel est l'impact de http/2 d'un site à fort traffic qui utilise le CDN à tout va ?

vivien

  • Administrateur
  • *
  • Messages: 47 170
    • Twitter LaFibre.info
http/2: Mécanisme de négociation http2 vs http1.1 dans un GET https
« Réponse #47 le: 10 juin 2016 à 08:44:35 »
Il est effectivement conseillé de limiter le nombre de domaines et de connexions ouvertes.
Généralement on observer que les sites sans réseaux sociaux en http/2 utilisent 2 à 4 hébergements différents.
Wikipedia par exemple est en http/2 et a tout sur 2 nom de domaine.

À l'inverse, un site vraiment mal codé : http://www.ldlc.com/
Il ouvre une centaine de connexion TCP pour afficher une page.
Ils vont devoir changer pas mal de chose pour passer en http/2.