Le modèle OSI (Open Systems Interconnection) est une norme de communication réseau essentielle pour tous les systèmes informatiques. Il s'agit d'un modèle conceptuel qui décrit le fonctionnement théorique de tout réseau en sept couches distinctes. Comprendre ce modèle est crucial pour quiconque travaille dans le domaine de l'informatique, car il permet de structurer les discussions sur les protocoles et de différencier les technologies.

Qu'est-ce que le modèle OSI ?

Le modèle OSI, normalisé par l'ISO (International Standard Organization) dans les années 1980 (ISO 7498), sert de cadre de référence pour l'interconnexion des systèmes ouverts. Il ne s'agit pas d'une technologie physique ou logicielle spécifique, mais plutôt d'une architecture à laquelle les technologies doivent se conformer pour permettre l'émergence d'un réseau global fonctionnel. Ce modèle décompose la complexité des communications réseau en couches distinctes, permettant de traiter chaque aspect de manière isolée et organisée. Le découpage en couches permet de "séparer les préoccupations", c'est-à-dire de traiter un aspect particulier de la problématique générale (identifier une machine, envoyer des données, formater les données, etc.).

Définition des termes clés : Service, Protocole et Interface

Dans le contexte du modèle OSI, il est important de comprendre les définitions des termes suivants :

  • Service: Les fonctions réalisables par une couche, représentées par un ensemble de commandes ou primitives.
  • Protocole: Les règles d'échange entre les couches, conçues pour réaliser un service spécifique.
  • Interface: Le point d'accès concret au service, spécifiant comment utiliser le protocole pour y accéder.

Les couches basses rendent des services aux couches plus hautes, créant une hiérarchie de dépendances et de fonctionnalités.

Les sept couches du modèle OSI

Le modèle OSI est divisé en sept couches, chacune ayant une fonction spécifique dans le processus de communication réseau. Elles sont généralement présentées de haut en bas, de la couche 7 (Application) à la couche 1 (Physique).

Lire aussi: Choisir les meilleures couches de piscine pour bébés

Couche 7 : Application

La couche application est la couche la plus proche de l'utilisateur final. Elle ne contient pas les applications elles-mêmes, mais fournit des services à celles-ci. Elle offre un ensemble de fonctionnalités standard, notamment le transfert de fichiers. Les applications avec lesquelles les utilisateurs interagissent directement, comme les navigateurs web (Google Chrome, Firefox, Safari, etc.), la messagerie électronique, le protocole FTP ou d'autres applications autonomes comme Skype et Outlook, sont des exemples d'applications de la couche 7. On peut rattacher à la couche 7 les protocoles de communication tels que HTTP pour consulter des fichiers sur le Web ou FTP pour transférer des fichiers. Elle crée une interface directe via des applications réseau.

Couche 6 : Présentation

La couche présentation est responsable du codage des données à communiquer. Les couches 1 à 5 transportent des données brutes sans se préoccuper de leur signification. La couche présentation transforme les données (image, texte, vidéo, etc.) en un format transportable par les couches inférieures. Elle négocie également avec le destinataire pour élire un format commun et assurer que les deux systèmes se comprennent. Optionnellement, cette couche assure le chiffrement des données, les rendant inintelligibles pour tous sauf le destinataire. Elle a pour rôle d’établir une syntaxe pour la communication entre les applications. C'est en quelque sorte un traducteur dans un langage commun à toutes les applications. En général, c'est au niveau de cette couche qu'est effectuée la préparation ou la traduction du format d'application au format de réseau, ou du format de réseau au format d'application.

Couche 5 : Session

La couche session agit comme un chef d'orchestre des discussions entre les différents acteurs. Elle gère, par exemple, les tours de parole. Elle synchronise les communications émanant de différentes sources en organisant les connexions de niveau 4. Aussi, si une communication est interrompue et que la couche 4 ne peut pas corriger les erreurs (exemple : coupure longue d’électricité), la couche 5 permet de reprendre la communication à l'endroit où elle s'est arrêtée. Pour que deux dispositifs, ordinateurs ou serveurs, puissent « parler » entre eux, il faut créer une session, et cela se passe au niveau de la couche du même nom. Les fonctions de la couche 5 impliquent la configuration, la coordination (le temps pendant lequel le système doit attendre une réponse, par exemple) et la terminaison entre les applications à chaque fin de session. Elle permet l'établissement, le maintien et la libération d'une connexion. Elle synchronise la communication et gère les ports de communication. Elle assure la synchronisation du dialogue entre hôtes.

