Les Piles de com

De CAFEDU.COM
Version du 4 mars 2020 à 20:16 par Sysop (discuter | contributions)

(diff) ← Version précédente | Voir la version courante (diff) | Version suivante → (diff)
Aller à : navigation, rechercher


Cette séquence va aborder la problématique de la standardisation des échanges entre systèmes connectés à des réseaux et des trois modèles qui en ont résulté, le modèle ACT, le modèle OSI et le modèle TCP/IP.

Les éditeurs informatiques avaient depuis longtemps leurs propres réseaux pour interconnecter leurs équipements, comme l’architecture SNA (System network Architecture) chez IBM, ou DNA (Digital Network Architecture) chez Digital Equipment Corporation… Ces architectures ont toutes un même défaut : elles ne permettent pas d’interconnecter des matériels hétérogènes. De plus, elles sont généralement monolithiques, et ne permettent pas de modifications simples.

Aussi, afin d’éviter la multiplication des solutions d'interconnexion,

  • la société de services en temps partagé (cloud) Tymshare a construit une architecture propre (Tymnet) pouvant s'interfacer avec les différentes solutions constructeur, historiquement en simulant un terminal local (TTY), puis par des hosts virtuels ("ISIS" internally switched interface system) supportant les protocoles constructeurs ou des opérateurs publics de chaque serveur.
  • l'ISO (International Standards Organisation) a développé un modèle de référence appelé modèle OSI (Open Systems Interconnection). Ce modèle décrit les concepts utilisés et la démarche suivie pour permettre à des équipements possédant des systèmes d’exploitation variés d’ouvrir le dialogue entre eux, d’où le terme de « système ouvert ».

Aujourd’hui, un système ouvert aura une définition plus large que le processeur informatique d’origine. On pourra étendre sa définition à l’ensemble des équipements connectés.

En parallèle des travaux de l’OSI, la DARPA (United States Department of Defense Advanced Research Projects Agency) créait le réseau ARPANET, dès les années 1970, qui jetait les bases de l’Internet et du modèle TCP/IP. Sur les mêmes constatations, il faut :

Définir des règles de fonctionnement communes au travers de l’interconnexion des réseaux ; Définir des formats d’échange d’informations, plus connus sous le terme de protocoles ;

Définir les moyens d’identifier les systèmes ainsi que les processus utilisateurs, sous la notion d’adressage ;

Définir les processus eux mêmes et les moyens leur permettant de communiquer.

Une dernière définition apparait à l’image : la notion de « domaine ISO » ou de « système autonome TCP/IP », qui représente l’ensemble des réseaux physiques et des équipements associés gérés par une entité unique. On parlera de réseau d’entreprise, par exemple.

Le réseau Tymnet a commencé à fonctionner comme réseau privé de Tymshare en 1969 et public (interconnectant des tiers aux USA, puis des opérateurs publics internationaux) respectivement à partir de 1972 et de 1977.

Les premiers travaux concernant le modèle OSI datent de 1977. En 1978, l'ISO propose ce modèle sous la norme ISO IS 7498.

Le modèle TCP/IP a été défini en 1972 et à conduit mi-1978 au projet "internet" de Vint Cerf pour un catenet (réseau des réseau) tel que proposé par Louis Pouzin en 1972.

OSI définit un cadre fonctionnel pour l'élaboration de normes d'interconnexion. Ce modèle ne décrit pas comment les systèmes fonctionnent en interne ou comment implanter les normes. OSI est un modèle et non une pile de protocoles.

Ce modèle décrit donc un découpage des fonctions que le réseau peut ou doit apporter aux processus utilisateurs sous forme de couches, au nombre de sept. Ces couches on été définies en fonction des principes suivants :

  • une couche doit être créée lorsqu'un nouveau niveau d'abstraction est nécessaire,
  • chaque couche a des fonctions bien définies,
  • les échanges entre couches doivent être minimisés,
  • les couches ne doivent pas faire cohabiter des fonctions très différentes .

Chaque couche (N) fournit des services (N) aux entités (N+1) de la couche (N+1). Les services d'une couche (N) sont fournis à la couche (N+1) grâce aux fonctions effectuées à l'intérieur de la couche (N) et, au besoin, avec l'aide des services offerts par la couche (N-1) au travers d’un point d'accès aux services (Service Access point ou SAP).

Les couches basses (1, 2, 3 et 4) sont dédiées à l'acheminement des informations entre les extrémités concernées. Les couches hautes (5, 6 et 7) sont responsables du traitement de l'information.

La couche physique s'occupe de la transmission des données binaires de façon brute sur le canal de transmission. Cette couche doit normaliser les caractéristiques électriques, mécaniques (forme des connecteurs...), fonctionnelles et les procédures d'établissement, de maintien et de libération de l’échange de données.

L'unité d'information typique de cette couche est le bit (pour binary digit, élément binaire de base).

La couche liaison de données a pour rôle de structurer les données afin qu’elles puissent être transmises sur le médium et reconnues par le destinataire également connecté à ce même médium, avec un maximum de fiabilité. Elle construit et transmet des « trames » en les bornant par des fanions de début (DH pour Data Link Header) et de fin (DT pour Data Link Trailer).

