Chapitre 1 1 Modélisation des réseaux : Le modèle OSI et ses dérivés Le modèle OSI de l ISO 2 Le modèle d'interconnexion des Systèmes Ouverts (Open Systems Interconnection) a été proposé par l'iso (International Standards Organization) en 1977. Il s'agit d'une norme internationale pour une architecture multicouches qui permet l'interconnexion de matériels hétérogènes. Pourquoi un modèle en couches? 1 Facilité de développement et de modification : une couche (un protocole) peut être modifiée de façon indépendante tant que l'interface avec les deux couches adjacentes reste inchangée. 2 Intéropérabilité : une même couche de niveau n+1 peut utiliser les services de couches de niveau n très différentes à condition que l'interface n/n+1 soit la même. Un modèle commun pour pouvoir communiquer
Le modèle OSI de l ISO 3 Avant l'osi Protocoles propriétaire XNS SNA IPX X25 AT UUCP Kermit Communication entre réseaux difficile nécessitant des passerelles onéreuses pronet JTMP Après l'osi Un petit nombre de protocoles standards (IP, X25,...) Interfaces de communication connues Ł Interconnexions simplifiées ARCHITECTURE MULTI-COUCHES 4 Processus Application Processus Application Protocoles entre les couches Interfaces entre les couches 7. Application 6. Présentation 5. Session Traitement des données 7. Application 6. Présentation 5. Session 4. Transport Interface 4. Transport 3. Réseau 2. Liaison de données 1. Physique Traitement de la communication 3. Réseau 2. Liaison de données 1. Physique Canal de transmission de données
Le modèle OSI de l ISO 5 Les principes du modèle OSI : 1 Une couche doit être créée lorsqu'un nouveau niveau d'abstraction est nécessaire. 2 Chaque couche exerce une fonction bien définie. 3 Les fonctions de chaque couche doivent être choisies en pensant à la définition de protocoles normalisés internationaux. 4 Le choix des frontières entre couches doit minimiser le flux d'informations aux interfaces. 5 Le nombre de couches doit être assez grand pour que des fonctions très différentes ne cohabitent pas dans une même couche et suffisamment réduit pour que l'architecture soit maîtrisable. ARCHITECTURE MULTI-COUCHES 6 Couche Physique ou niveau 1 Elle décrit les interfaces mécaniques, électriques, fonctionnels et procédurales nécessaires à l'activation, au maintien et à la désactivation des connexions physiques destinées à la transmission de bits entre deux entités de liaison de données. Ce niveau est chargé de piloter le matériel de transmission. C'est donc dans cette couche que sont définis le support physique ou médium, les signaux, les voies de transmission ou canaux, le raccordement des communicateurs. Les entités principales, à ce niveau, sont le signal analogique et le bit. Caractéristiques : débit binaire, taux d'erreur bits,
ARCHITECTURE MULTI-COUCHES 7 Couche liaison de données ou niveau 2 Elle permet le transfert fiable d'informations entre des systèmes directement connectés. Elle doit donc fournir les moyens fonctionnels et procéduraux nécessaires à l'établissement, au maintien et à la libération des connections de liaison de données point à point entre 2 entités du réseau. ARCHITECTURE MULTI-COUCHES 8 Couche liaison de données ou niveau 2 Pour les réseaux locaux, cette couche est un peu particulière et on la décompose souvent en deux sous-couches : Sous-couche MAC (Medium Access Control) qui gère l'accès à la voie de transmission. Cette sous-couche peut être liée aux choix du niveau 1, ce qui est une exception dans la norme (qui stipule a priori l'indépendance entre les couches). Sous-couche LLC (Logical Link Control) qui regroupe l'aspect logique de la transmission entre systèmes physiquement connectés. C'est à ce niveau que se situent la détection des erreurs et la gestion de trames. C'est également cette sous-couche qui gère le mode des liaisons logiques.
ARCHITECTURE MULTI-COUCHES 9 Couche réseau ou niveau 3 Ce niveau est chargé de l'acheminement et de la communication en paquets d'information ainsi que de la gestion des connexions réseaux. Ces principales fonctionnalités sont donc : le routage, la recherche du chemin, le tri des unités de données, la gestion des adresses. ARCHITECTURE MULTI-COUCHES Couche transport ou niveau 4 Le service de transport assure un transfert de données transparent entre entités de session en les déchargeant complètement des détails d'exécution d'un transfert de données fiable et d'un bon rapport qualité/prix. La couche transport optimise l'utilisation des services réseaux disponibles afin d'assurer au moindre coût les performances requises par chacune des entités de session. On en déduit donc les fonctionnalités suivantes : contrôle de flux fragmentation et réassemblage des messages en paquets en tenant compte des caractéristiques des protocoles mis en oeuvre dans les couches inférieures; contrôle d'erreur (perte, duplicata de paquets, modifications, altérations) ; séquencement des messages (livraison dans le même ordre que la soumission). Au dessus de la couche transport, le message doit avoir été expurgé de sa connotation communication. 10
ARCHITECTURE MULTI-COUCHES Couche session ou niveau 5 11 Elle fournit des outils de synchronisation et de gestion du dialogue entre entités communicantes. Ces fonctionnalités sont principalement des services nécessaires à l'établissement d'une connexion de session entre deux entités de présentation (niveau 6), ce qui induit entre autres, la gestion des interruptions, des reprises, checkpoints,. ARCHITECTURE MULTI-COUCHES Couche présentation ou niveau 6 12 La couche présentation se charge de la représentation des informations que des entités d'application (niveau 7) se communiquent, ou auxquelles elles se réfèrent au cours de leur dialogue. Cette couche est surtout utile en environnement hétérogène car c'est elle qui est chargée de décrire de manière cohérente les données et de les coder sous une forme universelle dans le réseau. C'est aussi cette couche qui gère une partie des problèmes de sécurité, en particulier ceux relatifs à la sûreté du contenu des messages. Le cryptage/décryptage est donc un des services présents dans cette couche. Compression, typage,
ARCHITECTURE MULTI-COUCHES 13 Couche application ou niveau 7 C'est la couche chargée de la communication entre les processus application et le modèle OSI. Elle définit les formats de données spécifiques à une application (mail, ftp, web, ) C'est la seule couche ouverte vers l'extérieur. Toute normalisation est donc très difficile. FONCTIONNEMENT DU MODELE 14
FONCTIONNEMENT DU MODELE 15 Les procédures du niveau N+1 s'échangent des unités d'informations appelées (N+1)PDU en accord avec le protocole du niveau N+1. Chaque échange est réalisé grâce aux services fournis par la couche N (sauf si N+1 = 1 bien sûr!). Les procédures de niveaux N et N+1 d'un même site échangent des SDU. Plus précisément, entre les couches N+1 et N circulent des IDU (Interface Data Unit). Une IDU est composée de la manière suivante : IDU = ICI + SDU N-SDU = information passée par N au niveau N-1 ou N+1. ICI (Information Control Interface) est l'information propre à l'interface N+1/N pour aider les services du niveau N. Elle n'est bien sûr pas transmise sur le réseau. De même, dans un protocole, l'entité d'information communiquée devient PCI + PDU où PCI (Protocol Control Interface) est l'information propre au protocole entre deux entités de même niveau. FONCTIONNEMENT DU MODELE 16 Site A Site B (N) SDU Couche N+1 Protocole de niveau N+1 (N+1)PDU Service offert à N+1 (N) SDU le protocole : règles de dialogue entre les entités communicantes, pour les préoccupations affectées à 1 couche uniquement. L'entité de base est le PDU (Protocol Data Unit). Procédure (N) du site A appel au service N-1 Couche N Protocole de niveau N (N)PDU Procédure (N) du site B le service : règles de dialogue internes à une entité entre la couche courante et la couche immédiatement supérieure (N et N+1). L'entité de base est le SDU (Service Data Unit).
FONCTIONNEMENT DU MODELE 17 Activités possibles dans chaque couche n : 1 Identifier l'interlocuteur : au même niveau, aux niveaux adjacents. 2 Etablir/relâcher la connexion. 3 Définir le mode simplex/semi-duplex/duplex. Définir le nombre de canaux par connexion. 4 Effectuer éventuellement : La segmentation/le regroupement des messages : la taille des messages reçus de la couche n+1 est supérieure à la taille utilisable par la couche n. Le multiplexage/l'éclatement des messages : la capacité d'une liaison de niveau n est un multiple du débit des liaisons de niveau n+1. 5 Détecter et corriger des erreurs. 6 Assurer le respect de l'ordre des messages. 7 Assurer l'asservissement émetteur-récepteur. 8 Effectuer le routage des messages. FONCTIONNEMENT DU MODELE 18 Encapsulation des PDU Protocole Couche n+1 Le PDU de la couche n+1 devient un SDU de la couche n Protocole Couche n Protocole Couche n-1 PDU couche n
FONCTIONNEMENT DU MODELE 19 Dé-encapsulation Protocole couche n+1 PDU formé à partir du SDU Protocole couche n Protocole couche n-1 N.PDU FONCTIONNEMENT DU MODELE 20 Segmentation des PDU (fragmentation) Données venant de n+1 Protocole couche n 2 appels à la couche n-1
Les Services 21 Les points où la couche N+1 peut accéder aux services de la couche N sont appelés points d'accès au service (SAP : Service Access Point). Chaque SAP a une adresse unique. 4 type de primitives de service : Request requête 1 entité sollicite un service Indication indication 1 entité est informée d'un événement Response réponse une entité répond à un événement Confirm confirmation demande de service bien reçue Les services peuvent être confirmés ou non. Les Services 22 La syntaxe générale est : Niveau.Fonction.Primitive, Couche n+1 (utilisateur du service) Couche n (fournisseur) Couche n (fournisseur du service) Couche n+1 (utilisateur) Request Confirm Indication Response Fonction peut être : Connexion, Libération (ces deux fonctions ne sont utilisées qu'en mode connecté) ou Données.
Les Services : Mode de transmission 23 1 Avec connexion : création d'une connexion avant le transfert des données. Avantages : permet de s'assurer que le destinataire peut accepter les messages ; Désavantage : durée élevée d'établissement de la connexion. Mode intéressant uniquement pour le transfert de volumes importants de données (nombre élevé de messages ordonnés). 2 Sans connexion : les données sont envoyées sans qu'une connexion soit préalablement établie. L'ordre des messages n'est pas nécessairement respecté. Mode utilisable sur des réseaux à voie unique (l'ordre des messages est maintenu grâce à la structure du réseau) ou pour des messages individuels (l'ordre n'a aucune importance). Qualité de service : 1 Service fiable : aucune perte de données grâce au contrôle des erreurs et à l'acquittement de chaque message (exemple : transfert de fichiers). 2 Service non fiable : les erreurs ne sont pas détectées, il n'y a pas d'acquittement pour les messages (exemple : téléphone). Le mode connecté et le service fiable ne sont en général pas utilisés dans toutes les couches ; si le support est très fiable, le contrôle des erreurs peut être effectué uniquement pour le transfert de bout en bout (au niveau transport). Les Services : Mode de transmission 24
Ex : Création d'une connexion niveau Réseau 25 A 3 2 1 C A N A L B 1 2 3 Les Services 26
27 Les modèles dérivés d OSI : pour les LAN 28
Pour les LAN 29 LES STANDARDS IEEE : conforme aux spécifications ISO, ils détaillent les couches 1, 2 et 7 LLC WIFI 802.11 MAC Physique Evolutions... 30
Exercices 31 Résumé 32 En 1978, l'iso (International Standards Organisation) publia un standard universel pour l'échange d'informations entre réseaux, en leur sein et au-delà des frontières géographiques. Ce standard d'architecture de réseau était le modèle à sept couches pour l'interconnexion de systèmes ouverts (OSI). Le modèle OSI a contribué à plus de conformité dans la conception des réseaux de communications et dans le contrôle des traitements répartis. Les constructeurs réalisent des ordinateurs et des équipements dotés de plus d'intelligence. De nombreux réseaux de données privés ou publics ont été créés pour connecter ces matériels. Mais les communications entre ces systèmes et ces réseaux répartis requièrent une approche standard dans la conception de réseau, qui définisse les relations et les intersections entre les services et les fonctions de réseau, grâce à des interfaces et des protocoles communs. Cette approche stratifiée de l'architecture de réseau ramène à la conception du système d'exploitation. Du fait de leur complexité, la plupart des systèmes d'exploitation des ordinateurs sont développés en sections dont chacune assure une fonction particulière. Cela permet de peaufiner chaque fonction pour qu'elle atteigne son but fonctionnel. Enfin, toutes les sections sont intégrées pour assurer les fonctionnalités et les services d'un système d'exploitation qui tourne rond. Il en est de même pour la conception de systèmes de réseau. Une architecture de réseau spécifie une hiérarchie entre les couches indépendantes dont les modules réalisent des fonctions déterminées. Cela se traduit en un jeu de règles qui définit la manière des nœuds de réseau participants à interagir pour communiquer et échanger des informations. Le modèle OSI définit les relations standard entre le logiciel et le matériel des systèmes informatiques complexes d'aujourd'hui. Chaque couche du modèle OSI fournit des services spécifiques qui contribuent aux fonctions globales du réseau. La Couche physique définit les aspects électriques et mécaniques de l'interface avec un support physique (médium) en vue de transmettre des données, mais aussi pour l'établissement, le maintien et la déconnexion de la liaison physique. Une fois mise en œuvre, cette couche comprend le pilote logiciel de chaque équipement de communication, en plus du matériel même : équipements d'interface, modems et lignes de transmission. La Couche liaison établit une voie de communications entre les nœuds du réseau sur un chemin physique, met les messages en forme avant transmission, vérifie l'intégrité des messages reçus, gère l'accès et l'utilisation de la voie, et assure la mise en ordre des données transmises. La Couche réseau adresse les messages, établit le chemin entre les nœuds de communication, route les messages à travers les nœuds intermédiaires jusqu'à destination et le contrôle le flux des messages entre les nœuds. La Couche transport assure le contrôle de bout en bout d'une session de communication une fois que le chemin a été établi, ce qui permet l'échange séquentiel et fiable de messages indépendamment des systèmes qui communiquent et de leur emplacement sur le réseau. La Couche session établit et contrôle les aspects des sessions de communications qui dépendent du système et que fournit la Couche transport ainsi que les fonctions logiques du système d'exploitation d'un nœud participant. La Couche présentation traduit et convertit les donnés transmises et encodées vers des formats que les utilisateurs peuvent comprendre et manipuler. La Couche application/utilisateur gère les tâches de l'application et de l'utilisateur, ainsi que la supervision globale du système, y compris le partage de ressources, les transferts de fichiers, les serveurs de fichiers distants et l'administration de bases de données et du réseau.