• Aucun résultat trouvé

Protocoles et architectures

N/A
N/A
Protected

Academic year: 2022

Partager "Protocoles et architectures"

Copied!
45
0
0

Texte intégral

(1)

Protocoles et architectures

Nous étudierons dans ce chapitre les normes qui s’appliquent en téléinformatique. Nous traiterons d’abord de la nécessité des protocoles et architectures des systèmes informa- tiques. Nous présenterons ensuite les organismes responsables des normes en télé- informatique, puis nous examinerons le modèle de référence OSI qui propose une structuration en sept couches. Nous nous pencherons enfin sur les protocoles utilisés dans les couches du modèle OSI, de même que sur les protocoles Internet.

Voici les concepts importants abordés dans ce chapitre : – L’introduction à la réseautique

la nécessité des protocoles

les organismes de normalisation – Le modèle de référence OSI

Les protocoles de la couche physiqueLes protocoles de la couche liaison

la sous-couche MAC

la sous-couche LLC

Les protocoles de la couche réseau

les protocoles de la communication par paquets

les protocoles de routage

les protocoles Internet

Les protocoles de la couche transport

Le protocole TCP

Autres protocoles de la couche transportLes protocoles de la couche application

le Web ou WWW

les services de répertoire (directory)

les protocoles de transfert de fichiers

le courrier électronique

le protocole en temps réel et multimédia – Les suites de protocoles

(2)

3.1 INTRODUCTION À LA RÉSEAUTIQUE

Dans cette introduction, nous présenterons la raison d’être des protocoles et architectures de réseaux, puis nous verrons les organismes chargés de les normaliser.

3.1.1 Généralités

Le principe de l’architecture de réseau, fondé sur des couches de protocole bien définies, s’est imposé historiquement. Il fut un temps où il fallait intégrer ensemble des produits informatiques différents, ce qui était quasiment impossible, même au sein d’une même compagnie. Le besoin d’un standard s’est vite fait sentir pour les connecteurs, les câbles, les formats d’encodage et d’adressage, les codes de détection d’erreurs, les routages, les types d’application, etc. L’idée maîtresse, c’est qu’un ordinateur ou un équipement informatique ne doit pas se résumer à être un produit isolé, qui soit incompatible avec d’autres équipements informatiques.

Un réseautage standardisé fait en sorte que tout équipement informatique constitue un module qui puisse s’adapter au sein d’une structure modulaire. De plus, des équipements informatiques différents doivent pouvoir communiquer entre eux dans des réseaux qui peuvent être situés dans une même salle, sur un même étage, dans un même bâtiment, dans une même compagnie, mais qui peuvent aussi être distribués géographiquement, en différents endroits. Pensons aux systèmes de réservation de billets d’avion, de chambres dans un hôtel, aux systèmes de vidéoconférence intégrés à l’ordinateur personnel, à Internet, etc. Les progrès en matière de réseautage ont atteint une maturité patente;

toutefois, aucune de ces applications n’aurait pu exister sans un ensemble de normes universellement acceptées.

La structure modulaire doit permettre qu’un usager communique avec des ressources, et ce par un certain nombre de « nœuds » (commutateurs, ponts, etc.). Le terme nœud s’applique tant à l’usager et à son vis-à-vis qu’aux étapes intermédiaires par lesquelles l’information transite, comme le montre la figure 3.1.

Noeud

Ressources ou vis-à-vis

Noeuds intermédiaires

Usager Noeud

FIGURE 3.1

Structure modulaire de communication.

(3)

La topologie des niveaux décrit la façon dont les nœuds sont interconnectés : réseau maillé, réseau en arbre, réseau en étoile, réseau en bus ou réseau en boucle. Ajoutons que les réseaux n’ont pas toujours besoin d’être connectés physiquement. Une topologie particulière peut consister en un circuit virtuel qui donne à l’usager l’impression qu’il a à sa disposition une topologie particularisée. Par exemple, un usager du téléphone à l’impression, lorsqu’il parle à son interlocuteur, d’avoir un câble individuel qui le relie à ce dernier.

3.1.2 Organismes de normalisation en téléinformatique

Afin de permettre la compréhension entre les divers constructeurs de matériel informatique et de logiciels à travers le monde, ainsi qu’entre les divers transporteurs (téléphone, câble, satellite, etc.), il a été nécessaire de mettre sur pied certaines organisations de normalisation téléinformatique, qui se retrouvent aux paliers national et international.

Les organismes internationaux les plus importants sont l’Union internationale des télécommunications (UIT), anciennement le Comité consultatif international pour le télégraphe et le téléphone (CCITT), et l’International Standards Organization (ISO).

– Le UIT-T (secteur des télécommunications) est un comité de l’UIT qui est un organisme de l’ONU. Les membres du UIT-T sont les représentants des administrations nationales des PTT (Poste, télégraphe et téléphone), ainsi que des organisations privées de télécommunications officiellement reconnues.

– L’ISO est, pour sa part, un organisme international spécialisé dans la normalisation, constitué des organismes nationaux de normalisation de 89 pays : ANSI (American National Standard Institute) pour les États-Unis; AFNOR (Association française de normalisation) pour la France; CCN (Conseil canadien des normes) ou SCC (Standards Council of Canada) pour le Canada; BSI (British Standard Institute) pour la Grande-Bretagne; etc. L’ISO un membre non votant du UIT-T, qui est à l’origine des couches de protocoles dédiées en téléinformatique, selon une architecture de systèmes ouverts dite OSI (Open Systems Interconnexion).

L’objectif de l’ISO est de faciliter les échanges de marchandises et les prestations de services entre les nations, et de réaliser une entente mutuelle dans le domaine intellectuel et scientifique, ainsi que dans ceux de la technique et de l’économie.

Les membres de l’ISO sont les organismes nationaux ou régionaux de normalisation. Ses domaines de compétence sont très étendus; c’est le comité technique 97 (système de traitement de l’information) qui a la charge du domaine informatique et qui traite également de la bureautique et de la télématique.

Travaux relevant du UIT-T

Le UIT-T est un organisme chargé de traiter des problèmes liés aux télécommunications sur câbles ou supports guidés. Cet organisme fonctionne par périodes d’étude de quatre ans. C’est au cours d’une assemblée plénière que le Comité ratifie, par l’émission d’avis, les travaux de ses diverses commissions d’études, qui sont généralement chargées d’études ponctuelles. Ces avis sont ensuite publiés. Les recommandations I, Q, V et X se

(4)

préoccupent respectivement du RNIS (réseau numérique à intégration de services) – ou ISDN (Integrated Services Distribution Network) –, de signalisation, de transfert de données par téléphone et de réseaux de transmission de données. Les normes du UIT-T sont nommées par une lettre suivie d’un point et d’un numéro : V pour la transmission de données par téléphone (par exemple, V.24, V.28, etc.); X pour les réseaux publics de données (par exemple, X.25, X.75, etc.); F, S et T pour les nouveaux services télématiques; Z pour la description et les significations; et Q pour la signalisation.

Le programme de travail du UIT-T est élaboré à partir des questions suggérées par les commissions d’études qui se chargent ensuite de le mettre en œuvre. Le CCITT veille, pour sa part, aux relations et à la coordination entre les commissions. Certains membres siègent à plusieurs commissions.

Les présidents des commissions d’études sont choisis par élection. Ils ont des responsabilités par rapport aux autres commissions, mais aussi à l’extérieur du CCITT, par exemple envers l’ISO.

Travaux relevant de l’ISO

Les résultats des travaux techniques de l’ISO sont publiés sous la forme de normes internationales qui permettent de concilier les intérêts des fabricants, des usagers, des gouvernements et des milieux scientifiques.

Chaque pays délègue à l’ISO un comité membre, qui est l’organisme le plus représentatif de la normalisation dans son pays. Les travaux techniques de l’ISO s’effectuent au sein des comités techniques. Ceux-ci peuvent créer des sous-comités et des groupes de travail chargés de s’occuper de différents aspects.