L'unité d'information de la couche liaison de données est la trame qui est composée de quelques centaines d'octets maximum.

La couche réseau permet de gérer l’interconnexion des réseaux entre eux. Elle est le cœur des mécanismes de routage, et est responsable du calcul de la table de routage, qui est une représentation de la cartographie de l’inter-réseau.

L'unité d'information de la couche réseau est le paquet.

La couche transport est responsable du bon acheminement des messages complets au système destinataire final. On parle de contrôle de bout en bout. Pour cela on pourra associer à cette couche des services de segmentation des messages et de contrôle de flux, même s’il est possible de proposer certains de ces services, de proche en proche, sur les couches réseau et liaison.

L'unité d'information de la couche transport est le segment.

La couche session organise et synchronise les échanges entre processus distants. Elle gère les jetons de parole, à savoir comment s’établira le dialogue entre les processus (en alternat, en mode duplex, etc..), les points de reprise en cas de rupture de dialogue et également les droits d’accès aux processus serveurs.

La couche présentation s’occupe de la syntaxe et de la sémantique des données transmises. Typiquement, cette couche peut convertir les données, les reformater, les crypter et les compresser.

La couche application est le point de contact entre le processus applicatif et le réseau. C'est elle qui va apporter à l'utilisateur les services de base offerts par le réseau, comme par exemple le transfert de fichier, la messagerie...

Pour l’ensemble des couches à l’exception de la couche physique, et même si ces services sont particulièrement pertinents au niveau de la couche transport, un ensemble de services peut être proposé, à savoir des services connectés ou non, consistant en la vérification de la disponibilité du destinataire, acquittés ou non, permettant au destinataire de confirmer la bonne réception des informations, multiplexées ou non, permettant de servir plusieurs processus clients en même temps.

Les couches 1 à 3 interviennent entre machines voisines. Les couches 4 à 7 n'interviennent qu'entre hôtes distants.

Les services offerts par l’ensemble des couches du modèle peuvent être résumés en : transmission physique, contrôle d'erreurs, routage, régulation de flux (congestion) pour les couches basses ;

séquencement,

contrôle de bout en bout, gestion du dialogue, reprise sur incidents,

transformation de l'information (codage, compression, cryptage...), synchronisation des processus

pour les couches hautes.

Le modèle représenté ici est appelé le « Network Layer Model ». Chaque couche du modèle communique avec sa couche paire. On constate que seuls les équipements terminaux, où sont installés les processus utilisateurs, utilisent l’ensemble des couches du modèle dans le processus de communication.

La notion de PDU pour Protocol Data Unit, présentée à droite de la représentation, correspond aux structures de données échangées entre couches paires.

Le modèle TCP/IP est un modèle en 4 couches qui décrit la fonctionnalité des protocoles qui constituent la suite de protocoles TCP/IP. Ces protocoles, qui sont présents sur les hôtes émetteurs et récepteurs, interagissent pour fournir une livraison de bout en bout sur l’inter-réseau.

Dans ce modèle, une communication comprend les étapes :

  • de création de données sur la couche processus du système d’origine,
  • de segmentation et encapsulation des données lorsqu’elles descendent la pile de protocoles dans le système source,
  • de génération des données sur les supports au niveau de la couche d’accès au réseau,
  • du transport des données sur l’inter-réseau,
  • de la réception des données au niveau de la couche d’accès au réseau de la destination finale,
  • de l’assemblage des données lorsqu’elles remontent la pile dans le système de destination,
  • de la transmission de ces données à l’application de destination, au niveau de la couche processus.

La couche Network Access n’a pas de contenu défini dans le modèle TCP/IP. Elle est responsable des trames émises et reçues et définit, sur son interface avec la couche Internet, les caractéristiques de la trame en question. Tout type de réseau physique peut être utilisé ici.

La couche Internet s’occupe de l’adressage logique, de l’encapsulation des paquets de données et du routage. Le protocole central de cette couche est IP (pour Internet Protocol), mais d’autres protocoles et services sont présents dans cette couche comme le protocole ICMP (pour Internet Control Message Protocol) qui gère entre autres les fonctions de diagnostique du réseau.

La couche Host to Host, souvent qualifiée de couche transport, mais qui regroupe également des fonctions de la couche session du modèle OSI, fournit principalement 2 ensembles de services : TCP (Transmission Control Protocol), service orienté connexion avec acquittement des données transmises, et UDP (User Datagram Protocol), service non connecté où chaque paquet émis est indépendant des autres.

La couche process, souvent appelée couche application, définit les protocoles utilisés pour l’échange de données comme par exemple FTP (File Transfer Protocol) pour le transfert de fichiers ou SMTP (Simple Mail Transfer Protocol) pour l’envoi de courriels.

On retrouve souvent ce type de représentation pour comparer OSI et TCP/IP.

Il est cependant illusoire de vouloir comparer les 2 modèles, car si OSI est bien un modèle servant de base à la conception d’architectures réseau, TCP/IP est issu d’un développement plus opérationnel, et ne cherche pas à couvrir tous les besoins potentiels des utilisateurs.

Si OSI est une norme, TCP/IP n’en est pas une est ne représente qu'une somme de réponses apportées à des besoins exprimés.