Le modèle OSI décompose la communication réseau en sept couches, particulièrement utiles pour identifier les problèmes réseau.
Cet article s'articule autour des points suivants :
Contenu associé
Attaque sur la couche applicative
TCP/IP
UDP
Qu'est-ce que le routage blackhole DDoS ?
Attaques ciblant les cryptomonnaies
Abonnez-vous à theNET, le récapitulatif mensuel de Cloudflare des idées les plus populaires concernant Internet !
Copier le lien de l'article
Le modèle Open Systems Interconnection (OSI) est un modèle conceptuel créé par l'Organisation internationale de normalisation qui permet à divers systèmes de communication de communiquer à l'aide de protocoles standards. En clair, l'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 mise en réseau d'ordinateurs. La base du concept est de diviser un système de communication en sept couches abstraites, chacune empilée sur la dernière.
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. Les attaques sur la couche applicative, par exemple, ciblent la couche 7, tandis que les attaques sur la couche de protocole ciblent les couches 3 et 4.
L'Internet moderne ne suit pas strictement le modèle OSI (il suit plutôt la suite simplifiée de protocoles Internet), mais ce modèle reste très pratique pour dépanner 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 hors ligne pour des milliers d'entre eux, le modèle OSI peut vous aider à résoudre l'incident et à en isoler la source. Une grande quantité de travail inutile peut ainsi être évitée s'il est possible de réduire le problème à une couche spécifique du modèle.
Les sept couches d'abstraction du modèle OSI peuvent être définies comme suit, de haut en bas :
C'est la seule couche qui interagit directement avec les données de l'utilisateur. Les applications logicielles comme les navigateurs web et les clients e-mail se servent de la couche applicative pour initier des communications. Toutefois, il convient de préciser que les applications logicielles client ne font pas partie de la couche applicative. Cette dernière est en fait responsable des protocoles et de la manipulation des données sur lesquels le logiciel s'appuie pour présenter des données significatives à l'utilisateur.
Les protocoles de la couche applicative comprennent le HTTP et le SMTP (Simple Mail Transfer Protocol, protocole simple de transfert de courrier). Ce dernier est l'un des protocoles permettant la communication 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 applicative. En d'autres termes, la couche 6 rend les données présentables pour les applications. La couche de présentation est responsable de la traduction, du chiffrement et de la compression des données.
Deux appareils communicants peuvent utiliser différentes méthodes de codage. La couche 6 est donc chargée de la traduction des données entrantes sous une syntaxe compréhensible par la couche applicative de l'appareil récepteur.
Si les appareils communiquent par l'intermédiaire d'une connexion chiffrée, la couche 6 est chargée d'ajouter le chiffrement du côté de l'expéditeur ainsi que de le décoder du côté du récepteur afin que celui-ci puisse présenter des données lisibles non chiffrées à la couche applicative.
Enfin, la couche de présentation est également responsable de la compression des données qu'elle reçoit de la couche applicative avant de les envoyer à la couche 5. Cette opération permet d'améliorer la vitesse et l'efficacité de la communication, en réduisant la quantité de données à transférer.
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 de 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 de session synchronise également le transfert de données avec les points de contrôle. Ainsi, en cas de transfert d'un fichier de 100 Mo, par exemple, la couche de session peut définir un point de contrôle tous les 5 Mo. Si une déconnexion ou une défaillance survient après le transfert de 52 Mo, la session pourra être reprise à partir du dernier point de contrôle, c'est-à-dire que seuls 50 Mo de données resteront à transférer. Sans les points de contrôle, le transfert dans son ensemble devrait reprendre à zéro.
La couche 4 est responsable de la communication de bout en bout entre les deux appareils. Cette opération inclut la récupération de données auprès de la couche de session et leur découpage en tronçons nommés segments avant de les envoyer à la couche 3. La couche de transport de l'appareil récepteur est chargée de réassembler les segments en données que la couche de session peut consommer.
La couche transport est également responsable du contrôle des flux et des erreurs. Le contrôle de flux détermine une vitesse optimale de transmission afin d'éviter que l'émetteur qui dispose d'une connexion rapide ne submerge un récepteur doté d'une connexion lente. La couche de transport contrôle les erreurs du destinataire en s'assurant que les données reçues sont complètes et en sollicitant une retransmission dans le cas contraire.
Les protocoles de la couche de transport sont le TCP (Transmission Control Protocol, protocole de contrôle de la transmission) et l'UDP (User Datagram Protocol, protocole de datagramme utilisateur).
La couche réseau est chargée de faciliter le transfert de données entre deux réseaux différents. Si les deux appareils communicants se situent sur le même réseau, la couche réseau est inutile. La couche réseau divise les segments de la couche de transport en unités plus petites (appelées paquets) sur l'appareil de l'expéditeur et réassemble ces paquets sur l'appareil récepteur. La couche réseau trouve également le meilleur chemin physique pour que les données atteignent leur destination. C'est ce que l'on nomme le routage.
Les protocoles de la couche réseau sont l'IP, l'ICMP (Internet Control Message Protocol, protocole de message de contrôle sur Internet), l'IGMP (Internet Group Message Protocol, protocole de message de groupe Internet) et la suite IPsec.
La couche de liaison de données est très similaire à la couche réseau, si ce n'est qu'elle a pour objectif de faciliter le transfert de données entre deux appareils sur le même réseau. La couche de liaison de données prend les paquets de la couche réseau et les décomposent en fragments plus petits, nommés trames. À l'instar de la couche réseau, la couche de liaison de données est également responsable du contrôle des flux et des erreurs dans les communications intra-réseau (la couche de transport ne se charge que 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 une 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.
Afin de permettre le transfert d'informations lisibles par l'homme d'un appareil à un autre sur le réseau, les données doivent parcourir les sept couches du modèle OSI sur l'appareil émetteur, puis les sept couches sur l'appareil récepteur.
Prenons un exemple : M. Cooper souhaite envoyer un e-mail à Mme Palmer. M. Cooper compose son message dans une application de messagerie électronique sur son ordinateur portable, puis clique sur « Envoyer ». L'application de courrier va transmettre l'e-mail à la couche applicative, qui choisira un protocole (SMTP) et transmettra les données à la couche de présentation. Cette dernière compressera alors les données, puis sollicitera la couche de session, qui initialisera la session de communication.
Les données atteindront alors la couche de transport de l'expéditeur où elles seront segmentées, puis ces segments seront divisés en paquets au niveau de la couche réseau, qui seront encore décomposés en trames au niveau de la couche de liaison de données. Cette dernière transmettra ensuite ces trames à la couche physique, qui convertira les données en un flux binaire de 0 et de 1, avant de les envoyer par le biais d'un support physique, comme un câble.
Une fois que l'ordinateur de Mme Palmer reçoit le flux binaire par l'intermédiaire d'un support physique (son Wi-Fi, par exemple), les données emprunteront la même série de couches sur son appareil, mais dans l'ordre inverse. La couche physique convertira tout d'abord le flux binaire de 0 et de 1 en trames, qui seront transmises à la couche de liaison de données. Celle-ci réassemblera ensuite les trames en paquets pour la couche réseau, qui formera des segments à partir des paquets et les enverra à la couche de transport, qui reconstituera les segments afin de constituer un élément de donnée.
Les données seront ensuite transférées à la couche de session de l'appareil récepteur, qui les transmettra à la couche de présentation, puis mettra fin à la session de communication. La couche de présentation supprimera alors la compression et transmettra les données brutes à la couche applicative. Cette dernière communiquera ensuite les données lisibles par l'humain au logiciel de messagerie de Mme Palmer, qui lui permettra de lire le courrier électronique de M. Cooper sur l'écran de son ordinateur portable.