Une norme internationale est l’aboutissement d’un accord intervenu entre les comités membres de l’ISO. L’élaboration de ces normes suppose la présentation d’un avant- projet, qui doit passer par plusieurs étapes avant d’être accepté. Cette procédure vise à garantir que le résultat final puisse être accepté par autant de pays que possible. Lorsque les membres du comité technique se sont mis d’accord sur un avant-projet, celui-ci est soumis au vote de tous les comités membres. Si le projet est approuvé par 75 % des comités, il est alors soumis au conseil de l’ISO, pour qu’il l’accepte comme norme internationale.

Étant donné l’évolution rapide des techniques, des matériaux et des méthodes, les normes de l’ISO sont soumises à une révision périodique, en principe à des intervalles de cinq ans au plus.

Parallèlement à ces organismes, plusieurs organisations de normes ou associations industrielles coordonnent leurs standards avec l’ISO ou le UIT-T.

L’ECMA (European Computer Manufacturers Association) est à la source de nombreuses normes ISO.

– Le CEPT (Commission européenne d’administration des postes et des télécommunications) et l’ETSI (European Telecommunication Standards Institute) produisent des normes NET (Normes européennes de télécommunications).

(5)

L’organisme du FCC (Federal Communication Commission) aux États-Unis chapeaute la majorité des groupes de travail en matière de normes de télécommunications. Cet organisme est également responsable de l’octroi du spectre radio.

L’ANSI (American National Standards Institute) interprète et élabore des normes UIT-T pour leur application aux États-Unis.

Aux États-Unis, l’EIA (Electronic Industries Association) et le TIA (Tele- communications Industry Association) ont développé un grand nombre de recommandations et de normes. Ces deux organismes sont représentés à l’ANSI.

L’ECSA (Exchange Carriers Standards Association) est une association de compagnies de téléphone et de manufacturiers membres de l’ANSI.

Le CBEMA (Computer and Business Equipment Manufacturers Association) est également membre de l’ANSI.

Le NBS (National Bureau of Standards) aux États-Unis regroupe les compagnies de télécommunications et les manufacturiers de commutateurs.

L’IEEE (Institute of Electrical and Electronics Engineers) est à l’origine de nombreux standards, notamment dans le domaine des réseaux locaux LAN et celui des réseaux métropolitains MAN.

Les normes en télécommunications doivent cohabiter avec d’autres normes dans des domaines connexes. Ainsi, au Canada par exemple, nous retrouvons l’ACNOR (Association canadienne des normes) ou CSA (Canadian Standard Association), le NBC (National Building Code), le CEC (Canadian Electrical Code), de même que de nombreux règlements provinciaux et municipaux.

L’Internet Society est une organisation se rapportant à l’UIT. L’IAB (Internet Architecture Board) reçoit les propositions des groupes de recherche IRSG (Internet Research Steering Group) et des groupes de travail IETF (Internet Engineering Task Force) qui proposent des RFC (Requests For Comments). Toute personne peut proposer de nouveaux protocoles ou de nouvelles modifications de protocoles à l’éditeur en chef de l’IAB. Ces RFC ont remplacé les anciens IEN (Internet Engineering Notes). Précisons que certains produits sur le marché ne sont pas à cent pour cent compatibles avec la norme TCP/IP officielle.

En matière de téléinformatique, les protocoles internationaux de l’OSI cohabitent avec d’autres protocoles nationaux comme ceux du GOSIP (Government OSI Protocol, des États-Unis) et de nombreux protocoles de facto qui se sont instaurés dans l’industrie, tels TCP/IP, Telnet, File Transfer, courrier électronique, Xerox XNS, Sun, NFS, etc. Par ailleurs, certaines compagnies ont développé des protocoles propres à leurs produits : SNA et DLSN chez IMB, AppleTalk chez Apple, Novell, Vines, etc. Enfin, d’autres protocoles propres aux ordinateurs personnels ont été adoptés dans l’industrie : NetBios, OS/2 LAN, etc.

(6)

3.2 MODÈLE DE RÉFÉRENCE OSI

Le modèle de référence OSI (Open System Interconnexion) définit sept niveaux de protocoles auxquels sont rattachées des fonctions particulières. Ces niveaux sont hiérarchisés, en ce sens que chaque niveau englobe le suivant en ajoutant, ou en omettant, des caractéristiques particulières. L’avantage d’une telle hiérarchie est que, d’une part, les niveaux sont standardisés et que, d’autre part, des équipements provenant de différents manufacturiers et pouvant être appliqués à un ou plusieurs niveaux peuvent fonctionner ensemble. Voyons ces couches et les fonctions qui s’y rattachent :

– les médiums de transmission (fibre optique, câble bifilaire, câble coaxial) sont définis à la couche physique (physical layer);

le codage par trame, pour le contrôle d’erreurs de transmission, est dans la couche liaison (link layer);

– la segmentation ou le rassemblement des données binaires en paquets, de même que le routage de l’information sont définis à la couche réseau (network layer);

– le dialogue de contrôle (monologue, conversation simplex, conversation duplex) est défini à la couche transport (transport layer);

le dialogue de commande est défini à la couche session (session layer);

le format de présentation des données (caractères ASCII ou autres) l’est à la couche présentation (presentation layer);

– le type d’application (courrier électronique, transfert de fichiers, accès au Web, etc.) l’est enfin dans la couche application (application layer).

La couche application contient une trame relativement courte. Celle-ci est enrichie d’un en-tête (header) pour former la trame de la couche transport. Cette dernière est enrichie d’un nouvel en-tête pour former la trame de la couche session, et ainsi de suite. Lors de la transmission, la couche application s’enrichit de multiples en-têtes pour finir à la couche physique. Lors de la réception, les en-têtes successifs sont ôtés à chaque niveau, pour revenir à la simple trame de départ, à la couche application.

Le développement de la norme IEEE 802 traitant des réseaux locaux a débuté en 1980 et s’est terminé cinq ans plus tard. Cette norme diffère quelque peu de celle qui est préconisée par le modèle OSI. Ainsi, pour la couche réseau, on différencie deux sous- couches : LLC (Logical Link Control) et MAC (Media Access Control). La sous- couche MAC définit le réseau particulier au sein duquel l’information va évoluer (Internet, réseau à jeton, etc.), chacun de ces réseaux devant être adressé d’une façon particulière.

Par ailleurs, le modèle de référence TCP/IP qui prévaut grandement dans l’industrie diffère lui aussi de celui qui est préconisé dans le modèle OSI, notamment au niveau de la couche session.

Bien que les protocoles OSI développés par l’ISO (International Organisation for Standardisation) et TCP/IP développés par IETF (Internet Engineering Task Force) soient reconnus et appliqués mondialement, il existe en parallèle des architectures propres à certaines compagnies, telles que SNA (System Network Architecture) d’IBM, Netware de Novell et AppleTalk de Apple. Le tableau 3.1 donne des exemples de protocoles propres aux différentes couches ISO.

(7)

TABLEAU 3.1

Exemples de protocoles propres aux différentes couches ISO

Couches OSI UNIX

-7-

Application

Applications d’utilisation du réseau

Applications d’utilisation du réseau : FTP, TELNET, etc.

-6-

Présentation

Format des données en transit sur le réseau

XDR (eXternal Data Representation)

Universalisation de la représentation des données qui deviennent ainsi indépendantes des structures propres aux différents constructeurs.

-5- Session

Communications entre applications

RPC (Remote Procedure Call)

Bibliothèques de routines cachant aux couches supérieures les accès au réseau par l’usage d’appel de fonctions.

-4- Transport

Détection et

correction d’erreurs

TCP (Transmission Control Protocol) RFC 793 Fiabilité du transfert des données par contrôle des

données, reséquencement si IP ne les livre pas dans le bon ordre, contrôle du flux et du niveau de priorité.

UDP (User Datagram Protocol) RFC 768 Transfert en mode datagramme sans contrôle ni séquencement.

-3- Réseau

Connexions entre les machines du réseau

IP (Internet Protocol) RFC 791, 894

Routage en mode datagramme, fragmentation des données et contrôle rudimentaire de leur flux.

ARP (Address Resolution Protocol) RFC 286

Correspondance : adresses Internet → adresses physiques.

RARP (Reverse Address Resolution Protocol)

