WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

à‰tude portant sur les mécanismes mis en Ĺ“uvre dans le réseau

( Télécharger le fichier original )
par Parfait NIANGA NZENGO
Ecole supérieure des métiers d'informatique et de commerce RDC - Diplôme d' ingénieur en administration réseau et gestion de bases de données 2012
  

Disponible en mode multipage

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

REPUBLIQUE DEMOCRATIQUE DU CONGO

MINISTERE DE L'ENSEIGNEMENT SUPERIEUR UNIVERSITAIRE ET DE LA RECHERCHE SCIENTFIFIQUE

ECOLE SUPERIEURE DES METIERS D'INFORMATIQUE ET DE COMMERCE

« E.S.M.I.C.O.M. »

N°MINESURS/CABMIN/123/2005

B.P.15935 KIN 1

KINSHASA/LINGWALA

ETUDE PORTANT SUR LES MECANISMES MIS EN OEUVRE DANS LE RESEAU

PAR

NIANGA NZENGO

Travail de fin de cycle présenté en vue de l'obtention du diplôme de graduat en sciences informatiques

Option : Administration Réseau et Gestion de Bases des Données

Directeur : IrNSALA BOTULI ISINIOMA

Août 2012DEDICACE

A mes parents, NIANGA NKUFI NTUBUANGA Nestor et MBIMBA NZINGA Liliane pour nous avoir insufflés la combativité dans la sagesse, la dignité et les sacrifices consentis pour notre formation.

A mes frères et soeurs : Evrard NIANGA, Audry NIANGA, Branly NIANGA, Plamedi NIANGA et Chancela NIANGA.

Aux autorités académiques de l'Institut ( Professeurs et Ingénieurs) pour la formation dont nous faisons preuve, en voici un des fruits de votre formation.

Ce travail est le fruit de vos peines et vos efforts.

REMERCIEMENTS

Ce travail qui vise l'obtention du grade d'ingénieur technicien en Administration Réseau et Gestion des Bases de données, a été conduit à plusieurs personnes.  Qu'il nous soit permis de les remercier :

Nous voudrions exprimer note profonde gratitude et nos remerciements à l'Ingénieur NSALA BOTULI ISINIOMA Thierry qui a proposé le sujet et en a assuré la direction, sa grande disponibilité et ses remarques importantes ont joué un rôle essentiel dans la réalisation de ce travail en débit de ses occupations multiples.

Nous exprimons notre gratitude à tous les collègues étudiants, compagnons de lutte en général : Yannick BIBWANGU, Yves BAZANDE, Laetitia KAMANDA, Priscille LANDU, Christian MATONDO, Chaber KABILUA, Nike LULEKA en particulier pour l'entraide, les encouragements, les conseils et l'ambiance ayant caractérisé notre cohabitation.

A mes très chers amis : Ruth MANTELUA, Dervis KUKISOKILA, Guillit DIKA, Stallone MBOSO, Branly DIAYAYA,Bénie NDANGI, Anita MAKENGO, Hermès NSASI, Casny MPADI,Julvest LUNGI, Faria MULONGO, Rodrick ILEBO,Jarul MATSHEBA pour leurs attachement combien inoubliable dans notre vie.

Certaines personnes ne trouveront peut-être pas leurs noms cités dans ce préambule alors qu'elles nous sont chères. Nous avons comme excuse à ce désagrément les limites tracées à cette page ; nous sollicitons leur indulgence.

Parfait NIANGA NZENGO

INTRODUCTION GENERALE

1. PRESENTATION DU SUJET

Le réseau étant un ensemble des moyens matériels et logiciels, nous avons trouvé bon de parler de ce concept en considérant les différents aspects permettant de mettre en oeuvre cet ensemble à savoir l'adressage et le nommage, le routage, la segmentation et le contrôle de congestion.

2. PROBLEMATIQUE ET HYPOTHESE

2.1. Problématique

La problématique étant un ensemble des questions qu'une science se pose dans un domaine particulier, nous nous sommes posé autant des questions parmi lesquelles : Qu'est-ce qui permet l'échange à travers un ou plusieurs réseaux, entre deux entités communicatifs quelconque?

2.2. Hypothèse

Notre travail permettra à tous de cerner que le réseau nécessite que :

o Chaque correspondant puisse être localisé et identifié de manière unique sur le réseau.

o En fonction des éléments ci-dessus, le réseau assure l'acheminement des blocs d'informations.

o La taille des unités de données transférées soit adaptée à la capacité du réseau.

o Des mécanismes de contrôle soient mis en oeuvre pour garantir que le trafic admis dans le réseau ne conduira pas à l'effondrement de celui-ci.

3. CHOIX DU SUJET

Notre choix a été porté plus sur ce sujet car en consultant la plupart des travaux de fin de cycle ou des mémoires de nos ainés, nous avons remarqué que le choix était plus porté sur des sujets abordant des technologies, des périphériques, des implémentations, des protocoles, etc., très rare sont ceux qui parlent des mécanismes mis en oeuvre dans le réseau.

4. DELIMITATION

Quand nous parlons de délimitation, nous faisons allusion au temps et à l'espace, notre travail est plus borné dans l'espace c'est-à-dire la combinaison destinée à assurer un fonctionnement.

En ce qui concerne le temps, nos recherches ont débuté en Janvier 2012 pour s'achever en Août de la même année.

5. METHODES ET TECHNIQUES

Pour ce présent travail la méthode analytique nous a été d'une très grande utilité.

Nous nous sommes servi de plusieurs techniques entre autre la technique documentaire qui nous a permis de consulter divers documents en rapport avec notre sujet. La technique d'interview est venue compléter l'idée fournie par la documentation de manière à nous permettre de sélectionner quelques renseignements moyennant les questions auprès des scientifiques qui étaient disposés à nous livrer l'information nécessaire, des lectures de cultures, de recherches sur Internet.

6. SUBDIVISION DU TRAVAIL

Hormis l'introduction générale et la conclusion, notre travail est subdivisé en trois chapitres :

o Le premier : Généralités sur les réseaux informatiques.

o Le second : Architectures de réseaux.

o Le troisième : Mécanismes mis en oeuvre dans le réseau.

CHAPITRE I GENERALITES SUR LES RESEAUX INFORMATIQUES

1. INTRODUCTION

1.1. Définition 

Le réseau est un ensemble des moyens matériels et logiciels géographiquement dispersés destinés à offrir un service ou à assurer le transport des données1(*).

1.1.1. Objectifs Techniques

L'une des raisons justifiant très souvent l'installation d'un réseau est le partage des ressources entre plusieurs utilisateurs.

Il est particulièrement intéressant d'accéder à des données à distance et de réaliser sur ces dernières toutes les opérations qui seraient disponibles en travaillant réellement sur l'ordinateur.

De même, il est possible de mettre des programmes à la disposition de l'ensemble des utilisateurs connectés. Dans ce cas, le nombre d'installations d'un logiciel peut par exemple être réduit à une seule, ce qui facilite de manière évidente la tâche d'un administrateur du système.

Enfin, de nombreux périphériques peuvent être partagés sur un réseau (imprimantes, copieurs, lecteurs CD-RO M). C'est alors souvent l'aspect financier qui est intéressant et motive les décisions.

La fiabilité peut être à la source de la mise en place d'un réseau. Cette architecture permet une duplication des données et limite ainsi les pertes de données. L'interconnexion de plusieurs ordinateurs facilite aussi la poursuite du travail du travail en cas de problème sur l'une des machines. De nombreux exemples très du monde industriel démontrant l'importance d'une telle gestion des pannes.

L'aspect financier n'est pas négligeable lors d'un choix en matière de réseaux. Il est évident que le partage de périphériques entraine directement une réduction des coûts. Il faut aussi constater que les petits ordinateurs ont un meilleur rapport prix/performance : pour doubler la puissance d'un ordinateur (puissance, processeur, mémoire, espace disque...), il est beaucoup plus simple et moins coûteux d'acquérir un second ordinateur que de faire évoluer chaque élément.

Le réseau dit classique prend alors place dans une architecture client-serveur évolué, dont il est possible d'augmenter progressivement, régulièrement ou non, chaque élément2(*).

1.1.2. Objectifs utilisateurs

La communication est sans nul doute l'aspect le plus intéressant pour un utilisateur. Elle peut prendre la forme d'un courrier électronique, de vidéoconférence, de groupes d'intérêt.

Un certain nombre de services sont proposés aux particuliers via réseau. L'accès à l'information est de loin le plus utilisé ; cette information peut être de type financier (banque, bourse...), des journaux électroniques, des bibliothèques en ligne.

La toile (World Wide Web) est aujourd'hui une source mondiale d'informations de tous types directement utilisables par chaque utilisateur, et basée sur l'interconnexion physique de très nombreux locaux.

Citons enfin de nouvelles applications déjà ou prochainement disponibles : les jeux interactifs, la vidéo à la demande, la radio...

1.2. DIFFERENTS TYPES DE RESEAUX

Les caractéristiques principales qui vont permettre de différencier les grandes familles de réseaux sont la taille et le mode de transmission de l'information utilisé, ces deux facteurs étant liés.

RESEAUX LONGUE DISTANCE

1000Km

10 Km

1Km

10m

RESEAUX LOCAUX

RESEAUX METROPOLITAINS

 
 
 

Fig. 1.1. Etendue géographique des réseaux

1.2.1. Les réseaux locaux

Un réseau local ou LAN (Local Area Network) permet de connecter des éléments (ordinateurs, périphériques...) distants de quelques mètres à quelques centaines de mètres. On récence donc sous cette application la plupart des réseaux informatiques présentes dans les entreprises.

La notion de surface géographique limitée n'implique pas un nombre faible de postes de travail interconnectés : un réseau local peut en effet compter jusqu'à plusieurs centaines de machines.

La transmission des données est réalisée par un support simple auquel chaque ordinateur accède, selon des méthodes par des normes établies.

Lorsqu'un poste de travail désire émettre des données vers un second, le mode de transmission est la diffusion. L'émetteur dépose sur le support commun un message contenant les données, son adresse, l'adresse du destinataire ainsi qu'un certain nombre d'autres éléments permettant entre autre de gérer les erreurs de transmission.

Le support physique transmet ce message à chacun des postes qui lui sont connectées. Parmi tous ces récepteurs, seul celui concerné par le message va s'identifier, reconnaissant l'adresse du destinataire envoyé avec les données comme étant la sienne.

Les débits proposés par les réseaux locaux s'étalent de 1 Mbit/s à plus de 1Gbit/S, en fonction des normes et de l'évolution matérielle. Les délais de transmission sur de tels réseaux sont très courts.

Un réseau local peut présenter différentes topologies physiques, qui correspondent à sa forme physique, sans lien direct avec l'aspect fonctionnel. Les figures 1.2, 1.3 et 1.4 présentent les topologies classiques de réseaux locaux3(*).

0

0

Fig. I.3 Le bus

0

Fig. I.2. L'étoile

Fig. I.4. L'anneau

Notons aussi que l'on peut employer aujourd'hui des liaisons sans fil dans un LAN. Une telle installation est intéressante pour connecter un ordinateur portable à un réseau filaire sans manipulation contraignante ou pour disposer d'un LAN entièrement sans fil dans un environnement particulier.

Il est convenable de faire cohabiter toutes les topologies physiques que nous avons citées ci-dessus au sein d'un même réseau local. Les problèmes de compatibilité entre les différentes normes peuvent être résolus par l'ajout de matériels spécifiques (passerelles).

Anneau

Etoile

Sans fil

Bus

0

Fig.1.5 Intégration de plusieurs topologies dans un LAN

1.2.2. Les réseaux métropolitains4(*)

Un réseau métropolitain ou MAN (Métropolitain Area Network) est un réseau dont la géographie peut aller jusqu'à couvrir une ville. Il sert généralement à interconnecter des réseaux distants de quelques kilomètres.

LAN D

Ordinateur indépendant

LAN C

LAN B

0

Fig. 1.6. Réseau métropolitain

Le fonctionnement d'un MAN est similaire à celui des réseaux locaux. Dans ce cas encore, diverses normes ont été établies, telles DQDB, FDDI ou ATM pour ne citer que les plus répandues.

1.2.3. Les réseaux à longue distance5(*)

Dans un rôle, un réseau à longue distance ou WAN (Wide Area Network) se rapproche d'un MAN. Il est en effet utilisé pour permettre des échanges entre des réseaux locaux, mais qui sont séparés ici par des distances plus importantes, de plusieurs centaines à plusieurs milliers de kilomètres. Le terme de MAN tend d'ailleurs de plus en plus à être intégré dans la famille des réseaux à longue distance et devrait disparaitre prochainement.

