Révisions — Couche Application et HTTP
Résumé du chapitre
Les couches 5, 6 et 7 donnent un sens aux données : la session identifie l’utilisateur indépendamment de MAC/IP/port, la présentation formate, compresse et chiffre, l’application définit les commandes. Deux architectures : client-serveur et pair-à-pair (dont les faiblesses sont la sécurité et l’annonce à tout le réseau à chaque entrée/sortie de nœud). HTTP est sans état, sur TCP/80 : une requête commence par une request line (méthode, URL, version), une réponse par une status line (version, code, phrase). Les cookies rendent l’état à ce protocole sans état — et ouvrent la porte au pistage tiers, encadré par le RGPD. Un proxy réduit la latence en gardant des copies, et le GET conditionnel (
If-Modified-Since→ 304) garantit qu’elles ne sont pas obsolètes.
Séances sources : 2026-09-07 — Rôle de la couche Application · 2026-09-07 — Le protocole HTTP
🃏 Flashcards
Couches 5, 6, 7
Rôle de la couche session (5)
Identifier l’utilisateur indépendamment des couches inférieures (MAC, IP, port), créer et maintenir le dialogue, redémarrer les sessions interrompues
Les 3 rôles de la couche présentation (6)
- Formatage — comment interpréter la série binaire (ASCII, Base64, hexadécimal)
- Compression / décompression
- Chiffrement / déchiffrement
Rôle de la couche application (7)
Déterminer comment les caractères interprétés sont utilisés et définir les commandes applicatives (ex.
GETen HTTP)
FTP gère-t-il la session ?
Non — pas de mécanisme intrinsèque d’identification de session, il s’appuie sur les couches 3 et 4
Que se passe-t-il si l'IP change pendant une session FTP active ?
L’utilisateur doit se reconnecter au serveur FTP
HTTP gère-t-il la session ?
Oui, via les cookies — alors même que le protocole est sans état
FTP n’a pas de gestion de session · HTTP en a une grâce aux cookies
Architectures et protocoles
Les deux architectures applicatives
Client-serveur et pair-à-pair (P2P)
Les deux problèmes du modèle pair-à-pair
- Sécurité — pas d’autorité centrale
- Quand un nœud entre ou sort du réseau, il doit prévenir tous les autres
Que fournit DHCP ?
IP · masque · passerelle par défaut · serveur DNS
Rôle du DNS
Résoudre un nom de domaine en adresse IP
Les 3 protocoles de mail
SMTP (envoi), POP3 et IMAP (réception)
Chaîne complète d'un mail
PC1 ─SMTP─▶ Serveur mail A ─SMTP─▶ Serveur mail B ─IMAP/POP3─▶ PC2SMTP pousse le message (y compris entre serveurs) · POP3/IMAP le tirent vers le client final.
Différence POP3 / IMAP
POP3 télécharge puis supprime du serveur · IMAP synchronise, les messages restent sur le serveur
HTTP — bases
HTTP
HyperText Transfer Protocol — protocole de transfert de pages et objets Web, sur TCP port 80
Pourquoi dit-on que HTTP est « sans état » ?
Le serveur ne conserve aucune information sur les requêtes passées du client
Sur quel protocole de transport repose HTTP et sur quel port ?
TCP, port 80 (HTTPS : TCP port 443)
Les 4 étapes du chargement d'une page Web
- Le navigateur interprète l’URL (protocole · nom du serveur · fichier)
- Résolution DNS puis connexion TCP, envoi du
GET- Le serveur renvoie le code HTML
- Le navigateur interprète le HTML et met en forme la page
Différence URI / URL
URI identifie une ressource (
urn:isbn:0451450523) · URL spécifie l’adresse et le protocole d’accès (https://example.com/...)
Qu'apporte HTTPS par rapport à HTTP ?
Authentification et chiffrement, via TLS (Transport Layer Security), avec le même processus requête/réponse
Messages HTTP
Les 3 éléments de la request line
Méthode HTTP · URL demandée · Version HTTP — ex.
GET /index.html HTTP/1.1
Les 3 éléments de la status line
Version HTTP · Code de statut · Phrase descriptive (reason phrase) — ex.
HTTP/1.1 200 OK
Structure générale d'un message HTTP
<ligne de départ> <en-têtes, un par ligne> <LIGNE VIDE — obligatoire> <corps du message — optionnel>La ligne vide d’un message HTTP est obligatoire, même si le message n’a pas de corps
Différence GET / POST
GET demande et obtient des données · POST transmet des données au serveur (formulaire)
À quoi sert l'en-tête
Referer?Indiquer l’URL depuis laquelle la requête a été initiée — c’est ce qui permet le pistage inter-sites
À quoi sert l'en-tête
Host?Spécifier le nom de domaine du serveur hébergeant la ressource
À quoi sert l'en-tête
ETag?Identifiant unique de version d’une ressource, utilisé pour la mise en cache
À quoi sert
Content-Length?Indiquer la taille du corps du message en octets
À quoi sert
Cache-Control?Transmettre des directives de mise en cache (durée maximale,
no-cache)
Que signifie q=0.5 dans Accept-Language: en-us,en;q=0.5 ?::Un facteur de préférence — l’anglais général est accepté mais pondéré à 0.5, moins prioritaire que en-us
Codes de statut
Les 5 classes de codes de statut HTTP
- 1xx — Informationnel
- 2xx — Succès
- 3xx — Redirection
- 4xx — Erreur côté client
- 5xx — Erreur côté serveur
200
OK — requête reçue, comprise, traitée ; ressource envoyée dans le corps
301
Moved Permanently — nouvelle URI permanente, fournie dans l’en-tête
Location
304
Not Modified — la copie en cache est encore valide (réponse au GET conditionnel), sans corps
404
Not Found — le serveur ne trouve pas la ressource demandée
505
HTTP Version Not Supported — version du protocole non prise en charge
Cookies
Cookie
Petit fichier qu’un site utilise pour suivre et mémoriser les actions ou préférences d’un utilisateur lors de sa navigation
Où trouve-t-on les cookies ? (4 emplacements)
- En-tête
Set-Cookiede la réponse HTTP- En-tête
Cookiede la requête HTTP- Fichier de cookies du navigateur
- Base de données back-end du serveur
Cookie first party
Cookie provenant du site que vous avez choisi de visiter — celui qui fournit le fichier HTML principal
Cookie third party
Cookie provenant d’un site que vous n’avez pas choisi de visiter (régie publicitaire, tracker)
Comment un cookie tiers piste-t-il un utilisateur entre plusieurs sites ?
Le tiers (ex.
AdX.com) est appelé depuis plusieurs sites qui affichent ses publicités. À chaque appel il reçoit :
- son cookie (identifiant unique, ex.
7493)- l’en-tête
Referer(le site en cours de visite)Il accumule donc un historique de navigation transversal, et peut cibler ses publicités.
Les 2 avantages des cookies
Simplifient la navigation et l’achat en ligne · Permettent la personnalisation du contenu
L'inconvénient majeur des cookies
Ils permettent de suivre le comportement de navigation — atteinte à la vie privée, souvent à l’insu de l’utilisateur
Que dit le RGPD (considérant 30) sur les cookies ?
Les identifiants de cookies et les adresses IP, combinés à d’autres informations, permettent de créer des profils et d’identifier des personnes physiques → ce sont des données personnelles
Quelle obligation le RGPD impose-t-il ?
Les cookies non strictement nécessaires au fonctionnement du site nécessitent le consentement explicite de l’utilisateur
Cache et proxy
Cache Web / serveur proxy
Entité réseau qui répond aux requêtes HTTP au nom du serveur d’origine, en conservant sur son propre disque des copies des objets récemment demandés
Quel est le bénéfice principal d'un proxy ?
Améliorer les performances du réseau en réduisant la latence perçue par l’utilisateur (et le trafic)
Quel problème pose la mise en cache ?
La copie en cache peut être obsolète — l’objet a pu être modifié sur le serveur d’origine
Le GET conditionnel
Mécanisme HTTP garantissant la fraîcheur des objets en cache, via l’en-tête
If-Modified-Since: <date>
Réponse à un GET conditionnel si l'objet n'a PAS changé
304 Not Modified— sans corps : le cache sert sa copie, rien n’est retransmis
Réponse à un GET conditionnel si l'objet A changé
200 OKaccompagné des données de l’objet mis à jour
Le GET conditionnel utilise l’en-tête If-Modified-Since et reçoit 304 Not Modified si la copie est encore valide
🔗 Liens
- Séances : 2026-09-07 — Rôle de la couche Application · 2026-09-07 — Le protocole HTTP
- Quiz : Quiz — Couche Application et HTTP
- Suite du chapitre : Révisions — DNS et sockets