Correspondance : adresses physiques → adresses Internet.

ICMP (Internet Control Message Protocol) RFC826 Gestion du protocole IP : correction des erreurs, etc.

-2- Liaison

Transfert physique des données

Ethernet IEEE802.3

-1- Physique

Propriétés des canaux physiques de transfert

Ethernet IEEE802.2

(8)

Il faut garder en perspective le fait que les normes OSI ne sont que des recommandations et n’ont pas force de loi. Elles permettent cependant d’établir un barème de référence qui est relativement respecté. Malgré les différences existantes entre les modèles de la norme IEEE 802 et la norme TCP d’une part, et celles des couches de référence OSI de l’autre, la terminologie du modèle OSI est largement utilisée. Il en va de même de la nomenclature des couches ou encore d’une terminologie propre à OSI, dont nous présentons quelques exemples :

– SAP Service Access Point, que l’on retrouve dans DSAP (Destination Data Link SAP) et SAAP (Service Data Link SAP) et SNAP qui est une adresse du réseau OSI.

– PDU Protocol Data Unit, que l’on retrouve dans BPDU (Bridge PDU ou PDU d’un pont) ou nPDU (PDU correspondant à la couche n). Exemple : DPDU, TPDU, etc.

– ES End System ou terminal.

– IS Intermediate System ou nœud intermédiaire.

– ASN1 Abstract Syntax Notation One.

GOSIP Government OSI Profile, ou variation de la norme OSI avec des particu- larités propres au gouvernement américain.

Rappelons qu’un terminal informatique peut être défini par les sept couches du modèle OSI. Les nœuds se trouvant le long des lignes de communication (interrupteurs, routeurs, etc.) n’ont besoin que des couches 1, 2 et 3, et sont appelés systèmes intermédiaires, que l’on différencie des nœuds terminaux.

Les relais au niveau de la couche 7, sont des passerelles ou gateways.

Les relais au niveau de la couche 3, sont des routeurs ou routers.

Les relais au niveau de la couche 2, sont des ponts ou bridges.

Les relais au niveau de la couche 1, sont des répéteurs ou repeaters.

Il existe des relais au niveau 4, mais ceux-ci ne sont pas inclus dans le modèle de référence OSI.

3.2.1 Suivi de la transmission d’un message dans un réseau par paquets

L’illustration des transformations subies par une suite d’informations à communiquer peut permettre de voir la complexité certes, mais aussi l’extrême fonctionnalité du modèle proposé par l’ISO pour assurer une communication efficace et sûre des données (figure 3.2). Examinons, d’abord du point de vue de l’émetteur, les transformations subies par une suite d’informations, à partir du moment où l’information est « entrée » par l’utilisateur sur son terminal, jusqu’à ce qu’elle circule sur les lignes physiques. De la couche 7 à la couche 1, il faut, entre chaque niveau, rajouter de l’information, mais aussi découper le message et le compléter pour permettre un meilleur cheminement. Arrivées à la couche physique, les données peuvent enfin être acheminées sous la forme d’un signal électrique ou lumineux, selon les cas.

(9)

Normalement, le train de données transitera par différents nœuds, durant son passage dans le réseau de données par paquets. À chacun des relais (nœud, passerelle), le train de données subira de nouvelles transformations, d’abord par contrôle et dépouillement successif des en-têtes, puis par réadressage et réexpédition vers le prochain nœud.

Arrivées à destination (couche 1, chez le destinataire), les données referont le chemin inverse, pour être restituées sous la forme d’informations interprétables par l’utilisateur humain sur le terminal (couche application).

FIGURE 3.2

Cheminement de l’information.

Cheminement dans le système A

Ce cheminement commence par la couche application qui est la seule perceptible par l’utilisateur. En fait, les deux premières couches (application et présentation) s’entendent pour déterminer le type du message qui sera émis et la forme qu’il prendra.

Niveau 7 COUCHE APPLICATION

Un message x doit être émis au niveau 7 du système émetteur A.

Avant que le message ne soit envoyé, les couches application des systèmes A et B s’entendent sur l’identification des ordinateurs et des terminaux des deux systèmes.

SYSTÈME ÉMETTEUR

SYSTÈME

RÉCEPTEUR NIVEAU

E2 E3 E4 "x1 K2 E2 E3 E4 "x2 K2 E2 E3 E4 "x1 K2 E2 E3 E4 "x2 K2

NIVEAU 1 NIVEAU 1

E3 E4 "x1 E3 E4 "x2 E4 "x1

'x x

"x

'x x

"x

7

6

5

4

3

2

1 Interface 6/7

Interface 5/6

E4 "x2 E4 "x1 E4 "x2

E3 E4 "x2 E3 E4 "x1

(10)

La couche application utilise les différents logiciels d’application pour préparer les données à envoyer (texte, chiffres, commandes à l’ordinateur distant, etc.). C’est à ce niveau que l’information est codée sous une forme généralement binaire.

Avant de passer le message x à la couche présentation, la couche application y préfixe un en-tête qui identifie, dans un langage codé, les ordinateurs et les terminaux de l’émetteur et du receveur.

Niveau 6 COUCHE PRÉSENTATION

Avant que le message ne soit envoyé, les couches présentation des systèmes A et B s’entendent sur l’utilisation d’un alphabet commun pour le temps de la session (le plus courant est le code ASCII).

La couche présentation permet de convertir les fichiers créés par certains ordinateurs avec un formatage différent, en effaçant les disparités de fonctionne- ment entre les divers terminaux. Ces disparités peuvent avoir trait par exemple à la longueur des lignes et à la taille de l’écran, ainsi qu’aux types de caractères.

Parmi les tâches les plus courantes de la couche présentation, on retrouve encore la compression de texte, ce qui permet d’optimiser le fonctionnement du réseau, en réduisant le temps de transfert et l’espace de stockage, ainsi que la cryptographie, ce qui permet d’assurer le caractère privé de certaines communications.

Avant de passer le nouveau message ’x au niveau 5 par l’interface 6/5, la couche présentation lui ajoute un nouvel en-tête codé, qui fournit les indications pertinentes au compactage et à la cryptographie, le cas échéant.

Les deux couches suivantes (session et transport) s’occupent de la communication entre les deux postes distants.

Niveau 5 COUCHE SESSION

C’est au niveau de la couche session que se négocie l’établissement d’une connexion avec un processus sur un autre système. Dès que la connexion est établie, c’est la couche session qui gère le dialogue d’une manière ordonnée. Si les utilisateurs, aux deux extrémités, veulent choisir parmi une variété d’options, par exemple une communication semi-duplex ou une communication duplex intégral, c’est à la couche session que revient la tâche de gérer ces options.

Par ailleurs, la couche session marque le début et la fin des messages. Elle ajoute enfin un nouvel en-tête indiquant les ententes prises, entre autres sur le mode de communication.

Niveau 4 COUCHE TRANSPORT

La couche transport a pour tâche de créer une connexion. Normalement, une connexion distincte est créée chaque fois qu’elle est demandée par la couche session. Toutefois, dans certaines situations, la couche transport peut créer plusieurs connexions ou encore effectuer un multiplexage de plusieurs connexions en une seule.

La couche transport a également pour tâche de définir la classe de service fournie.

Elle détermine par exemple si les paquets envoyés à travers le réseau doivent être

(11)

restitués dans leur ordre d’émission à leur arrivée à l’autre extrémité ou si, au contraire, l’ordre d’arrivée des paquets importe peu.

Étant donné que les sources hôtes, émettrices ou réceptrices, fonctionnent de telle sorte qu’un grand nombre de connexions entrent et sortent de chacune d’entre elles, l’identification du message à une connexion précise relève de la couche transport.

La couche transport doit enfin contrôler le flux de données qui s’écoule entre les deux extrémités utilisatrices.

Par ailleurs, compte tenu qu’il existe une limite à la taille des messages acceptés par le niveau 3, le niveau 4 (couche transport) découpe le message en petites unités ou segments et les identifie avec un nouvel en-tête. Comme l’illustre la figure 3.3, cet en-tête « E4 » inclut des informations de contrôle, telle une séquence de numéro qui permettra au niveau 4 du système-récepteur de reconstituer le message x dans la bonne séquence ordonnée, au cas où les niveaux inférieurs ne maintiendraient pas l’ordre des unités du message.