Sa structure est, par contre, plus complexe. Les ordinateurs, indépendants ou regroupés en LAN constituent les extrémités du réseau. A la différence des réseaux locaux ou métropolitains, la transmission des données entre ces ordinateurs n'est plus laissée à la seule charge du support de transmission, mais d'un sous-réseau de communication. Ce sous-réseau possède les lignes physiques ainsi que des éléments actifs (commutateurs) qui vont aiguiller l'information de l'émetteur vers le destinataire à travers le maillage. La complexité de ce maillage varie avec la taille géographique et le nombre de commutateurs présents sur le parcours des données, on parle aussi dans ce cas du réseau maillé.

0

Fig. 1.7. Réseau longue distance

Le mode de transmission des données dans un réseau à longue distance est généralement le point à point. Chaque commutateur est un noeud qui possède une capacité de réflexion : lorsqu'il reçoit de l'information sur l'un de ses ports de communication, il détermine sur quel port émettre cette information pour qu'elle parvienne au plus vite au destinataire.

Le support de communication entre deux commutateurs peut aussi être un satellite. Dans ce cas, la transmission de l'information se fait par diffusion.

Le plus grand réseau longue distance est aujourd'hui internet. D'un point de vue physique, le réseau mondial n'est autre que l'interconnexion d'un très grand nombre de réseaux locaux. Notons enfin qu'un intranet est un réseau local utilisant les technologies d'internet et proposant les mêmes services aux utilisateurs.

1.3. LES RESEAU A COMMUTATION6(*)

Le concept de réseau à commutation est né de la nécessité de mettre en relation un utilisateur avec n'importe quel autre utilisateur (relation de 1à1 parmi N ou interconnexion totale) et de l'impossibilité de créer autant de liaison point à point qu'il y a des paires potentielles de communications.

Ainsi, pour réaliser l'interconnexion totale de 2 stations, il suffit d'une liaison, pour 3 stations à 3 liens... D'une manière générale, dans un réseau de N stations, pour relier la station N aux N-1 stations déjà connectés il faut (N-1) liens. En comptant de cette manière, on commet l'erreur de compter deux fois chaque lien (le lien de A vers B est le même que le lien de B vers A), le nombre total de liens nécessaires dans un système de N noeud est donc de :

Nombre de liens=N (N-1)

Dans ce contexte où la ressource est rare vis-à-vis de la demande potentielle (si simultanément tous les abonnés devraient joindre un autre abonné...), il est indispensable de rechercher des techniques particulières pour optimiser le partage des ressources, c'est l'objectif des techniques de commutation.

Selon la technique employée pour « à relier » deux utilisateurs, on distingue la commutation de circuit, des messages ou de paquets.

Un réseau à commutation assure une connectivité totale. Dans ses conditions, la topologie logique ou l'interconnexion totale, vue du côté des utilisateurs, est différente de la topologie physique réelle.

1.3.1. La commutation de circuits

Dans la commutation de circuit, le lien physique est établi par juxtaposition de différents supports physiques afin de constituer une liaison bout à bout entre une source et une destination. La mise en relation physique est réalisée par les commutateurs avant tout échange de données et est maintenue tant que les entités communicantes ne la libèrent pas expressément.

La constitution d'un chemin physique, emprunté par la suite par toutes les données transférées, garantit l'ordonnancement des informations, elles sont reçues dans l'ordre où elles ont été émises. Cependant, les deux entités correspondantes doivent être présent durant toute l'échange de donnée, il ya stockage intermédiaire. Le débit de la source et du destinataire doit être identique.

Les abonnés monopolisent toute la ressource durant la connexion. Dans ces conditions, la facturation est généralement dépendante du temps et de la distance.

I.3.2 La commutation des messages

En commutation des circuits la régulation est réalisée à la connexion, s'il n'y a plus de ressource disponible, de bout en bout, la connexion est refusée.

Pour éviter d'avoir à sur dimensionner les réseaux, la commutation des messages n'établit aucun lien physique entre les deux systèmes d'extrémité si le message est transféré de noeud en noeud et mis en attente si le lien inter noeud est occupé.

Chaque bloc d'information (message) constitue une unité de transfert, par chaque noeud, et retransmis au noeud suivant dès qu'un lien se libère, le trafic réalisé, le lien est libéré. Assurant une meilleure utilisation des lignes, la commutation des messages autorise un dimensionnement des réseaux à commutation des circuits.

En cas de fort trafic, il n'ya pas blocage du réseau, mais seulement un ralentissement (attente de libération d'un lien), la mémorisation intermédiaire de l'intégralité des messages nécessite des mémoires de masse importante et augmente le temps de temps de transfert. Les réseaux à commutation des messages ne sont pas adaptés aux applications interactives.

Les réseaux à commutation des messages assurent par rapport à la commutation des circuits :

· Le transfert, même si le correspondant distant est occupé ou non connecté ;

· La diffusion d'un message à plusieurs correspondants ;

· L'adaptation des débits et éventuellement des protocoles.

La commutation des messages ne permet qu'un échange simplex et asynchrone, elle est plus un service qu'une technique de réseau, la commutation des messages est aujourd'hui le support logique des réseaux télex et des systèmes de messagerie moderne.

I.3.3. La commutation des paquets

La commutation des paquets utilise une technique similaire à la commutation des messages, le message est découpé en fragments (paquets) de petites tailles. Chaque paquet est acheminé dans les réseaux indépendamment du précédent. Contrairement à la commutation des messages, il n'y a pas de stockage d'information dans les noeuds intermédiaires. Chaque noeud, recevant un paquet, le réémet immédiatement sur la voie optimale. De ce fait, le séquencement des informations n'est plus garanti. Pour reconstituer le message initial, le destinateur devra, éventuellement, réorganiser les différents paquets avant le réassemblage.

Ce mode de transfert optimise l'utilisation des ressources, les paquets de différentes sources sont multiplexés sur un même circuit. Cependant, chaque paquet doit contenir les informations nécessaires à son acheminement ou un label identifiant le flux (multiplexage par étiquette). La ressource offerte est banalisée et non attribuée à une communication particulière comme dans la commutation des circuits.

La commutation des paquets et le multiplexage par étiquette sont des techniques similaires. Elles se différencient essentiellement par le fait que l'une admet des unités des données de taille variable (commutation des paquets), l'autre des unités des données de taille fixe (multiplexage par étiquette). Le multiplexage par étiquette est aussi nommé commutation des cellules.

1.4. LES MECANISMES MIS EN OEUVRE DANS LE RESEAU7(*)

L'échange, à travers un plusieurs réseaux, entre deux entités communicantes quelconques, nécessite que :

· Chaque correspondant puisse être localisé et identifié de manière unique sur le réseau ;

· En fonction des éléments ci-dessus, le réseau assure l'acheminement des blocs d'information, c'est le routage ;

· La taille des unités de données transférées soit adaptée aux capacités du réseau, c'est la segmentation ;

· Des mécanismes de contrôle sont mis en oeuvre pour garantir que le trafic admis dans le réseau ne conduira pas à l'effondrement de celui-ci, c'est le contrôle de congestion.

CHAPITRE II  ARCHITECTURE DE RESEAUX

II.1. NOTIONS DE COUCHES8(*)

Les architectures de réseaux, comme toutes les architectures de systèmes ouverts, sont fondées sur une hiérarchie de couches. Ces couches sont repérées par leur niveau dans la hiérarchie. Chacune d'entre elles a pour rôle de fournir des services à la couche qui lui est immédiatement supérieure.la nature de ces services diffère en fonction du niveau de la couche et doit être adaptée au mieux à son rôle.

La couche de niveau nd'un ordinateur ne peut communiquer qu'avec la couche de niveau n d'un autre ordinateur.

Une communication entre deux couches de niveau n est soumise à un certain nombre de règles définies par un protocole. Le protocole fixe, de manière parfaitement claire et détaillée, toutes les caractéristiques de l'échange qui est effectué entre les deux entités de niveaun.

Couche de niveau n

Couche de niveau n

Ordinateur A

Ordinateur B

Protocole de niveau n

0

Fig. 2.1.Protocole

Pour réaliser la communication, la couche de niveau nutilise des services offerts par la couche de niveau n-1. Entre deux hôtes A et B, les données traversent toutes les couches de l'hôte A (de n à 1), puis l'hôte B (de 1 à n).

Les services de la couche n sont proposés à la couche n1 grâce à son interface. La couche n1 n'a en aucun cas besoin de connaitre le fonctionnement interne de la couche n. il ne lui est pas nécessaire de disposer des méthodes implémentées, mais uniquement des règles d'utilisation de ces mêmes méthodes.

Couche de niveau 3

 

Couche de niveau 3

Interface

Interface

Couche de niveau 2

Couche de niveau 2

Interface

Interface

Couche de niveau 1

Fig. 2.2.service

II.2. SERVICES9(*)

Nous venons de voir que le rôle d'une couche est de fournir des services à la couche de niveau directement supérieur, et par cet intermédiaire, à toutes les couches plus hautes.

Fournisseur du service

Utilisateur du service

0

Couche de niveau n+1

Interface

Couche de niveau n

Fig. 2.3.service

II.2.1. Définition

Le nombre de services proposés par une couche varie et peut être élevé. Il est nécessaire de répartir la réalisation de ces services à l'intérieur de la couche entre différents éléments.

Ces éléments fournisseurs de services sont les entités de la couche. A une entité correspond un service. Selon la nature du service à fournir, une entité est matérielle ou logiciel : pour les couches les plus basses, les entités sont plus souvent matérielles, alors que dans les couches de niveaux élevés, ce sont des éléments de programmation qui exécutent les tâches nécessaires à la réalisation du service demandé.

Nous avons dit qu'une couche de niveau n fait appel à la couche de niveau n-1 lorsqu'elle a besoin d'un service. Plus précisément, c'est une entité de la couche n qui demande le service à une entité de niveau n-1. Pour cela, les deux entités (de niveau net n-1) vont établir un lien via un point d'accès au service (SAP : service Access point).

La liste de SAP disponibles à une entité de niveau n est procurée par l'interface de niveau n/n-1.

Entité de niveau n + 1

Entité de niveau n + 1

Entité de niveau n + 1

Couche de niveau n + 1

SAP

Interface

Couche de niveau n

SAP

0

Fig. 2.4.service

D'un point de vue fonctionnel, les « messages » qui transitent entre les deux entités (n et n-1) sont des unités de données de protocole de niveau n (n-PDU : Protocole Data Unit). Une PDU contient des données (SDU : Service Data Unit) complétées par des dispositifs de gestion des erreurs de transmission (ICI : Interface Control Information).

II.3. PROTOCOLE DE COMMUNICATION10(*)

Un protocole réseau est un ensemble de règles et de procédures de communication utilisées de part et d'autre par toutes les stations qui échangent des données sur le réseau.

Il existe de nombreux protocoles réseaux (NETWORK PROTOCOLS), mais ils n'ont pas tous, ni le même rôle, ni la même façon de procéder. Certains protocoles réseaux fonctionnent au niveau de plusieurs couches du modèle OSI, d'autres peuvent être spécialisés dans la réalisation d'une tâche correspondant à une seule couche du modèle OSI. Un paquet transmis sur le réseau est constitué de plusieurs couches d'informations correspondant aux différents traitements de chacun des protocoles de la pile.

Différentes piles de protocoles peuvent coexistées sur une même station, selon les besoins de communication vers des environnements différents. Les piles sont alors ordonnées entres elles afin que le processus de transmission essaye d'abord l'une puis l'autre.

Un réseau qui comporte plusieurs segments doit en général utiliser un protocole routable.

II.3.1. Le modèle OSI et la pile de protocoles

Une pile de protocoles est une combinaison de plusieurs protocoles. Plusieurs protocoles peuvent collaborer ou coopérer au sein d'une suite ou d'une « pile de protocoles » (PROTOCOL STACK). Dans une pile de protocole, les différents protocoles sont organisés, ordonnés, hiérarchisés, les uns à la suite des autres, afin d'accomplir un ensemble de tâches correspondant à tout ou partie du modèle OSI. Le fonctionnement des différents protocoles de la pile doit être coordonné afin de prévenir les conflits et les opérations inachevées.

