Le modèle
OSI de lISO |
par jean-michel stazzu et eric segovia
Le modèle OSI a été développé en 1978 par
lISO (International Organization of Standards) afin que soit défini
un standard utilisé dans le développement de systèmes ouverts.
Les réseaux s'appuyant sur les spécifications de lOSI "parlent
le même langage", c'est-a-dire qu'ils utilisent des méthodes
de communication semblables pour échanger des données.
Avant les définitions du modèle OSI, les systèmes propriétaires
régnaient en maîtres.Une entreprise qui désirait installer
un réseau devait choisir entre IBM, DEC, HP,Honeywell et Sperry. Chacune
de ces sociétés proposait des architectures propriétaires,
et il était pratiquement impossible de faire communiquer les réseaux
de ces différents constructeurs.
Dès qu'une entreprise avait choisi son système, elle devenait
prisonnière du constructeur.
Les mises a jour ou les modifications du système ne pouvaient être
effectuées que par le constructeur choisi, ce qui éliminait toute
concurrence.
Les utilisateurs d'aujourd'hui peuvent se dire que rien n'a changé dans
de nombreux secteurs de l'industrie informatique. Les architectures propriétaires
existent toujours. Cependant, le modèle OSI peut vous éclairer
sur la façon dont les différents éléments d'un réseau
sont reliés entre eux.
Le modèle OSI est formé de sept couches.
Les sept couches
Applications |
7
|
Présentation |
6
|
Session |
5
|
Transport |
4
|
Réseau |
3
|
Liaison de données |
2
|
Physique |
1
|
Cinq Principes de base s'appliquent aux différentes
couches
l . Une couche ne peut être créée que quand un niveau différent
d'abstraction est nécessaire.
2. Chaque couche doit fournir une fonction bien définie.
3. La fonction de chaque couche doit être choisie de façon à
définir internationalement les protocoles standards.
4. Les caractéristiques d'une couche doivent être choisies pour
quelles réduisent les informations transmises entre les couches.
5. Des fonctions différentes doivent être définies dans
des couches différentes, mais il faut éviter d'augmenter le nombre
de couches pour que I'architecture ne devienne trop compliquée.
Lapplication de ces cinq principes crée un modèle idéal,
où chaque couche effectue une, seule fonction et dépend des services
de la couche immédiatement inférieure. De même, chaque couche
fournit ses services à la couche immédiatement supérieure.
Les couches physique et application se situent aux extrémités
du modèle OSI. La couche physique n'utilise aucun service d'une autre
couche, mais fournit la connectivité physique à la couche supérieure,
liaison des données. La couche application utilise les services de la
couche présentation et propose ses services à l'utilisateur final.
Les fonctions de chacune des couches sont décrites dans les paragraphes
qui suivent.
Couche physique
La couche physique transmet les bits à travers un canal de communication.
Les bits représentent des enregistrements de base de données ou
des fichiers à transférer, mais la couche physique ignore ce que
ces bits représentent. Ces bits peuvent être encodés sous
forme de 0 et 1 ou sous forme analogique. La couche physique fait intervenir
les interfaces mécaniques et électriques sur le média physique.
La couche physique n'a aucune connaissance de la structure des données
nécessaires pour émettre ou recevoir. La couche physique est responsable
de la transmission des bits de données sur le média physique,
en utilisant le signal approprié compatible avec les périphériques
de communication. La couche physique reçoit aussi des signaux et les
convertit en bits de données qu'elle délivre à la couche
liaison des données.
Couche liaison des données
La couche liaison des données prend les données de la couche physique
et fournit ses services à la couche réseau. Les bits reçus
sont groupés en unités logiques appelées trame.
Dans le contexte d'un réseau, une trame peut être une trame Token
Ring ou Ethernet, FDDI, ou une autre type de trame réseau. Pour les liens
des réseaux étendus, ces trames peuvent être des trames
SLIP, PPP, X.25 ou ATM.
Les bits d'une trame ont une signification spéciale. Le début
et la fin d'une trame peuvent être marqués par des bits spéciaux.
De plus, les bits de la trame sont répartis en champ adresses, champ
de contrôle, champ de données et champ de contrôle d'erreurs.
Les champs d'adresses contiennent les adresses source et destination. Le champ
de contrôle indique les différents types de trames de liaison de
données. Le champ de données contient les données proprement
dites, transmises par la trame. Le champ de contrôle derreurs détecte
les erreurs dans la trame de liaison de données.
Trame dune couche de liaison de données.
La couche liaison de données est la première couche qui gère
les erreurs de transmission.
En général, le champ de contrôle d'erreurs consiste en un
générateur de checksum, utilisé pour détecter les
erreurs dans la trame de liaison de données. Dans la plupart des cas,
les réseaux modernes utilisent un contrôle de redondance cyclique
(CRC). Pour les réseaux locaux, c'est un CRC 32 bits. Pour les réseaux
étendus où les liens sont plus lents, on utilise un CRC à
16 bits pour éviter la surcharge des liaisons.
Il suffit de savoir que les CRC peuvent détecter:
Dans les réseaux TCP/IP,
les implémentations de la couche liaison de données comprennent
les technologies suivantes : Token Ring, Ethernet, FDDI, Frame Relay, X.25,
SLIP, PPP et ATM.
Couche
réseau
La couche réseau gère les connexions entre les nuds du réseau.
Un service supplémentaire, fourni par la couche réseau, concerne
la façon de router les paquets (unité d'information de la couche
réseau) entre les nuds d'un réseau La couche réseau
sert aussi à éliminer les congestions et à réguler
le flot des données.
Cette couche permet aussi à deux réseaux différents d'être
interconnectés en implémentant un mécanisme d'adressage
uniforme.
Token Ring et Ethernet possèdent, par exemple, différents types
d'adresses. Pour interconnecter ces réseaux, vous avez besoin d'un mécanisme
d'adressage compréhensible par les deux réseaux. Pour les réseaux
TCP/IP, la couche réseau est implémentée en utilisant le
protocole IP.
Couche transport
La couche transport offre des services supplémentaires par rapport
à la couche réseau.
Cette couche garantit que les données reçues sont telles qu'elles
ont été envoyées. Pour vérifier l'intégrité
des données, cette couche se sert des mécanismes de contrôle
des couches inférieures.
La couche transport est aussi responsable de la création de plusieurs
connexions logiques par multiplexage sur la même connexion réseau.
Le multiplexage se produit quand plusieurs connexions logiques partagent la
même connexion physique.
La couche transport se trouve au milieu du modèle OSI. Les trois couches
inférieures forment le sous-réseau, et les trois couches supérieures
sont implémentées par les logiciels réseau. La couche
transport est aussi implémentée sur le nud. Son travail
consiste à relier un sous-réseau non fiable à un réseau
plus fiable.
Dans les réseaux TCP/IP, la fonction de la couche transport est assurée
par le protocole TCP (Transmission Control Protocol) et par le protocole UDP
(User Datagram Protocol).
La couche transport implémente le multiplexage dans lequel plusieurs
éléments logiciels partagent la même adresse de la couche
réseau. Pour identifier sans erreur l'élément logiciel
dans la couche transport, une forme plus spécifique d'adresse est nécessaire.
Ces adresses, appelées adresses de transport, sont fournies par une
combinaison de l'adresse de la couche réseau et d'un numéro
TSAP (Transport Service Access Point).
Dans les réseaux TCP/IP, l'adresse de transport porte le nom de numéro
de port. Pour exemple, les serveurs Web utilisent le numéro 80.
La couche session gère les connexions entre les applications coopérantes.
Avec cette couche, un utilisateur peut se connecter à un hôte,
à travers un réseau où une
session est établie pour transférer des fichiers. La couche
session offre les fonctions suivantes :
En général, une session permet des communications full duplex,
bien que certaines applications se contentent d'une communication half duplex.
La couche session
peut fournir une ou deux voies de communication (contrôle du dialogue).
Pour certains protocoles, il est essentiel qu'un seul côté lance
une opération critique. Pour éviter que les deux côtés
lancent la même opération, un mécanisme de contrôle,
comme l'utilisation de jetons, doit être implémenté. Avec
la méthode du jeton, seul le côté qui possède le
jeton peut lancer une opération. La détermination du côté
qui doit posséder le jeton et son mode de transfert s'appellent la
gestion du jeton.
Le jeton dont il est question ici n'a rien à voir avec le jeton des réseaux TokenRing. La gestion du jeton dans les réseaux Token Ring relève des couches 1 et 2 du modèle OSI, alors que celui dont il est question ici relève du niveau 5.
Couche
présentation
Pour que deux systèmes puissent se comprendre, ils doivent utiliser le
même système de représentation des données. La couche
présentation gère cette représentation des données.
Il existe plusieurs façons de représenter des données,
par exemple, l'ASCII ou l'EBCDIC pour les fichiers texte. La couche présentation
utilise un langage commun compréhensible par tous les nuds du réseau.
Un exemple de ce langage commun est lASN.1 (Abstract Syntax Repesentation
Rev 1). Ce langage est utilisé par SNMP pour coder ses données.
Le protocole
NFS utilise son propre service: le protocole XDR (External Data Representation).Plusieurs
applications TCP/IP n'utilisent pas les services de cette couche.
La couche application
fournit les protocoles et les fonctions nécessaires au applications utilisateurs
qui doivent accomplir des tâches de communication.
Voici des exemples de fonctions fournies par la couche application :
Plusieurs de ces services sont appelés
des API (Application Programming Interface). Les API consistent en des bibliothèques
de programmation qu'un développeur peut utiliser pour écrire des
logiciels réseau.
La Figure 6 donne quelques exemples de services TCP/IP: FTP (File Transfer Protocol),TFTP
(Trivial File Transfer Protocol), NFS (Network File System), TELNET, SMNP (Simple
Mail Transfer Protocol), SNMP (Simple Network Management Protocol), HTTP (Hyper
Text Transfer Protocol).
Exercice n°1:
Pouvez-vous citer un matériel composant la couche n°1 ( Physique
) du modèle OSI ?
Exercice n°2: Pouvez-vous citer un matériel composant la couche
n°2 ( Liaison des données) du modèle OSI ?
Exercice n°3: Pouvez-vous citer un matériel composant la couche
n°3 ( Réseau ) du modèle OSI ?
Exercice n°4: Pouvez-vous citer un protocole composant la couche
n°4 ( Transport ) du modèle OSI ?
Exercice n°5: Pouvez-vous citer une fonction de la couche n°5
( Session ) du modèle OSI ?
Exercice n°6: Pouvez-vous citer une fonction de la couche n°6
( Présentation ) du modèle OSI ?
Exercice n°7: Pouvez-vous citer une fonction et/ou un logiciel de
la couche n°7 ( Application) du modèle OSI ?