Couche 4 : Transport

La couche transport gère les communications de bout en bout, sans se soucier du mode de transport. Plutôt que de raisonner en termes de paquets, elle raisonne en termes de messages complets. Elle est capable de corriger des erreurs dans la transmission des messages (congestion du réseau…) et de réordonnancer des paquets qui auraient pris une route différente et seraient arrivés dans le mauvais ordre. Ses mécanismes de contrôle de flux permettent d'adapter la vitesse d'envoi des données à la capacité de réception du destinataire. Elle prend en charge le transport du message de l'utilisateur d'un bout à l'autre du réseau. Elle assure le contrôle de flux, corrige les erreurs, l'acheminement des informations.

Couche 3 : Réseau

La couche réseau gère les communications entre plusieurs machines d'un même réseau. Elle exploite les notions d'adressage, de routage et de fragmentation. Pour s'adresser à une machine à laquelle on n'est pas directement connecté, il faut un moyen de l'identifier : c'est son adresse. Pour arriver jusqu'à cette machine, il faut trouver le chemin qui nous sépare d'elle : c'est le routage. Si le message à transmettre est trop gros pour les couches inférieures, il faut le découper : c'est la fragmentation. C'est la couche IP. Elle a pour rôle de créer des paquets qui seront transportés.

Lire aussi: Comprendre les pleurs nocturnes de bébé

Couche 2 : Liaison de données

Cette couche gère la communication entre deux machines directement connectées entre elles. Elle répond à plusieurs questions problématiques de la couche physique : où commence un message donné et où s'arrête-t-il ? Un support physique n'est jamais parfait, comment détecter les erreurs ? Peut-on réparer les erreurs ? Pour ce faire, elle structure les données transmises à l'aide de marqueurs (début, fin, etc.), de champs (ici se trouvent les données, ici se trouve l'identifiant du destinataire, etc.) et elle met en place des mécanismes de contrôle.

Couche 1 : Physique

La couche physique est chargée d'émettre et de recevoir des données brutes entre deux machines. Si envoyer un 0 ou un 1 à une machine peut paraître trivial, il existe une grande diversité de techniques pour ce faire : fibre optique, câble Ethernet, ondes électromagnétiques, ondes radio, etc., et pourquoi pas des écriteaux tenus par un humain ? Elle décrit les caractéristiques électriques, logiques et physiques du système, c'est-à-dire de tous les composants, depuis le type de câble jusqu'à la liaison par radiofréquence (comme dans les systèmes sans fil 802.11), en passant par la disposition des broches, les tensions et autres exigences physiques.

Le protocole FTP et le modèle OSI

Le protocole FTP (File Transfer Protocol) est un protocole de réseau qui opère au niveau de la couche application (couche 7) du modèle OSI. Il est défini dans le RFC 959. Introduit à partir de 1971, il permet le transfert de données d’un terminal vers un serveur et inversement. Pour ce faire, il utilise le modèle client-serveur, qui permet de télécharger des fichiers et de créer des répertoires.

Fonctionnement du FTP

Le FTP fonctionne sur une structure de demande et de réponse : les données sont demandées et, si nécessaire, modifiées grâce à des commandes FTP et via des programmes FTP tels que FileZilla. Le transfert s’effectue ensuite via un canal de données.

Les ports FTP sont des points de communication situés à l’extrémité du réseau. Ils garantissent l’établissement d’une connexion entre un terminal et un serveur FTP. Le port FTP est alors utilisé pour identifier les applications et autres services devant être accessibles sur le serveur. Pour cela, ce terminal de communication utilise ses propres numéros par défaut, qui vont de 0 à 65535. Une connexion sécurisée n’est possible que si le numéro du port FTP correspondant est connu. Avec la désignation correcte, le transfert de données peut alors être lancé.

Lire aussi: Guide pour une Couche Confortable

Les ports FTP : 21 et 20