L'architecture en couche du modèle OSI se retrouve dans la pile de protocoles et assure la coordination de chacune des opérations du processus de transmission des données. En générale, on parle de pile de protocole pour désigner l'ensemble du processus de transmission des données sur le réseau, et donc l'ensemble des couches du modèle OSI. Toutefois, le seul empilement de deux protocoles peut être également désigné par le terme de pile de protocoles.

Selon le modèle OSI, le processus de transmission des données sur un réseau est décomposé en plusieurs étapes, dans un ordre bien déterminé. Le modèle OSI distingue 7 étapes fondamentales, et décompose le processus de transmission des données en 7 couches. Chaque couche a une fonction bien précise dans le processus de transmission des données. A chacune de ces couches correspond la réalisation d'une ou de plusieurs tâches, et plusieurs cas de figure sont envisageables :

· Une tâche est réalisée par un seul protocole.

· Toutes les tâches d'une couche OSI sont réalisées par un seul protocole.

· Plusieurs tâches appartenant à différentes couches OSI sont réalisées par un seul protocole.

· Toutes les tâches de plusieurs couches OSI sont réalisées par un seul protocole.

Ainsi, les spécifications du modèle OSI sont respectées, mais la délimitation de chaque couche ne l'est pas forcément. Dans le processus de transmission, les données « traversent » la pile de protocoles, mais le nombre de protocoles constituant la pile n'est pas obligatoirement égale au nombre de couches du modèle OSI. La théorie ne correspond pas exactement à la réalité... Les couches du modèle OSI correspondent plus ou moins aux couches d'une pile de protocoles.

Les couches basses spécifient la manière dont les matériels sont connectés, tandis que les couches hautes énoncent les règles de communication. Les opérations des couches hautes sont plus complexes que celles des couches basses.

Le modèle OSI

Les couches

Les fonctions

APPLICATION

Initie ou accepte une requête réseau

PRESENTATION

Ajoute des informations de formatage, d'affichage, de cryptage

SESSION

Ajoute des informations de flux pour indiquer le départ d'un paquet

TRANSPORT

Ajoute des informations pour le traitement des erreurs des paquets

RESEAU

Ajoute un numéro d'ordre et des informations d'adressage au paquet

LIAISON

Ajoute des informations de contrôle d'erreurs d'un paquet (CRC)

PHYSIQUE

Emet les paquets sur le réseau sous la forme d'un flot de bits bruts

Tableau 1 : les couches basses et hautes du modèle OSI

II.3.2. Les liaisons de protocoles

Dans une pile de protocoles, il y a au moins un protocole correspondant à chacune des couches du modèle OSI. Dans un tel cas, le processus de transmission des données est unique et traverse successivement tous les protocoles de la pile jusqu'à l'émission des trames sur le réseau. Il n'y a pas de liaisons parce qu'il n'y a pas de choix à faire entre plusieurs protocoles de la même couche (en fait, les liaisons sont évidentes et sous-entendues, mais on dit qu'il n'y a pas de liaisons parce qu'il n'y a pas de bifurcations).

