Pour réduire leur complexité de conception, la plupart des réseaux sont organisés en séries de couches, chacune étant construite sur la précédente. Le nombre de couches, leur nom et leur fonction varient selon les réseaux. Néanmoins, en 1984, l'organisme ISO a défini un modèle de référence en sept couches, nommé modèle OSI, destiné à normaliser les échanges entre deux machines. Ce modèle définit sept couches de communication et précise les fonctions associées à chacune d'elles. L'objet de chaque couche est d'offrir certains services aux couches plus hautes. Pour qu'une couche de la machine émettrice puisse envoyer une commande ou des données à la couche équivalente de la machine réceptrice, elle doit constituer une information et lui faire traverser toutes les couches inférieures, chacune d'elles ajoutant un en-tête spécifique à ce qui devient une sorte de train. A l'arrivée, cette information est décodée, la commande ou les données sont libérées:
Modèle hiérarchique en couches OSI
Le modèle OSI décompose et spécifie les fonctions propres à la communication à travers sept couches logicielles. La couche n d'une machine gère la communication avec la couche n d'une autre machine. Les règles et conventions utilisées pour cette conversation sont connues sous le nom de protocole de la couche n. Il s'agit d'un ensemble de règles et de procédures à respecter entre les couches correspondantes pour émettre et recevoir des données sur un réseau.
Les protocoles de communication sont fréquemment utilisés dans la vie de tous les jours: par exemple, lorsqu'un homme est présenté à une femme, celle-ci peut décider de lui tendre la main. A lui ensuite de choisir entre une poignée de mains ou un baisemain suivant qu'il s'agit d'une avocate zurichoise présentée dans une réunion professionnelle ou d'une comtesse italienne paraissant dans un bal officiel. Toute violation du protocole rendra la communication extrêment difficile, voire impossible...
Le rôle et les protocoles utilisés dans chacune des 7 couches du modèle OSI sont décrits dans la vidéo suivante dont le visionnage est recommandé mais pas indispensable:
Rôle des 7 couches proposées par le modèle OSI
Dans le cas d'un réseau informatique, lorsqu'une couche veut dialoguer avec sa couche homologue située sur une autre machine, elle n'a pas d'autre choix que de faire redescendre l'information en ajoutant des consignes pour la couche destinataire. Au passage d'une couche n vers la couche inférieure n-1, le flot de données à transmettre est enrichi de champs supplémentaires placés en début (un en-tête) et/ou en fin (un suffixe). Ces informations supplémentaires renseignent sur l'unité de données au niveau de la couche qui les a émises (ici n). Elles serviront, lors de la réception par la couche de même niveau située sur la machine destinataire, au traitement que cette couche devra effectuer. Ces champs ajoutés contiennent les adresses source et destination, la longueur du paquet transmis, des bits de priorité, l'identification du protocole de niveau supérieur (n+1) pour le décodage, des numéros d'acquittement, etc.
Encapsulation des données transmises entre deux couches homologues
Ce processus d'encapsulation des données transférées est également utilisé lors de l'acheminement du courrier postal. En effet, pour être acheminée à New York, une missive envoyée par un correspondant de Berne doit tout d'abord être insérée dans une enveloppe pour être postée. Cette enveloppe sera ensuite placée dans un sac postal qui sera lui-même transporté dans un conteneur par avion. A l'arrivée, le sac postal sera extrait du conteneur, l'enveloppe extraite du sac et déposée dans la boîte aux lettre du destinataire qui en sortira la lettre.
Après avoir vu les principes de l'architecture en couches, nous pouvons passer à l'analyse du modèle TCP/IP couramment utilisé sur Internet. En effet, bien que le modèle OSI sert de référence pour décrire l'architecture en couches d'un réseau, son implémentation est très rare. Le modèle TCP/IP s'est progressivement imposé comme modèle de référence en lieu et place du modèle OSI. Ceci est dû au fait que, contrairement au modèle OSI, le modèle TCP/IP est né d'une implémentation, en l'occurrence sur l'ancêtre d'Internet qu'est le réseau ARPANET. La normalisation est venue par la suite.
Le modèle TCP/IP, inspiré du modèle OSI, reprend l'approche modulaire d'une architecture multicouche:
Comparaison des modèles OSI et TCP/IP
Chacune des 4 couches définie par le modèle TCP/IP a un rôle bien précis, allant du transport du signal codant les données à la présentation des informations pour l'application destinataire. Ces objectifs sont atteints grâce à l'utilisation de différents protocoles de communication:
Lors d'une transmission d'informations au travers d'un réseau basé sur le modèle TCP/IP, les données traversent chacune des couches de la machine émettrice. A chaque couche, un en-tête est ajouté au flux de données pour garantir sa transmission. Au niveau de la machine réceptrice, lors du passage dans chaque couche, l'en-tête est lu, puis supprimé de telle sorte qu'à la réception par la couche application, le message soit dans son état originel. Comme un en-tête est rajouté ou enlevé lors du passage dans chaque couche, le flux de données change d'aspect au fil de son transit. Afin d'indiquer à quelle couche fait référence un flux de données, son appellation change en fonction de la couche dans laquelle il se trouve:
L'encapsulation des données peut dès lors être comparée au mécanisme des poupées russes: le paquet de données contenu dans une trame représente l'une de ces couches et à l'intérieur même du paquet se trouvent d'autres couches:
La vidéo suivante montre comment des données de la couche application sont encapsulées à travers les différentes couches TCP/IP pour passer d'un hôte A à un hôte B au travers d'Internet:
Transmission de paquets au travers d'Internet
Analysons brièvement le contenu de chacune des poupées russes contenu dans une trame Ethernet...