L’évolution DU PROTOCOLE HyperText Transfer Protocol

Slides:



Advertisements
Présentations similaires
Parcours de Professionnalisation Epreuve E6 BTS SIO OPTION SISR Ngouma Lorris.
Advertisements

La base de données de jurisprudence francophone.  Juricaf est composé de deux parties : - Le menu de gauche avec les différentes fonctions - La partie.
Présentation de Scribe Votre nouvelle organisation du Réseau Informatique Pédagogique.
Présentation du projet JAVA Système de messagerie instantanée cryptée.
Présentation LabPlus v3. Solution novatrice en Technologies de l’information Solution novatrice en Technologies de l’information Application pour la Gestion.
SRT3 VPN. ● Réseau privé virtuel (VPN ou Virtual Private Network) ● Rattacher deux réseaux locaux à travers un réseau non- sécurisé ● Procure même sécurité.
Le référencement par les moteurs Favoriser la bonne indexation de nos sites.
26/09/2016 Projet 1789 : Plateforme d'enseignement innovante Groupe n°81 : Lan Xu, Tanguy Kerdoncuff, Thomas Fredon, Vincent Feugère Encadrants : Alexander.
Initiation à QuickPlace, janvier Initiation à QuickPlace n Nature de l'outil n Fonctions de base (lecture, création) n Fonctions de gestionnaire.
GOOGLE MAPS ANDROID API V2. INTRODUCTION TO THE GOOGLE MAPS ANDROID API V2.
Internet Principes de recherche. Serveur web Adresse IP.
Cours de HTML suite 3. Sommaire...  Les formulaires. Les formulaires.  Structure basique du formulaire, balise. Structure basique du formulaire, balise.
Interface sur laquelle on arrive lorsqu’on atteint le site Tous les champs ci- dessous sont supprimés Liste des clients disponibles Liste des serveurs.
Utiliser le nouveau site internet du lycée niort/
Sommaire : I.Introduction II.Fibre optique (pr é sentation g é n é ral de la fibre) III.Les techniques de transmissions -Multiplexage temporelle (TDM)
ARCHITECTURE MULTITENANT CONTAINER DATABASE ET PLUGGABLE DATABASES Pr. A. MESRAR
Cahier des charges.
Procédures Framework LDAP
Nouveautés Version 4.1 et mai 2017.
Cross-Plateform Cours JavaScript
MENUS PRINCIPAL RESEAU.
Brève histoire d’Internet
TIC (Techniques de l’Information et de la Communication)
Recherche Summon - HINARI (Module 3)
Comment Sécuriser Le Système d’information de son entreprise
Messagerie (Orange - Gmail)
Suivi des démarches en ligne via le Gestionnaire de Suivi Services Instructeurs Paris – 29/08/2012.
Google analytics.
Séminaire Novembre 2006 Zephir : Déploiement et supervision des serveurs Eole.
Initiation aux bases de données et à la programmation événementielle
Installation et Configuration Internet Information Server (IIS 5)
SECURITE DU SYSTEME D’INFORMATION (SSI)
Veille technologique Nassima Mahcer 17 MAI 2017.
Internet Un réseau virtuel qui assure l'interconnexion des différents réseaux physiques par l'intermédiaire de passerelles. Une pile de protocoles unique.
Asynchronous Javascript And Xml
Projet 1789 : Plateforme d'enseignement innovante
Le cloud… Pourquoi, comment et budget
1ers pas des utilisateurs migrés
Les enjeux des Environnements numériques de travail (ENT)
Guide des différences entre les deux versions de l’interface web
Documentation technique (Linux)
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II
HTTP DNS NTP FTP R231 RJ45 definition HTTP DNS NTP FTP R231 RJ45.
Présentation initiale
SRT3 LDAP.
Environnement de gestion des machines Virtuelles
Guide Utilisateur. Guide Utilisateur.
BALISE HTML5 <audio> : le son sur une page web
A. DAAIF ENSET Mohammedia Université Hassan II Casablanca.
Exploiter le Web Etape 2.
G.ELGHOUMARI Université ParisII Panthéon-Assas
Les protocoles de la couche application Chapitre 7.
5 Analyse avec Designer d'Oracle
FAIRE UN BLOG D'ECOLE Un exemple détaillé.
„La plate-forme EAI “ Initiation à WBI
7 Contraintes d’intégrité en SQL
G.ELGHOUMARI Université ParisII Panthéon-Assas
Comment utiliser l’application ?
Comprendre le fonctionnement d’un réseau
Système de gestion de contenu de sites web
7- Nouveaux services pédagogiques pour les élèves
Démarrage du projet Préparer les fonds de plan
Formation « Utiliser un site Internet école »
03/05/2019 L’organisation et la gestion des fichiers sur le site collaboratif Martine Cochet 2SitePleiadeGestionFichiers.
Exploitation de vos données
Support de formation Administrateur Entretiens
STS Web Services libres Gérer les services libres
Implémentation de FTP Rappel sur FTP Relation entre un site Web et FTP
Qu’est ce qu’une page web? Comment fonctionne un site web?
QR code Nom enseignant :M. BENYAHIA Cheikh
Transcription de la présentation:

L’évolution DU PROTOCOLE HyperText Transfer Protocol VEILLE TECHNOLOGIQUE 2015 L’évolution DU PROTOCOLE HyperText Transfer Protocol Professeurs: Didier Donsez Georges-Pierre Bonneau ÉTUDIANT : Thibault SAUSSAC

Sommaire Rappels sur HTTP Les évolutions de HTTP Conclusion HTTP 0.9 Thibault SAUSSAC Veille Technologique 2015 Sommaire Rappels sur HTTP Les évolutions de HTTP HTTP 0.9 HTTP 1.0 HTTP 1.1 HTTP SPDY HTTP 2.0 Conclusion

HTTP, Quèsaco? Signification: HyperText Transfer Protocol Thibault SAUSSAC Veille Technologique 2015 HTTP, Quèsaco? Signification: HyperText Transfer Protocol « Protocole de transfert hypertexte » Création : 1990 par Sir Berners-Lee Concurrent : Gopher Port : 80 (ou 443 avec https ) Couche : Application Type : Protocole sans État Architecture : Client – Serveur Identification : Uniform Ressource Identifier Protocole sans états : qui ne retient pas les requetes envoyé. pos

HTTP, Quèsaco? Exemple de requête / réponse HTTP : Thibault SAUSSAC Veille Technologique 2015 HTTP, Quèsaco? Exemple de requête / réponse HTTP :

L’évolution de HTTP… 25 ans d’histoire HTTP 0.9 HTTPS HTTP 2.0 Thibault SAUSSAC Veille Technologique 2015 HTTP 0.9 HTTPS HTTP 1.1 HTTP 2.0 1995 2000 2010 L’évolution de HTTP… HTTP 1.0 SPDY 1990 2005 2015 25 ans d’histoire

HTTP 0.9 (port 2784) Non Commercial BUT : Échanger des pages web HTML Thibault SAUSSAC Veille Technologique 2015 HTTP 0.9 (port 2784) Non Commercial BUT : Échanger des pages web HTML Principe Connexion du client. Envoi d’une requête (de méthode GET). Réponse du serveur. Le serveur ferme la connexion (Fin de la réponse) Méthode dans les requêtes : GET Type de réponse : Un fichier HTML NB Le serveur reconnaît de nos jours qu’il a à faire à une requête HTTP 0.9 au fait que la version n’est pas précisée suite à l’URI (contrairement à ce qui se passe pour les versions ultérieures).

HTTP 1.0 (RFC 1945) Premier standard commercialisé Thibault SAUSSAC Veille Technologique 2015 HTTP 1.0 (RFC 1945) Premier standard commercialisé Une connexion / requête Plusieurs connections / Client 3 types de méthode : GET HEAD POST Ajout d’une en-tête de type MIME  METADONNEES (HOST, REFERER, USER-AGENT) NB : Première notion de cache…(Pragma: no-cache) 16 type d’entête General-Header (Section 4.3), Request-Header (Authorization ; Section 10.2 | From ; Section 10.8 | If-Modified-Since ; Section 10.9 | Referer ; Section 10.13 | User-Agent ), Response-Header (Section 6.2), and Entity-Header Host permet de préciser le site web concerné par la requête, ce qui est nécessaire pour un serveur hébergeant plusieurs sites à la même adresse IP (name based virtual host, hôte virtuel basé sur le nom). C’est la seule en-tête réellement importante. – Référer spécifie l’URI du document qui a donné un lien sur la ressource demandée. Cet en-tête permet aux webmaîtres d’observer d’où viennent les visiteurs. – User-Agent spécifie le logiciel utilisé pour se connecter. Il s’agit généralement d’un navigateur Web ou d’un robot d’indexation.