FIGURE 3.3

Exemples d’en-têtes du niveau 4 (détail).

Après division du message en segments, la couche transport fait une copie de chaque segment. Cette copie pourra être retransmise s’il arrivait un incident dans le transfert des données; elle est détruite dès que la couche transport du système B accuse bonne réception du segment.

Les trois couches suivantes, dites de bas niveau, constituent ce qu’il est aussi convenu d’appeler le sous-réseau de communication. Elles ont la tâche de convoyer les données dans le réseau. La couche réseau sélectionne la route, la couche liaison assigne le message à des canaux spécifiques et la couche physique transmet le signal.

Niveau 3 COUCHE RÉSEAU

Dès qu’un segment de message entre dans la couche réseau en provenance de la couche transport, il est divisé en paquets.

Une des tâches les plus importantes de la couche réseau est la détermination des routes que les paquets utiliseront. La couche réseau doit effectuer à cet effet un contrôle permettant d’éviter la congestion résultant de la présence d’un trop grand nombre de paquets aussi bien dans les nœuds que dans les circuits du sous-réseau.

Il est donc possible que les paquets d’un même message utilisent des chemins différents pour se rendre à leur destination. La gestion des routes ou des circuits à utiliser relève de la couche réseau.

Le niveau 3 ajoute un nouvel en-tête contenant la séquence des paquets dans le message, ainsi que l’adresse du destinataire, comme l’illustre la figure 3.4.

E4 "x1 E4 "xn

(12)

FIGURE 3.4

Exemples d’en-têtes du niveau 3.

Niveau 2 COUCHE LIAISON

La couche liaison du système A s’entend avec son équivalent du système B sur la façon d’accuser la réception des paquets.

La couche liaison a pour tâche d’assurer le transport des paquets de données en garantissant l’absence d’erreurs. C’est à ce niveau que sont établies et transmises les trames de données.

Le niveau 2 assure la liaison des données en ajoutant un autre en-tête « E2 » au message, ainsi qu’une spécification « K2 » de début ou de fin de message, située à la fin du message (figure 3.5). La trame permet ainsi de convoyer une séquence de contrôle permettant la vérification et la détection des erreurs de transmission, ainsi que les adresses réseau du prochain nœud que le paquet rencontrera.

FIGURE 3.5

Exemples d’en-têtes du niveau 2.

La couche liaison fait et conserve une copie de chaque paquet jusqu’à ce qu’elle reçoive l’accusé de réception du prochain nœud indiquant que le paquet est arrivé intact.

Niveau 1 COUCHE PHYSIQUE

Arrivés à la couche physique, les bits de chaque paquet sont encodés en fonction du support qui les véhiculera. Pour les lignes téléphoniques, il s’agit encore le plus souvent de la production d’un signal analogique. Pour les réseaux en fibre optique, les bits sont transformés en pulsions lumineuses.

La couche physique (niveau 1) a pour fonction la transmission physique des données sur un canal de communication.

Relais dans un nœud intermédiaire

Le rôle d’un nœud dans le réseau peut être assumé par un serveur, qui servira de passerelle vers le serveur destinataire, ou par un processeur dédié à cette tâche. Chaque nœud contient au moins les trois couches inférieures du sous-réseau du modèle OSI, ce

E3 E4 "x1 E3 E4 "xn

E2 E3 E4 "x1 K2 E2 E3 E4 "xn K2

(13)

qui constitue le minimum requis pour le travail de vérification, de reroutage et de transfert.

Quand un paquet arrive à un nœud, les opérations exécutées auparavant par l’émetteur sont pour ainsi dire « détricotées » : les en-têtes sont lus, les séquences de contrôle vérifiées et, le cas échéant, les accusés de réception sont envoyés à l’hôte émetteur pour l’informer que le paquet est arrivé intact.

Niveau 1 COUCHE PHYSIQUE

Véhiculé par des fils ou par un autre support, le signal contenant le message arrive à un nœud du réseau par la voie de la couche physique. Le signal est alors décodé et rétabli en une suite de bits.

Niveau 2 COUCHE LIAISON

La tâche de la couche liaison consiste à prendre les trains binaires qui lui sont fournis par la couche physique et à les transformer en une liaison sans erreurs pour la couche suivante, c’est-à-dire la couche réseau.

Cette tâche est effectuée par la transmission séquentielle des trames1 de données et le traitement de l’accusé de réception, par le récepteur. Le niveau liaison assume en outre diverses tâches :

– étant donné que le niveau physique accepte et transmet des ensembles binaires sans en connaître la structure ni la signification, la couche liaison doit reconnaître les frontières des trames;

– le niveau liaison doit de plus résoudre les problèmes causés par la perte, la destruction ou la duplication des trames de données; dans les deux premiers cas, le niveau liaison du système émetteur doit retransmettre celle-ci; il doit également intervenir au cas où de multiples transmissions de la même trame introduiraient la duplication de celle-ci, par exemple lorsque l’accusé de réception d’une trame envoyé du récepteur à l’émetteur est détruit;

– le niveau liaison doit enfin assurer la coordination entre l’émission rapide des données et leur réception lente.

Avant de passer à la couche réseau, l’en-tête et la queue sont extraits de chaque paquet.

Niveau 3 COUCHE RÉSEAU

Comme cela s’est produit dans le sous-réseau du serveur émetteur, le nœud établit, maintient et termine la connexion jusqu’à la prochaine station le long du chemin, le serveur receveur, par exemple. De plus, une entente est reprise sur les modalités de réception des paquets.

La couche réseau examine l’en-tête qui lui est propre, et qui a été fixée par la précédente station, pour déterminer le nouveau segment de route à faire effectuer au paquet. Grâce à un schéma de routage adaptatif, le nœud du réseau peut aussi rerouter le paquet pour éviter la congestion.

1 Par trame, on entend un bloc d’informations composé et transmis selon un ensemble de règles constituant une procédure de contrôle de liaison de données.

(14)

Niveau 2 COUCHE LIAISON

La couche liaison rétablit la trame, réencadre chaque paquet avec un en-tête et une queue et réinsère une séquence de contrôle. Chaque paquet reçoit maintenant l’adresse du nouveau point dans le cheminement.

Avant de passer le paquet à la couche physique, une copie en est faite. Le double est conservé jusqu’à ce qu’un accusé de réception certifie son arrivée intacte au prochain arrêt.

Niveau 1 COUCHE PHYSIQUE

La couche physique réencode les bits de chaque paquet dans la forme propre au support de transmission choisi et les expédie.

Cheminement à l’intérieur du système B

Quand un serveur peut aussi bien fonctionner comme passerelle vers un autre serveur que pour son propre compte, et qu’il reçoit des données, il trie les paquets qui ne font que transiter, comme on vient de le voir, et conserve ceux qui lui sont destinés.

Les paquets que le serveur conserve sont examinés et restaurés au fur et à mesure qu’ils progressent de la couche physique à la couche application, conformément au modèle OSI.

Niveau 1 COUCHE PHYSIQUE

Quand le signal entre dans le serveur récepteur par la couche physique, les différences de voltage ou les pulsions lumineuses sont reconverties en bits.

Niveau 2 COUCHE LIAISON

Le travail effectué lors du passage dans le nœud se répète ici avant que les paquets ne passent à la couche réseau.

Niveau 3 COUCHE RÉSEAU

La couche réseau vérifie l’adresse de chaque paquet. Ceux qui sont destinés à un serveur différent sont réadressés et renvoyés pour poursuivre leur route. Les paquets portant l’adresse du système B sont passés à la couche transport.

La couche réseau réassemble les paquets dans les segments de message à partir des numéros indiqués dans chaque en-tête pour remettre les paquets en ordre. Puis, lors de leur progression vers la couche transport, les paquets sont dépouillés des en-têtes qui contenaient le numéro du paquet et l’adresse du destinataire.

À des fins de facturation et de contrôle croisé avec l’émetteur, la couche réseau recompte les paquets entrants.