Pour garantir le bon déroulement d’un transfert, le File Transfer Protocol utilise généralement deux ports FTP :

  • Port 21 (canal de contrôle) : Ce port est établi entre le serveur et le client et est exclusivement utilisé pour envoyer les commandes FTP. Celles-ci sont envoyées par le client au serveur, qui répond à chaque commande par un code.
  • Port 20 (canal de données) : Ce port TCP est utilisé pour relier les deux entités et permet le transfert de données du serveur vers le client ou dans le sens inverse, en fonction des commandes données. Les listes de répertoires sont également envoyées via ce port FTP.

L’utilisation de ces deux canaux garantit des possibilités de communication permanentes entre le serveur et le client.

Modes Actif et Passif du FTP

On distingue également les ports FTP actifs et ceux en mode passif. En bref, la différence entre les deux possibilités réside dans le comportement du serveur :

  • Mode Actif : C’est le serveur qui initie la connexion. Le client envoie alors la commande FTP « PORT ».
  • Mode Passif : Le serveur laisse le client établir la connexion et se contente de la confirmer. À l’étape suivante, le client envoie la commande « PASV » au lieu de la commande FTP « PORT ».

En règle générale, le mode actif est utilisé lors du transfert de données FTP. Si ce n’est pas le cas, votre hébergeur vous informera normalement du passage en mode passif du port FTP.

Pourquoi un mode passif ?

La réponse à cette question est liée aux problèmes engendrés par les pares-feux. Si le client est positionné derrière un pare-feu et que celui-ci est efficace, il bloque toutes les connexions actives qui veulent accéder au client depuis l’extérieur. Dans le cas d’un port FTP actif, les tentatives de connexion du serveur sont donc également bloquées. En revanche, si l’on utilise un port FTP en mode passif, c’est le client qui prend l’initiative.

Alors que le port FTP 20 n’est pas nécessaire en cas d’utilisation du mode passif, l’utilisation du port FTP 21 est toujours obligatoire. Comme le port 20 n’est utilisé que pour le transfert de données, la connexion est simplement coupée après le transfert. En revanche, le port FTP 21, en tant qu’instance de contrôle permettant de gérer tous les transferts, est constamment actif. Il peut cependant être déconnecté par un utilisateur à l’aide d’une commande, ce qui peut vous être recommandé en raison de lacunes dans le domaine de la sécurité.

SFTP : Une alternative plus sécurisée

Le SSH file transfer protocol (SFTP) permet de remédier à ce problème de sécurité. Leurs noms similaires prouvent qu’il existe certaines similitudes entre SFTP et FTP. Contrairement aux ports FTP standard, les ports SFTP sont chiffrés. Cela concerne d’une part les noms d’utilisateur et les mots de passe, et d’autre part le transfert lui-même.

Importance du modèle OSI

Même si certains estiment que le modèle OSI est obsolète (du fait de sa nature théorique et du fait qu'il est moins important que le modèle TCP/IP à 4 couches), il est difficile de comprendre la technologie des réseaux sans faire référence au modèle OSI et à ses couches, car la structure du modèle aide à cadrer les discussions sur les protocoles et à distinguer les différentes technologies.

Le modèle OSI nous permet de penser notre réseau en morceaux ou en couches. Ensuite, la technologie réseau aujourd’hui comporte de multiples références au modèle OSI et à ses couches. La structure du modèle aide à encadrer les discussions sur les protocoles et à comparer les différentes technologies.

Modèle OSI et TCP/IP

L’architecture du modèle OSI est très stricte et s’efforce de séparer les fonctionnalités qui sont séparables. Si ce modèle forme une excellente base théorique pour créer de nouveaux protocoles et de nouveaux réseaux, l’architecture n’est pas intégralement utilisée en pratique. Internet repose essentiellement sur les protocoles IP et TCP, que l’on peut associer aux couches 3 et 4.

Le modèle OSI et le modèle TCP/IP sont deux cadres conçus pour aider à comprendre comment fonctionnent les réseaux informatiques. Le modèle OSI comprend sept couches distinctes : physique, liaison de données, réseau, transport, session, présentation et application. Le modèle TCP/IP, lui, s’organise en quatre couches : accès réseau, internet, transport et application. Il combine certaines fonctions des couches OSI, notamment en regroupant les couches session, présentation et application en une seule couche application.

tags: #ftp #couche #osi #explication

Articles populaires: