Le modèle OSI décompose la communication réseau en sept couches, particulièrement utiles pour identifier les problèmes affectant les réseaux.
Cet article s'articule autour des points suivants :
Contenu associé
Attaque sur la couche application
TCP/IP
UDP
Qu'est-ce que le routage vers un trou noir des attaques DDoS ?
Attaques ciblant les cryptomonnaies
Abonnez-vous à theNET, le récapitulatif mensuel par Cloudflare des informations les plus populaires sur Internet !
Copier le lien de l'article
Créé par l'Organisation internationale de normalisation, le modèle conceptuel OSI (Open Systems Interconnection) permet à divers systèmes de communication de communiquer à l'aide de protocoles standard. En termes simples, le modèle OSI fournit une norme permettant à différents systèmes informatiques de communiquer entre eux.
Le modèle OSI peut être considéré comme un langage universel pour la connectivité des réseaux informatiques. Le concept est fondé sur la division d'un système de communication en sept couches abstraites, chacune empilée sur la précédente.
Chaque couche du modèle OSI assure un rôle particulier et communique avec les couches au-dessus et en dessous d'elle. Les attaques DDoS ciblent des couches spécifiques d'une connexion réseau, tandis que les attaques sur la couche application ciblent la couche 7, et les attaques sur la couche protocole les couches 3 et 4.
Bien que l'Internet moderne ne suive pas strictement le modèle OSI (il suit davantage la suite de protocoles Internet, plus simple), le modèle OSI reste très utile pour résoudre les problèmes réseau. Que le problème concerne un utilisateur qui ne parvient pas à connecter son ordinateur portable à Internet ou un site web inaccessible pour des milliers d'utilisateurs, le modèle OSI peut aider à analyser le problème et à en isoler la source. Si le problème peut être circonscrit à une couche spécifique du modèle, cela permet d'éviter beaucoup de travail inutile.
Les sept couches d'abstraction du modèle OSI peuvent être définies comme suit, de haut en bas :
Il s'agit de la seule couche qui interagit directement avec les données provenant de l'utilisateur. Les applications logicielles, telles que les navigateurs web et les clients de messagerie, s'appuient sur la couche application pour initier les communications. Toutefois, il convient de préciser que les applications logicielles clientes ne font pas partie de la couche application ; celle-ci est plutôt responsable des protocoles et de la manipulation des données nécessaires au logiciel pour présenter des données pertinentes à l'utilisateur.
Les protocoles de la couche application comprennent HTTP et SMTP (Simple Mail Transfer Protocol), l'un des protocoles permettant les communications par courrier électronique.
Cette couche est principalement responsable de la préparation des données, afin qu'elles puissent être utilisées par la couche application. En d'autres termes, la couche 6 rend les données présentables pour les applications. La couche présentation est responsable de la traduction, du chiffrement et de la compression des données.
Deux appareils communiquant entre eux peuvent utiliser des méthodes de codage différentes. La couche 6 est donc chargée de traduire les données entrantes dans une syntaxe compréhensible par la couche application de l'appareil recevant les données.
Si les appareils communiquent par l'intermédiaire d'une connexion cryptée, la couche 6 est chargée d'ajouter le chiffrement côté expéditeur et de décoder le chiffrement côté destinataire, afin de présenter des données non chiffrées et lisibles à la couche application.
Enfin, la couche présentation est également chargée de compresser les données qu'elle reçoit de la couche application avant de les transmettre à la couche 5. Cette opération permet d'améliorer la vitesse et l'efficacité de la communication en réduisant au minimum la quantité de données transférées.
Il s'agit de la couche responsable de l'ouverture et de la fermeture de la communication entre les deux appareils. L'intervalle entre l'ouverture et la fermeture de la communication est appelé session. La couche session garantit que la session reste ouverte suffisamment longtemps pour transférer toutes les données échangées, puis ferme rapidement la session afin d'éviter le gaspillage de ressources.
La couche session synchronise également le transfert de données avec les points de contrôle. Lors du transfert d'un fichier de 100 Mo, par exemple, la couche session peut définir un point de contrôle tous les 5 Mo. En cas de déconnexion ou de défaillance après le transfert de 52 Mo, la session peut être reprise à partir du dernier point de contrôle, ce qui signifie que seuls 50 Mo de données resteront à transférer. Sans les points de contrôle, le transfert dans son ensemble devrait reprendre depuis le début.
La couche 4 est responsable de la communication de bout en bout entre les deux appareils. Cela inclut la récupération des données de la couche session et leur division en fragments appelés segments avant leur transmission à la couche 3. La couche transport sur l'appareil recevant les données est chargée de réassembler les segments en données utilisables par la couche session.
La couche transport est également chargée du contrôle des flux et des erreurs. Le contrôle de flux détermine une vitesse de transmission optimale afin d'éviter qu'un appareil émetteur doté d'une connexion rapide ne submerge un appareil récepteur doté d'une connexion lente. La couche transport contrôle les erreurs sur l'appareil recevant les données, en assurant que les données reçues sont complètes et en demandant une retransmission, dans le cas contraire.
Les protocoles de la couche de transport sont TCP (Transmission Control Protocol) et UDP (User Datagram Protocol).
La couche réseau est chargée de faciliter le transfert de données entre deux réseaux différents. Si les deux appareils communiquant entre eux se situent sur le même réseau, la couche réseau est inutile. La couche réseau divise les segments de la couche transport en unités plus petites, appelées paquets, sur l'appareil de l'expéditeur, et réassemble ces paquets sur l'appareil recevant les données. La couche réseau trouve également le meilleur chemin physique pour assurer que les données atteignent leur destination. Cette opération est appelée routage.
Les protocoles de la couche réseau sont IP, ICMP (Internet Control Message Protocol), IGMP (Internet Group Message Protocol) et la suite de protocoles IPsec.
La couche liaison de données est très similaire à la couche réseau, si ce n'est qu'elle facilite le transfert de données entre deux appareils sur le même réseau. La couche liaison de données prend les paquets de la couche réseau et les décompose en fragments plus petits, appelés trames. À l'instar de la couche réseau, la couche liaison de données est également responsable du contrôle des flux et des erreurs dans les communications intra-réseau. La couche transport, quant à elle, est uniquement chargée du contrôle des flux et des erreurs pour les communications inter-réseaux.
Cette couche inclut les équipements physiques impliqués dans le transfert de données, comme les câbles et les commutateurs. C'est également la couche où les données sont converties en séquence binaire, c'est-à-dire en chaîne de 0 et de 1. La couche physique des deux appareils doit également convenir d'une convention de signal, afin que les 1 puissent être distingués des 0 sur les deux appareils.
Pour permettre le transfert d'informations lisibles par l'humain d'un appareil à un autre sur un réseau, les données doivent traverser vers le bas les sept couches du modèle OSI sur l'appareil émetteur, puis traverser vers le haut, cette fois, les sept couches sur l'appareil récepteur.
Prenons un exemple : M. Cooper souhaite envoyer un e-mail à Mme Palmer. M. Cooper rédige son message dans une application de messagerie électronique sur son ordinateur portable, puis clique sur « Envoyer ». L'application de courrier électronique transmet l'e-mail à la couche application, qui choisit un protocole (SMTP), puis transmet les données à la couche présentation. La couche présentation compresse alors les données, puis sollicite la couche session, qui initialise la session de communication.
Les données parviennent alors à la couche transport de l'expéditeur, où elles sont segmentées. Ces segments sont ensuite divisés en paquets au niveau de la couche réseau, puis sont encore divisés en trames au niveau de la couche liaison de données. La couche liaison de données transmet ensuite ces trames à la couche physique, qui convertit les données en un flux binaire de 0 et de 1, qu'elle transmet ensuite par le biais d'un support physique, comme un câble.
Lorsque l'ordinateur de Mme Palmer reçoit le flux binaire par l'intermédiaire d'un support physique (son WiFi, par exemple), les données traversent la même suite de couches sur son appareil, mais dans l'ordre inverse. La couche physique convertit tout d'abord le flux binaire de 0 et de 1 en trames, qui sont transmises à la couche liaison de données. La couche liaison de données réassemble ensuite les trames sous forme de paquets pour la couche réseau, qui forme des segments à partir des paquets, puis transmet ceux-ci à la couche transport, qui reconstitue les segments sous la forme d'un fragment de données.
Les données sont ensuite transférées à la couche session de l'appareil récepteur, qui les transmet à la couche de présentation, avant de mettre fin à la session de communication. La couche présentation annule alors la compression, puis transmet les données brutes à la couche application. La couche application communique ensuite les données lisibles par l'humain au logiciel de messagerie de Mme Palmer, qui lui permet de lire l'e-mail de M. Cooper sur l'écran de son ordinateur portable.