HyperText Transfer Protocol (HTTP)

30 Sep 2021 30 Sep 2021 1755 vues ESSADDOUKI Mostafa 4 min de lecture
Réseaux informatiques et Internet
1 Communication des données 2 Classification et topologies du réseau informatique 3 Types de réseaux informatiques 4 Introduction à l'Internet 5 Normes RFC Internet 6 Organisations internationales d'Internet
Modèles réseaux
7 Principes de la superposition de protocoles 8 Modèle TCP/IP 9 Principes d'encapsulation et décapsulation 10 Méthodes d'adressage dans les couches TCP/IP 11 Le modèle OSI
Couche application
12 Introduction et services fournies par la couche application 13 Architectures d'applications réseaux 14 Services fournis par la couche transport à la couche applications 15 Protocoles de couche d'application 16 HyperText Transfer Protocol (HTTP) 17 Système de noms de domaine (DNS) 18 Le protocole de transfert de fichiers (FTP) 19 Simple Mail Transfer Protocol (SMTP) 20 Simple Network Management Protocol (SNMP) 21 Dynamic Host Configuration Protocol (DHCP)
Couche de transport
22 Introduction et services offerts par la couche de transport 23 Concepts de la couche de transport 24 Le protocole de transport orienté connexion (TCP) 25 Le protocole de transport sans connexion (UDP)
Couche réseau (ou internet)
26 Introduction et services fournis par la couche réseau 27 Commutation de paquets 28 Adressage et livraison 29 Protocole Internet (IP) 30 Adressage IP 31 Protocole de résolution d'adresse (ARP) 32 Internet Control Message Protocol (ICMP) 33 Sous-réseaux ou subnetting 34 Méthode de masque de sous-réseau pour le subnetting 35 Méthode CIDR pour les sous-réseaux 36 Introduction au Routage IP 37 Le processus de routage IP 38 Concepts de table de routage 39 Algorithmes de routage dynamique 40 Routage sur les réseaux complexes 41 Internet Protocole version v6 (IPv6)
Couche liaison de données
42 Introduction et services fournis par la couche liaison de données 43 Adressage de la couche liaison de données 44 Détection et correction des erreurs 45 Schémas de codage de données 46 Les fonctions de contrôle de liaison de données (DLC) 47 Protocoles de couche de liaison de données 48 Contrôle de liaison de données de haut niveau (HDLC) 49 Protocole point à point (PPP) 50 Contrôle d'accès aux médias (MAC) 51 Méthode d'Accès aléatoire pour le contrôle d'accès aux médias 52 Méthode d'Accès contrôlé pour le contrôle d'accès aux médias 53 Protocoles de canalisation pour le contrôle d'accès aux médias 54 Architectures réseaux 55 Réseaux locaux (LAN) 56 Réseaux étendus (WAN) 57 Les dispositifs de connexion 58 Réseaux locaux virtuels (VLAN)
Couche physique
59 Données et signaux - couche physique 60 Transmission numérique des données 61 Transmission analogique 62 Modes de transmission de données 63 Supports de transmission de données

L'HyperText Transfer Protocol (HTTP), le protocole de couche application du Web, est au cœur du Web. Il est défini dans [RFC 1945], [RFC 7230] et [RFC 7540]. HTTP est implémenté dans deux programmes : un programme client et un programme serveur. Le programme client et le programme serveur, s'exécutant sur des systèmes d'extrémité différents, communiquent entre eux en échangeant des messages HTTP. HTTP définit la structure de ces messages et comment le client et le serveur échangent les messages.

Une page Web (également appelée document) est constituée d'objets. Un objet est simplement un fichier, tel qu'un fichier HTML, une image JPEG, un fichier Javascript, un fichier de feuille de style CSS ou une vidéo, qui est adressable par une seule URL. La plupart des pages Web se composent d'un fichier HTML de base et de plusieurs objets référencés. Par exemple, si une page Web contient du texte HTML et cinq images JPEG, la page Web comporte six objets : le fichier HTML de base plus les cinq images. Le fichier HTML de base référence les autres objets de la page avec les URL des objets. Chaque URL a deux composants : le nom d'hôte du serveur qui héberge l'objet et le nom de chemin de l'objet.

HTTP définit comment les clients Web demandent des pages Web aux serveurs Web et comment les serveurs transfèrent les pages Web aux clients.

Lorsqu'un utilisateur demande une page Web (par exemple, clique sur un lien hypertexte), le navigateur envoie des messages de demande HTTP pour les objets de la page au serveur. Le serveur reçoit les demandes et répond avec des messages de réponse HTTP qui contiennent les objets.

HTTP utilise TCP comme protocole de transport sous-jacent. Le client HTTP initie d'abord une connexion TCP avec le serveur. Une fois la connexion établie, le navigateur et les processus serveur accèdent à TCP via leurs interfaces socket. Le client envoie des messages de requête HTTP dans son interface socket et reçoit des messages de réponse HTTP de son interface socket. De même, le serveur HTTP reçoit des messages de requête de son interface socket et envoie des messages de réponse dans son interface socket. Une fois que le client envoie un message dans son interface socket, le message n'est plus entre les mains du client et est « entre les mains » de TCP.

Rappelons que TCP fournit un service de transfert de données fiable vers HTTP. Cela implique que chaque message de requête HTTP envoyé par un processus client arrive finalement intact au serveur ; de même, chaque message de réponse HTTP envoyé par le processus serveur arrive finalement intact au client. Ici, nous voyons l'un des grands avantages d'une architecture en couches. HTTP n'a pas à se soucier des données perdues ou des détails de la façon dont TCP récupère de la perte ou de la réorganisation des données au sein du réseau. C'est le travail de TCP et des protocoles dans les couches inférieures de la pile de protocoles.

La version originale de HTTP s'appelle HTTP/1.0 et remonte au début des années 1990 [RFC 1945]. À partir de 2020, la majorité des transactions HTTP ont lieu sur HTTP/1.1 [RFC 7230]. Cependant, de plus en plus de navigateurs et de serveurs Web prennent également en charge une nouvelle version de HTTP appelée HTTP/2 [RFC 7540].

Discussion (0)

Soyez le premier à laisser un commentaire !

Laisser un commentaire

Votre commentaire sera visible après modération.