Site A.T.L.A.N.T.I.C-83
COURS = Comprendre internet (Chapitre_3) - VERSION: 1.0 (M.A.J: 19/06/10)
- AUTEUR(s): Bernard GIACOMONI
Ecran large mobile
Retour
sommaire cours

III.MECANISMES DE COMMUNICATION SUR LE RESEAU:


III.1.INTRODUCTION:


Nous avons vu précédemment que dans sa pratique courante, un utilisateur d'internet peut se contenter de connaître un petit nombre de concepts d'une manière très globale et synthétique (sites web, boîtes de messagerie, fournisseur d'accès, etc...), sans entrer dans la complexité de ceux-ci. Il possède, en quelque sorte, une connaîssance « en surface » de l' « océan » de composants et de mécanismes qui supportent le web.
Avant de pousser plus avant dans ces profondeurs, et pour éviter de nous y perdre, nous allons hiérarchiser les nombreux concepts qui les occupent en plusieurs « niveaux », dont voici la description:


III.2.LES DIFFERENTS NIVEAUX DE LA COMMUNICATION:


III.2.1.TRANSPARENCE DES MECANISMES DE COMMUNICATION POUR L'USAGER:

Nous avons vu précédemment que lorsque nous utilisons internet, nous le faisons toujours par l'intermédiaire d'une application logicielle (c'est à dire d'un programme: un navigateur, un logiciel de messagerie, etc...). Ces APPLICATIONS RÉSEAU nous permettent d'accéder à un certain nombre de services disponibles en ignorant totalement les mécanismes logiciels et les infrastructures matérielles que ces services utilisent: pour naviguer sur internet, il nous suffit la plupart du temps de savoir utiliser l'interface du navigateur que nous utilisons.


EXEMPLE:
Certains logiciels navigateurs internet (Mozilla firefox, Safari, Opera, etc...) possèdent des versions adaptées à plusieurs systèmes d'exploitation (Window, Linux, systèmes Unix divers, etc.). Un utilisateur pourra les utiliser de la même manière quel que soit le système d'exploitation et quelle que soit l'infrastructure matérielle (ordinateur, connexion réseau) dont il dispose.


En fait, les spécificités du poste de travail sont rendues TRANSPARENTES pour l'utilisateur par l'action de divers mécanismes inclus dans le « software » et le « hardware » de la machine. Cette transparence est obtenue par l'organisation de ces mécanismes en plusieurs niveaux dont nous allons décrire le principe.


III.2.2.UNE HISTOIRE DE LUTINS:

Bien que nous nous en défendions avec la dernière énergie, qui d'entre nous n'est pas intimement persuadés (surtout dans des moments de grand désarrois technologique), que son ordinateur est animé par une armée de petits lutins plus ou moins malfaisants ? (ne niez pas: j'ai même vu certains d'entre vous leur parler...). Ce point de vue n'est d'ailleurs pas sans avantage psychologique, car il constitue un moyen pratique et peu onéreux de détourner nos colères et frustrations « informatiques » vers des boucs émissaires aussi disponibles qu'endurants.
Pour humaniser et imager un peu l'univers très abstrait des mécanismes de communication, je me suis résolu à convoquer ces petits lutins industrieux. Je vous demande de supposer qu'ils se mettent en action chaque fois que nous activons l'interface graphique de notre application réseau (en cliquant sur un lien, en validant un formulaire, en utilisant un menu...).
Ces petits lutins (qui ne sont autres que les programmes informatiques ou les mécanismes de logique électronique installés sur le poste de travail ou les organes de liaison), se chargent de traduire les commandes saisie sur votre interface en actions correspondant à la fonctionnalité activée. La plupart de ces commandes aboutissent à l'envoi de messages à destination d'un hôte éloigné du réseau (serveur web, serveur de messagerie, etc...), qu'il s'agisse de l'envoi de REQUETES destinées à obtenir un service quelconque de la part du destinataire ou de la transmission de DONNEES nécessaires au fonctionnement de celui-ci.
Nos lutins uniront donc leurs efforts pour réaliser les tâches suivantes:
  • E1: Interpréter la commande passée par l'utilisateur, en déduire les actions à effectuer, et en particulier les messages à transmettre, puis élaborer ces messages.
  • E2: Conditionner ces messages pour la transmission: les morceler en segments de longueur acceptable, y inclure l'adresse de la machine destinataire et du programme destinataire dans cette machine (le message est-il destiné au navigateur? au programme de messagerie électronique?), etc.
  • E3: Transformer ces segments de données en signaux physiques capables de se propager sur le média du réseau, puis injecter ces signaux sur le média.
Remarquons que les tâches E1, E2 et E3 doivent se succéder pour aboutir à l'émission d'un message vers un destinataire, qui est un programme hébergé par une machine distante connectée au réseau.
De même, lorsqu'un message destiné à votre application arrive sur la connexion physique de votre poste de travail, ces mêmes lutins infatigables tenteront l'impossible pour mettre à votre disposition les informations qu'il contient. Ils devront, pour cela:
  • R3:Examiner les signaux circulant sur le média, en extraire ceux qui sont destinées à la machine locale et en vérifier le contenu.
  • R2:Transformer ces signaux en segments de messages, détecter le programme réseau de la machine qui en est destinataire (est-ce le navigateur ou le client de messagerie? les deux peuvent fonctionner en même temps), réassembler ces segment pour reconstituer le message complet.
  • R1:Enfin, interpréter le message pour accomplir l'action à laquelle il est destiné (affichage d'une page web sur le navigateur ou d'une liste de courriels sur la fenêtre du client de messagerie, enregistrement des données reçues dans un fichier local, etc.).
Remarquons que les tâche R3, R2 et R1 doivent se succéder pour aboutir à la réception et au traitement d'un message par une des applications réseau lancées sur la machine.


Pour poursuivre notre analogie, nous dirons que l'activité d'une telle « armée » nécessiterait obligatoirement une très forte organisation. En particulier, il pourrait sembler judicieux de spécialiser chaque lutin dans certaines des activités que nous avons énumérées ci-dessus. Par exemple:
  • Certains d'entre eux seraient spécialisés dans les activités E1 et R1.
  • D'autres seraient spécialisés dans les activités E2 et R2.
  • D'autres enfin seraient spécialisés dans les activités E3 et R3.


III.2.3.LES TROIS NIVEAUX DU MECANISME:

Si nous avons gardé en tête que nos lutins symbolisent en fait des mécanismes matériels et logiciels intervenant dans la communication réseau, les trois spécialisations ainsi définies correspondent à trois niveaux de mécanismes que l'on peut représenter par le schéma suivant:


Niveaux de mécanismes réseaux
COMMENTAIRES SUR LE SCHEMA:
Les UTILISATEURS ont accès aux fonctionnalités offertes par le réseau en activant les SERVICES APPLICATIFS. Ils le font par l'intermédiaire d'applications informatiques. Pour les utilisateurs basiques d'internet, ces applications seront essentiellement les Navigateurs (internet explorer, Mozilla, Opera, etc..), les Clients de Messagerie (outlook, lotus, etc..) ou les programmes de transfer de fichiers (Filezilla...).
Les mécanismes du niveau des SERVICES APPLICATIF ont pour rôle:
  • Soit d'interpréter les commandes passée par l'utilisateur, d'en déduire les actions à effectuer, et en particulier les messages à transmettre, puis d'élaborer ces messages.
  • Soit d'interpréter un message reçu du réseau afin accomplir l'action à laquelle il est destiné (affichage d'une page web sur le navigateur ou d'une liste de courriels sur le client de messagerie, enregistrement des données dans un fichier local, etc.).

Pour réaliser les fonctions activées par les utilisateurs, les applications réseau ont besoin d'échanger des messages avec d'autres utilisateurs du réseau (sites web, serveurs de messagerie, etc). Pour ce faire, ils utilisent les mécanismes du niveau des SERVICES RESEAU, qui ont donc pour rôle:
  • Soit de conditionner les messages élaborés par le niveau des services applicatifs pour la transmission (par exemple, les morceler en "paquets" de longueur acceptable, y inclure l'adresse de la machine destinataire et du programme destinataire dans cette machine, etc.).
  • Soit de transformer les segments de données acquises par le niveau gestion du lien physique en "paquets", de détecter le programme réseau local qui en est destinataire, puis réassembler ces "paquets" pour reconstituer le message initial.
Cependant, les mécanismes du niveau services reseau n'ont pas connaîssance de la structure matérielle de la machine, ni des mécanismes qui permettent de transformer les messages en signaux physiques injectables sur le média du réseau. Ce niveau fera donc appel aux mécanismes du niveau GESTION DU LIEN PHYSIQUE pour réaliser ces tâches. Ce niveau aura donc pour rôle:
  • Soit de transformer les segments fournis par le niveau des services réseaux en signaux physiques capables de se propager sur le média, puis d'envoyer ces signaux vers le noeud adjacent du réseau qui constitue la première étape de la route à suivre pour atteindre le destinataire.
  • Soit de récupérer les signaux circulant sur le média et destinées à l'utilisateur de la machine, d'en vérifier le contenu, puis de les transmettre au niveau des services réseau.



III.3.LE MODELE O.S.I.


L'I.S.O. (International Standard Organization), a diffusé dès les années 1980 un modèle d'organisation pour les « systèmes d'interconnexion ouverts ». Celui-ci, appelé Modèle O.S.I (pour Open Systems Interconnexion) hiérarchise les mécanismes de communication en sept COUCHES (dites « fonctionnelles », car elles décrivent les mécanismes indépendemment de la manière dont ils sont réalisés matériellement). Ces couches peuvent être succintement définies comme suit:


NUMERO DE COUCHENOMFONCTION
7 APPLICATION Mécanismes supportant les fonctions externes des applications.
6 PRESENTATION Résolution des problèmes liés aux différences de codage des données entre systèmes connectés.
5 SESSION Synchronisation des flux de données échangés, points de reprise en cas d'erreurs, etc.
4 TRANSPORT Conditionnement des messages pour le transport: découpage des messages en « paquets de données» de longueur compatible avec une bonne transmission et réassemblage à la réception.
3 RESEAU Routage de « paquets de données » vers leur destinataire à travers des réseaux interconnectés (pouvant être de technologie hétérogène).
2 LIAISON
  • Sous-couche LLC: Etablissement, entretien et contrôle des liaisons de données entre deux noeuds « adjacents » du réseau
  • Sous couche MAC: contrôle de l'accès au média de transmission..
1 PHYSIQUE Transformation des données en signaux physiques inversement.


REMARQUES: L.L.C. = Logical Link Control, M.A.C. = Media Acces Control.


Nous pouvons voir que la décomposition effectuée par le modèle O.S.I. est plus détaillé que la décomposition en trois niveaux présentée plus haut. Nous pouvont établir la correspondance suivante:


NIVEAUCORRESPONDANCE O.S.I.PRODUITS RESEAUX CORRESPONDANTS
GESTION DU LIEN PHYSIQUE Couches OSI 1 et 2 (physique, liaison) Cartes réseaux, connectique, médias, pilotes de péripheriques
SERVICES RESEAU Couches OSI 3 et 4 (réseau, routage) Logiciels contrôleurs de réseaux (TCP-IP pour internet).
SERVICES APPLICATIFS Couches OSI 5, 6 et 7 (session, présentation, application) Applications réseaux (navigateurs, clients de messagerie, etc...).


En fait, très peu de solutions techniques respectent entièrement le modèle O.S.I:
  • Les matériels de connexion et les pilotes de périphériques disponibles sur le marché traitent en général la totalité des mécanismes des couches 1 et 2.
  • Les mécanismes correspondant aux couches 3 et 4 sont traités par des produits logiciels qui englobent ces deux couches (c'est le cas, en particulier de TCP-IP, utilisé sur internet).
  • Enfin, la plupart des applications réseau disponibles assurent elles-même la gestion des sessions et la présentation des données.
Le modèle O.S.I. a donc surtout une valeur théorique. En fait, la plupart des architectures de réseaux existantes s'appuient sur une décomposition (implicite) correspondant aux trois niveaux définis plus haut.


REMARQUE:
La connaîssance détaillée des couches de l'O.S.I. n'est pas nécessaire dans le cadre du présent ouvrage. Pour approfondir cette notion, vous pouvez consulter l'ouvrage RESEAUX INFORMATIQUES, disponible dans la rubrique Reseaux de la documentation en ligne du site ATLANTIC. Sinon, je vous conseille de vous contenter de retenir le tableau ci-dessus.


III.4.MODELE OSI ET TRAMES D'ENVOI DE DONNEES


A l'intérieur d'un ordinateur, les informations se présentent sous la forme d'une suite d'octets (c'est à dire de groupes de 8 « bits ») contenant le codage de l'information en binaire. Ces octets vont constituee la « partie utile » d'un message à à transmettre.


Cependant, pour qu'une transmission puisse s'effectuer en toute sécurité et atteindre le bon destinataire, il est nécessaire de rajouter un certain nombre d'octets «de service» aux octets utiles. Ces octets, ajoutés par les mécanismes de communication de l'émetteur sont destinés à être exploités par les mécanismes de communication du récepteurs. Ils permettront à ceux-ci:
  • De s'assurer que le message leur est bien adressé.
  • De vérifier qu'il a été transmis intégralement et sans erreur.
  • De connaître le format des données.
  • D'identifier les différents segments d'un message qui a subi une segmentation afin de les remettre dans l'ordre à la réception.
  • Etc.
Lors de l'émission d'un message, chacune des couche (au sens de l'OSI) de mécanismes de communication traversée ajoute ses propres octets de service. Lorsque toutes les couches d'émission auront été traversées, les segments de messages à injecter sur le média correspondront chacun à une structure de ce type:


Octets de données et de service


Le contenu, le format et la position des octets de service de chaque couche dépend de la technologie de transmission utilisée par cette couche. Par exemple, sur internet, le contenu des couches 3 et 4 (niveau des services réseaux) correspond aux spécifications du protocole TCP-IP.
C'est cet ensemble d'octets (octets utiles+octets de service) qui est injecté sur le média de liaison, sous forme d'impulsions physiques dont la nature dépend du média (impulsions électriques, optiques, électromagnétiques, infrarouges...). Le train d'impulsion engendré, circulant sur le média, constitue une TRAME DE TRANSMISSION DE DONNEES.
Lors de la réception d'une trame par un hôte du réseau, les mécanismes de communication de cet hôte exploiteront ces différentes enveloppes d'octets de service dans l'ordre inverse de l'émetteur:
  • En premier lieu, les octets de service des couches 1 et 2 seront utilisés par les mécanismes de gestion du lien physique pour déterminer si la trame leur est bien adressée et si elle a été transmise sans erreur.
  • Puis, la trame, dépouillée de ses deux premières couches d'octets de service sera transmise aux mécanismes des services réseaux pour y être traitée par eux.
  • Et ainsi de suite....


III.5.UTILITE DE L'APPROCHE PAR NIVEAUX:


Chaque niveau cache au niveau qui lui est supérieur la complexité des traitements qu'il accomplit pour le compte de ce niveau supérieur. Il permet donc à celui-ci de faire abstraction de ces traitements. C'est grâce à cette architecture en plusieurs niveaux d'abstraction qu'un utilisateur d'internet n'a, à priori, besoin de connaître que le mode d'emploi du navigateur qu'il utilise.


D'autre part, la décomposition en niveaux permet de créer des architectures composites: chaque niveau ou couche peut être supporté par des composants d'origine différentes, pourvu que ces composants respectent les interfaces entre les niveaux. Cette possibilité est à la base de la création de « systèmes ouverts », c'est à dire acceptant des produits de n'importe quel fournisseur, pourvu qu'il respecte les normes et standards d'interconnexion.


Les chapitres suivant exposent plus en détail les différents concepts attachés à ces trois niveaux.



Retour accès cours Retour sommaire cours