Niveau 4 COUCHE TRANSPORT

La couche transport relie entre eux, grâce aux numéros portés dans l’en-tête, les segments de message que lui a remis la couche réseau.

Après vérification, un avis de réception est envoyé à l’émetteur; sinon, la couche transport demande à son équivalent de retransmettre le segment de message.

(15)

Avant que ce segment n’arrive à la couche session, la couche transport retire l’en- tête qui lui est propre.

Niveau 5 COUCHE SESSION

La couche session groupe les messages de telle sorte qu’aucun d’entre eux n’arrive à destination avant que l’ensemble des messages n’y soit. Ce mécanisme vise à assurer qu’aucune déficience du matériel ou du logiciel dans le sous-réseau ne cause un abandon de la transaction avant la fin de celle-ci. Dans le cadre d’un système de gestion de base de données, il est en effet crucial, lors d’une transaction complexe, que les échanges ne soient pas abandonnés durant celle-ci, car cela laisserait la base de données dans un état incohérent.

Par ailleurs, le niveau 5 peut retenir un message destiné au niveau 6, alors que celui-ci transmet des données au niveau 5.

Avant que le segment de message n’arrive à la couche présentation, la couche session retire l’en-tête qui indique les ententes prises pour que la session de communication commence.

Niveau 6 COUCHE PRÉSENTATION

Si le message est cryptographié à l’origine, la couche présentation de l’ordinateur destinataire doit le déchiffrer en fonction des règles sur lesquelles les deux ordinateurs correspondants se sont entendus au début de la session.

Si l’information a été compactée, la couche présentation rétablit le code dans une forme acceptable pour la couche application.

Enfin, avant que le segment de message n’arrive à la couche application, la couche présentation retire l’en-tête qui indique l’alphabet et les consignes concernant le compactage et le cryptage.

Niveau 7 COUCHE APPLICATION

La couche application vérifie l’en-tête qui indique l’adresse du destinataire, reconvertit les bits en caractères lisibles pour l’utilisateur et dirige les données vers le logiciel d’application approprié.

Quand le dernier en-tête est retiré, le message peut être affiché au terminal destinataire.

Cet exemple illustre bien l’importance de la relation entre la communication virtuelle de chaque niveau et la communication physique propre au niveau 1.

3.3 PROTOCOLES DE LA COUCHE PHYSIQUE

La couche physique permet de déterminer l’activation, le maintien et la désactivation d’une connexion au sein d’un médium donné, en vue de transmettre des données binaires.

Cette couche peut inclure des répéteurs qui réamplifient le signal dans des nœuds intermédiaires.

(16)

Par exemple, le connecteur EIA (UIT-T, V.24/V.28) est défini du point de vue mécanique (norme ISO 2110), électrique (bit 1 = tension entre –3 et –15 volts et bit 0 = tension entre +3 et +15 volts), fonctionnel (broche 2 = données à transmettre, broche 3 = données reçues, broche 4 = demande à transmettre, etc.) et procédural (demande de transmission et vérification avant la transmission de données).

Au niveau de la couche physique, la communication peut être synchrone ou asynchrone.

La communication asynchrone débute et se termine par des bits de démarrage et d’arrêt reconnaissables (start bit et stop bit). Par exemple, un caractère ASCII de 7 bits est précédé d’un bit de démarrage (start bit) et est suivi par un bit de parité (error check bit) et d’un bit d’arrêt (stop bit). Le nombre connu de bits qui les séparent des bits d’arrêt permet de reconstituer l’horloge qui a servi à la transmission (figure 3.6).

Toutefois, en communication synchrone, il n’est pas nécessaire de faire précéder le caractère représentant des ensembles de bits, par des bits de démarrage et d’arrêt.

L’horloge peut être reconstituée au récepteur à partir des transitions des bits dans le message reçu.

C ircu it d e re c o n s titu tio n

d 'h o rlo g e S ig n a l b in a ire a lé a to ire

(R B S )

S ig n a l d 'h o rlo g e

FIGURE 3.6

Reconstitution d’un signal d’horloge.

La synchronisation d’horloge au récepteur est essentielle, car elle permet d’identifier le milieu de chaque bit en vue de savoir s’il s’agit d’un « 1 » ou d’un « 0 ».

Dans le cas d’un réseau numérique à intégration de services (RNIS) qui vise à intégrer des transmissions audio avec des transmissions de données dans le système téléphonique, les vitesses binaires transmises sont des multiples de 64 kb/s.

Dans le cas des réseaux de haute vitesse SONET (Synchronous Optical Network) ou SDH (Synchronous Digital Hierarchy) recommandés par le UIT-T, on atteint des vitesses de plusieurs gigabits par seconde. Les vitesses sont des multiples de 155 Mb/s (dits STS-3 pour Synchronous Transfer Signal 3). Le système SONET permet d’inclure des vitesses multiples de 51,84 Mb/s (dits OC-1 pour Optical Carrier 1 ou STS-1 pour Synchronous Transfer Signal 1).

Entre autres protocoles de la couche physique, mentionnons les pendants UIT des séries V d’interface de modems, tels les V.24, V.28 (EIA RS-232-D) et V.34 (allant à 28,8 kb/s), de même que ceux de la série X, tels les X.21 et X.21bis.

3.4 PROTOCOLES DE LA COUCHE LIAISON

La couche liaison peut servir entre des connexions point à point, entre des connexions au sein d’un réseau local ou, encore, entre deux routeurs.

(17)

La couche liaison établit la connexion, en contrôle le séquencement, l’initiation et la déconnexion.

La détection d’erreurs est du type CRC-16 (Cyclical Redondancy Check) dans les réseaux locaux. La vérification des trames au moyen du CRC permet de confirmer au transmetteur que la trame est bonne (ACK pour Acknowledgment) ou qu’elle est mauvaise (NAK pour Non Acknowledgment). Dans ce dernier cas, le transmetteur doit transmettre la trame à nouveau (figure 3.7).

Préambule de

synchronisation Adressage Contrôle

/ Contrôle

Détection d'erreurs

Fin de trame Données

Identifie le début de la transmission

01111110

(n x 8) pour l'adresse, contrôle et identifie

le type de trame

identifie le type de trame (n=8 ou 16)

N bits 16 bits

code CRC-16 x16+x12+x5+1

ou vice versa

FIGURE 3.7

Trame au niveau de la couche liaison.

Le débit des paquets doit également être contrôlé, car le récepteur peut avoir une mémoire tampon et une vitesse de traitement limitées. En effet, le récepteur doit être prêt à accepter de la nouvelle information.

Le protocole HDLC est un protocole de la couche liaison, utilisé selon différentes variantes dans les protocoles X.25 et ISDN, dans la connexion entre les modems, dans la connexion point à point (P/P) ou dans les relais de trame (frame relay).

Il y a trois types de trames de contrôle HDLC :

Une trame d’information qui contient de l’information sur les données.

Une trame de supervision qui transmet des messages tels que : récepteur prêt ou non prêt, rejet, rejet sélectif, etc.

Une trame non numérotée destinée à des opérations de commande en transmission asynchrone.

Le contrôle du débit est effectué en transmettant une fenêtre de quelques trames afin de laisser au récepteur un certain temps de réaction. Cette fenêtre de trames est décalée, une trame à la fois. Le nombre de trames par fenêtre dépend de la vitesse à laquelle le récepteur peut absorber l’information qui lui est transmise. Dans le cas d’une réaction telle que « récepteur non prêt », le flux de transmission est interrompu. La confirmation (ACK) ou la non-confirmation (NACK) du récepteur ne sont nécessaires que dans les communications en mode orienté connexion (connection-oriented). En cas de non- confirmation de la trame reçue (NAK), toute la fenêtre de trames est retransmise par l’émetteur.

(18)

Dans le protocole de communication par paquets X.25, la trame HDLC en mode asynchrone balancé est appelée LAP-B (Link Access Procedure, Balanced). Le qualificatif balancé vient préciser qu’il n’y a pas de site primaire et que tous les terminaux ont le même statut. Dans le système téléphonique RNIS, une variation de la trame HDLC dans le canal D dédié à la signalisation porte le nom de LAP-D (Link Access Procedure for the D Channel).