Le plus souvent, la pile de protocole est constituée, pour chacune des couches du modèle OSI, de plusieurs protocoles différents. Une pile qui comporte à chaque niveau plusieurs protocoles est capable de communiquer dans plusieurs environnements (ce sont les avantages de l'ouverture, de la compatibilité et de la diversité). Le processus de transmission des données doit obligatoirement passer par l'un des protocoles de chaque couche (sinon la fonction de la couche correspondante ne serait pas réalisée), mais selon les besoins, il peut passer par n'importe lesquels d'entre eux. Le processus de transmission des données est guidé par des liaisons (BINDINGS) qui indiquent à chaque niveau le protocole à choisir et le protocole suivant. Les liaisons des protocoles de la pile indiquent les différents chemins possibles pour le processus de transmission des données. Chacun des chemins peut être (par un raccourci conceptuel et linguistique) considéré et appelé une pile.

Quand il existe plusieurs protocoles pour une même couche, il existe en général des liaisons en amont et en aval. Chacun des protocoles d'un même niveau est relié à l'un des protocoles précédents par une liaison, et à l'un des protocoles suivant par une autre liaison. Le processus de transmission des données doit faire un choix à chaque niveau où il y a une liaison.

Les liaisons sont hiérarchisées entre elles par un ordre de priorité. L'ordre des liaisons de la pile de protocole détermine l'ordre dans lequel le système d'exploitation réseau exécute les protocoles. Ainsi, selon le type de données à transmettre, le type de correspondant, ou le type de réseau, l'un ou l'autre des protocoles sera sélectionné ; par défaut, le protocole le plus prioritaire sera exécuté en premier, s'il n'aboutit pas, le protocole suivant sera exécuté, et ainsi de suite... Par exemple, dans un ordinateur NT, plusieurs protocoles de connexion ou d'acheminement des paquets (par exemple TCP/IP et NWLink) peuvent cohabiter à l'intérieur d'une même pile de protocole. Le protocole prioritaire de la pile (par exemple TCP/IP) sera d'abord utilisé pour établir la connexion avec l'ordinateur auquel les données doivent être transmises, si la connexion ne peut s'établir, alors le deuxième protocole (par exemple NWLink) effectuera à son tour une tentative de connexion...


En générale, les liaisons de protocoles sont créées pendant l'installation du système d'exploitation réseau ou pendant l'installation des protocoles.

II.3.3. Les avantage des liaisons de protocoles

L'utilisation de plusieurs protocoles procure des avantages :

· La communication dans des environnements hétérogènes ;

· La réunion d'ordinateurs différents sur le même réseau ;

· La coopération de systèmes d'exploitation différents sur le même réseau ;

· La jonction de réseaux utilisant des protocoles différents ;

· L'utilisation conjointe d'un protocole routable et d'un protocole non routable.

Les liaisons de protocoles permettent de combiner plusieurs protocoles réseaux sur un même ordinateur. Les liaisons de protocoles sont très utiles dans un réseau hétérogène parce qu'elles permettent de faire communiquer des ordinateurs qui fonctionnent sur différents systèmes d'exploitation (par exemple MICROSOFT et NOVELL) et des réseaux qui fonctionnent avec différents protocoles (par exemple TCP/IP et SPX/IPX). Plusieurs protocoles (par exemple TCP/IP et SPX/IPX) peuvent être « liés » à la même carte réseau, et le processus de transmission des données utilise soit l'un, soit l'autre.

Les liaisons de protocoles permettent de combiner plusieurs cartes réseaux. Plusieurs cartes réseaux peuvent être installées sur le même ordinateur, et à chacune peut correspondre une pile de protocoles différents.

II.3.4. Les piles standards

Certaines piles de protocoles sont reconnues par l'industrie informatique comme des standards ; ce sont soit des protocoles propriétaires (développés par des sociétés privés américaines à but capitalistique), soit des protocoles issus d'organismes de normalisation (la plupart du temps ces organismes sont américains) qui ont initié une réflexion volontaire et concertée :

· Le modèle OSI

· L'architecture SNA (Systems Network Architecture) de la société IBM

· L'architecture DECnet de la société DIGITAL EQUIPMENT COMPUTER pour mettre en oeuvre l'architecture DNA (Digital Network Architecture) dans le cadre des réseaux locaux ETHERNET ou des réseaux étendus MAN. La version actuelle s'appelle DECnet phase V.

· L'architecture NetWare de la société NOVELL

· L'architecture AppleTalk de la société APPLE COMPUTER

· La pile Internet TCP/IP

· Etc....

Les organismes de normalisation comme l'ISO, l'IEEE, l'ANSI (American National Standard Organisation), le CCITT devenue le l'ITU (International Télécommunication Union) et bien d'autres ont développé des protocoles correspondant aux spécifications du modèle OSI (avec ses 7 couches) et du modèle IEEE 802 (avec les deux sous-couches LLC et MAC).

Tableau comparatif des piles de protocoles

Le modèle OSI

Windows NT

La pile Internet



APPLICATION





Redirecteurs



Serveurs



NFS





SNMP





FTP





Telnet





SMTP



XDR

 

PRESENTATION

TDI

 

SESSION

TCP/IP

NWLink

NBT

DLC

TCP

TRANSPORT

NDIS 4.0

IP

RESEAU

Wrapper NDIS dont les pilotes des cartes réseaux NDIS

Pilotes LAN

LIAISON

La sous-couche MAC

PHYSIQUE

La couche PHYSIQUE

La couche PHYSIQUE

Tableau comparatif des piles de protocoles

Le modèle OSI

NetWare

APPLE

APPLICATION



NCP

AppleShare

PRESENTATION

AFP

SESSION

Tubes nommés

NetBIOS

ASP

ADSP

ZIP

PAP



TRANSPORT

SPX

ATP

NBP

AEP

RTMP

IPX

DDP

RESEAU

Pilotes LAN

Pilotes LAN

LIAISON

ODI

NDIS

Local Talk

Token Ring

Ether Talk

PHYSIQUE

La couche PHYSIQUE

La couche PHYSIQUE

II.3.5. Les protocoles en trois catégories

Les protocoles peuvent être classés par simplification en trois catégories et non plus en sept couches comme le recommande le modèle OSI. En effet, dans la réalité, les protocoles ne suivent pas strictement les frontières établies par l'organisme de normalisation ISO. Le modèle OSI est réduit à trois couches.

Le tableau de substitution des sept couches en trois catégories

Les sept couches du modèle OSI

Les trois catégories de protocoles

APPLICATION



APPLICATION

PRESENTATION

SESSION

TRANSPORT

TRANSPORT

RESEAU



RESEAU

LIAISON

PHYSIQUE


II.3.5.1. Les protocoles de la catégorie APPLICATION

Les protocoles de la catégorie APPLICATION garantissent l'interaction et l'échange des données :

· APPC (Advanced Program to Program Communication) est le protocole SNA poste à poste d'IBM essentiellement utilisé sur les ordinateurs AS/400.

· FTAM (File Transfer Access and Management) est un protocole OSI d'accès aux fichiers.

· X.400 est un protocole CCITT (Comité consultatif International de Télégraphie et de Téléphonie) permettant la transmission internationale de messagerie électronique.

· X.500 est un protocole CCITT offrant des services de fichiers et de répertoires répartis sur plusieurs systèmes.

· SMTP (simple Mail Transfer Protocol) est un protocole Internet pour le transfert de messagerie électronique.

· FTP (File Transfer Protocol) est un protocole Internet pour le transfert de fichiers.

· SNMP (Simple Network Management Protocol) est un protocole Internet permettant la surveillance des réseaux et de leurs composants.

· TELNET est un protocole Internet pour la connexion à des hôtes distants et le traitement local de données.

· SMB (Server Message Blocks) est le redirecteur client (Shell) de MICROSOFT.

· NCP (Novell Netware Core Protocol) est le redirecteur client (Shell) de NOVELL.

· APPLETALK et APPLESHARE est la suite de protocole d'APPLE.

· AFP (AppleTalk Filing Protocol) est un protocole APPLE (pour les ordinateurs MACINTOSH) destiné à l'accès distants à des fichiers.

· DAP (Data Access Protocol) est un protocole DECnet pour l'accès aux fichiers.

· Etc....

II.3.5.2. Les protocoles de la catégorie TRANSPORT

Les protocoles de la catégorie TRANSPORT assurent les connexions et le contrôle des transferts de données :

· TCP (Transmission Control Protocol) est une partie du protocole Internet TCP/IP qui garantit la remise des données en séquence.

· SPX (Sequential Paquet Exchange) est une partie du protocole SPX/IPX de NOVELL qui garantit la remise des données en séquence. C'est un protocole réduit, rapide et routable. SPX/IPX est un produit dérivé du protocole XNS (Xerox Network System) qui a été développé par la société XEROX pour les réseaux locaux ETHERNET. La pile XNS est un protocole qui a largement été diffusé dans les années 1980, mais qui a été progressivement remplacé par la pile TCP/IP. La pile XNS générait de nombreux messages de diffusion générale (BROADCAST), ce qui le rendait lent en plus d'être volumineux.

· NWLinkest la version MICROSOFT du protocole SPX/IPX de NOVELL.

· NetBEUI (NetBIOS Extended User Interface) est un protocole qui crée des sessions NetBIOS (Network Basic Input Output System) et fournit des services de transport de données (NetBEUI). NetBEUI est basé sur le protocole de transfert SMB.

· ATP (AppleTalk Transaction Protocol) et NBP (Name Binding Protocol) sont des protocoles APPLE pour les ordinateurs MACINTOSH.

· X.25 est un ensemble de protocoles pour les réseaux à commutation de paquets utilisés pour connecter des terminaux distants à de gros systèmes hôtes (MAINFRAME).

II.3.5.3 Les protocoles de la catégorie RESEAU

Les protocoles de la catégorie RESEAU fournissent les services de liaisons (adressage, routage, contrôle d'erreurs et requête de retransmission) et définissent les règles de communication des réseaux ETHERNET, TOKEN RING,... :

· IP (Internet Protocol) est la partie du protocole Internet TCP/IP qui achemine et route les paquets

· IPX (InternetworkingPacket Exchange) est la partie du protocole SPX/IPX de NOVELL qui achemine et route les paquets

· NWLink est la version MICROSOFT du protocole SPX/IPX de NOVELL

· NetBEUI est le protocole qui fournit les services de transport aux applications et sessions NetBIOS

· DDP (DatagramDelivery Protocol) est un protocole APPLETALK pour le transport des données (pour les ordinateurs MACINTOSH)

II.3.6. Les protocoles routables

Jusque vers le milieu des années 80, les réseaux locaux n'étaient constitués que d'un seul segment de câble, et pour la plupart étaient des réseaux isolés. L'évolution de la technologie et des besoins a conduit à une ouverture et un raccordement des réseaux. Les réseaux locaux devaient devenir des sous-ensembles de réseaux plus vastes, faisant partie intégrante d'un « réseau étendu ».

La complexité du maillage des réseaux s'est avec le temps de plus en plus accrue. Les chemins possibles pour qu'un paquet atteigne sa cible croissaient en fonction du nombre de noeud du réseau. Il fallait non seulement garantir que le paquet arrive à destination, mais aussi qu'il le fasse dans un délai raisonnable. Certains protocoles permettent au paquet d'emprunter plusieurs chemins, on dit alors que ce sont des « protocoles routables ».

Les protocoles routables permettent au paquet d'atteindre sa cible le plus rapidement possible :

· En utilisant le chemin le plus court

· En utilisant le chemin le moins encombré, en fonction du trafic du réseau

Les protocoles routables permettent aux paquets de « traverser » les routeurs.

II.3.6.1. Le protocole SPX/IPX

Le protocole SPX/IPX a été développé au début des années 1980 par la société Novell parce que le protocole TCP/IP était encore très compliqué. Longtemps, les systèmes NetWare étaient incompatibles avec Internet qui utilise le protocole TCP/IP.

Avec la version « IntranetWare 4.11 », Novell permet aux utilisateurs de son système d'accéder à l'Internet. Toutefois, l'intégration de TCP/IP n'est pas « native », c'est une traduction de PSX/IPX en TCP/IP, ce qui prend un certain temps et ralentit quelque peu l'accès à Internet. En fait, PSX/IPX convient si les postes clients n'ont pas besoin d'une adresse IP en Interne pour pouvoir y accéder depuis l'extérieur du réseau NetWare.

Le protocole SPX/IPX est auto configurable, c'est à dire que Netware construit automatiquement une adresse réseau sous la forme d'un nombre hexadécimal à partir d'une plage d'adresses choisie par l'administrateur et de l'adresse MAC de l'ordinateur. Ainsi, l'adresse réseau IPS est unique et disponible immédiatement sans l'intervention de l'administrateur.

II.3.6.2. Le protocole TCP/IP

Le protocole TCP/IP (Transmission Control Protocol / Internet Protocol) est le plus connu des protocoles parce que c'est celui qui est employé sur le réseau des réseaux, c'est à dire Internet. Historiquement, TCP/IP présentait deux inconvénients majeurs, sa taille et sa lenteur. Le protocole TCP/IP fait partie du système d'exploitation UNIX depuis le milieu des années 1970 (auparavant, c'est le protocole UUCP (UNIX to UNIX Copy Program) qui était employé pour copier des fichiers et des messages électroniques entre deux machines).

Le protocole TCP/IP est une norme ouverte, c'est à dire que les protocoles qui constituent la pile de protocoles TCP/IP ont été développés par des éditeurs différents sans concertation. Le groupe de travail IETF (Internet Engineering Task Force) a rassemblé les différents protocoles de la pile TCP/IP pour en faire une norme. Le travail de l'IETF est régulièrement soumis à l'ensemble de la « communauté Internet » dans des documents appelés RFC (Request For Comments). Les RFC sont considérées comme des brouillons parce que les spécifications qu'elles contiennent peuvent à tout moment être réexaminées et remplacées. L'IETF essaye de statuer en ce moment sur une norme (Internet Calendar, Simple Scheduling Transfert Protocol) concernant le transport des données des agendas et des plannings.

TCP/IP est une pile de protocoles relativement volumineuse, ce qui peut causer des problèmes avec un client comme MS-DOS. Toutefois, les systèmes d'exploitation réseaux avec une interface graphique comme WINDOWS 95 ou WINDOWS NT n'ont pas de contrainte de mémoire pour charger la pile TCP/IP. Quant à la vitesse d'exécution et de transmission des paquets, celle de TCP/IP équivaut à SPX/IPX.

Les protocoles de la pile TCP/IP

Nom

Fonction

FTP

FTP (File Transfer Protocol) s'occupe des transferts de fichiers.

TELNET

TELNET Permet d'établir une connexion à un hôte distant et de gérer les données locales.

TCP

TCP (Transmission Control Protocole) s'assure que les connexions entre deux ordinateurs sont établis et maintenues.

IP

IP (Internet Protocol) gère les adresses logiques des noeuds (stations,...).

ARP

ARP (AdressResolution Control) fait correspondre les adresses logiques (IP) avec les adresses physiques (MAC).

RIP

RIP (Routing Information Protocol) trouve la route la plus rapide entre deux ordinateurs.

OSPF

OSPF (Open ShortestPath First) est une amélioration de RIP, plus rapide et plus fiable.

ICMP

ICMP (Internet Control Message Protocol) gère les erreurs et envoie des messages d'erreurs.

BGP/EGP

BGP/EGP (Border Gateway Protocol / Exterior Gateway Protocol) gère la transmission des données entre les réseaux.

SNMP

SNMP (Simple Network Management Protocol) permet aux administrateurs réseaux de gérer les équipements de leur réseau.

PPP

PPP (Point to Point Protocol) permet d'établir une connexion distante par téléphone. PPP (après SLIP) est utilisé par les fournisseurs d'accès à Internet.

SMTP

SMTP (Simple Mail Transport Protocol) permet d'envoyer des courriers électroniques.

POP 3 & IMAP 4

POP 3 (Post Office Protocol version 3) etIMAP 4 (Internet Message Advertising Protocol version 4) permettent de se connecter à un serveur de messagerie et de récupérer son courrier électronique.

Le protocole TCP/IP est devenu la référence à partir de laquelle sont évalués les autres protocoles. La pile de protocole TCP/IP est la plus riche fonctionnellement.

Le protocole IP dispose de fonctions standardisées, les « API sockets » qui se comportent de la même façon sur tous les types de matériels.

TCP/IP est très répandu et très fonctionnel, mais assez compliqué et assez volumineux. En fait, l'inconvénient majeur provient de son succès, et de la diminution du nombre des adresses IP disponibles (en attendant la version IPV6 appelé aussi IPNG).

Les caractéristiques du protocole TCP/IP

· Une norme industrielle

· Tous les réseaux reconnaissent TCP/IP 

· Une interopérabilité entre ordinateurs hétérogènes

· Un standard pour la communication inter réseau et particulièrement entre des réseaux hétérogènes

· Un protocole routable

· D'autres protocoles ont été développés spécialement pour TCP/IP :

· SMTP pour la messagerie électronique

· FTP pour l'échange de fichiers

· SNMP pour la surveillance des réseaux

· Etc...

· Relativement volumineux et relativement rapide

II.3.6.3. Le protocole NetBEUI

A l'origine les protocoles NetBIOS et NetBEUI constituaient une seule et même pile. Certains fournisseurs séparèrent le protocole de la couche SESSION (NetBIOS) afin de pouvoir l'utiliser avec des protocoles routables de la couche TRANSPORT (le protocole de transport NetBEUI n'est pas routable).

NetBIOS est une interface pour les réseaux locaux développée par IBM. NetBIOS est relativement populaire parce que de nombreuses applications ont été programmées pour fonctionner avec cette interface.

Le protocole NetBEUI est un protocole de la couche TRANSPORT, mais n'est pas routable. Le protocole NetBEUI convient pour les réseaux « mono segment », il est très rapide si le nombre d'utilisateur n'est pas trop grand. Pour accéder à Internet, les paquets NetBEUI doivent être « encapsulés » dans une couche TCP/IP, c'est ce qui s'appelle NBT.

Le protocole NetBEUI utilise des noms alphanumériques (les noms NetBIOS, ou les noms d'ordinateur) pour reconnaître les différentes machines du réseau. Les paquets ne sont pas adressés avec des adresses numériques, les noms de machine ne sont pas traduits en numéros. Il est donc plus facile pour les utilisateurs de reconnaître les autres machines, et d'installer le protocole. Les noms NetBIOS doivent être résolus en adresses IP quand d'autres ordinateurs utilisent TCP/IP.

L'inconvénient du protocole NetBEUI est qu'il n'est pas routable, les communications sont toujours transmises en « broadcast », et les machines connectées au réseau doivent continuellement se faire connaître aux autres machines, ce qui utilise de la bande passante.

Le protocole NetBEUI convient pour les petits réseaux qui utilisent les produits de Microsoft.


Les caractéristiques de NetBEUI

· Petit, rapide et efficace

· Tous les produits MICROSOFT en sont équipés, comme OS/2 Warp et LanStatic de la société Artisoft

· Existe depuis le milieu des années 1980

· A été fourni avec MS NET, le premier produit réseau de MICROSOFT

· Fonctionne très bien avec les clients MS-DOS

· Mais c'est protocole qui n'est pas routable, et qui reste donc limité à de petits réseaux sur un seul segment de câble...

II.3.7. L'installation des protocoles

L'installation des protocoles s'effectue le plus souvent en même temps que l'installation du système d'exploitation réseau. Par exemple, WINDOWS NT installe TCP/IP et le considère comme le protocole par défaut du système. Le module RESEAU du PANNEAU de CONFIGURATION de WINDOWS NT SERVER permet d'installer ou de supprimer des protocoles, et permet de modifier l'ordre des liaisons entre les différents protocoles qui sont installés.

Un réseau découpé en plusieurs segments doit utiliser un protocole routable, si les stations d'un segment sont censées communiquer avec les stations d'un autre segment. Par contre, l'utilisation d'un protocole non routable garanti que les données du segment ne seront pas détournées vers un autre segment.

II.4. LE MODELE CLIENT/SERVEUR11(*)

L'organisation du système distribué est repartie en 2 groupes :

· Clients : un processus qui demande un service à un serveur en lui envoyant une requête et en attendant la réponse du serveur

· Serveur : un processus qui implémente un service particulier, par exemple une base de données, un système de fichier.

II.4.1. ARCHITECTURE CLIENT /SERVEUR

L'architecture 2-tiers est une strate de 3 couches :

· Présentation : le client utilise directement la couche présentation (User interface), par exemple un navigateur web.

· Logique applicative : réagit aux interactions de l'utilisateur, effectue les opérations applicatives et interagit avec les données. Exemple : un moteur de recherche reçoit des mots clés de l'utilisateur, les traduit en requête SQL, puis trie les résultats et le convertit en page HTML.

· Données : couche qui assure la maintenance et la cohérence de données persistantes.

II.4.2. Architecture 2-tiers

Les avantages d'une telle architecture sont :

· Interopérabilité : de nombreux standards reposent sur ce modèle http étant l'un des plus importants (Web service)

· Facilité d'administration : l'essentiel des informations sont centralisées sur le serveur (clients légers)

· Sécurité : repose sur la sécurité du serveur et la confidentialité des communications avec les clients

Les inconvénients d'une telle architecture sont :

· Tolérance aux pannes : point de rupture centrale ! pose aussi un problème de sécurité (DOS).

· Disponibilité : demande un matériel spécifique (performance, redondance, haute capacité).

· Passage à l'échelle (scalability) : ferme de serveur + équilibrage de charge.

II.4.3. Architecture 3-tiers et n-tiers

II.4.3.1. Architecture 3-tiers

· Client, serveur de traitement, serveur de données.

· Un serveur devient aussi le client d'un autre serveur

Exemple : serveur Apache + PHP+ serveur MySQL/NFS

II.4.3.2. Généralisation n-tiers

· Chaine de serveur

· Introduction de mandataire : noeud entre le client et les serveurs qui sélectionnent le meilleur serveur pour accomplir le service.

Augmenter les performances, la flexibilité, la maintenabilité, réutilisation, et l'extensibilité.

CHAPITRE III  LES MECANISMES MIS EN OEUVRE DANS LE RESEAU

L'échange, à travers un ou plusieurs réseaux, entre deux entités communicantes quelconques, nécessite que :

· Chaque correspondant puisse être localisé et identifié de manière unique sur le réseau ;

· En fonction des éléments ci-dessus, le réseau assure l'acheminement des blocs d'information, c'est le routage ;

· La taille des unités de données transférées soit adaptée aux capacités du réseau, c'est la segmentation ;

· Des mécanismes de contrôle sont mis en oeuvre pour garantir que le trafic admis dans le réseau ne conduira pas à l'effondrement de celui-ci, c'est le contrôle de congestion.

III.1. LA NOTION D'ADRESSAGE12(*)

III.1.1. Définition

Une adresse est une suite de caractères désignant sans ambiguïté un point physique de raccordement à un réseau ou identifiant un processus, une machine.

On désigne par technique d'adressage l'ensemble des moyens utilisés pour identifier les correspondants. Pour assurer la communication, le système d'extrémité source doit fournir au réseau l'adresse du système d'extrémité destinataire (adresse destinataire), et celui-ci doit pouvoir identifier son correspondant (adresse source).

III.1.2. L'adressage physique

Généralités

Pour localiser sans ambiguïté un utilisateur final, il faut pouvoir identifier :

- Le réseau auquel il est connecté ;

- Le point par lequel il est raccordé au réseau, ce point identifie aussi l'installation locale de l'abonné ;

- Le système cible dans l'installation locale.

L'ensemble de ces informations constitue l'adresse réseau. Les deux premiers champs permettent de localiser l'installation de l'abonné, ils constituent l'adresse réseau proprement dite du destinataire, la structure en est généralement de type hiérarchique. Le troisième champ identifie le destinataire dans l'installation finale, c'est un simple identifiant signification particulière, cet adressage local est dit à plat.

Systèmes d'extrémité

Equipement local d'accès

Point d'accès

0

0

Liaison d'abonné

RESEAU

RESEAU

Point d'accès

Port du commutateur d'accès

Systèmes d'extrémité

Adressage hiérarchique

Adressage

à plat

Figure 3.1 Les composants d'une adresse

L'adressage à plat ou global

Dans ce type d'adressage, l'adresse correspond à un numéro unique attribué sans aucune règle de structuration. Cet adressage est, par exemple, celui utilisé dans les réseaux locaux. À chaque entité raccordée est attribué un numéro différent et sans relation avec n'importe quel autre numéro (adresse) du réseau. D'origine Xerox, cet adressage destiné à distinguer les différents noeuds d'un même segment de réseau est normalisé par l'IEEE (figure III.14), Identifiant, dans les réseaux locaux, la machine raccordée au support, cet adressage est souvent désigné sous le terme d'adressage MAC (Medium Access Control) ou encore d'adresse physique.

3 octets

numéro unique désignant le constructeur (OUI)

3 octets

numéro séquentiel attribue par le constructeur

0

1 222 constructeurs 224 hosts 48

Fig. 3.2 L'adressage MAC ou IEEE (réseaux locaux)

L'adressage MAC comporte deux champs. Le premier, champ attribué par l'IEEE, désigne le constructeur (OUI, Organizationaly Unit Identifier) de l'interface réseau (NIC, Network Interface Card). La liste des OUI attribués peut être obtenue dans le RFC 1340. Le second champ correspond à un numéro séquentiel attribué par le constructeur qui doit en garantir l'unicité.

L'adresse MAC peut identifier un point de raccordement unique (cas général), elle est alors dite unicast. Elle peut aussi désigner un groupe de machines raccordées à un segment du réseau, elle est alors, dite multicast. Une adresse MAC spécifique désigne toutes les machines du même réseau physique, cette adresse est dite adresse de diffusion généralisée ou broadcast (figure 3.15).

0

Unicast Multicast Broadcast

Fig. 3.3 L'adressage et les points adressés

L'adressage hiérarchique

Utilisée dans les grands réseaux d'interconnexion, l'adresse hiérarchique identifie un point d'accès au réseau. Son contenu est significatif, il désigne le réseau et les noeuds de ce réseau participant à l'acheminement des informations. Chaque noeud ne traite que la partie d'adresse correspondant à son niveau. Cette technique permet de réduire la portée du champ adresse des blocs de données au fur et à mesure de la progression des paquets dans le réseau.

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

AFI

IDI

DSP

IEEE

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

3 7 2 0 8 0 9 2 0 2 0 3 6 2 x x

DNIC

NetWork User Address

 

Sousadresse localeoptionnelle

Porte

Commutateur

Département

0 Transpac

208 France

0

28 ½ octets

X.121

Figure 3.4 L'adressage X.121

L'adressage défini par l'ISO dit adressage NSAP3 (Network Service Access Point) représenté comporte plusieurs champs :

- L'AFI (Autority Format Identifier) désigne l'autorité gestionnaire du domaine d'adressage et le format de représentation de l'adresse. La valeur 37 indique que l'adresse qui suit est au format X.121 et est codée en DCB4.

- L'IDI (Initial Domain Identification) identifie le domaine d'adressage. Par exemple, dans la norme X.121 (AFI = 37), le numéro 208 est affecté à la France, le 2 représentant l'Europe.

- DSP (Domain Specific Part) correspond à l'adresse effective de l'abonné.

- Cette adresse peut éventuellement être complétée par l'adresse du terminal dans l'installation d'abonné, ici nous avons joint à cette adresse l'adresse IEEE du terminal.

La représentation X.121 (figure 6.16) divise l'adresse en deux champs :

- Le DNIC, Data Network Identification Code ou numéro de réseau, identifie le pays (France 208) et le réseau dans le pays par exemple : Transpac 0. La figure 6.17 fournit, en exemple, quelques numéros de réseau (DNIC) des principaux réseaux publics mondiaux.

- Le NUA, Network User Adress, correspond au numéro de l'abonné dans le réseau. La figure 6.16 représente le format d'adressage utilisé pour les accès X.25 du réseau Transpac (France Telecom).

Code Pays

Pays

DNIC

Réseau

208 à 212

France

2080

2081

2082

2083

Transpac

NTI.

Libre

administrations

234 à 238

Grande-Bretagne

2341

2342

IPSS.

PSS.

240

Suède

2405

Telepak.

242

Norvège

2422

Norpak.

262

Allemagne

2624

Datex-P.

272

Irlande

2721

PTT

302 à 307

Canada

3020

3025

3029

Datapac.

Teleglobe.

Infoswitch

310 à 329

États-Unis

3106

3110

Tymnet.

Telenet.

Fig. 3.5 L'identification des principaux réseaux dans X.121.

Les techniques d'adressage

Selon les besoins d'identification, on dénombre les cas suivants (figure 3.6) :

- Absence de champ d'adresse, seules deux entités peuvent communiquer, c'est le cas d'une liaison en mode point à point où l'adresse est inutile.

- Adresse destinataire seule, l'émetteur n'a pas à être connu ou l'est déjà par un autre procédé ; ce mode d'adressage est utilisé dans les relations du type maître/esclave où le maître est toujours identifié. Seule l'adresse du terminal apparaît dans les échanges, elle désigne celui à qui le maître s'adresse (adresse destination) ou celui qui répond au maître (adresse source).

- Adresse source uniquement, le récepteur n'est pas identifié, toutes les stations à l'écoute reçoivent les informations (messages de diffusion, broadcast).

- Adresse source/destination, cas le plus fréquent, l'adressage est alors dit distribué ou encore global distribué.

- L'adresse est absente du bloc de données, mais on lui a substitué un label. L'adressage est alors dit en cascade ou adressage de convention. La convention est établie pendant une phase d'initialisation, c'est par exemple le cas de l'attribution du numéro de voie logique dans le mode connecté.

Absence du champ d'adressage

Liaison point à point

Adressage du destinataire ou de la source

0

@ Source

@ Destination

Adressage source destinataire

Source

Source

0

Réseau

0

Destination

Figure 3.6 Type de relation et adressage.

III.2. LA NOTION DE NOMMAGE13(*)

III.2.1 Le nommage

La notion de nommage est complémentaire de celle d'adressage, l'un désigne l'objet, l'autre précise sa localisation. Indépendamment qu'il est plus aisé de manipuler des noms que des adresses, l'avantage du nommage est essentiellement de dissocier l'objet de sa localisation géographique. Le déplacement de l'objet nommé est transparent à l'utilisateur. De manière similaire à l'adressage, le nommage utilise deux modes de représentation :

- Le nommage à plat ou horizontal, ce type de nommage impose une démarche rigoureuse pour garantir l'unicité d'un nom sur l'ensemble du réseau. NetBIOS, protocole allégé mis en oeuvre dans les réseaux locaux, utilise un nommage à plat.

- Racine

com

edu

gov

mil

fr

Domaine fr

gouv

Domaine éducation

ibm

éducation

0Le nommage hiérarchique ou arborescent, plus souple, organise le nommage en domaines. Cette technique autorise une représentation des objets calquée sur l'organisation de l'entreprise. Chaque noeud peut être un domaine dont la gestion peut être confiée à une autorité particulière. Ce mode de représentation et d'administration convient parfaitement à la gestion d'un annuaire très important comme celui d'Internet (figure3.7).

Figure 3.7. L'arbre de nommage d'Internet.

III.2.2. La notion d'annuaire

La localisation d'un objet nommé nécessite de mettre en relation son nom et son adresse : résolution de nom. L'association nom/adresse est résolue selon deux techniques :

- la consultation d'un fichier local, le nommage est alors dit local;

- la consultation d'une base de données centralisée ou répartie sur un système local ou des systèmes distants, le nommage est, alors, dit décentraliser.

Base de données des noms

/etc/host

@IP - Nom

Fichier local

Fichier local

Client

0

Figure 3.7 L'arbre de nommage d'internet.

III.3. L'ACHEMINEMENT DANS LE RÉSEAU

III.3.1 Définitions

Acheminer les informations, dans un réseau, consiste à assurer le transit des blocs d'un point d'entrée à un point de sortie désigné par son adresse. Chaque noeud du réseau comporte des tables, dites tables d'acheminement couramment appelées tables de routage, qui indiquent la route à suivre pour atteindre le destinataire (figure III.21). En principe, une table de routage est un triplé<Adresse destination>/<Route à prendre>/<Coût>.

Il convient de distinguer la politique d'acheminement qui indique comment est choisie une route, du protocole de routage ou simplement routage qui décrit comment sont construites les tables d'acheminement, c'est-à-dire qu'il spécifie les échanges d'information entre noeuds, le mode de calcul de la route et du coût. Ces deux notions sont souvent confondues.

Pierre

Paul

Marie

Source

Table de routage

Pour aller à

Prendre

Pierre

Marie

Paul

Thérèse

Jacques

A

B

C

D

E

0

A

B

C

E

D

Jacques

Thérèse

Figure 3.8. Principe d'une table de routage.

La politique d'acheminement peut être :

- Déterministe, lorsqu'un message arrive dans un noeud, il n'a pas le choix de la route. Une seule route est possible par rapport à la destination. Les tables de routage peuvent être fixées à la configuration du réseau et mises à jour périodiquement par le(s) centre(s) de gestion (gestion centralisée ou décentralisée).

- Adaptative, aucun chemin n'est prédéterminé, le chemin sera fixé au moment du routage en fonction de données sur l'état du réseau (charge, indisponibilité d'un noeud...). La gestion est alors généralement isolée. Le noeud assure la mise à jour de ses tables en fonction de sa connaissance de l'état du réseau.

- Mixte, le choix d'un chemin, adapté à l'état du réseau, est effectué au moment de l'établissement du lien entre les deux entités communicantes. Une fois ce chemin établi, tous les messages d'une même session empruntent le même chemin. La politique est adaptative à l'établissement puis déterministe durant le reste de la session. Cette technique est utilisée dans les réseaux en mode orienté connexion. Le circuit virtuel est construit en politique adaptative et les données sont échangées cri politique déterministe.

III.3.2. Les protocoles de routage

Les différents modes de routage

Ø Routage statique ou routage fixe

Le routage statique consiste à construire, dans chaque noeud, une table indiquant, pour chaque destination, l'adresse du noeud suivant. Cette table est construite par l'administrateur du réseau lors de configuration du réseau et à chaque changement de topologie. Simple, le routage fixe assure, même lorsque le protocole réseau est en mode datagramme, le maintien en séquence des informations. Aucun bouclage de chemin n'est à craindre, mais il n'existe pas de solution de secours en cas de rupture d'un lien.

Le routage statique n'est pas optimal, il convient parfaitement aux petits réseaux et aux réseaux dans lesquels il n'existe pas de redondance dans les routes. La figure III.22 illustre le contenu des tables de chacun des noeuds pour joindre b2.

Pour aller en b2 interface 2

Pour aller en b2 Passer par B

A

Pour aller en b2 Passer par A

C

B

b3

b2

Pour aller en b2 Passer par C

Pour aller en b2 Passer par B

E

F

D

Pour aller en * Passerelle par défaut

Figure 3.9. Le routage statique

Ø Routage par diffusion (de 1 vers n)

Lorsque l'information doit être routée simultanément vers plusieurs destinataires ou groupe d'utilisateurs, il faut dupliquer le message en autant d'exemplaires que de destinataires. Cette technique oblige l'émetteur à connaître tous les destinataires, elle surcharge le réseau. L'adressage de groupe (multicast) autorise l'émission d'un seul message qui ne sera dupliqué que par les noeuds ayant des clients raccordés abonnés à cette adresse dite de multicast (figure 3.10).

0

Figure 3.10 Principe du routage multicast.

Ø Routage par inondation (de 1 vers tous)

Dans le routage par inondation, chaque noeud envoie le message sur toutes ses lignes de sortie, sauf celle d'où provient le message (figure III.24). Pour éviter une surcharge du réseau, chaque message comporte un compteur de sauts. Le compteur est initialisé à l'émission (nombre de sauts autorisés) et décrémenté par chaque noeud. Le message est détruit quand le compteur de sauts est à zéro. Pour éviter les bouclages, les messages sont numérotés, chaque noeud mémorise cet identifiant et détruit les messages déjà vus.

Ce système est très robuste, il résiste à la destruction de plusieurs lignes et garantit de trouver toujours le plus court chemin ; il est utilisé dans certaines communications militaires et par certains protocoles de routage pour diffuser les informations d'état du réseau.

1

A

2

A

3

A

4

A

5

A

6

A

Destruction par A du paquet qui boucle

0

Figure 3.11 Le routage par inondation et la destruction des paquets qui bouclent.

Ø Routage par le chemin e plus court ou au moindre coût

Dans ce mode de routage, chaque noeud tient à jour des tables indiquant quel est le plus court chemin pour atteindre le noeud destination. Chaque lien a un coût affecté ou calculé. A partir de ces informations de coût, chaque routeur détermine le chemin optimal pour joindre une destination. Ce coût ou métrique peut être exprimé en:

- nombre de sauts ;

- en km, distance réelle ;

- en temps de latence dans les files d'attente ;

- en délai de transmission ;

- fiabilité...

Les algorithmes de routage au moindre coût diffèrent selon la manière dont ils prennent en compte ces coûts pour construire les tables de routage. Dans certains protocoles de routage, un noeud peut maintenir plusieurs tables de routage et ainsi acheminer les données en fonction d'une qualité de service requise.

Le routage au moindre coût

Ø Principe des algorithmes vecteur distance

Dans le routage vecteur distance ou routage de Beliman-Ford (distance vectorRouting), chaque noeud du réseau maintient une table de routage qui comporte une entrée pour chaque noeud du réseau et le coût pour joindre ce noeud. Périodiquement chaque noeud diffuse sa table de routage à ses voisins. Le noeud destinataire apprend ainsi les destinations que son voisin sait joindre.

À réception, le noeud compare les informations reçues à sa propre base de connaissance :

- Si la table reçue contient une entrée inconnue, il incrémente le coût de cette entrée du coût affecté au lien par lequel il vient de recevoir cette table et met cette nouvelle entrée dans sa table. Il a ainsi appris une nouvelle destination.

- Si la table contient une entrée qu'il connaît déjà et si le coût calculé (coût reçu incrémenté du coût du lien) est supérieur à l'information qu'il posséda, il ignore cette information, sinon il met sa table à jour de la nouvelle valeur de cette entrée.

De proche en proche chaque noeud apprend la configuration du réseau et le coût des différents chemins La convergence des différentes tables peut être assez longue L'ensemble des schémas de la figure 6.25 illustre ce propos.

A l'initialisation les routeurs n'ont connaissance que de leur propre existence. La table de routage de chacun ne comporte qu'une entrée, elle indique que le coût pour se joindre est nul (destination locale !). Dans cet exemple, le coût a été fixé à 1 pour tous les liens, le coût retenu par un noeud correspond donc au nombre de sauts. Périodiquement le contenu des tables est échange chaque noeud adresse à son voisin les informations Destination/Coût qu'il connaît.

Au premier échange, le noeud A apprend, qu'il peut joindre le noeud B en passant par le lien pour un coût de 0 (contenu de la table du noeud B pour 1 entrée B), coût auquel il convient d'ajouter le coût du transit sur le lien â soit ici 1. A n'a pas, en table, d'information concernant B, il met sa table à jour. Chaque noeud procède de même. En ne considérant que le noeud A, lors du second échange, A apprend qu'il peut joindre les noeuds A, B et C en passant par le lien pour un coût respectif de :

- Pour A, de 1 (valeur reçue) + 1 (coût du lien â), soit 2, Aa déjà une entrée pour cette destination avec un coût de 0, il conserve l'entrée de moindre coût.

- Pour B, de 0 + 1 soit i, valeur déjà dans sa base connaissance, celle-ci est ignorée.

- Pour C, de 1 + 1 soit 2, A n'a aucune entrée concernant C dans sa table, il ajoute cette valeur.

Le même raisonnement est conduit pour chaque noeud. Les échanges ultérieurs n'apportent aucune connaissance nouvelle. Le routage dans le réseau a atteint sa stabilité (convergence des tables). Le routage par vecteur distance est avec ses variantes, l'algorithme le plus utilisé. Mais indépendamment du fait que le temps de convergence peut être long, cet algorithme peut conduire à la création de boucles dans le réseau. La figure III.26 illustre ce propos.

Supposons que le lien entre les noeuds C et B ne soit plus actif. Le noeud B ne recevant plus d'information en provenance de C indique qu'il ne peut plus joindre C en portant le coût de la route à l'infini. Ne pouvant atteindre cette destination B ne diffuse plus celte route. L'instant d'après, B reçoit la table de A, il apprend ainsi qu'il peut atteindre C en passant par pour un coût de 2 + 1 soit 3, il met à jour sa table. Nous venons de créer une boucle, tout ce que A reçoit à destination de C, il l'envoie à B, tout ce que B reçoit à destination de C, il l'envoie en A !

À l'échange suivant, A apprend que joindre C en passant par â a maintenant un coût de 3 + 1 soit 4. Il met sa table à jour. À l'échange suivant, B passe le coût à 5, puis A à 6 jusqu'à ce que le coût devienne l'infini. Pour éviter la création d'une telle boucle, il faut d'une part limiter la valeur de l'infini. Le protocole RIP (Routing Information Protocol) fixe l'infini à 16, la convergence est alors plus rapide. Et d'autre part, il faut interdire aux noeuds de signaler qu'ils connaissent une destination au routeur par lequel ils l'ont apprise. Cette technique dite de l'horizon coupé ou Split Horizon interdit à A de signaler à B qu'il sait comment aller en C en passant par â.

Ø Principe des algorithmes dits à état des liens

Le principal défaut du routage vecteur distance provient du fait que les routeurs n'ont la connaissance d'un changement d'état du réseau que lorsque leur voisin le leur communique, ce qui peut être long. Pour pallier ce défaut, le routage à état des liens (Link suite Routing) procède différemment (figure 3.12)

- chaque noeud découvre ses voisins et détermine le coût du lien qui les relie ;

- le lien est testé régulièrement et en cas de modification de son coût, le noeud diffuse cette information dans le réseau, sous la forme (A, B, c), le lien du noeud A vers le noeud B a un coût de c ;

- chaque noeud entretien une table où figure, pour chaque lien, son coût (matrice de coûts). À l'aide de ces informations, chaque noeud peut reconstituer la cartographie complète du réseau ;

- à partir de la matrice des coûts, chaque noeud détermine alors sa table de routage (algorithme de Dijkstra).

Je suis votre voisin A

J'ai B et C comme voisin

Je suis votre voisin B

J'ai comme voisin A

Je suis votre voisin C

J'ai A comme voisin

A

B

D

C

A

C

D

B

Le coût AC est de 8

Le coût AB est de 5

A

B

D

C

Le coût AB est de 5

Le coût AB est de 5

Le coût AC est de 8

0

Figure 3.12 Principe des algorithmes à état des liens.

La figure 3.13illustre le principe d'établissement des tables des routages, après découvertes des voisins, chaque noeud diffus le coût des liens qui le rattachent à ses voisins. À partir de ces informations, il construit une matrice dite matrice des coûts (figure 3.13) qui va lui permettre de déterminer la route de moindre coût pour joindre chaque point du réseau.

 

0

7

0

0

0

4

 
 

7

0

3

0

2

0

 
 

0

3

0

5

0

0

 
 

0

0

5

0

7

4

 
 

0

2

0

7

0

3

 
 

4

0

0

4

3

0

 

à

de

A

B

C

D

E

F

A

0

7

0

0

0

4

B

7

0

3

0

2

0

C

0

3

0

5

0

0

D

0

0

5

0

7

4

E

0

2

0

7

0

3

F

4

0

0

4

3

0

0

M =

Figure 3.13 Exemple de matrice de coûts.

Dans l'exemple de matrice de routage représentée figure 6.28, un coût à zéro signifie qu'il n'existe pas de lien entre les deux noeuds, la matrice est symétrique c'est-à-dire que nous avons admis que le coût de A vers B était identique à celui de B vers A. À titre d'illustration nous allons construire la table de routage du noeud A (figure III.29 et 6.30). La figure III.29 est déduite des informations de la matrice de la figure 6.28. Puisqu'il s'agit de déterminer la table de routage du noeud A, on se positionne en A et on examine qu'elles sont les directions joignables de A (de A on peut joindre B et F). On note alors le coût de chacune des directions et on ne retient que la route de moindre coût (lien AF). On réitère le raisonnement en partant maintenant de F (F est dit élu) et ceci jusqu'à ce que toutes les destinations aient été explorées. Les routes apparaissent dans le tableau avec le coût total pour joindre la destination depuis le noeud d'origine (A). Ainsi, « FE, 7 » signifie : la route pour atteindre le noeud E en passant par F coûte 7 depuis la racine.

Une route (un lien) possède trois états :

- l'état validé (noeuds grisés figure 3.15), il n'existe, à partir de la racine, aucun autre chemin de moindre coût pour atteindre le noeud ;

- l'état découverte, il s'agit d'une nouvelle route pour joindre le noeud suivant à partir du noeud qui vient d'être validé ;

- l'état attente (noeuds blancs figure 3.15), après avoir été découverte une route peut être rejetée, s'il en existe déjà une de moindre coût pour joindre le noeud extrémité, ou être mise en attente.

C,13

E,15

B,9

D,14

E,9

C,10

E,7

D,8

B,9

D,14

E,9

C,10

E,7

D,8

A,0

A,0

A,0

B,7

F,4

B,7

F,4

B,7

F,4

E,7

D,8

B,9

A,0

B,7

F,4

E,7

D,8

D,14

A,0

B,7

F,4

C,13

E,15

B,9

D,14

E,9

C,10

E,7

D,8

A,0

B,7

F,4

D,15

1

2

3

4

5

6

0

Routes validées

Routes découvertes

Routes en attente

A,0

AB,7

AF,4

(en attente, ?)

(validée)

AB,7

AF,4

FE,7

FD,8

(validée)

(en attente, ?)

AB,7

FD,8

FE,7

EB,9

ED,14

(Fin et validation d'AB,7)

(Fin et validation de FD,8)

AB,7

FD,8

AB,7

BC,10

BE,9

(en attente, ?)

(Fin, on sait déjà aller en E pour 7)

BC,10

FD,8

DC,13

DF,15

(Fin et validation de BC, 10)

(Fin, on sait déjà aller en F pour 4)

BC,10

BC, 10

CF,15

(Fin, on sait déjà aller en D pour 8)

 

Figure 3.14 Exemple de détermination de la table du noeud A.

La table de routage correspondante est donnée figure 3.15.

Noeud destination

Noeud suivant

Coût total

A

Local

0

B

B

7

C

B

10

D

F

8

E

F

7

F

F

4

Figure 3.15 La table de routage du noeud A.

Le routage à plat, routage hiérarchique

Ø Notion de domaine de routage

Le routage au moindre coût nécessite la diffusion, à travers le réseau, d'information concernant soit les tables de routage (Vector distance), soit l'état des liens (Link status). Ce trafic consomme de la bande passante au détriment des données à écouler. Plus le réseau est grand, plus le trafic de mise à jour est conséquent, plus les tables de routage sont importantes et plus le calcul des routes consomment du temps CPU. En routage hiérarchique (figure III.31), le réseau est découpé en domaines appelés systèmes autonomes (AS, Autonomus System). Chaque domaine est identifié, les messages qui transitent dans un domaine qui n'est pas le leur sont éliminés.

Ce mode de découpage des réseaux conduit à définir deux familles de protocoles de routage, notamment utilisés dans Internet :

- Les protocoles internes à un domaine (IGP, Interior Gateway Protocol), qui assurent le routage dans un domaine, mais ignorent les noeuds des autres domaines.

- Les protocoles externes à un domaine (EGP, External Gateway Protocol), qui gèrent l'échange d'information entre domaines et qui annoncent la connectivité de chaque domaine.

0

Routeurs de bordure

IGP

Système autonome

(AS)

0

0

0

IGP

000000

Système autonome

(AS)

Figure 3.16 Le routage hiérarchique

Chaque domaine est représenté et connu du reste du réseau par un noeud frontière, dit routeur de bordure, qui supporte à la fois un protocole intérieur au domaine et un protocole externe au domaine. Chaque domaine autonome peut mettre en oeuvre un protocole de routage interne différent.

Ø Les principaux protocoles de routage

Les principaux protocoles de routage sont :

- RIP (Routing Information Protocol, RFC 1058 ; RIP-2, RFC 1723), du type vecteur distance, RIP a été le premier protocole de routage interne utilisé dans la communauté Internet, il est aujourd'hui remplacé par OSPF. Malgré une convergence lente et un trafic de gestion important, RIP reste le protocole de routage le plus employé.

- OSPF (Open Short Path First), d'origine IETF (RFC 2178), protocole interne à état des liens, il a remplacé RIP dans Internet. Pour éviter l'inondation, les informations d'état sont diffusées sur une adresse de multicast réservée à OSPF.

- IS-IS (Intermediate System to Intermediate System), le protocole de routage interne de l'ISO (ISO 10589), est aussi un protocole à état des liens.

- IGRP (Interior Gateway Routing Protocol), protocole propriétaire de la société Cisco du type vecteur distance, IGRP utilise une métrique construite qui prend en compte le délai d'acheminement, le débit, la fiabilité, la charge du réseau et la MTU (Maximum Transfer Unit).

- EGP (Exterior Gateway Protocol, RFC 827) a été le premier protocole externe utilisé dans Internet.

- BG11 (Border Gateway Protocol, RFC 1771) protocole qui définit les échanges à l'intérieur du domaine (iBGP) et entre systèmes de bordure (eBGP).

Le routage et commutation

Ø Comparaison

Lorsque la décision d'acheminement est prise en fonction d'une adresse destination (mode datagramme ou paquet d'établissement dans le mode connecté), on parle de routage ; l'opération est réalisée par un routeur. La table d'acheminement est dite table de routage (figure 3.17). Cette décision d'acheminement est prise, pour chaque datagramme, par chacun des routeurs traversés (Hop by hop Routing). Il n'y a aucun contexte d'acheminement mémorisé. De ce fait, ce type de réseau résiste à la défaillance d'un noeud (réseau de type Soft state ou réseau sans état). Cependant, la prise de décision à chaque noeud traversé pénalise les performances et donc l'efficacité du transfert de données.

Routing table

Address

Next Hop

Routing table

Address

Next Hop

Routing table

Address

Next Hop

Je veux aller à @ quelle route dois-je prendre ?

Je veux aller à @ quelle route dois-je prendre ?

Je veux aller à @ quelle route dois-je prendre ?

0

Figure 3.17 Le routage à travers le réseau.

Lorsque l'adresse destination n'intervient pas dans le processus de décision d'acheminement, on parle alors de commutation. En mode connecté (figure 3.18) préalablement à tout envoi de données, un circuit virtuel est construit par une opération de routage, la table de commutation est alors renseignée, les données sont ensuite commutées. La table de commutation contient un identifiant de flux attribué lors de la phase d'établissement (étiquette) et la voie à prendre. Dans la figure 6.33, ce qui arrive avec l'étiquette A par le port x et acheminé sur le port y avec l'étiquette B.

La décision de commutation est plus rapide que la décision de routage, les protocoles récents dits à haut débit comme le Frame Relay ou l'ATM (Asynchronous Transfer Mode) utilisent ce principe. Devant l'efficacité de ce mode d'acheminement dans les réseaux, l'IETF a défini, pour les protocoles réseaux en mode non connecté, le protocole MPLS (Multi Protocol Label Switching) qui offre un service de type circuit virtuel à des protocoles en mode datagramme.

Routing table

Address

Next Hop

1) Je Suis A et je veux aller à @ quelle route dois-je prendre ?

Phase 1 : Etablissement du circuit virtuel (routage)

A

Table commutation

IN

OUT

A,x

B,y

x

Table commutation

IN

OUT

A,x

B,y

Routing table

Address

Next Hop

X

y

Données, A

Données, B

Phase 2 : Commutation des données

0

Figure 3.18 Après la phase d'établissement (1), la commutation (2).

Ø Signalisation et établissement des routes

Le mode d'établissement des routes et les critères de sélection de celles-ci sont directement liés au mode de signalisation utilisé dans le réseau. Si le protocole réseau utilise une signalisation dans la bande, la demande d'établissement de route est transportée dans une unité de données du protocole de transfert. Elle doit donc être traitée par la même entité de programme. Le processus d'établissement des routes rentre en concurrence directe avec celui de commutation. Ce système pénalise les performances (figure 3.19).

IN

OUT

A

B

IN

OUT

A

B

IN

OUT

A

B

A

B

B

C

C

D

0

Figure 3.19 La commutation et la signalisation dans la bande.

Lorsque le réseau utilise une signalisation par canal sémaphore, le protocole de signalisation et celui de transfert sont indépendants. Etablissement de routes et commutation sont traités par des entités de programme différentes. Indépendamment du gain en performance, l'indépendance des protocoles permet l'utilisation d'un protocole de signalisation beaucoup plus riche en information, notamment celui-ci pourra transporter des informations en relation directe avec la qualité de service exigée par le flux pour lequel la construction d'un circuit virtuel est demandée (figure 3.20). Les protocoles dits haut débit comme ATM et Frame Relay utilisent ce mode de signalisation.

IN

OUT

A

B

IN

OUT

B

C

IN

OUT

C

D

Canal sémaphore

A

B

B

C

C

D

0

Figure 3.20 La commutation et la signalisation hors bande.

Ø Du routage à la commutation

Les réseaux en mode datagramme ne disposent d'aucun mécanisme d'établissement de routes ce qui leur confère une grande souplesse notamment une grande résistance à la défaillance. Cependant, le mode connecté, en garantissant le séquencement des informations et optimisant le processus d'acheminement, présente des avantages certains notamment pour le transfert des flux multimédia. La figure 6.36 réalise une comparaison succincte des deux modes en mettant en évidence les points forts de chacun d'eux.

Critères

Mode connecté

Mode non connecté

Mise en relation

Oui

Non

Connexion/Déconnexion

Oui

Non

Circuit offert

Permanent durant tout l'échange

Pas de circuit réservé Best effort

Résistance à la défaillance

Non, réseau à état (Hard State)

Oui, réseau sans état (Soft State)

Garantie du séquencement

Oui

Non

Optimisation du réseau

Non

Oui

Commutation

Oui

Routage

Non

 
 
 

Figure 3.21 La comparaison des modes de mise en relation.

Aussi, ne serait-il pas possible d'imaginer un protocole réseau qui réalise une synthèse entre ces modes en offrant dans un environnement datagramme les performances du mode connecté ? C'est l'objectif de MPLS (Multi Protocol Label Switching) qui autorise un acheminement commuté des datagrammes. À cet effet, un protocole de distribution d'identifiants de route ou labels prédétermine des routes en établissant une correspondance entre une destination IP et un label. En fonction de son adresse destination, chaque datagramme se voit affecter à l'entrée du réseau, par le routeur de périphérie d'entrée (Edge Label Switching Router ou ELSR), un identifiant de route (label). Il est ensuite acheminé dans le réseau par rapport à cet identifiant et non plus en fonction de l'adresse destination. Comme dans les réseaux en mode connecté, l'identifiant n'a qu'une valeur locale. Le routeur de sortie supprime le label et achemine le datagramme vers sa destination. L'ensemble forme un réseau MPLS (figure 3.22).

Data

IP

Data

IP

Label

Data

IP

L1

L2

@IP

L2

0

Figure 3.22 Principe de la commutation MPLS.

III.4. L'ADAPTATION DE LA TAILLE DES UNITÉS DE DONNÉES

III.4.1. La notion de MTU

Lors du transfert d'un bloc de données dans un réseau, chaque élément du réseau (routeur ou commutateur) doit mémoriser les blocs en entrée, les traiter et les délivrer à la file d'attente de sortie. Ces différents traitements nécessitent de la mémoire. La ressource étant limitée, il est nécessaire de fixer une taille maximale aux unités de données admises dans un réseau.

F2

F1

Paquet

Paquet

00

Figure 3.23 La fragmentation d'un paquet

On appelle MTU (Maximum Transfer Unit) ou unité de transfert maximale, la taille maximale des données admises dans un réseau en-tête compris. Si un bloc a une taille supérieure à la MTU, il devra être fragmenté en plusieurs blocs pour pouvoir être acheminé dans le réseau (figure 3.24).

III.4.2. La segmentation et le réassemblage

Dans les réseaux en mode non connecté, les fragments sont susceptibles d'arriver sans respect de l'ordonnancement. Le réassemblage ne peut être réalisé dans le réseau, c'est le destinataire qui devra reconstituer l'unité de données d'origine. Pour garantir le réassemblage correct du message initial, il est nécessaire d'identifier tous les fragments d'un même datagramme et de les numéroter pour les réordonner.

Chaque fragment (figure 3.24) comporte les informations nécessaires à son acheminement (adresse). Une donnée d'identification est recopiée dans chaque fragment (ID) d'un même data- gramme. Le réassemblage nécessite aussi de connaître la longueur totale du paquet d'origine (L) et de disposer d'information sur l'ordonnancement (Fi, F2...). Outre le temps nécessaire aux opérations de fragmentation, en mode non connecté, la reprise V sur erreur dans le réseau étant impossible, la perte d'un seul fragment implique la retransmission de tout le datagramme.

Bloc de données de taille incompatible avec le réseau

En-tête

En-tête

ID F1 L=3

En-tête

ID F2 L=3

En-tête

ID F3 L=3

Fragment 3

Fragment 2

Fragment 2

Paquet réassemblé

MTU

0

Figure 3.24 Les informations de fragmentation en mode non connecté.

Pour ne pas pénaliser le réseau, les protocoles en mode non connecté offrent des services de découverte de la MTU (Path MTU Discovery).

Dans les réseaux en mode connecté, tous les fragments suivent le même chemin, le séquencement est garanti. Dans ces conditions, les informations nécessaires au réassemblage peuvent être réduites à un seul bit (bit More, données à suivre). Le bit More est positionné à 1 dans tous les fragments sauf le dernier. Le réassemblage peut être réalisé par le réseau, la fragmentation est alors dite transparente (figure 3.25)

Paquet > MTU

Fragments

F4

F3

Routeur d'accès

F2

F1

F3

F4

F1

2

Datagramme > MTU

Routeur d'accès

Fragmentation non transparente

Fragments

F4

F3

Routeur d'accès

F2

F1

Routeur d'accès

Fragmentation transparente

Paquet réassemblé

0

Figure 3.25 La fragmentation transparente et non transparente

III.5. LA CONGESTION DANS LES RÉSEAU

III.5.1 Définition

Basé sur un trafic sporadique et aléatoire, le partage statistique des ressources d'un réseau fragilise celui-ci. À une augmentation de trafic soumis, correspond une augmentation du temps d'attente avant traitement dans les noeuds. Vu du destinataire, le débit diminue, le temps de transit dans réseau croît (congestion légère). Les paquets retardés peuvent, dans ce cas, ne pas être acquittés dans les délais, ce qui provoque leur retransmission et contribue à augmenter la charge du réseau, plus de paquets ne sont pas acquittés à temps, plus de réémissions inutiles..., les files d'attente débordent..., le réseau s'effondre, c'est la congestion sévère (figure 3.26).

Trafic écoulé

Latence

(Délai de transit)

Trafic soumis

Trafic normal

Pas de congestion

Congestion légère

Congestion sévère

0

Figure 3.26 L'écoulement du trafic dans un réseau.

En présence d'une surcharge du réseau, les mécanismes de reprise sur erreur des protocoles ont tendance à réagir ensemble. L'indépendance des sources n'est plus vraie, la congestion s'installe.

Indépendamment du blocage du réseau, si on veut garantir une certaine qualité de service, il est nécessaire de mettre en oeuvre des mécanismes spécifiques pour d'une part, prévenir l'état de congestion et, d'autre part, si celui-ci apparaît, le résoudre (guérison). Ces mécanismes constituent le contrôle de congestion.

III.5.2. Les mécanismes de prévention de la congestion

La congestion résulte d'un trafic à écouler supérieur aux capacités du réseau, la solution la plus simple, pour se prémunir contre celle-ci, consiste à ne pas admettre, dans le réseau, plus de trafic que celui-ci est capable d'en assimiler. Plusieurs solutions sont envisageables :

- asservir le débit des sources sur les capacités de traitement de chacun des noeuds, c'est le contrôle de flux ;

- ne pas admettre plus de trafic dans le réseau que celui-ci n'est capable d'en écouler, c'est le contrôle d'admission ;

- éviter la propagation de rafales de données au coeur du réseau en réalisant un lissage de trafic.

Le contrôle de con gestion et contrôle de flux

Les notions de contrôle de flux et de contrôle de congestion sont différentes. Le contrôle de flux s'intéresse aux échanges entre deux noeuds alors que le contrôle de congestion cherche à limiter le nombre de paquets en transit dans le réseau (figure 3.27). Cependant, en limitant la longueur des files d'attente dans les noeuds intermédiaires, le contrôle de flux participe à la prévention de la Congestion.

Contrôle de congestion

Voie logique 1

Voie logique 2

Voie logique 3

Contrôle de flux

0

Figure 3.27 Distinction entre contrôle de flux et contrôle de congestion.

En synthèse, le contrôle de flux asservit le débit de la source en fonction des capacités de réception du destinataire (mode point à point ou de bout en bout), alors que le contrôle de congestion limite le débit de la source en fonction des capacités de transport du réseau. Ainsi, le contrôle de flux est un mécanisme qui consiste à éviter la perte de données par saturation des buffers du destinataire, alors que le contrôle de congestion vise à ne pas perdre de données par saturation du réseau.

Le contrôle de flux reste un mécanisme insuffisant. Dans les réseaux modernes, compte tenu du débit, la taille de la fenêtre est importante et le contrôle de flux devient inefficace, il est aujourd'hui abandonné dans les coeurs de réseau.

Le contrôle d'admission

Les réseaux en mode circuit sont naturellement protégés contre la congestion. En cas de manque de ressource dans le réseau, la connexion est purement et simplement refusée. Ce mode de prévention se heurte au principe de mutualisation des ressources. Une politique plus souple peut être utilisée : le contrat de service ou SLA (Service Level Agreement) dont un exemple est fourni figure 3.28

Chaque abonné du réseau spécifie, à l'abonnement ou à la connexion, la description du trafic qu'il va soumettre au réseau. Une fonction de surveillance vérifie en permanence que le flux respecte le contrat. Trois zones de fonctionnement peuvent alors être définies. La première correspond à un trafic garanti. Ce trafic, dit trafic moyen est toujours écoulé par le réseau quel que soit son état. La seconde zone correspond à un volume excédentaire mais toléré, les données remises au réseau sont acheminées mais identifiées (Celltagging). En cas de congestion, elles seront éliminées. Enfin, la troisième zone définit un volume excédentaire mais hors contrat, ce trafic est purement et simplement refusé par le réseau. C'est le noeud d'accès au réseau qui assure le contrôle d'admission (CAC, Connection Admission Control).

ELIMINATION

ECOULEMENT DU TRAFIC

MARQUAGE DES DONNEES

Intervalle de temps d'analyse du débit réel de la source

Temps

Volume au début du lien

Volume de crête toléré

Volume moyenne

Trafic

0

Figure 3.28 Principe du contrat de service.

Le lissage de trafic

Même si chaque source respecte son contrat de service, la congestion peut résulter de la simultanéité de soumission de rafales par les différentes sources. Pour éviter cet afflux sporadique, on effectue, à l'entrée du réseau, un lissage du trafic (technique du seau percé, Leakybucketalgorithm). Dans ce système, les données sont mises en file d'attente et délivrées régulièrement. Le mécanisme du seau percé est un mécanisme de prévention, ce n'est pas un mécanisme de résolution ; la figure 3.29illustre ce principe.

Source au débit irrégulier

Débit régulé

 
 

Buffer de lissage

Réservoir tampon

0

Figure 3.29 La technique du sceau percé.

La figure 3.30 illustre la mise en oeuvre du contrôle d'admission et de lisage de flux tel qu'ils sont mis en oeuvre dans les réseaux Frame Relay.

Le Frame Relay définit deux niveaux d'analyse du trafic. Le premier est un trafic garanti correspondant à un débit moyen (CIR, CommittedInformation Rate) auquel correspond un volume associé (Bc, CommittedBurst size). Le deuxième niveau correspond à un volume toléré qui n'est acheminé que si le réseau le permet, le débit excédentaire associé est dénommé EIR (Excess Information Rate) et correspond à un volume dit Be (ExcessBurst size). Les données écoulées dans cet espace de tolérance sont marquées (positionnement du bit DE ou DiscardEligibility) et éliminées en cas de congestion.

EIR

CIR

DE=1

BE

BC

Données utilisateur

0

Figure 3.30 Le contrôle d'admission et le lissage de trafic

III.5.3. La résolution ou la guérison de la congestion

Quels que soient les mécanismes de prévention utilisés, rien ne permet de garantir qu'un état de congestion ne peut apparaître. Plusieurs politiques peuvent être mises en oeuvre pour réduire la congestion: elles visent toutes à éliminer le trafic en excès. Ces solutions dérivent des principes suivants :

- mettre en attente le trafic excédentaire dans une file d'attente de moindre priorité ;

- identifier le trafic excédentaire (Celltagging) et l'éliminer en cas de congestion ;

- liner tout le trafic ;

- envoyer à la source ou aux sources responsables une demande de ralentissement.

Le traitement de l'état de congestion provoque une diminution des performances globales du réseau et peut engendrer des phénomènes oscillatoires si les mécanismes de correction sont mal dimensionnés et non progressifs.

CONCLUSION

Les techniques réseaux sont en perpétuelle évolution, le besoin grandissant en bande passante, les contraintes spécifiques à chaque type de flux dopent une recherche très active de la part des constructeurs.

Dans quel cadre doivent se faire les développements, selon quels principes, telles sont les questions auxquelles la normalisation doit répondre pour fournir un cadre de développement et garantir l'interopérabilité des systèmes.

BIBLIOGRAPHIE

I. OUVRAGES

1. CLAUDE SERVIN, Réseaux et Télécoms, Dunod, Paris, 2003

2. OLIVIER SALVATION, Initiation aux Réseaux, édition Eyrolles, Paris, 2000

3. P. BERTRAND, Architecture des Réseaux, édition Ellipse, 2003

II. PUBLICATIONS

1. Réseaux TCP/IP par Michel Cabaré

2. Communication dans les systèmes distribués, le modèle Client/serveur par ENSAT, 2006

III. NOTES DE COURS

1. NSALA BOTULI ISINIOMA, Cours de Labo-Réseau, 2e graduat, ESMICOM, 2010-2011, inédit

2. P. LUKELE, Cours de Réseau Informatique, G2 RTM, ESMICOM, 2008-2009, Inédit

3. RENE LANDU, Cours d'Architecture des Ordinateurs, G3 RTM, ESMICOM, 2009-2010, Inédit

4. TOMUNUA LUKENU, Cours de Réseau à longue distance, G3 TR, ESMICOM, 2009-2010, Inédit

TABLE DES MATIERES

DEDICACE iii

REMERCIEMENTS ii

INTRODUCTION GENERALE 1

1. PRESENTATION DU SUJET 1

2. PROBLEMATIQUE ET HYPOTHESE 1

2.1. Problématique 1

2.2. Hypothèse 1

3. CHOIX DU SUJET 1

4. DELIMITATION 1

5. METHODES ET TECHNIQUES 2

6. SUBDIVISION DU TRAVAIL 2

CHAPITRE I GENERALITES SUR LES RESEAUX INFORMATIQUES 3

1. INTRODUCTION 3

1.1. Définition 3

1.1.1. Objectifs Techniques 3

1.1.2. Objectifs utilisateurs 4

1.2. DIFFERENTS TYPES DE RESEAUX 4

1.2.1. Les réseaux locaux 5

1.2.2. Les réseaux métropolitains 7

1.2.3. Les réseaux à longue distance 8

1.3. LES RESEAU A COMMUTATION 9

1.3.1. La commutation de circuits 9

I.3.2 La commutation des messages 10

I.3.3. La commutation des paquets 11

1.4. LES MECANISMES MIS EN OEUVRE DANS LE RESEAU 11

CHAPITRE II  ARCHITECTURE DE RESEAUX 12

II.1. NOTIONS DE COUCHES 12

II.2. SERVICES 13

II.2.1. Définition 13

II.3. PROTOCOLE DE COMMUNICATION 14

II.3.2. Les liaisons de protocoles 16

II.3.4. Les piles standards 17

II.3.5. Les protocoles en trois catégories 19

II.3.6. Les protocoles routables 21

II.3.7. L'installation des protocoles 25

II.4. LE MODELE CLIENT/SERVEUR 25

II.4.1. ARCHITECTURE CLIENT /SERVEUR 25

II.4.2. Architecture 2-tiers 26

II.4.3. Architecture 3-tiers et n-tiers 26

CHAPITRE III  LES MECANISMES MIS EN OEUVRE DANS LE RESEAU 27

III.1. LA NOTION D'ADRESSAGE 27

III.1.1. Définition 27

III.1.2. L'adressage physique 27

III.2. LA NOTION DE NOMMAGE 31

III.2.1 Le nommage 31

III.2.2. La notion d'annuaire 32

III.3. L'ACHEMINEMENT DANS LE RÉSEAU 33

III.3.1 Définitions 33

III.3.2. Les protocoles de routage 34

III.4. L'ADAPTATION DE LA TAILLE DES UNITÉS DE DONNÉES 45

III.4.1. La notion de MTU 45

III.5. LA CONGESTION DANS LES RÉSEAU 47

III.5.1 Définition 47

III.5.2. Les mécanismes de prévention de la congestion 48

III.5.3. La résolution ou la guérison de la congestion 50

CONCLUSION 52

BIBLIOGRAPHIE 53

TABLE DES MATIERES 54

* 1 NSALA BOTULI ISINIOMA, cours de Labo-réseau, Esmicom, 2ème graduat, 2010-2011

* 2 P.BERTRAND, Architecture des réseaux, édition Ellipses, 2003, p.4

* 3 RENE LANDU, Cours d'Architecture des ordinateurs, G3 RTM, 2009-2010.

* 4 P.LUKELE, Cours de réseau informatique, G2 RTM, ESMICOM, 2008-2009.

* 5 TOMUNUA LUNEKU, Cours de réseau à longue distance, G3 TR, ESMICOM, 2009-2010, inédit.

* 6 SERVIN, C, Réseaux Et Télécoms, Dunod, Paris, 2003, P.162

* 7 SERVIN, C. , Op.cit, pp 171-172

* 8 Olivier SALVATION, initiation aux réseaux, édition Eyrolles, p.20.

* 9P.BERTRAND, op.cit.p.12.

* 10 Réseau TCP/IP par Michel Cabaré

* 11 Communication dans les systèmes distribués, le modèle client/serveur ENSAT 2006

* 12C.SERVIN,op.cit,pp 172-176

* 13C.SERVIN,op.cit, pp176-177






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Nous devons apprendre à vivre ensemble comme des frères sinon nous allons mourir tous ensemble comme des idiots"   Martin Luther King