HTTP 1.1 (RFC 2616) Meilleure gestion du cache (Cache-Control) Thibault SAUSSAC Veille Technologique 2015 HTTP 1.1 (RFC 2616) Meilleure gestion du cache (Cache-Control) Apparition des ETags L’entête HOST  OBLIGATOIRE Connexions persistantes ( KEEP-ALIVE ), PIPELINNING Réduit la charge du réseau Accélère le chargement des pages Un ETag est un identifiant unique opaque assigné par le serveur web à chaque version d'une ressource accessible via une URL. Si la ressource accessible via cette URL change, un nouvel ETag différent du précédent sera assigné. Utilisés ainsi, les ETags sont similaires à des empreintes digitales, et peuvent être rapidement comparés pour vérifier si deux versions sont identiques et ainsi savoir si une demande peut être honorée par un cache local ou pas. Etag : chaine de caractère opaque qui sert à la validation des entrées cache Connexions persistantes : la connexion n’est pas immédiatement fermée après une requête, mais reste disponible pour une nouvelle requête.

HTTP 1.1 (RFC 2616) Négociation de contenu Transfert par morceaux Thibault SAUSSAC Veille Technologique 2015 HTTP 1.1 (RFC 2616) Négociation de contenu Entête de type « Accept-Language: fr » Transfert par morceaux Transfert encoding : chuncked Des nouvelles méthodes (OPTION, CONNECT, TRACE, PUT, DELETE) Les User-Agent peuvent ainsi choisir la version la mieux adaptée à leurs capacités. Une des utilisations classiques de ce mécanisme est de proposer une image aussi bien au format GIF que PNG. Ainsi un User-Agent qui ne peut pas afficher le format PNG peut toujours utiliser la version en GIF. Le support des connexions persistantes doit également fonctionner dans les cas où la taille de la ressource n’est pas connue d’avance (comme dans le cas d’une ressource générée dynamiquement par le serveur ou un flux externe au serveur). Pour cela, l’encodage de transfert nommé chunked permet de transmettre la ressource par morceaux consécutifs en précédant chacun par une ligne de texte donnant la taille de celui-ci en hexadécimal. OPTIONS permet d’obtenir les options de communication d’une ressource ou du serveur en général. – CONNECT permet d’utiliser un proxy comme tunnel de communication. – TRACE demande au serveur de retourner ce qu’il a reçu, dans le but de tester et effectuer un diagnostic sur la connexion. – PUT permet de remplacer ou d’ajouter une ressource sur le serveur. L’URI fourni est celui de la ressource en question. A cause de la mauvaise implémentation des méthodes HTTP par les navigateurs, la méthode POST est souvent utilisée en remplacement de la requête PUT, qui devrait être utilisée à la fois pour la création et la mise à jour de ressources. – DELETE permet de supprimer une ressource du serveur. Ces deux dernières méthodes nécessitent généralement un accès privilégié.

SPDY Créé par Google Infrastructure reste inchangée L’idée : Thibault SAUSSAC Veille Technologique 2015 SPDY Créé par Google Infrastructure reste inchangée L’idée : Connections multiples au sein d'une même session TCP. Compression en-têtes (dynamic stream-based), élimination des jugés inutiles. SSL au cœur Serveur peut initier une connexion. Client priorise les requêtes

SPDY, quelques résultats Thibault SAUSSAC Veille Technologique 2015 SPDY, quelques résultats + 27 - 63% de performance

HTTP 2.0 (RFC 7540) 1,4% des sites Adaptation de SPDY Thibault SAUSSAC Veille Technologique 2015 HTTP 2.0 (RFC 7540) 1,4% des sites Adaptation de SPDY Effort sur la compression Huffman Nouvelle extension ALPN Application du multiplexage à toutes les communications avec différents hôtes en même temps. SSL n’est plus au cœur. HUFFMAN : This helps to reduce the potential for attacks on the protocol. ALPN : une option du protocole de sécurité TLS pour permettre à un client TLS d'indiquer au serveur TLS quelle application il veut utiliser TLS/SSL non nécessaire. Par contre, les sites Web qui utilisent le cryptage verront un gain de performances notable sur les sites Web cryptées d’aujourd’hui.

Conclusion Simple et versatile Un développement INCROYABLE Thibault SAUSSAC Veille Technologique 2015 Conclusion Simple et versatile Un développement INCROYABLE A été construit dans le but de ne pas changer HTTP2 fut un changement extraordinaire De nouvelles versions pourront apparaître plus facilement Alors … vers un HTTP 3.0?

Sources https://bulledev.com/resume-performance-web-mars-avril-2015/ Thibault SAUSSAC Veille Technologique 2015 Sources https://bulledev.com/resume-performance-web-mars-avril-2015/ https://fr.wikipedia.org/ https://developers.google.com http://lig-membres.imag.fr/donsez/cours/http.pdf Cours Interconnexions des réseaux RICM4

Avez vous des requêtes (HTTP) ? Thibault SAUSSAC Veille Technologique 2015 Avez vous des requêtes (HTTP) ?