3.4.1 Sous-couche MAC

Dans les réseaux locaux, la couche liaison est divisée en deux sous-couches : LLC (Logical Link Control) et MAC (Media Access Control).

Dans la sous-couche MAC, notons l’IEEE 802.3 (ou Internet), IEEE 802.4 (ou Token Bus), IEEE 802.5 (ou Token Key) ou FDDI (Fiber Data Distributed Interface).

Typiquement, un MAC comprend un préambule, l’adresse de destination, l’adresse de source, l’information LLC et le codage d’erreurs.

Le rôle d’un pont est de filtrer les messages, selon l’adresse de la destination, et de les assigner à un câble particulier. C’est le cas dans la plupart des ponts IEEE et FDDI. Les ponts de IEEE 802.5 filtrent le trafic selon l’adresse de la source, car la source contient de l’information sur la destination. Un paquet exploratoire est envoyé et peut arriver par plusieurs chemins. Celui qui encourt le délai le plus court est retenu. Dans ce cas particulier, des boucles de ponts peuvent exister. En dehors de ce cas, les ponts ne doivent pas former de boucles, car l’information risquerait alors de rouler sans fin entre les ponts. Une topologie en arbre est préférable.

Il existe aussi un commutateur entre les réseaux locaux dit Switched LAN Interconnect.

Les LAN y sont reliés par un pont (switching hub) qui joue aussi le rôle d’un répéteur.

3.4.2 Sous-couche LLC La sous-couche LLC comprend :

l’adresse SAP (Source Access Point ou Payload Identifier) de destination (un octet);

l’adresse SAP (Source Access Point) de source (un octet);

– l’information de contrôle (un ou deux octets).

Une adresse spéciale SNAP (SubNet Access Protocol) permet de désigner l’adresse où le type de protocole peut être identifié.

3.5 PROTOCOLES DE LA COUCHE RÉSEAU 3.5.1 Protocoles de la communication par paquets

Dans cette section, nous verrons les protocoles de la communication par paquets :

– Le protocole X.25, qui est un protocole de la couche réseau et aussi, partiellement, de la couche de transport. Il est largement utilisé et fait usage du système téléphonique, mais il est malheureusement beaucoup trop lent.

(19)

Le relais de trame (frame relay), qui est la réponse pour une transmission plus rapide, car des trames plus grandes sont transmises à plus haute vitesse.

Le relais de cellules (cell relay), qui livre le message en petits paquets dont la longueur type est de 48 octets, plutôt qu’en groupes entiers, comme le fait le relais de trame. Le protocole ATM (Asynchronous Transfer Mode) fait usage du relais de cellules et peut supporter des informations audio, vidéo ou encore des données.

À titre comparatif, le tableau 3.2 présente les propriétés propres à chacun de ces modes de communication par paquets.

TABLEAU 3.2

Comparaison entre les modes de communication par paquets

X.25 Relais de trame ATM (relais de cellules)

Unité de données paquet trame cellule

Taille maximale en octets 128 1600 48

Vitesse de transmission 9,6 kb/s → 56 kb/s 56 kb/s / 64 kb/s (T1)

T3 → OC-n Contrôle du début RNR/RR FECN/BECN Congestion Flag

GFC Identification nombre de canaux

logiques

DLCI VCI/VPI

Séquencement no de séquence implicite implicite

ACK par paquet aucun aucun

Capteur de détection

d’erreurs(Detection Sensor)

CRC-16 CRC-16 CRC-32

Demande de retransmission oui non non

Protocole X.25

Le protocole X.25 interface un terminal DTE (Data Terminal Equipment) à un réseau de communication DCE (Data Communication Equipment) dans un réseau public à commutation par paquets. Il est orienté connexion et permet d’avoir des circuits virtuels commutés ou permanents. La vitesse de transmission varie typiquement de 9,6 kb/s à 56 kb/s. La figure 3.8 montre un réseau utilisant le protocole X.25.

(20)

X .2 5

D T E D T E

D C E X

X .2 5 X D C E X .7 5

FIGURE 3.8

Exemple de réseau utilisant le protocole X.25.

Lors d’une demande de communication CR (Call Request), la longueur du message et les adresses de source et de destination sont transmises, de même que toute autre limitation particulière à la longueur des paquets et à la longueur des fenêtres (qui paie les frais de conversation par exemple, etc.). Ces paramètres sont négociés avec le partenaire avant que la transmission des informations ne commence.

Dans le protocole X.25, les données sont transmises par paquets. Chaque paquet comprend un bit de qualification (Q = 1 : est un paquet de supervision et Q = 0 : est un paquet de données). Un bit de confirmation D qui demande la confirmation de la réception d’un paquet. Un fanion M indique le nombre de paquets qui doit être considéré comme une unité logique, de façon à avoir une confirmation pour ce nombre de paquets.

Il existe des paquets spéciaux tels que :

Reset : pour compter les séquences et les ACK;

Restart : pour réinitialiser la connexion des paquets de diagnostic;

Fast Select : pour accélérer les transactions;

Expedited Data : pour envoyer les messages urgents;

Clear Request : pour mettre fin à la conversation.

Le protocole X.75 permet de communiquer entre deux réseaux X.25. Il ajoute quelques informations telles celles qui sont relatives à la tarification. Les protocoles X.28, X.3 et X.29 accompagnent le protocole X.25 (figure 3.9). Ils définissent les paramètres relatifs à la formation de paquets (X.3), aux terminaux (X.28) et au serveur (X.29). Le protocole X.21 est un protocole de basse vitesse au niveau de la couche physique.

X .2 8

T e r m in a l X .2 9 H o s t

D C E X .2 5

X .3 ( P A D )

P a c k e t A s s e m b l e r / D is a s s e m b le r

FIGURE 3.9

Les protocoles associés au protocole X.25.

(21)

Relais de trame

Le protocole de relais de trame (frame relay) est la solution utilisée en Amérique du Nord pour remplacer le protocole X.25. C’est un service orienté connexion. La vitesse de transmission est très rapide et s’effectue sur fibre optique. La figure 3.10 montre une trame de ce protocole.

Le relais de trame n’occupe que la couche physique et la couche liaison (X.25 occupe également la couche réseau). Il fournit comme services la détermination du début et de la fin d’une trame, la détection des erreurs de transmission. La transmission est plus fiable et il n’y a pas de retransmission ou de ACK. Les trames erronées sont détruites. C’est à l’utilisateur de s’en apercevoir et de les récupérer. Les paquets ont des longueurs de 1600 octets (au lieu de 138 avec X.25) et des trames entières sont transmises. Le protocole HDLC de la couche liaison est celui du RNIS, soit le LAPD.

Fanion Adresse et

contrôle D o nn é es Error

Check Fa nion

Identification de 10 bits : DLCI (Data Link Connection Identification) ou identifie un client particulier.

FECN (Forward Explicit Congestion Notification) ou BCEN (Backward Explicit Congestion Notification)

pour signaler le congestionnement et initier un ralentissement.

DEF(Discard Eligibility Field) indique quelles trames peuvent être abandonnées s'il y a congestion.

FIGURE 3.10

Trame type dans le protocole de relais de trame.

Un FRAD (Frame Relay Access Device) est une unité d’interface entre des relais de trame, qui prend les mesures nécessaires quand il y a congestion. Un FRAD peut émuler un réseau en anneau virtuel.

Relais de cellules

Le protocole de relais de cellules (cell relay) peut être orienté connexion (connection- oriented) ou non orienté connexion (connectionless). Chaque cellule possède 48 bits et un en-tête de 5 bits. Les trames sont divisées en petites cellules.

5 48

53 bits cellule type

FIGURE 3.11

Cellule type du protocole de relais de cellules.

(22)

L’avantage de ce protocole est que l’en-tête est uniforme et qu’elle est non distribuée en plusieurs endroits comme dans le X.25. Les cellules peuvent transmettre de l’audio, du vidéo et des données. La commutation des cellules est faite de façon matérielle pour minimiser le temps de traitement.

