Internet est composé de millions d’ordinateurs dans le monde entier qui communiquent entre eux. Ces ordinateurs utilisent différents matériels, différents systèmes d’exploitation, différents programmes. Mais quelle que soit la diversité des machines, elles doivent être en mesure d’échanger des données entre elles de manière fiable. Dans le cas contraire, Internet ne fonctionnerait tout simplement pas. Pour que vous puissiez comprendre les ordinateurs du réseau, il existe les protocoles Internet. Les protocoles sont des langages à structure simple qui régissent l’échange de données, indépendamment de la manière dont un ordinateur donné est configuré et du matériel ou des logiciels qu’il utilise. Internet est basé sur une série de protocoles de ce type, regroupés sous le nom de famille de protocoles Internet. Cette famille se compose de nombreux protocoles différents qui ont chacun une fonction bien définie, comme l’envoi d’e-mails ou l’accès au réseau.
Protocole TCP/IP
Le membre le plus important de la famille est sans doute le TCP/IP, que vous avez probablement déjà croisé. Cette abréviation signifie « Transmission Control Protocol » et « Internet Protocol ». Il s’agit donc de deux protocoles qui régissent d’une part l’accès général à Internet et d’autre part le transport des données sur le réseau. TCP/IP a été développé en 1973 et constitue en quelque sorte l’épine dorsale de l’ensemble d’Internet. Aujourd’hui, TCP/IP est de loin la principale méthode d’envoi et de réception de données sur Internet. À moins que vous ne vous soyez aventuré dans les bas-fonds de la technologie des réseaux, vous n’avez pas vraiment besoin de connaître en détail le fonctionnement des différents protocoles de la famille des protocoles Internet. Vous devez toutefois savoir qu’Internet n’est pas basé sur un protocole unique, mais sur une multitude de protocoles qui se superposent par couches. Lorsque vous travaillez dans votre navigateur ou votre programme de messagerie, vous vous trouvez dans la couche application. C’est de loin la couche la plus importante pour nous.
Protocoles HTTP, FTP ou SMTP
C’est ici que sont rassemblés les protocoles tels que HTTP, FTP ou SMTP, auxquels les concepteurs de sites web et les utilisateurs ordinaires sont régulièrement confrontés. Les protocoles de la couche application communiquent avec les protocoles de la couche transport. On y trouve par exemple TCP. La couche de transport interagit avec la couche Internet, dont fait partie le protocole Internet IP proprement dit. La version de ce protocole en vigueur depuis de nombreuses années, IP version 4 ou IPv4, est actuellement remplacée par son successeur plus performant, IPv6, c’est-à-dire IP version 6. Enfin, les protocoles de la couche d’accès au réseau s’occupent de l’accès physique au réseau. On y trouve par exemple le WLAN ou l’Ethernet. Si vous n’êtes pas en train d’écrire un programme lié au réseau, par exemple pour développer un client de chat ou de streaming vidéo à partir de zéro, vous n’avez pas vraiment besoin de vous occuper des détails des protocoles. Gardez simplement à l’esprit que l’ensemble de la communication sur Internet est défini par une multitude de protocoles qui s’appuient les uns sur les autres, couche par couche, et dans lesquels les protocoles d’une couche communiquent avec les protocoles des couches voisines. Ce système sophistiqué de protocoles interconnectés permet à des millions d’ordinateurs dans le monde de communiquer aussi facilement qu’ils le font sur Internet. Que signifie ici « ordinateur » ? Tout, absolument tout appareil qui prend en charge ces protocoles peut faire partie d’Internet. Qu’il s’agisse d’imprimantes ou de caméras, de téléviseurs ou de réfrigérateurs, de machines à café ou d’équipements de contrôle complexes dans l’industrie. L’aspect le plus fascinant d’Internet est peut-être le fait que cette communication sans frontières fonctionne. Et c’est à la famille des protocoles Internet que nous le devons.
Le protocole de transfert hypertexte (HTTP)
Vous vous êtes peut-être déjà demandé à quoi servait le HTTP dans une adresse Web. HTTP signifie Hypertext Transfer Protocol. HTTP est le protocole standard pour le transport de toutes les données sur le World Wide Web. N’oubliez pas qu’un protocole ne fait rien d’autre que de définir la structure de l’échange de données entre deux appareils. Dans ce cas, le navigateur web est un client HTTP et le serveur web, qui tient à disposition la page web demandée, est un serveur HTTP. Lors de la consultation d’une page web, le navigateur envoie une requête HTTP au serveur, qui répond par un HTTP Response. En règle générale, cette réponse contient les données demandées par le navigateur.
Le protocole le plus important pour les web designer est le HTTP. Ce protocole a une particularité : son absence d’état. L’absence d’état signifie qu’une requête HTTP est oubliée par le navigateur et le serveur dès que le navigateur l’a envoyée et que le serveur a répondu. Cette particularité de HTTP présente des avantages et des inconvénients. Parmi les avantages, on compte sans aucun doute le fait que le protocole est extrêmement simple à mettre en œuvre.
En effet, cette simplicité est sans doute la raison principale de l’immense succès de HTTP et donc du World Wide Web. Imaginez un instant ce qui se passerait si un serveur web devait enregistrer et mémoriser toutes les demandes HTTP. Il serait complètement saturé en très peu de temps et le web s’effondrerait pratiquement instantanément à cause de la surcharge. Mais l’absence d’état de HTTP a aussi des inconvénients et des conséquences pratiques. En effet, si aucune requête n’est rappelée, l’enregistrement durable de fichiers et de données, par exemple pour les connexions ou les paniers d’achat, n’est pas possible avec le HTTP pur. Il faudrait donc trouver d’autres moyens. La plus courante est l’utilisation de cookies, c’est-à-dire de petits fichiers texte qui sont déposés dans le navigateur et qui permettent au serveur web de les reconnaître. Mais JavaScript ou la gestion des sessions, dans un langage comme PHP sur le serveur, sont également des méthodes qui pallient les inconvénients de l’absence d’état.
Vous avez probablement déjà vu l’abréviation HTTPS dans la barre d’adresse de votre navigateur. HTTPS signifie Hypertext Transfer Protocol Secure. Lors du développement de HTTP, la sécurité des écoutes n’a joué aucun rôle. Le protocole HTTP ne prévoit tout simplement rien de tel. Aujourd’hui, on voit les choses un peu différemment et on a donc développé HTTPS. HTTPS complète le simple HTTP par une couche de protocole supplémentaire, qui doit permettre le transport de données via HTTP sans risque d’interception. HTTPS est utilisé chaque fois que la sécurité des données joue un rôle, par exemple lors d’achats sur Internet, de services bancaires en ligne, d’inscriptions sur Internet et autres. HTTPS est utilisé chaque fois que vous souhaitez transmettre des données qui ne doivent pas être interceptées. HTTPS exige davantage de calculs de la part du serveur et du client et ralentit l’échange de données. C’est pourquoi, au début, HTTPS n’était utilisé que dans les cas où il était absolument nécessaire, par exemple pour les services bancaires en ligne. Mais entre-temps, les ordinateurs sont devenus si puissants que l’augmentation de la charge de travail n’a plus d’importance. Ces derniers temps, de plus en plus de sites web ont adopté le principe du cryptage HTTPS pour leurs connexions de données.
Le protocole FTP
Outre le protocole HTTP, il existe d’autres protocoles Internet pour l’échange de données. Ils se distinguent par leurs tâches ou les types de données qu’ils transportent. Il s’agit notamment de FTP. Le FTP ou File Transfer Protocol régit le transfert de fichiers. Grâce à FTP, vous téléchargez par exemple les données du site web que vous avez développé localement sur votre ordinateur dans un répertoire du serveur web. Le FTP est également capable de gérer des fichiers très volumineux. C’est quelque chose que vous ne pouvez faire avec HTTP qu’avec beaucoup de difficultés, voire pas du tout. FTP ne se connecte pas au web, mais à un serveur de fichiers qui a été développé précisément pour cette tâche spécifique, c’est-à-dire le transport de données volumineuses sur Internet. Chaque fois que vous souhaitez échanger des fichiers volumineux entre un ordinateur et un serveur, vous devriez utiliser FTP.
Protocole Simple Mail Transfer Protocol, appelé SMTP
L’envoi d’e-mails est régi par le Simple Mail Transfer Protocol, appelé SMTP. SMTP s’occupe de faire arriver vos e-mails dans votre boîte aux lettres. SMTP a été développé au début des années 70, donc bien avant le World Wide Web. C’est l’un des protocoles les plus anciens et les plus importants sur lesquels repose Internet. A cela s’ajoute la boîte aux lettres, c’est-à-dire que la réception proprement dite de votre courrier se fait par POP3, le Post Office Protocol Version 3. Pendant longtemps, le courrier électronique a été organisé avec ce duo SMTP – POP3. SMTP pour l’envoi, POP3 pour la réception des e-mails. Ces dernières années, cela a quelque peu changé.
SMTP est toujours responsable de l’envoi, mais l’accès à la boîte aux lettres est aujourd’hui principalement organisé avec IMAP. IMAP signifie Internet Message Access Protocol, et permet de gérer les e-mails directement sur le serveur de messagerie.
Avec POP3, les e-mails sont copiés dans la boîte aux lettres locale de votre programme de messagerie sur votre ordinateur lorsqu’ils sont consultés depuis la boîte aux lettres sur le serveur, puis supprimés sur le serveur.
Avec IMAP, la situation est différente. Ici, les e-mails sont certes également copiés à la demande dans la boîte aux lettres locale, mais ils restent sur le serveur. Si un courrier est lu sur l’ordinateur, il est également marqué comme lu sur le serveur. Si vous déplacez un mail vers la boîte aux lettres, cette modification est également effectuée sur le serveur. Ainsi, vous pouvez lire et traiter vos e-mails avec différents appareils, par exemple votre programme de messagerie sur l’ordinateur, avec le programme de messagerie sur votre smartphone, ou encore avec un navigateur web n’importe où sur n’importe quel ordinateur du monde, vous pouvez donc toujours lire et traiter vos e-mails avec tous ces appareils, et vous avez toujours l’état actuel de vos e-mails sur chaque appareil.
Real-Time Protocol, RTP
Et enfin, il y a aussi le Real-Time Protocol, RTP. Il s’occupe de l’échange de fichiers audio et vidéo en temps réel. Ce protocole est utilisé par exemple dans les clients de chat, pour la téléphonie sur Internet, c’est-à-dire la voix sur IP, ou pour le streaming vidéo sur Internet.