1.2Principes de base des systèmes de communications et normalisation Les objectifs des systèmes de communications sont :
la constitution de réseaux téléinformatique permettant une intégration de la plus grande variété de systèmes informatiques,
l'indépendance des applications des contraintes apportées par le réseau de transmission,
la définition de règles de communication universelles, indépendantes des moyens de transfert,
l'indépendance de l'application vis-à-vis des terminaux,
l'adaptation du réseau à tous les types de réseaux existants.
Il existe deux types d'activités :
les activités d'allocation de ressources,
les activités consommatrices de ressources.
Comme dans les systèmes d'exploitation, il est nécessaire de résoudre les problèmes classiques d'allocation de ressources :
gestion de l'asynchronisme des demandes d'où la création et la gestion de files d'attente avec stratégie de demande,
gestion de l'interblocage et des congestions.
Les protocoles sont les conventions de gestion des relations entre les activités distantes.
Une couche regroupe les activités de même nature et offre des services aux couches adjacentes.
Un service définit les fonctionnalités de la couche.
Une requête issue de l'émetteur utilise les services de la couche application qui utilise elle-même les services de la couche de niveau inférieur. La définition est récursive. Les couches de même niveau, dites couches homologues, dialoguent en utilisant les protocoles de ce niveau.

Activités en cascade

En général, Pi-1,i = Pi,i+1 pour tout i mais cela n'est pas obligatoire.
1.2.1Principes généraux de conception des couches Les couches sont conçues suivant les principes suivants :
le nombre de couches est peu important pour simplifier la description et l'intégration de l'ensemble,
les couches sont distinctes pour prendre en charge des fonctions qui diffèrent manifestement par le traitement effectué ou par la technologie mise en jeu,
les fonctions similaires sont regroupées dans une même couche,
une frontière de couche est crée à un endroit où la description des services est concise et le nombre d'interactions à travers cette frontière réduit au minimum,
chaque couche n'a de frontières qu'avec les couches adjacentes,
les fonctions d'une couche sont définies de telle sorte que sa conception puisse être entièrement revue et ses protocoles modifiés sans avoir à modifier les services fournis ou attendus des couches adjacentes,
une couche est présente quand il est nécessaire de distinguer un niveau d'abstraction de manipulation de données : par exemple syntaxique ou sémantique.
Il existe plusieurs modèles en couches : celui d'IBM (architecture SNA devenue architecture AUA), celui des organismes de normalisation (modèle OSI), celui qui est utilisé dans le monde TCP/IP.
1.2.2Fonctions de transport et de traitement Le modèle présenté ici est le modèle OSI. Il nous permet de mettre en évidence les fonctions universelles des systèmes de communications. Les couches sont nettement délimitées ce qui permet d'en dégager les concepts fondamentaux.
Il y a séparation des fonctions de transport (couches basses) et des fonctions de traitement des données (couches hautes) car le transport est une fonction élémentaire spécialisée alors que le traitement est un ensemble infini de fonctions.
Les développements ces deux fonctionnalités sont effectués indépendamment. Les reprises d'erreurs de transmission sont simples en transport, impossibles en traitement.
Services assurés par la fonction transport
Mémorisation de blocs de longueur finie.
Acheminement des blocs d'informations en temps réel si possible avec un taux d'erreurs négligeable. On distingue à ce niveau deux fonctionnalités :
le contrôle des réseaux : c'est la couche réseau,
le contrôle du transport : c'est la couche transport.
1.2.3Couche physique Elle assure l'interface entre les systèmes informatiques et les supports physiques ainsi que le relais des éléments binaires transmis et l'interconnexion des circuits de données.
Exemple : câble Ethernet (norme ISO 8802.3).
1.2.4Couche liaison Son rôle est le suivant :
établissement de la liaison pour fournir les procédures et les moyens fonctionnels nécessaires pour l'établissement, le maintien et la libération des connexions de liaison de données,
identification des connexions qui utilisent les connexions physiques,
réglementation de la ressource commune pour éviter les verrous mortels,
synchronisation de l'envoi des informations (invitation à émettre ou à recevoir),
reprise sur erreurs de liaison ou interruption de la liaison,
contrôle de l'acheminement sans erreurs des blocs d'informations sur le support physique,
définition d'un bloc ou d'une trame pour le découpage de l'information,
gestion des caractères de synchronisation,
contrôle d'erreurs (méthodes VRC, LRC, CRC).
Exemple : contrôleur de tramme Ethernet (norme ISO 8802.2).
1.2.5Couche réseau Elle assure le relais, le routage, le multiplexage logique des paquets. Elle dispose de mécanisme de contrôle d'erreurs et de contrôle de flux. Elle doit permettre l'adaptation dynamique du réseau et la récupération des pannes de ligne.