Cette approche a été retenue dans le protocole IEEE 802.6 (MAN pour Metropolitan Area Network) et dans le SMDS (Switched Multimegabit Data Service) non orienté connexion (connectionless) dédié aux données seulement. La méthode d’accès d’IEEE 802.6 agit comme un LAN géant.

Mode de transfert asynchrone (ATM)

ATM est une forme de relais de cellules (cell relay). Il est orienté connexion. Selon la couche adaptation (adaptation layer) retenue, ATM sert à la transmission audio, vidéo et de données.

Pour la voix, on parle de AAL1 (ATM Adaptation Layer 1).

Pour la vidéo, on parle de AAL2 (ATM Adaptation Layer 2 ).

Pour les données CO/CL, on parle de AAL3/4 (ATM Adaptation Layer 3 connection-oriented/ connectionless).

– Pour les données CL, on parle de AAL5.

En ATM, l’en-tête occupe cinq octets. ATM peut émuler un LAN, ou encore un relais de trame. Il est aujourd’hui utilisé comme pivot central ou dorsale (backbone). Il pourra remplacer le LAN, si son coût baisse.

ATM est l’éventuelle solution au futur réseau à large bande RNIS ou BISDN (Broadband Integrated Services Data Network). Il peut atteindre de très grandes vitesses.

Réseau SMDS et normes SONET et SDH

Le réseau SMDS (Switched Multimegabit Data Service) fonctionne par relais de cellules.

Il est dédié à la transmission de données exclusivement et il peut interconnecter des vitesses T1 et T3, soit 1,544 Mb/s et 44,736 Mb/s. Le réseau SMDS devrait être compatible avec le futur réseau RNIS à large bande ou BISDN.

La norme SONET (Synchronous Optical Network) définit des vitesses de transmission à haut débit sur des fibres optiques monomodes. Cette norme est compatible avec la transmission ATM. En Amérique du Nord, les vitesses OC-1, OC-3, OC-12 et OC-48 sont respectivement de 51,84 Mb/s, 152,52 Mb/s, 622,08 Mb/s et 2,488 Mb/s. Ailleurs, la norme porte le nom de SDH (Synchronous Digital Hierarchy) et les vitesses STM-1, STM-4 et STM-16 correspondent aux vitesses Sonet OC-3, OC-12 et OC-48.

3.5.2 Protocoles de routage

L’information de routage est une base de données à laquelle il faut accéder selon un certain protocole. En effet, les routeurs doivent avoir un langage commun et il est important de veiller à la transmission intégrale des données.

(23)

Quelques protocoles de routage

Protocole RIP (Routing Information Protocol)

Ce protocole vise un minimum de nœuds intermédiaires et le routage optimal est calculé toutes les trente secondes. Il permet l’échange de tables de routage entre les routeurs.

Chaque routeur diffuse sa table de routage toutes les minutes ou lors d’un changement dans sa table. Le routage optimal est alors calculé toutes les 30 secondes, en visant un minimum de nœuds intermédiaires pour transmettre un paquet entre un nœud d’origine et de destination.

Protocole OSPF (Open Shortest Path Fast)

Chaque routeur dérive indépendamment le chemin optionnel à partir de la base de données. Étant donné que la base de données est dynamique, les routeurs définissent des zones de recherche au sein desquelles l’information pourrait être véhiculée.

Pour les domaines à l’extérieur d’une zone, le protocole EGP (Exterior Gateway Protocol) suffit. On lui préfère cependant le BGP (BGP-3 et BGP-4) (Border Gateway Protocol) qui optimise le routage entre les différents domaines.

Protocole OSI

Le protocole OSI comprend le routage ES-IS et le routage IS-IS et IDRP (Inter Domain Routing Protocol).

Routage Novell

Le protocole RIP (Routing Information Protocol) est un routage Novell, fondé sur l’optimisation de la distance virtuelle minimale; il est rajusté toutes les 60 secondes.

Routage AppleTalk

Il existe des protocoles AppleTalk qui ont été développés pour DECnet, Banyan VINES et autres. Ce routage se fonde sur l’optimisation de la distance virtuelle et est rafraîchi à toutes les dix secondes.

Routage SNA

Le routage SNA est très différent de celui de TCP/IP, car il fait appel à des tables de routage spécialisées. Le routage APPN (Advanced Peer to Peer Networking) est automatique. La version améliorée APPN+ ou HPR (High Performance Routing) tient compte de la possibilité d’une panne et est compatible avec les autres routages SNA.

Protocoles de communication entre les routeurs

Les protocoles PPP (Port to Port Protocol) ou SLIP (Serial Line IP) identifient le type d’information pour l’acheminer au routeur. Rappelons qu’un routeur doit pouvoir rediriger des informations provenant de différents types de réseaux et ayant des paquets de types différents.

(24)

3.5.3 Protocoles Internet

Les protocoles Internet (IP) sont des protocoles intraréseaux et sont non orientés connexion (connectionless) – ou dits sans connexion. Ils occupent les trois premières couches du modèle OSI.

Des routeurs connectent ensemble des réseaux. Ils sont appliqués aux couches physique, liaison et réseau. Ce sont donc des relais. Le rôle d’un protocole Internet est de communiquer avec les routeurs voisins.

Le protocole IP prend en charge le routage, la taille du paquet, l’information sur le type de service, le contrôle du début, la segmentation et le rassemblement en paquets.

Protocole IP

Le IP (Internet Protocol) est un protocole non orienté connexion qui permet l’interopérabilité entre de nombreux réseaux : anneaux à jetons, X.25, Internet, etc., quelles que soient les caractéristiques de la couche physique de ces réseaux.

Il existe deux versions du protocole IP : la version 4 et la version 6 (ou IP nouvelle génération), normalisées par l’IETF (Internet Engineering Task Force). La version 4 est la plus utilisée; elle permet un adressage des terminaux sur 32 bits, alors que la version 6 offre un adressage sur 128 bits. La version 6 est en pleine expansion.

Du point de vue des couches ISO, IP se situe immédiatement au-dessus de la sous-couche réseau et offre une adresse logique pour les ordinateurs d’un réseau. L’adresse IP de 32 bits doit être capable d’adresser des nœuds recevant des liaisons de types différents (Internet : 48 bits, X.25 : 14 chiffres décimaux) et des trames de longueurs différentes fixées à la carte réseau de l’ordinateur (4500 octets en FDDI, 1518 octets pour Internet, etc.). Pour cela, un service de datagramme permet de refragmenter ou de rassembler les trames entrantes en paquets généralement plus petits. La fragmentation n’est nécessaire que si la longueur de la trame est plus grande que celle que permet un datagramme. Dans le cas contraire, le datagramme partiellement rempli est transmis. Les datagrammes peuvent arriver à destination en suivant un routage différent. Ils sont numérotés afin de reconnaître leur ordonnancement.

Le protocole IP n’offre ni contrôle de flux ni contrôle d’erreurs. Il les détecte sans les contrôler; si le paquet est erroné, il le rejette sans en aviser la couche supérieure et sans chercher à en générer un autre.

L’en-tête associé aux protocoles IP comprend les informations suivantes : adresses de source et de destination, type de service, longueur des paquets et des en-têtes, codage d’erreurs de l’en-tête, information de fragmentation, mécanique et automatique, si l’on n’est pas dans une boucle, numéro de version, amplificateur et variété de champs optionnels, comme forcer l’information à passer par un routeur particulier.

La figure 3.12 illustre un datagramme IP.

(25)

Version 4

En-tête 4

Type de service

8

Longueur totale 16 Identification

16

Fanion 3

Fragment 13 Durée maximale

8

Protocole 8

Contrôle d’erreurs 16

Adresse IP d’origine 32

Adresse IP de destination 32

En-tête IP

Options Remplissage

8 Données

FIGURE 3.12

Le datagramme IP.

Le champ Version (VERS) de quatre bits indique la version de protocole IP : version 4 ou version 6.

Le champ En-tête (IHL, Internet Header Length) de quatre bits indique la longueur de l’en-tête en mots de 32 bits, ce qui permet de pointer directement vers le début des données. Le nombre de mots de 32 bits peut varier entre cinq et seize, selon la longueur du champ d’options.

Le champ Type de service est un champ de 8 bits indiquant le type de service. Les trois premiers bits indiquent la priorité. Les quatre bits suivants précisent le type de service (normal : 0 0 0 0, avec minimisation des coûts : 0 0 0 1, avec fiabilité maximale : 0 0 1 0, avec maximisation de débit : 0 1 0 0, ou en minimisation de délai : 1 0 0 0).

Le champ Longueur totale (total length) est un champ de 16 bits et indique la longueur totale (en octets) de l’adresse IP (en-tête IP et données IP). La longueur maximale d’un datagramme IP est limité à 65 535 octets. Les routeurs sont conçus pour interpréter des datagrammes IP d’au moins 576 octets.

Le champ Identification permet de modifier un datagramme IP particulier : c’est le numéro d’identification d’un datagramme spécifique. Si un datagramme IP doit être fragmenté, le numéro du datagramme est copié dans chaque fragment.

Le champ Fanion (flags) est un champ de quatre bits; il informe le récepteur si le datagramme est fragmenté ou non. La figure 3.13 nous montre comment ce champ est divisé.

(26)

0 DF M F

"More Fragment"

MF = 1 indique que d'autres

fragments suivent.

"Don't Fragment"

DF = 1 signifie que le datagramme ne peut être fragmenté.

Réservé ; doit être égal

à zéro.

FIGURE 3.13

Le champ Fanion (Flags).

Le champ Fragment (fragment offset) indique la position du fragment dans le datagramme IP. La valeur de ce champ correspond au premier numéro d’octet qui appartient à ce fragment particulier. Si le fragment précédent contenait par exemple 2364 octets allant du numéro 6700 à 9064, le champ du fragment actuel affichera alors la valeur 9065.

Le champ Durée maximale (time-to-live) de huit bits indique la durée maximale permise d’un datagramme IP. La valeur de ce champ fait démarrer un compteur qui est décrémenté régulièrement. Lorsque le compteur atteint la valeur zéro, le datagramme est détruit. Ce champ permet d’éviter des situations où l’information circule indéfiniment en boucle entre les routeurs.

Le champ Protocole de huit bits indique le type de protocole qui est encapsulé dans les données du datagramme IP. Les valeurs types sont :

– 1 pour ICMP;

– 6 pour TCP;

– 17 pour UDP.

Le champ Contrôle d’erreurs de l’en-tête (header checksum) de seize bits effectue un contrôle d’erreurs, mais au sein de l’en-tête seulement. Ce champ est vérifié par le destinataire. S’il y a découverte d’une erreur, le datagramme est détruit.

Les champs Adresse d’origine et Adresse de destination occupent chacun 32 bits. Les adresses sont des adresses IP de classe A, B, C ou D.

Le champ Options a une longueur variable. Il peut être étendu ou omis. Des bits de remplissage sont utilisés pour compléter un mot à 32 bits. Le champ Options comprend un bit de fanion, deux bits pour la classe d’option et cinq bits pour l’option.

Alternativement, ce champ peut consister en un seul octet définissant une option particulière.

La figure 3.14 illustre comment sont définis les types d’options, dans le premier cas.

(27)

Fanion 1

Classe 2

Option 5

Remplissage ou paramètres d'option supplémentaires FIGURE 3.14

Définition des types d’options.

Le fanion est un bit dont la valeur « 1 » ou « 0 » indique si le fichier a été copié au routeur ou non.

Les bits de la classe d’options sont de quatre types : – contrôle (0 0);

– réservé (1 0);

– dépannage et mesure (0 1);

– réservé également (1 1) pour un usage futur.

Les cinq bits d’options peuvent être réservés :

– 0 0 0 0 0 End of Option List indique la fin de la liste des options, au cas où cette liste n’occuperait pas 32 bits.

– 0 0 0 0 1 No Operation sert à aligner les octets dans une liste d’options et ne représente pas une option particulière.

– 0 0 0 1 0 Security sert à définir le niveau de sécurité employé.

– 0 0 0 1 1 Loose Source Routing indique qu’aucun routage particulier n’est retenu.

– 0 1 0 0 1 Strict Source Routing indique que le datagramme doit passer par des nœuds (ou routeurs) bien définis.

– 0 0 1 1 1 Record Route permet de conserver l’historique des routeurs empruntés.

– 0 1 0 0 0 Stream ID ceci est une option (discrète) pour transporter une identification de type SATNET.

– 0 0 1 0 0 Type Stamping permet d’indiquer l’heure (en milliseconde) à chaque nœud.

Adresse IP

Comme le montre la figure 3.15, l’adresse IP est divisée en deux parties : la première (Netid) est destinée à identifier le routeur, la seconde (Hostid) est destinée à identifier le terminal. Il existe cinq classes d’adresses dénommées A, B, C, D et E qui dépendent du nombre de réseaux ou de terminaux rattachés au serveur.

(28)

En-tête Netid Hostid

Adresse IP Classe En-tête Bits

« Netid »

Nombre d’adresses de routeurs

Bits

« Hostid »

Nombre d’adresses de terminaux

A 0 7 127 24 16 777 214

B 10 14 16 384 16 65 536

C 110 21 2 097 152 8 255

D 1110 Mode tous-points « Broadcast »

E 1111 Classe non encore définie

FIGURE 3.15

Adresse IP et classes d’adresses.

L’adresse est lue en quatre octets séparés, chaque octet étant lu de façon décimale.

Exemple d’adresse

146 . 25 . 19 . 34

P . Q . R . S

Le premier nombre décimal P est indicateur de la classe d’adresses.

Dans la classe A, l’en-tête est composé du bit « 0 ». Les sept autres bits du premier octet constituent l’indicateur de la classe qui peut prendre des valeurs comprises entre 1 et 127. Le premier octet permet d’identifier les routeurs, tandis que les trois autres octets servent à identifier les différents terminaux. Cette classe est utilisée pour l’adressage, dans les réseaux qui comprennent un très grand nombre de terminaux, soit 16 777 214.

Dans la classe B, l’en-tête est composé des bits « 10 ». Les six autres bits du premier octet constituent l’indicateur de la classe qui peut prendre des valeurs comprises entre 128 et 191. Les deux premiers octets permettent d’identifier les routeurs, tandis que les deux autres octets servent à identifier les différents terminaux. Cette classe est utilisée pour l’adressage, dans les réseaux intermédiaires pouvant compter jusqu’à 65 536 terminaux.

Dans la classe C, l’en-tête est composé des bits « 110 ». Les cinq autres bits du premier octet constituent l’indicateur de la classe, qui peut prendre des valeurs comprises entre 192 et 223. Les trois premiers octets permettent d’identifier les routeurs, tandis que le dernier octet sert à identifier les différents terminaux. Cette classe est utilisée pour l’adressage, dans les réseaux d’au plus 255 terminaux.

Références

Documents relatifs

Dans la séquence ci-dessus, si rien ne peut être lu dans le canal qname et si tous les autres processus sont bloqués, alors timeout devient exécutable et permet de sortir de la

On suppose que deux types d’erreurs peuvent se produire : perte (d’un bloc ou d’un acquittement) et déséquencement lorsque l’ordre d’émission (des blocs ou des

a) Pour quelles raisons cette deuxième copie a-t-elle pu être émise, et quels sont les comportements possibles du récepteur à l’arrivée de cette copie.. b) Quelles est la

d) On ajoute au protocole HDLC une trame XREJ(a) qui indique que la trame n’a pas été correctement reçues, mais qui n’acquitte pas les trames précédentes, contrairement à

NB : dans la suite de l’exercice, pour chaque étape des scénarii d’évolution des tables, vous préciserez bien quels sont les échanges de tables, i.e.. le nœud qui a émis une

On suppose que chaque commutateur dispose de tampons pouvant contenir chacun un paquet de données, et qu’il utilise une stratégie de pré-allocation des tampons sans sur-allocation..

envoi de paquets LCP encapsulés dans des trames PPP pour libérer la connexion, libération de la liaison physique lorsque le.

Etienne Duris © Université Paris-Est Marne-la-Vallée – Mars 2009 Page 1.. HTTP : protocole de la