Un routeur (on dit aussi abusivement passerelle) assure l'interface entre deux réseaux.
Les types de réseaux sont :
les réseaux à commutation de circuits,
les réseaux à commutation de paquets, avec les services de circuit virtuel ou de datagrammes.
L'adresse est l'identificateur relatif à la couche d'utilisation. Par exemple l'adresse Internet (adresse réseau) est différente de l'adresse Ethernet (numéro du contrôleur). La portée d'une adresse peut être globale (universelle) ou locale (portée limitée à un réseau local).
La fonction d'adressage détermine le chemin suivant lequel les informations transiteront. Il en existe deux types :
l'adressage global distribué : c'est long à gérer.
les adressages en cascade : chaque routeur détermine le chemin ultérieur ce qui définit des conventions locales d'adressage.
Sa nécessité est due à l'effondrement possible du réseau en fonction de la charge du trafic. Il est possible soit au niveau réseau soit au niveau transport. Les méthodes de contrôle de flux sont :
Les politique à seuil : le nombre de paquets qui transitent sur le réseau est limité à priori dans sa totalité.
Inconvénient : sous utilisation possible des équipements,
Avantage : simple à mettre en oeuvre.
Les politiques de pré allocation : les ressources nécessaires au transport des paquets sont réservées préalablement au transport. Les inconvénients sont la durée du traitement et son coût en ressources ce qui conduit à une sous-utilisation du réseau.
L'auto-contrôle de congestion
le système garde des mémoires en réserve (réseau ARPANET),
les paquets ont des durées de vie limitées et s'autodétruisent en cas de dépassement (protocole IP).
Mécanismes associés au contrôle de flux
Contrôle du trafic : c'est un protocole de dialogue entre le processus émetteur et le processus récepteur tel que le récepteur puisse inviter l'émetteur à cesser temporairement d'émettre en cas de nécessité, puis à réémettre quand c'est possible.
Contrôle en cascade : la quantité totale d'information en transit est inconnue.
Contrôles de bout en bout : il y a un contrôle permanent entre l'émetteur et la récepteur. Les délais de transmission imposent une durée très longue.
Mécanismes de fragmentation et de réassemblage
Fragmentation
Les paquets à transporter sont fragmentés pour s'adapter au réseau de transport. Ils sont numérotés pour regroupement ultérieur. Ils n'ont pas toujours la même taille, selon les caractéristiques des équipements intermédiaires.
Séquencement des paquets
Ce problème est traité par les procédures de liaison.
Transparence des informations transportées
Toute configuration binaire doit pouvoir utiliser le réseau.
Acheminement
Le routage dynamique de chemins nécessite leur adaptation et un adressage indépendant des conventions des autres couches.
Exemple : couche IP (Internet Protocol).
1.2.6Couche transport Cette couche assure le transport des informations de bout en bout. Elle assure :
le contrôle et la reprise sur erreurs de transmission,
le contrôle et l'optimisation de bout en bout du transport des données,
la sélection d'une qualité de services.
Erreur sur le contenu : il y a retransmission du paquet/datagramme erroné.
Perte d'un paquet/datagramme détectée par la numérotation des paquets. Il y a retransmission du paquet perdu.
Duplication d'un paquet/datagramme : il faut l'ignorer.
Erreur du destinataire : à éviter.
Les contrôles sont réalisés par une cascade de contrôles intermédiaires. Le protocole de transport est dit de bout en bout. L'objectif est la communication de deux utilisateurs situés dans différents systèmes indépendamment des caractéristiques du réseau. La qualité de service est définie par :
le délai d'établissement de la connexion,
la probabilité d'échec de cet établissement,
le délai entre l'émission et la réception,
le taux d'erreur résiduel non détecté,
la probabilité d'une panne (arrêt de déconnexion),
le délai de déconnexion,
la protection des connexions (sécurité et confidentialité de l'acheminement).
La prise en compte ou non des différents mécanismes possibles amène à définir cinq classes de protocoles (au niveau OSI). La classe minimale (classe 0) ne prend en compte que les fonctions dites "de base" à savoir : ouverture de la connexion, transfert de données, segmentation, déconnexion.
Sans entrer dans le détail, on peut considérer que les différentes classes comportent les mécanismes suivants :
Classes de protocole
Mécanismes 0 1 2 3 4
Concaténation non oui oui oui oui
Contrôle de flux non non oui oui oui
Numérotation des paquets non oui oui oui oui
Multiplexage non non oui oui oui
Données exprès non oui oui oui oui
Reprise sur erreur ou resynchronisation non oui non oui oui
Détection d'erreur non non non non oui
Eclatement non non non non oui
Segmentation oui oui oui oui oui
Les classes de protocoles sont définies par les propriétés suivantes :
Classe O : classe simple
pas de correction ni reprise sur erreurs,
compatibilité avec l'avis S70 du CCITT (telex).
Classe 1 : classe de base avec correction d'erreurs (Flew control)
pas de multiplexage,
récupération des erreurs signalées par le réseau.
Classe 2 : classe avec multiplexage
avec ou sans multiplexage sur une même connexion de réseau,
contrôle de flux optionnel,
pas de reprise sur erreur.
Classe 3 : classe avec correction d'erreurs
multiplexage avec ou sans contrôle de flux,
reprise sur erreur signalées par le réseau.
Classe 4 : classe avec détection et correction d'erreurs
multiplexage avec ou sans contrôle de flux,
reprise sur erreurs signalées par le réseau,
reprise sur erreurs non signalées par le réseau.
A ces classes de protocoles correspondent des types de réseaux : plus la qualité du transport est bonne, moins il est nécessaire que la qualité du réseau le soit et réciproquement.
Réseau de type A : bon réseau pour les applications courantes
Il y a un taux acceptable d'incidents signalées par le service réseau et d'erreurs résiduelles non signalées par le service réseau.
Réseau de type B : réseau de qualité moyenne
Il y a un taux acceptable d'erreurs résiduelles non signalées et un taux inacceptable d'erreurs signalées. Les mécanismes de détection et de correction sont nécessaires. D'où une qualité de transport de classe 1 ou 3.
Réseau de type C : réseau de mauvaise qualité
Il y a un taux inacceptable d'erreurs signalées et non signalées. D'où la nécessité de compenser par un service de transport de classe 4.
Exemple : la transmission de données par satellite nécessite un protocole de transport de classe 4.
1.2.7Couches hautes Cette couche est la première du modèle qui ne concerne pas la transmission des données. C'est l'interface entre le système d'exploitation et les réseaux de transmission. Elle fournit aux entités de présentation coopérantes les moyens nécessaires pour organiser et synchroniser leurs dialogue et pour gérer leur échange de données. Elle a les propriétés suivantes :
offre des outils communs aux différents utilisateurs,
utilise le service de transport sans chercher à l'améliorer,
les fonctions de session ne concernent que le traitement,
aujourd'hui, communications point à point en mode connexion.
Cette couche assure les fonctions suivantes :
support du dialogue entre le processus émetteur et le processus récepteur,
initialisation, synchronisation, terminaison du dialogue.
Exemple : couche RPC (Remote Procedure Call) de Sun.
Elle assure la prise en charge des problèmes associés à la représentation des données et informations que les applications doivent échanger.
Exemple : couche XDR (eXternal Data Representation) de Sun.
C'est une fenêtre d'accès aux services réseau pour le processus d'application. Elle assure les services suivants :
identification et authentification des partenaires susceptibles d'entrer en communication,
détermination de leur disponibilité,
délivrance de l'autorisation de communiquer,
agrément des mécanismes de préservation du secret.
La commande mount s'appuie sur le protocole NFS (Networked File System).

La couche application a deux modes de fonctionnement :
le mode connecté : le traitement est synchrone,
le mode non connecté : le traitement est différé.
Exemple d'applications en mode connecté et non connecté
En mode non connecté la messagerie, en mode connecté la gestion des transactions, l'interrogation de bases de données, le traitement en temps partagé, la soumission de travaux sur une station distante, le transfert de fichiers.
1.2.8Encapsulation des données Chaque protocole gère des unités de données de protocole (Protocol Data Unit) qui sont encapsulées puis transmises à la couche de niveau inférieure. Couche liaison : trame Ethernet ,
Couche réseau : datagramme IP,
Couche transport : segment TCP ou UDP.
Le segment (TCP ou UDP) est complété par un en tête. L'ensemble est transmis à la couche IP sous forme d'un datagramme, lui même complété par un en tête, transmis au contrôleur Ethernet qui émet la trame sur le support physique.
|