Vous êtes sur la page 1sur 258

Informatique

Synthse de cours

& exercices
corrigs

Architecture des rseaux


Lexpos des principales caractristiques des rseaux : protocoles, architectures de communication, rseaux locaux, TCP/IP Une centaine dexercices avec leurs corrigs dtaills Sur www.pearson.fr : des exercices complmentaires et un chapitre sur la scurit des rseaux

collection

Synthex

Danile DROMARD Dominique SERET

Informatique

Synthse de cours

&

exercices corrigs

Architecture des rseaux


Danile Dromard
Universit Pierre et Marie Curie (Paris 6)

et Dominique Seret
Universit Ren Descartes (Paris 5)

Synthex

collection

ISBN : 978-2-7440-7385-4 ISSN : 1768-7616

2009 Pearson Education France Tous droits rservs

Composition sous FrameMaker : IDT

Toute reproduction, mme partielle, par quelque procd que ce soit, est interdite sans autorisation pralable. Une copie par xrographie, photographie, lm, support magntique ou autre, constitue une contrefaon passible des peines prvues par la loi, du 11 mars 1957 et du 3 juillet 1995, sous la protection des droits dauteur.

Sommaire
Les auteurs Introduction Chapitre 1 Chapitre 2 Chapitre 3 Chapitre 4 Chapitre 5 Chapitre 6 Chapitre 7 Chapitre 8 Chapitre 9 Index
..................................................................................... V

.....................................................................................

VI

Les transmissions et les supports .................................. Les protocoles de liaison de donnes ............................ Les concepts gnraux des rseaux ............................. Les architectures de communication ............................. Les rseaux locaux dentreprise ................................... Le protocole IP (Internet Protocol) ................................. Les protocoles de transport .......................................... Le routage .................................................................... Les applications ...........................................................
.....................................................................................

25

57

89

105

147

175

199

217

245

Sommaire III

Les auteurs
Danile DROMARD, matre de confrences luniversit Pierre et Marie-Curie (Paris 6). Son domaine denseignement et de recherche concerne les architectures informatiques et les rseaux. Elle est responsable de lunit denseignement introduction aux rseaux en troisime anne de licence dinformatique. En outre, elle enseigne les principes de base de larchitecture des ordinateurs dans lunit denseignement machines et reprsentation . Elle a publi plusieurs ouvrages sur les rseaux informatiques, dont Rseaux et tlmatique, Eyrolles, Rseaux informatiques, cours et exercices, Eyrolles, LArchitecture SNA, Eyrolles. Dominique SERET, professeur luniversit Ren-Descartes (Paris 5), est directrice de lUnit de Formation et de Recherche en mathmatiques et informatique. Elle enseigne la logique, lalgorithmique et lintroduction aux rseaux en licence dinformatique, ainsi que la scurit des rseaux en master MIAGE. Son domaine de recherche concerne plus particulirement les rseaux et lvaluation des performances. Elle a publi plusieurs ouvrages en informatique, dont Rseaux et tlmatique, Eyrolles, Rseaux informatiques, cours et exercices, Eyrolles, RNIS, description technique, Masson, Introduction aux rseaux, Herms. Ensemble, elles ont crit plusieurs articles pour lEncyclopaedia Universalis.

Les auteurs V

Introduction
Les rseaux informatiques sont devenus incontournables aujourdhui. Ils sont employs dans toutes les entreprises et mme chez les particuliers. Ils permettent de mettre en uvre des applications trs diverses, des plus simples aux plus sophistiques. La plus connue est la navigation sur le Web, cest--dire le partage dinformations grce Internet. Quil sagisse de rseaux locaux, de rseaux sans l, de rseaux doprateurs ou de petits rseaux privs, ils obissent tous des principes de structuration quil est indispensable de comprendre. Ils utilisent une architecture en couches, dans laquelle la communication entre ordinateurs obit des rgles prcises dnies par des protocoles de communication. Les protocoles les plus connus sont TCP et IP, ils ont donn leur nom larchitecture TCP/IP. Le Synthex Architecture des rseaux offre un cadre pratique qui permet dacqurir la matrise des rseaux informatiques, en associant troitement ltude des mcanismes de communication celle des protocoles. Aprs avoir prsent les supports de transmission et le codage des signaux en ligne, il tudie chacune des couches de protocoles en proposant des exercices adapts chaque notion. Louvrage expose les fondamentaux des architectures de rseaux et prsente les notions dadressage, de routage et dinterconnexion de rseaux. Cette prsentation est accompagne de nombreux exemples et exercices qui montrent la puissance du principe de structuration en couches et de lencapsulation. Cet ouvrage est issu dun enseignement dispens de nombreuses fois des tudiants en formation initiale mais aussi des apprenants en formation continue. Il a lambition de rpondre lattente de tous ceux qui veulent comprendre le fonctionnement des rseaux et de leurs protocoles.

Le plan
Les architectures de rseaux informatiques et leurs protocoles sont exposs au cours de neuf chapitres de la faon suivante : Chapitre 1 : Transmissions et supports. Ce chapitre prsente les lments de base de la transmission et montre comment les signaux lectriques, lumineux ou lectromagntiques, se propagent dans des supports comme les cbles ou les bres optiques et permettent ainsi la communication entre quipements informatiques distance les uns des autres.

Introduction VI

Chapitre 2 : Les protocoles de liaison de donnes. Centr sur les mcanismes de base de la communication entre deux quipements informatiques, le contrle de la validit des messages transmis et du rythme de la transmission, lutilisation de la temporisation, ce chapitre montre le rle du protocole de liaison de donnes. Chapitre 3 : Les concepts gnraux des rseaux. Il gnralise la communication plusieurs quipements pour constituer un rseau. Il expose les besoins dadressage, de routage et de partage des ressources entre les diffrentes communications. Il dtaille les diffrentes solutions de commutation mises en place pour plusieurs exemples de rseaux : rseaux tlphoniques, rseaux de donnes, Internet. Chapitre 4 : Les architectures de communication. Il montre lintrt de la normalisation pour la dnition dune architecture en couches et aborde les variantes conues pour les rseaux locaux et Internet. Chapitre 5 : Les rseaux locaux dentreprise. Prsents partout, ils constituent lenvironnement initial de toutes les entreprises et de tous les particuliers pour accder Internet. Ethernet est le produit le plus rpandu. Ce chapitre dtaille son fonctionnement ainsi que ses volutions vers des dbits plus levs et vers lutilisation des commutateurs. Il explique galement les spcicits des rseaux sans ls. Chapitre 6 : Le protocole IP. Cest le protocole phare de larchitecture TCP/IP. Ce chapitre explique son fonctionnement mais aussi ses limitations. Il montre comment un datagramme est trait dans linterconnexion de rseaux que constitue Internet. Chapitre 7 : Les protocoles de transport. Pour lutilisateur, la qualit du service rendu par Internet peut tre insufsante. Ce chapitre montre comment un protocole de transport comme TCP pallie les dfaillances du rseau. Il illustre la rcupration des messages perdus, la dtection des messages dupliqus et le contrle de ux ou de dbit. Chapitre 8 : Le routage. Ce chapitre montre les problmes spciques de recherche dun chemin travers un rseau et explique comment les routeurs communiquent entre eux pour partager les informations sur ltat des liaisons du rseau. Il illustre par des exemples les deux principaux algorithmes de recherche du plus court chemin. Chapitre 9 : Les applications. Ce chapitre dcrit les principales applications qui ont justi la construction des architectures de communication : le courrier lectronique, le transfert de chiers, la navigation sur le Web. Le lecteur pourra galement trouver sur le site www.pearsoneducation.fr deux chapitres supplmentaires : Scurit et mobilit. Ce chapitre aborde les diffrents services de scurit et les mcanismes mis en place pour assurer cette scurit : le chiffrement, les signatures numriques, les certicats, les pare-feu tudes de cas. Ce chapitre aborde des aspects transversaux, avec une approche en couches conforme larchitecture des rseaux. Les exercices, qui occupent la moiti du livre, sont intgralement corrigs et permettent au lecteur dapprhender, de faon progressive, toutes les notions de base des architectures de rseaux. Tous les noncs sont le fruit dune exprience pdagogique diversie. Ils ont t tests et ont prouv leur efcacit.

Introduction VII

Chapitre

Les transmissions et les supports


1. Supports de transmission ............ 2 2. Caractristiques globales des supports de transmission ...... 4 3. Fabrication des signaux : techniques de transmission ......... 7 4. Caractristiques dune transmission ................. 111 5. ADSL (Asymmetric Digital Subscriber Line) ....................... 13

Un rseau suppose plusieurs quipements informatiques (ordinateurs) situs distance les uns des autres. La premire chose mettre en uvre pour constituer le rseau est la transmission des informations dun quipement lautre : on utilise, pour cela, des supports de transmission dont nous prsentons les caractristiques principales dans les deux premires sections de ce chapitre. De plus, chaque nature de support correspond une forme particulire du signal qui sy propage. Il faut donc fabriquer les signaux, grce lquipement communment appel modem . Les techniques de transmission et linterface entre lordinateur et son modem sont normalises pour assurer linteroprabilit des quipements. titre dexemple, nous dcrivons brivement le raccordement ADSL dans la dernire section.

Problmes et exercices 1. La notion de dcibel.................. 15 2. valuation dun rapport signal/bruit (S/B) .................... 15 3. Dbit binaire et rapidit de modulation ......................... 16 4. Signaux transmis en bande de base et par modulation ........ 16 5. Code Manchester et autres codes 17 6. Formule de Shannon ................ 18 7. Connexion Internet ................ 19 8. Caractristiques des modems V23 et V29 ............................. 19 9. Modem normalis V32 ............ 20 10. Systme de radiomessagerie .... 21 11. Codage des informations ......... 22 12. Interface ETTD ETCD ............. 23 13. Principes de fonctionnement de lADSL ................................ 24

Supports de transmission
Les supports de transmission (dcrits brivement dans cette premire section) sont nombreux. Parmi ceux-ci, trois familles sont distinguer : les supports mtalliques, non mtalliques et immatriels. Les supports mtalliques, comme les paires torsades et les cbles coaxiaux, sont les plus anciens, les plus largement utiliss et servent transmettre des courants lectriques. Les supports de verre ou de plastique, comme les bres optiques, transmettent de la lumire, tandis que les supports immatriels des communications sans l transmettent des ondes lectromagntiques et sont en plein essor.

1.1 PAIRES

TORSADES
Une paire torsade non blinde (UTP, Unshielded Twisted Pair) se compose de deux conducteurs en cuivre, isols lun de lautre et enrouls de faon hlicodale autour de laxe de symtrie longitudinal (voir gure 1.1).

Figure 1.1
Paire torsade.
2 conducteurs mtalliques enrobs d'isolant et torsads

Lenroulement rduit les consquences des inductions lectromagntiques parasites provenant de lenvironnement. Lutilisation la plus courante de la paire torsade est le raccordement des usagers au central tlphonique (la boucle locale) ou la desserte des usagers de rseaux privs. Son principal inconvnient est laffaiblissement des courants transmis, dautant plus important que le diamtre des conducteurs est faible. Les paires torsades contiennent, intervalles rguliers, des lments appels rpteurs qui rgnrent les signaux transmis. Quand plusieurs paires sont rassembles dans un mme cble, les courants quelles transportent interfrent les uns avec les autres. Ce phnomne est appel diaphonie. Pour les rseaux locaux dentreprise, o les distances se limitent quelques kilomtres, la paire torsade peut sufre. Ses avantages sont nombreux : technique matrise, facilit de connexion et dajout de nouveaux quipements, faible cot. Certains constructeurs proposent des paires torsades blindes (STP, Shielded Twisted Pair). Enrobes dun conducteur cylindrique, elles sont mieux protges des rayonnements lectromagntiques parasites. Une meilleure protection prvoit un blindage par paire.

1.2 CBLES

COAXIAUX
Pour viter les perturbations dues aux bruits externes, on utilise souvent deux conducteurs mtalliques cylindriques de mme axe spars par un isolant. Le tout forme un ensemble appel cble coaxial (voir gure 1.2). Ce cble prsente de meilleures performances que la paire torsade : affaiblissement moindre, transmission de signaux de frquences plus leves, etc. La capacit de transmission dun cble coaxial dpend de sa longueur et des caractristiques physiques des conducteurs et de lisolant. Sur 1 km, un dbit de plusieurs dizaines de Mbit/s peut tre atteint alors que sur des distances plus courtes, des dbits suprieurs sont possibles. Sur des distances suprieures 10 km, les dbits de transmission sont infrieurs 10 kbit/s.

Architecture des rseaux

Chapitre

Figure 1.2
Cble coaxial.
Gaine extrieure isolante (blinde ou non) 2 conducteurs mtalliques cylindriques de mme axe spars par un isolant

1.3 FIBRE

OPTIQUE
Une bre optique est constitue dun l de verre trs n. Elle comprend un cur, dans lequel se propage la lumire mise par une diode lectroluminescente ou une source laser (voir gure 1.3), et une gaine optique dont lindice de rfraction garantit que le signal lumineux reste dans la bre.

Figure 1.3
Fibre optique.

Une gaine de fibre avec un indice de rfraction particulier Un cur de fibre

Gaine extrieure isolante

Les avantages de la bre optique sont nombreux : le diamtre extrieur est de lordre de 0,1 mm, son poids de quelques grammes au kilomtre. Cette rduction de taille et de poids la rend facilement utilisable. En outre, sa trs grande capacit permet la transmission simultane de trs nombreux canaux de tlvision, de tlphone Les points de rgnration des signaux transmis sont plus loigns, du fait de lattnuation plus faible de la lumire. Enn, linsensibilit des bres aux parasites lectromagntiques constitue un avantage trs apprci, puisquune bre optique supporte sans difcult la proximit dmetteurs radiolectriques. On peut donc les utiliser dans des environnements trs perturbs (avec de puissants champs lectromagntiques, par exemple) ou pour isoler lectriquement des btiments entre eux.

1.4 TRANSMISSIONS

SANS FIL

Les ondes lectromagntiques se propagent dans latmosphre ou dans le vide (le terme dther dsigne parfois ce type de support). Labsence de support matriel apporte une certaine souplesse et convient aux applications comme la tlphonie ou les tlcommunications mobiles, sans ncessiter la pose coteuse de cbles. On utilise des faisceaux directifs, faisceaux hertziens (pour franchir de grandes distances) ou ondes diffuses (pour atteindre des rcepteurs gographiquement disperss).

Faisceaux hertziens
Les faisceaux hertziens reposent sur lutilisation de frquences trs leves (de 2 GHz 15 GHz et jusqu 40 GHz) et de faisceaux directifs produits par des antennes directionnelles qui mettent dans une direction donne. La propagation des ondes est limite lhorizon optique ; la transmission se fait entre des stations places en hauteur, par exemple sur une tour ou au sommet dune colline, pour viter les obstacles dus aux constructions environnantes. Les faisceaux hertziens sutilisent pour la transmission par satellite, pour celle des chanes de tlvision ou pour constituer des artres de transmission longue distance dans les rseaux tlphoniques.

Les transmissions et les supports 3

Ondes radiolectriques
Les ondes radiolectriques correspondent des frquences comprises entre 10 kHz et 2 GHz. Un metteur diffuse ces ondes captes par des rcepteurs disperss gographiquement. Contrairement aux faisceaux hertziens, il nest pas ncessaire davoir une visibilit directe entre metteur et rcepteur, car celui-ci utilise lensemble des ondes rchies et diffractes. En revanche, la qualit de la transmission est moindre car les interfrences sont nombreuses et la puissance dmission beaucoup plus faible.

Remarque
Lattribution des bandes de frquences varie selon les continents et fait lobjet daccords internationaux. Le tableau 1.1 donne les grandes lignes de la rpartition des ondes en France. On constate que le dcoupage est complexe et quil reste peu de place pour de nouvelles applications.

Tableau 1.1 Affectation des frquences en France

Gamme de frquences

Type dutilisation

10 kHz 150 kHz 150 kHz 300 kHz 510 kHz 1605 kHz 6 MHz 20 MHz 29,7 MHz 41 MHz 47 MHz 68 MHz 68 MHz 87,5 MHz 87,5 MHz 108 MHz 108 MHz 162 MHz 162 MHz 216 MHz 216 MHz 470 MHz 470 MHz 860 MHz 860 MHz 960 MHz Autour de 1 800 MHz Entre 6 et 30 GHz

Communications radiotlgraphiques Radiodiffusion (grandes ondes) Radiodiffusion (petites ondes) Radiodiffusion (ondes courtes) Radiotlphonie Tlvision Liaisons radio en modulation de frquence Radiodiffusion Radiotlphonie Tlvision Radiotlphonie Tlvision et radar Radiotlphonie Radiotlphonie Services satellites en xe

Caractristiques globales des supports de transmission


Quelle que soit la nature du support, le terme signal dsigne le courant, la lumire ou londe lectromagntique transmis. Certaines caractristiques physiques des supports en perturbent la transmission. La connaissance de leurs caractristiques (la bande passante, la sensibilit aux bruits, les limites des dbits possibles) est donc ncessaire pour fabriquer de bons signaux, cest--dire les mieux adapts aux supports utiliss.

2.1 BANDE

PASSANTE
Les supports ont une bande passante limite. Certains signaux sy propagent correctement (ils sont affaiblis mais reconnaissables lautre extrmit), alors que dautres ne les traversent

Architecture des rseaux

Chapitre

pas (ils sont tellement affaiblis ou dforms quon ne les reconnat plus du tout la sortie). Intuitivement, plus un support a une bande passante large, plus il transporte dinformations par unit de temps.

Dnition
La bande passante est la bande de frquences dans laquelle les signaux appliqus lentre du support ont une puissance de sortie suprieure un seuil donn (aprs traverse du support de transmission). Le seuil x correspond un rapport dtermin entre la puissance du signal dentre et la puissance du signal trouv la sortie (voir gure 1.4).

Figure 1.4
Notion de bande passante.
Ps

Puissance du signal reu

Pe

Pe 2

Bande passante 3 dB

Frquences

Bande passante

Remarque
En gnral, on caractrise un support par sa bande passante 3 dB (dcibels), cest--dire par la plage de frquences lintrieur de laquelle la puissance de sortie est, au pire, divise par deux. En notant Ps la puissance de sortie, et Pe la puissance dentre, laffaiblissement A en dB est donn par la formule : A = 10*log10 Pe /Ps. Pour Pe /Ps = 2, on trouve : 10*log10 Pe /Ps = 3 dB.

2.2 BRUITS

ET DISTORSIONS
Les supports de transmission dforment les signaux quils transportent, mme lorsquils ont des frquences adaptes, comme le montre la gure 1.5. Diverses sources de bruit peuvent perturber les signaux : parasites, phnomnes de diaphonie Certaines perturbations de lenvironnement introduisent galement des bruits (foudre, orages pour le milieu arien, champs lectromagntiques dans des ateliers pour les supports mtalliques). Par ailleurs, les supports affaiblissent et retardent les signaux. Par exemple, la distance est un facteur daffaiblissement, particulirement important pour les liaisons par satellite. Ces dformations, appeles distorsions, peuvent tre gnantes pour la bonne reconnaissance des signaux en sortie, dautant quelles varient gnralement avec la frquence des signaux mis. Mme lorsque les signaux sont adapts aux supports de transmission, on ne peut pas garantir leur rception correcte 100 %. Le rcepteur dun signal doit prendre une dcision dans un laps de temps trs court. De ce fait, cette dcision peut tre mauvaise.

Les transmissions et les supports 5

Figure 1.5
Signal mis et exemple de signal reu.

Signal mis

Exemple de signal reu

Par exemple, un symbole 1 mis peut donner une dcision symbole 0 reu , ce qui constitue une erreur de transmission. Les bres optiques sont les meilleurs supports, car le taux derreur y est trs faible : 1012 (cest--dire une mauvaise dcision pour 1012 bits transmis). Les cbles et les supports mtalliques prsentent des taux derreur moyens. Les liaisons sans l ont un taux derreur variable, sensible aux conditions mtorologiques.

2.3 CAPACIT

LIMITE DES SUPPORTS DE TRANSMISSION

La capacit dun support de transmission mesure la quantit dinformations transporte par unit de temps. Lensemble des caractristiques que nous venons de voir fait que la capacit dun support est limite. Un thorme d Shannon1 exprime, en bits par seconde, la borne maximale de la capacit CapMax dun support de transmission : CapMax = W*log2 (1 + S/B). Dans cette formule, W est la largeur de la bande passante du support de transmission exprime en hertz, S/B reprsente la valeur du rapport entre la puissance du signal (note S) et la puissance du bruit (note B) ; la base 2 du logarithme sert exprimer la quantit dinformations en bits (voir section 4.2).

Exemple

Sur une liaison tlphonique dont la bande passante a une largeur de 3 100 Hz et un rapport S/B correspondant 32 dB (valeurs courantes), on obtient : 10 log10S/B = 32 donc log10 S/B = 3,2 soit S/B = 1585 ; CapMax = 3100*log2 (1 + 1585) ; comme 1586 = 210,63, CapMax = 3100*10,63 = 33 000 bit/s. Le choix dun support de transmission tient compte de nombreux lments. Des considrations conomiques (le prix de revient du support, le cot de sa maintenance, etc.) interviennent en plus des facteurs techniques que nous venons de prsenter, de mme que la nature des signaux propags, puisque lquipement de transmission de donnes contient une partie spcique au support de transmission utilis. Examinons maintenant les techniques de transmission du signal vhiculant les donnes sur le support.

1. Claude Shannon (1916-2001), mathmaticien amricain qui a dvelopp la thorie de linformation.

Architecture des rseaux

Chapitre

Fabrication des signaux : techniques de transmission


Selon les techniques de transmission utilises, un quipement spcique est plac chaque extrmit du support : soit un modem (modulateur-dmodulateur), soit un codec (codeur-dcodeur). Cet quipement assure la fabrication des signaux en mission et leur rcupration en rception. Pour mettre les donnes, le modem reoit la suite de donnes binaires transmettre et fournit un signal dont les caractristiques sont adaptes au support de transmission. Inversement, en rception, le modem extrait la suite des donnes binaires du signal reu. Le support de transmission est ainsi transparent lutilisateur. Le support de transmission et les deux modems placs chacune de ses extrmits constituent un ensemble appel circuit de donnes, comme le montre la gure 1.6.

Figure 1.6
quipements constitutifs dun circuit de donnes.
ETCD Techniques de transmission Circuit de donnes ETTD ETTD ETCD

LISO2 et lITU (International Telecommunications Union) ont attribu des appellations gnriques normalises au modem et lquipement qui met ou reoit les donnes (ordinateur de lutilisateur, imprimante). Ainsi, le modem et le codec appartiennent la famille des ETCD (quipement de terminaison du circuit de donnes), lordinateur ou limprimante font partie des ETTD (quipement terminal de traitement des donnes).

Dnition
Le circuit de donnes est une entit capable denvoyer ou de recevoir une suite de donnes binaires, un dbit donn, dans un dlai donn et avec un taux derreur dpendant du support utilis.

LETTD metteur fournit lETCD, rgulirement dans le temps, les donnes transmettre. LETCD les met sous forme dun signal deux valeurs (correspondant 0 et 1), appel message de donnes synchrone (voir gure 1.7). En effet, les intervalles de temps allous chaque symbole sont gaux et concident avec les priodes successives dune base de temps (ou horloge) indispensable linterprtation du message de donnes.

2. Le nom de lorganisation donnerait lieu des abrviations diffrentes selon les langues (IOS pour International Organisation for Standardization en anglais, OIN pour Organisation internationale de normalisation en franais). Il a t dcid demble dadopter un mot provenant du grec isos (gal), pour que la forme abrge du nom de lorganisation soit toujours ISO.

Les transmissions et les supports 7

Remarque
Lutilisation dun circuit de donnes dpend de la nature des ETCD situs aux extrmits du support de transmission. La communication est en mode duplex intgral si la transmission simultane est possible dans les deux sens. Si elle nest possible que dans un seul sens un moment donn (transmission lalternat), le circuit est semi-duplex. Enn, le circuit est simplex lorsque la transmission ne se fait que dans un seul sens prdni.

Figure 1.7
Message de donnes synchrone.
1 0 0 1 1 1 0 0 0 1

Signal d'horloge associ

Le message de donnes synchrone utilise une reprsentation conventionnelle de linformation. La plus habituelle est un signal binaire sans retour zro, dit NRZ (No Return to Zero). On utilise un niveau de tension (+a, gure 1.8) pendant une priode complte pour reprsenter la valeur 1 dun bit, et un autre niveau (a, gure 1.8) pour sa valeur 0. Figure 1.8
Reprsentation dune information en NRZ.
+a

a 0 1 1 1 0 0 0 1

Certains supports autorisent une transmission directe des signaux numriques appele transmission en bande de base. Elle conduit des ralisations simples et conomiques mais nest pas possible sur tous les supports. De plus, pour une bonne transmission, la bande passante des signaux doit concider avec la bande passante du support. Lorsque ce nest pas le cas, des techniques de modulation doivent tre utilises. Nous allons successivement dtailler les techniques de transmission en bande de base et les transmissions par modulation.

3.1 TRANSMISSION

EN BANDE DE BASE

Dans la transmission en bande de base, lETCD code le message de donnes synchrone en une suite de signaux compatibles avec les caractristiques physiques du support de transmission (lETCD effectue, en fait, un simple transcodage du signal que fournit lETTD). Plusieurs facteurs expliquent les principales difcults rencontres dans la transmission en bande de base : la limitation de la bande passante dans les basses comme dans les hautes frquences et le fait quil faille transfrer les donnes quelle que soit leur valeur.

Architecture des rseaux

Chapitre

Nous verrons que les longues suites de 0 ou de 1 peuvent engendrer des problmes la rception.

Remarque
LETCD qui met en uvre une transmission en bande de base est parfois appel modem bande de base par abus de langage, bien quil ne fasse pas de modulation.

LETCD rcepteur doit reconstituer correctement le signal dhorloge associ aux donnes. Pour cela, deux techniques de transmission de lhorloge sont envisageables : soit indpendamment du message de donnes (ce qui consomme une partie de la puissance disponible pour le signal), soit en utilisant les transitions du signal cod (il faut donc que le signal prsente sufsamment de transitions). Dans ce dernier cas, si les donnes transmettre contiennent une longue suite de 0 ou de 1, le signal NRZ reste la mme valeur pendant longtemps, provoquant ainsi une absence de repre temporel pour lETCD rcepteur, do une perte de synchronisation. On ne transmet donc pas directement le signal en NRZ mais sous une forme voisine, qui prend en compte les contraintes prcdentes. Le code biphase est un exemple trs connu de codage pour la transmission des donnes en bande de base. Le code biphase, galement appel code Manchester (voir gure 1.9), utilise une reprsentation deux niveaux : pendant chaque intervalle de temps correspondant un symbole binaire, deux polarits opposes sont transmises. Selon la donne coder, on trouve un front montant (transition vers le haut) ou un front descendant (transition vers le bas) au milieu de lintervalle de temps signicatif. Il y a donc systmatiquement une transition du signal chaque intervalle de temps, ce qui garantit une bonne synchronisation entre les deux ETCD et facilite le travail de dcision du rcepteur.

Remarque
Le code Manchester est le code le plus frquemment employ dans les transmissions numriques. Il sutilise en particulier dans les rseaux locaux Ethernet.

Figure 1.9
Code biphase ou Manchester.

+a a 0 1 1 1 0 0 0 1

3.2 TRANSMISSION

PAR MODULATION

La transmission par modulation consiste envoyer une onde sinusodale appele porteuse. En fonction de la donne transmettre, lETCD modie lun des paramtres de la porteuse (frquence, phase ou amplitude). Soit a cos(2f0t +) une porteuse de frquence f0, et d(t) la suite des donnes binaires transmettre (le message de donnes synchrone de la gure 1.7 par exemple). Appelons lintervalle de temps signicatif pendant lequel d(t) vaut 0 ou 1, cest--dire que d(t) est constant sur lintervalle [t, t + [. En modulation damplitude simple, lamplitude du signal transmis change avec les donnes. Ainsi, pendant tout lintervalle [t, t + [, le signal transmis vaudra : m(t) = (a k) cos(2f0t+) si d(t) = 0, et m(t) = (a + k) cos(2f0t+) si d(t) = 1. Dans ces expressions,

Les transmissions et les supports 9

k est une constante. la rception, pendant lintervalle [t, t + [, lETCD rcepteur mesure lamplitude du signal reu et en dduit la valeur de la donne d(t). En modulation de frquence simple, la frquence du signal transmis change avec les donnes. Ainsi, pendant tout lintervalle [t, t+ [, le signal transmis sera : m(t) = a cos(2(f0h)t+) si d(t) = 0 et m(t) = a cos(2(f0+h)t+) si d(t) = 1, expressions dans lesquelles h est une constante. Pendant lintervalle [t, t+[, lETCD rcepteur mesure la frquence du signal reu et en dduit la valeur de la donne d(t). En modulation de phase simple, la phase du signal transmis change avec les donnes. Ainsi, pendant tout lintervalle [t, t+ [, le signal transmis sera : m(t) = a cos(2f0t+) si d(t) = 0 et m(t) = a cos(2f0t+( +)) si d(t) = 1. Pendant lintervalle [t, t+[, lETCD rcepteur mesure la phase du signal reu et en dduit la valeur de la donne d(t). Une modulation simple (voir gure 1.10) consiste modier la porteuse et mettre le signal produit pendant lintervalle (qui dpend du dbit binaire utilis). Sur cet intervalle, la donne transmettre peut prendre deux valeurs (0 ou 1), et le signal aura deux valeurs (par exemple, les deux amplitudes a k et a + k). Le nombre de valeurs possibles du signal sappelle la valence ; elle est note V. Figure 1.10
Exemples de modulations simples.
0 1 1 1 0 0 0 1

Modulation d'amplitude

Modulation de frquence

Modulation de phase

Pour atteindre des dbits levs, on pourrait imaginer de rduire lintervalle . Remplaons par /3 : linformation d(t) change chaque intervalle /3, de mme que le signal modul. Le rcepteur na plus quun intervalle /3 pour effectuer ses mesures et prendre sa dcision. Cette mthode devient peu able si on restreint trop lintervalle de temps. On prfre donc dcoupler lintervalle de variation des donnes, dsormais not , de lintervalle de variation du signal modul, toujours not ; on parle alors de modulation complexe. Par exemple, si vaut /3, les donnes contiennent 3 bits dans un intervalle (donc huit valeurs diffrentes) : le signal modul prend alors, pendant tout un intervalle , une valeur parmi les 8 possibles.

10

Architecture des rseaux

Caractristique dune transmission


ette echnique est appe e mu t pl xage Nous n ve rons un premier ex mple av c l ADSL plus oin et nous y rev endrons au hapi re 3

Chapitre

L in rt d une modu at on r ide dans le choix de la f quence f0 de la port u e Cel e-ci st choi ie de faon que e ignal ransmis t ou e a p ace dans a bande pa sante du upport Si ette de n re est g ande il ne l occupe pas ent rement c est a o s po s b e d y tr n me tre un voi e p us eurs au re( ) signa (ux) dont les rquences de porteu ei sont conv n blement chois es pour vi er es in er rences

Lintroduction dune distance entre quipements informatiques ncessite un support de transmission. Or, nous avons vu que les ETCD cachaient la nature relle du support lutilisateur (pour lequel elle est transparente). Celui-ci ne voit donc la transmission qu travers linterface entre ETTD et ETCD. Du circuit de donnes, il ne connat pratiquement que le dbit binaire utilis pour la transmission.

4.1 LA

QUALIT DU CIRCUIT DE DONNES


La qualit du circuit de donnes est mesure selon diffrents critres techniques : Le taux derreurs est le rapport entre le nombre de bits errons, sur le nombre total de bits transmis. La disponibilit permet dvaluer la proportion de temps pendant lequel la transmission est possible (absence de panne ou de coupure). On peut sintresser galement au nombre dincidents et leur dure cumule, an de dterminer la dure moyenne et le cot dune panne. Le dbit binaire D reprsente le nombre de bits transmis par seconde. On peut prciser, en outre, que le dbit est en mode duplex intgral, semi-duplex ou en simplex. La rapidit de modulation R, exprime en bauds3, indique le nombre de symboles transmis par unit de temps. Si reprsente la dure (en secondes) de lintervalle de temps sparant deux valeurs signicatives du signal, alors R = 1/ bauds. Le dlai de propagation dnit le temps matriellement ncessaire au signal pour traverser le support. Par exemple, il faut environ un quart de seconde un signal se propageant la vitesse de la lumire pour parcourir une distance de 72 000 km (cas des satellites gostationnaires).

Remarque
La formule : D = R*log2V exprime la relation liant la rapidit de modulation au dbit binaire. Pour des modulations simples des signaux de valence 2 chaque intervalle transporte 1 bit. Les valeurs numriques du dbit binaire et de la rapidit de modulation sont alors gales.

Remarque
Pour un support de transmission, la rapidit de modulation maximale dpend de sa bande passante (critre de Nyquist). La rapidit de modulation maximale Rmax est gale au double de la frquence la plus leve disponible sur le support : Rmax = 2Fmax.

4.2 LES

DONNES TRANSMISES
Les informations changes sur le rseau proviennent de textes, de tableaux de nombres, dimages xes ou animes, de musiques ou de sons : tout est mis sous forme numrique, cest--dire de donnes binaires. La numrisation de la parole, du son, des images nentre

3. Le mot baud vient dmile Baudot (1845-1903), ingnieur franais.

Les transmissions et les supports 11

pas dans le cadre de cet ouvrage. La notion de caractre (une lettre dans un texte) est elle aussi assimile une suite de bits (par exemple, chaque lettre ou chaque chiffre se code sur 7 bits dans lalphabet ASCII. On peut donc reprsenter 27 soit 128 caractres diffrents avec ce code). Dune faon gnrale, on associe tous les objets traits par linformatique (et donc par les rseaux) des codes binaires dont la longueur dpend directement du nombre dobjets dnombrer ou coder.

Dnition
En informatique, lunit de quantit dinformations est le bit et tous ses multiples : octet, Kilo-octet (Ko), mgaoctet (Mo). Un Kilo-octet (avec un K majuscule)4 contient 210 octets, soit 1 024 octets (et non 1 000) ; un mgaoctet vaut 1 024 Kilo-octets soit 1 048 576 octets (et non 106) ; les units suivantes sont le gigaoctet (Go), qui vaut 1 024 Mo, le traoctet (1 024 Go), le ptaoctet (1 024 To) Dans les rseaux informatiques et les tlcommunications, le dbit binaire sexprime en bit/s et ses multiples : un kilobit/s (avec un k minuscule), un mgabit/s ; ces dernires sont des puissances de 10 du bit/s. Ainsi, un modem 56 kbit/s peut mettre ou recevoir jusqu 56 000 bit/s (et non 57 344 bit/s).

4.3 LINTERFACE

SRIE

ETTD-ETCD

Linterface srie entre lETTD et lETCD, ou jonction, est le point de raccordement physique entre lquipement informatique et son modem. Les spcications de cette jonction sont mcaniques (la forme du connecteur et le nombre de broches), lectriques (les niveaux de tension utilise) et fonctionnelles (signication des informations vhicules sur chaque l). Linterface la plus courante est la jonction V24 (ou RS232C). Elle correspond un connecteur ISO 2110 25 broches. Elle a une porte maximale de 50 m et un dbit infrieur ou gal 20 kbit/s. Le 1 est une tension ngative comprise entre 3 V et 25 V, le 0 une tension positive comprise entre +3 V et + 25 V. chaque broche correspond un l (ou circuit). Chaque l possde un numro et joue un rle dans lchange de donnes comme le montre le tableau 1.2 dans lequel seuls gurent les principaux circuits.
Tableau 1.2 Les principaux circuits de linterface srie V24

No broche

No circuit

Rle

Sens

Type

2 3 4 5 6 8 20

103 104 105 106 107 109 108.2

Donnes mises Donnes reues Demande pour mettre Prt mettre Poste de donnes prt Dtection de porteuse quipement de donnes prt

ETTD vers ETCD ETCD vers ETTD ETTD vers ETCD ETCD vers ETTD ETCD vers ETTD ETCD vers ETTD ETTD vers ETCD

Donnes Donnes Commande Commande Commande Commande Commande

4. Bien que lIEC (International Electrotechnical Commission) ait dcid daligner les units dinformatique sur toutes les autres units physiques avec kilo = 1 000, mga = 106, de nombreux logiciels continuent dutiliser les prfixes qui sont des puissances de 2.

12

Architecture des rseaux

Chapitre

Linitialisation dun change met en jeu les circuits 107 et 108.2. Lorsque lETTD veut mettre des donnes, il le signale par le circuit 105 pour que le modem se prpare (celui-ci envoie par exemple une porteuse non module pour que le modem distant se synchronise). Quand le modem est prt, il rpond sur le circuit 106. Enn, les donnes mettre sont fournies en srie sur le circuit 103, accompagnes du signal dhorloge associ5. Lorsque le modem reoit une porteuse de la part du modem distant, il le signale par le circuit 109. Ds quil est capable de dmoduler le signal reu, il en extrait les donnes quil transmet en srie sur le circuit 104. LETTD chantillonne les donnes reues grce au signal dhorloge transmis par lETCD. Lchange de donnes sur les circuits 104 et 105 peut avoir lieu simultanment si la transmission est en duplex intgral. On voit donc quun dialogue existe entre lETTD et lETCD, par lintermdiaire des diffrents circuits. La normalisation dnit ce dialogue indpendamment du mode de transmission, du support utilis et de la conguration du circuit. Linterface srie V24 a t trs largement rpandue, en particulier avec un connecteur simpli 9 broches seulement (DB9 au lieu de DB25). Elle a fait place dautres interfaces plus performantes, comme RS449 qui peut supporter jusqu 2 Mbit/s. Depuis 1995, on utilise frquemment le port USB (Universal Serial Bus) dont la version la plus rapide supporte jusqu 480 Mbit/s car il permet de brancher ou de dbrancher le modem chaud (sans avoir redmarrer lordinateur). Le port USB ne contient que 4 circuits : un pour lalimentation, deux pour les donnes (un par sens de transmission) et une terre de protection. Le dialogue de linterface se droule alors directement sur les circuits de donnes, par des changes de messages cods.

ADSL (Asymmetric Digital Subscriber Line)


LADSL fait partie dune famille daccs haut dbit (do le nom gnrique xDSL donn ces techniques de transmission), qui utilise les lignes tlphoniques ordinaires comme support de transmission. LADSL utilise la boucle locale raccordant chaque usager du tlphone au central tlphonique dont il dpend. Lide est la suivante : puisque la bande passante utilise pour les conversations tlphoniques est faible (de 300 3 400 Hz), la majeure partie de la bande passante des paires torsades est inutilise et peut semployer pour le transfert des donnes numriques. LADSL multiplexe, sur la ligne de labonn, les donnes numriques (provenant dun ordinateur par exemple) et le tlphone vocal. Les deux quipements sutilisent ainsi simultanment sans interfrences. Une des caractristiques de lADSL tient dans son nom : le dbit est diffrent dans les deux sens de transmission ; le sens le moins rapide possde un dbit environ 10 fois infrieur lautre sens. Le dbit binaire disponible dpend de la longueur et de ltat de la boucle locale. Ces deux facteurs dterminent, linitialisation, le dbit maximal offert labonn. Au dpart, lADSL permettait dmettre jusqu 8 Mbit/s dans le sens descendant (du fournisseur vers lusager) et jusqu 800 kbit/s dans le sens montant (de lusager vers le fournisseur). Les dernires versions offrent des dbits pouvant aller jusqu 50 Mbit/s, mais sur des distances beaucoup plus courtes. Dans le central tlphonique, les deux types de systmes coexistent : le rseau de donnes (le rseau du fournisseur daccs) vient se greffer sur le rseau tlphonique classique, les
5. Le circuit utilis pour lhorloge dpend du type du modem et de la nature du transfert de donnes (mission ou rception) : une mission utilise le circuit 113 ou 114, une rception utilise le circuit 115. Quand la transmission est en mode duplex intgral, le modem utilise deux signaux dhorloge, un par sens de transmission.

Les transmissions et les supports 13

deux rseaux utilisant la ligne de labonn (voir gure 1.11). Les deux types de signaux sont achemins dans leurs quipements respectifs, chez labonn comme dans le central tlphonique. Un quipement appel rpartiteur (splitter) est responsable de lclatement et de la recombinaison des deux types de signaux dans le central et chez labonn (indispensable chez ce dernier uniquement lorsque celui-ci utilise un tlphone numrique ; il sert alors sparer les canaux utiliss pour la tlphonie de ceux employs pour la transmission des donnes). Pour un tlphone analogique, un simple ltre plac devant le tlphone de labonn suft. Figure 1.11
Raccordement ADSL.
Commutateur tlphonique classique Tlphone

Sparation voix-donnes

Ligne tlphonique

Sparation voix-donnes

Multiplexeur d'accs DSL


Mo uper em X56

Modem ADSL

Vers un fournisseur

La transmission des donnes de lADSL utilise une modulation particulire (DMT, Discrete MultiTone), spciquement adapte aux caractristiques physiques des lignes dabonns sur une courte distance (gnralement moins de 3,5 km) et utilisant deux dbits diffrents. Le modem ADSL log chez labonn et linterface utilisateur peuvent se prsenter sous plusieurs formes, dont la plus rcente est le port USB.

Rsum
Pour relier deux quipements informatiques loigns lun de lautre, on utilise un circuit de donnes constitu par un support de transmission, des modems et une interface srie. Les supports de transmission sont trs varis (paires mtalliques, cbles coaxiaux, bre optique, sans l). La bande passante et le taux derreur quil introduit dans les signaux transports sont les principales caractristiques dun support. chaque extrmit, des modems (modulateurs-dmodulateurs de signaux analogiques) ou des codecs (codeurs-dcodeurs de signaux numriques) transmettent des signaux adapts la nature du support. Les techniques de transmission de donnes (en bande de base ou par modulation) permettent dadapter au mieux les signaux aux caractristiques des supports. Une interface srie relie chaque modem lquipement informatique qui envoie ou reoit des donnes. Les techniques et les interfaces sont normalises au niveau international par lISO et lITU. Le raccordement ADSL des usagers Internet est un exemple de transmission utilisant la boucle locale tlphonique. Un multiplexage de la tlphonie et des donnes utilise une modulation spcique. Linterface srie est frquemment un port USB.

14

Architecture des rseaux

1 Problmes et exercices
Chapitre

EXERCICE 1

LA

NOTION DE DCIBEL

Dans un environnement urbain, la puissance sonore produite par les nombreuses sources de bruits est value en dcibels, en comparant la puissance sonore de la source de bruit un niveau sonore de rfrence. Si on value la puissance sonore S dune grosse moto 87 dB, quelle est, en dcibels, la puissance sonore produite par une bande de 8 motards roulant sur des motos identiques circulant la mme vitesse ? Trouvez la puissance sonore rellement mise. La bande de motards produit 8 fois plus de puissance sonore quune seule moto. On a donc : 10*log10 (8S) = 10*log10 8 + 10*log10 S, ce qui revient ajouter 10 fois le logarithme dcimal de 8 au bruit dune moto pour obtenir le nombre de dcibels produit par les 8 motos. Puisque : 10*log108 = 10*log1023 = 3*10*log102 = 9 dB, la puissance des 8 motos vaut : S = 87 + 9 = 96 dB. Cela correspond une puissance sonore de 4*109, soit 4 milliards de fois le fond sonore de rfrence !

Remarque
Pendant que la valeur en dcibels du bruit a augment denviron 10 %, la puissance sonore rellement mise a t multiplie par 8.

EXERCICE 2

VALUATION DUN

RAPPORT SIGNAL/BRUIT

(S/B)

Sur un support de transmission, le rapport S/B vaut 400. Quelle est la valeur de ce rapport en dcibels ? Mme question avec un rapport S/B de 40 000. Quelle est la valeur N en dcibels dun rapport S/B gal 500 000 ? Un rapport S/B de 400 correspond 10*log10400 : 10*(log104 + log10100). Do : 20*(log102 + log10100) = 26 dB. Le rapport S/B est 100 fois plus lev que le prcdent, cest--dire quil vaut : 26 + 20 = 46 dB. On peut calculer simplement une bonne valeur approche du nombre N de dcibels en remarquant que : 500 000 = 106 2. On aura donc : N = 10*(log10106 log102) = 10*[6*log1010 log102] = 60 3 = 57 dB.

Les transmissions et les supports 15

EXERCICE 3

DBIT

BINAIRE ET RAPIDIT DE MODULATION

Soit un signal numrique dont la rapidit de modulation est 4 fois plus faible que le dbit binaire. Quelle est la valence du signal ? Si la rapidit de modulation du signal vaut 2 400 bauds, quel est le dbit binaire disponible ? Daprs la formule D = R log2V, nous trouvons : D/R = log2V soit : V = 2D/R, cest--dire que la valence vaut 16. En appliquant la mme formule, nous trouvons : D = 2 400*4 = 9 600 bit/s.

EXERCICE 4

SIGNAUX

TRANSMIS EN BANDE DE BASE ET PAR MODULATION

Soit la suite dlments binaires 0 1 1 1 1 1 1 0. Reprsentez les signaux transmis lorsquon transmet en bande de base avec les codes NRZ et Manchester. Reprsentez les signaux transmis lorsquon transmet les donnes avec une modulation damplitude deux valeurs, une modulation de phase deux valeurs, une modulation de frquence deux valeurs. Si le dbit D est connu, quelle est la rapidit de modulation R ? Les gures 1.12 et 1.13 reprsentent les donnes codes en NRZ et Manchester : Figure 1.12
Codage NRZ.
+a

a 0 1 1 1 1 1 1 0

Figure 1.13
Codage biphase ou Manchester.
+a

a 0 1 1 1 1 1 1 0

16

Architecture des rseaux

Chapitre

Les modulations damplitude, de frquence et de phase sont reprsentes la gure 1.14. Figure 1.14
Reprsentation des diffrentes modulations.
0 1 1 1 1 1 1 0

Amplitude

Frquence

Phase

Si D est connu et que la valence des signaux est gale 2, alors R = D bauds.

EXERCICE 5

CODE MANCHESTER

ET AUTRES CODES

Le code Manchester prsente lintrt de possder au moins une transition du signal au milieu de lintervalle pour une bonne synchronisation du rcepteur mais il peut prsenter trop de transitions, en particulier si la suite de donnes binaires contient une longue suite de 0 par exemple. Reprsentez le signal transmis avec le code Manchester pour les donnes 100000000001. Le code de Miller offre une alternative intressante. Il consiste, partir du code Manchester, supprimer une transition sur deux. Dessinez le signal transmis pour les mmes donnes et montrez que le dcodage nest pas ambigu. La gure 1.15 reprsente les donnes avec le code Manchester. Figure 1.15
Donnes en codage Manchester.

Les transmissions et les supports 17

Exercices

La gure 1.16 reprsente les donnes avec le code de Miller. Figure 1.16
Donnes en codage de Miller.

Le dcodage du code de Miller est trs simple : une transition au milieu de lintervalle reprsente un 1, une absence de transition dans lintervalle reprsente un 0. Il ny a donc aucune ambigut de dcodage.

Remarque
Le choix dun bon code est difcile ! Il faut trouver un compromis entre le nombre de transitions indispensable la synchronisation du codec rcepteur et une solution transparente aux donnes transmises.

EXERCICE 6

FORMULE

DE

SHANNON

Si on nutilise pas de techniques de compression de donnes, une transmission de voix numrise ncessite un dbit binaire de 64 kbit/s. En supposant que la transmission se fasse par des signaux moduls de valence 32, quelle est la bande passante disponible, sachant que celle-ci est gale la moiti de la rapidit de modulation utilise ? Quel doit tre le rapport S/B de la ligne de transmission offrant un dbit binaire de 64 kbit/s et possdant une largeur de bande trouve dans la question prcdente ? On exprimera cette valeur en vraie grandeur et en dcibels.

On utilise la formule D = R*log2V. On obtient : 64*103 = R*log232, ce qui donne D = 5R, do : R = 12 800 bauds. La bande passante est donc gale 6 400 Hz. En utilisant la formule de Shannon D = W*log2(1 + S/B), on trouve : 64*103 = 6 400*log2(1 + S/B), do : log2(1 + S/B) = 10, cest--dire que S/B = 210 1, soit 1 023 (on pourra ngliger le 1 devant le rapport S/B), ce qui correspond 30 dB environ.

18

Architecture des rseaux

Chapitre

EXERCICE 7

CONNEXION

INTERNET

Pour vous connecter Internet, vous avez reli votre ordinateur portable au rseau grce un modem de type PCMCIA, raccord la ligne tlphonique de votre domicile. On suppose que votre modem a un dbit maximal de 56 kbit/s et que votre ligne tlphonique possde une bande passante comprise entre 300 et 3 400 Hz. Pendant votre connexion, vous constatez que la vitesse de transfert des donnes effective est 6 200 octet/s. Si la vitesse constate ne provient que dun mauvais rapport S/B de votre ligne, quelle est la valeur de ce rapport durant votre connexion ? La vitesse de transmission est maintenant de 24 800 bit/s. Si la rapidit de modulation est de 4 800 bauds, quelle est la valence du signal modul ? On suppose que la ligne tlphonique rpond au critre de Nyquist et que la rapidit de modulation vaut 4 800 bauds. Si on utilise la rapidit de modulation maximale, quelle est la bande passante du support ? Supposons que le dbit binaire indiqu reste constant et gal 49 600 bit/s pendant toute la dure de la connexion. Combien de temps devrez-vous rester connect pour tlcharger un chier de 2 Mo (on pourra prendre ici 1 Mo = 106 octets) sur votre portable ? Vous utilisez dsormais une connexion 10 Mbit/s. Combien de temps resterez-vous connect pour tlcharger le mme chier que celui de la question d ?

Le dbit binaire de la ligne vaut 49 600 bit/s. Daprs le thorme de Shannon, on obtient : 49 600 = 3100*log2(1 + S/B), soit : log2(1 + S/B) = 16, do : S/B = 216 1. En ngligeant le 1, nous trouvons un rapport S/B = 65536, soit environ 48 dB. Toujours en utilisant le thorme de Shannon, nous trouvons : 24 800 = 3100*log2(1 + S/B), soit : S/B = 28 1 = 255. Le rapport S/B vaut environ 24 dB. Selon le critre de Nyquist, la rapidit de modulation maximale est gale 2 fois la bande passante de la ligne. Celle-ci vaut donc 2 400 Hz. Le temps t ncessaire pour transfrer 2*106 octets est gal : t = 2*8*106/49 600 = 322,58 s soit environ 5 minutes et 22 secondes. Le temps t ncessaire nest plus que de 1,6 s

EXERCICE 8

CARACTRISTIQUES

DES MODEMS

V23

ET

V29

Proposez un codage simple des donnes binaires transmises par le modem V29.

Les transmissions et les supports 19

Exercices

Exprimez et comparez les valeurs du dbit binaire et de la rapidit de modulation du modem V23 et du modem V29. Le modem V23 fonctionne 1 200 bit/s avec une modulation de frquences deux valeurs. Le modem V29 offre un dbit binaire de 9 600 bit/s et utilise une modulation combine damplitude et de phase (modulation damplitude 2 valeurs et modulation de phase 8 valeurs).

Le modem normalis V23 est le vieux modem intgr au Minitel. Les caractristiques techniques fournies montrent quil transmet des signaux de valence 2, cest--dire quun intervalle de temps de 1/1 200 s contient 1 bit. Donc la rapidit de modulation de ce modem est gale son dbit binaire soit 1 200 bauds. Dans le modem V29, on utilise deux amplitudes A1 et A2 et huit phases P1, P2, P3, P4, P5, P6, P7, P8. Pendant un intervalle de temps, il sagit de la combinaison dune amplitude et dune phase, donc le modem transmet une valeur parmi les 16 possibles. Il transmet 4 bits par intervalle de temps ; les informations transmettre sont codes par groupes par 4 bits (appels parfois quadribits) par le modem. Voici un exemple possible de codage des quadribits :
0000==> A1 et P1 0001 ==> A1 et P2 0010 ==> A1 et P3 0011 ==> A1 et P4 0100 ==> A1 et P5 0101 ==> A1 et P6 0110 ==> A1 et P7 0111 ==> A1 et P8 1000 ==> A2 et P1 1001 ==> A2 et P2 1010 ==> A2 et P3 1011 ==> A2 et P4 1100 ==> A2 et P5 1101 ==> A2 et P6 1110 ==> A2 et P7 1111 ==> A2 et P8

Comme le dbit du modem V29 est de 9 600 bit/s, lintervalle de temps est de 4/9 600 s, soit 1/2 400 s ; la rapidit de modulation vaut : 9 600/4 = 2 400 bauds. On peut retrouver ce rsultat en appliquant la formule : D = R*log2V, dans laquelle D et V sont connus et valent respectivement 9600 et 16.

EXERCICE 9

MODEM

NORMALIS

V32

Vous avez dnich dans votre cave un vieux modem fonctionnant lalternat, capable denvoyer et de recevoir les donnes 9 600 bit/s. Sans connatre les normes utilises dans la construction de ce modem, vous essayez de trouver ce que pourraient tre sa rapidit de modulation et la valence des signaux quil produit, sachant que la bande passante du tlphone vaut 3 100 Hz. Indiquez les solutions que vous avez trouves. La seule chose certaine est que la valence du signal produit doit tre suprieure 2 puisque, daprs le critre de Nyquist, le modem ne pourrait envoyer (ou recevoir) que 6 200 bit/s au maximum avec cette valence. En appliquant la formule liant la rapidit de modulation au dbit binaire et la valence, vous obtenez : log2V = 9600/3100, soit V = 23,097 environ. Sans mme faire le calcul, vous vous rendez compte que cette solution est inacceptable puisque, par dnition, la valence est un nombre entier. Dautre part, le dbit binaire ne vaudra pas exactement 9 600 bit/s ! Il faut donc que la rapidit de modulation soit un sous-multiple entier du dbit binaire, cest-dire que le rapport entre les deux grandeurs doit tre une puissance de 2.

20

Architecture des rseaux

Chapitre

Vous proposez : a. Une rapidit de modulation valant 2 400 bauds. Do : D = 4R et donc V = 16. b. Une rapidit de modulation valant 1 200 bauds. Do : D =8R et donc V = 256. c. Une rapidit de modulation valant 3 200 bauds. Do : D =3R et donc V = 8. En fouillant dans les vieilles normes AFNOR (Association franaise de normalisation), vous constatez que les modems transmettant lalternat 9 600 bit/s fonctionnaient conformment la recommandation V32. Cette norme prconisait une rapidit de modulation de 2 400 bauds ; la modulation employe tait une modulation damplitude complexe utilisant une valence 16 ou 32.

Remarque
La valence 32 fournit ici un dbit binaire de 5*2 400 = 12 000 bit/s soit plus que 9 600 ! En fait, sur les 12 000 bits transmis la seconde, seuls 9 600 taient rellement utiles , les 2 400 autres servant de protection contre les erreurs : ils taient calculs partir des 9 600 premiers et permettaient au modem rcepteur de dtecter et de corriger dventuelles erreurs. Pour lutilisateur, le dbit rellement utilisable reste de 9 600 bit/s. Ce mcanisme, trs gnral, sera repris au chapitre 2.

EXERCICE 10 SYSTME

DE RADIOMESSAGERIE

Un systme de radiomessagerie de poche (un pager) rpondant la norme ERMES (European Radio Message System) prsente les caractristiques techniques suivantes : bande de frquences : 169,425 MHz 169,800 MHz ; modulation de frquences 4 tats ; rapidit de modulation : 3 125 bauds ; rapport S/B dun rcepteur : 76 dB.

Quel est le dbit binaire rellement utilis dans cette radiomessagerie ? En supposant quon transmette un octet par caractre, combien de temps faut-il pour transmettre un message de 200 caractres sur un rcepteur de radiomessagerie ? Au lieu du dbit binaire trouv la question a, quel dbit binaire pourrait-on thoriquement obtenir en exploitant au mieux les caractristiques techniques de la radiomessagerie ? Pourquoi nest-ce pas utilis ?

Le dbit binaire rellement utilis est : D = 3 125*2 = 6 250 bit/s. Il faut : 8*200/6250 = 0,256 seconde pour transfrer le message sur le rcepteur.

Les transmissions et les supports 21

Exercices

La bande passante du support vaut : (169,8 169,425)*106 = 375 kHz. Daprs le thorme de Shannon, on pourrait transmettre au maximum : D = 375*103*log2 (1 + S/B) soit environ : 9 467 495 bit/s. Parce que la vitesse dafchage utilise est bien sufsante pour un lecteur humain, puisquun cran entier safche en un quart de seconde. On peut ainsi se contenter demployer des composants bon march pour la fabrication des rcepteurs.

EXERCICE 11 CODAGE

DES INFORMATIONS

On utilise un alphabet de 26 caractres diffrents. Pour transmettre ces donnes, on code chaque caractre par une suite de bits. Si le codage des caractres est longueur constante, combien faut-il de bits pour coder un caractre de cet alphabet ? Dans le rseau Tlex (rseau tlgraphique), on utilisait un alphabet contenant 5 bits par caractre. Comment pouvait-on coder les lettres de lalphabet latin, les chiffres et dautres symboles (comme les signes de ponctuation, par exemple) ? Combien de caractres diffrents peut-on reprsenter avec la mthode de codage prcdente ?

Il faut coder chaque caractre de lalphabet avec un nombre constant de bits. 26 tant un nombre compris entre 16 et 32, on choisira donc la puissance de 2 par excs qui permet de coder tous les caractres, mme si certains codages sont inutiliss. Il faut donc log232 bits pour coder les caractres de lalphabet, cest--dire 5 bits. Avec 5 bits, on peut coder 25 symboles soit 32 caractres diffrents, ce qui est notoirement insufsant pour coder les 26 lettres, plus les chiffres et les signes de ponctuation. Les tlgraphistes ont donc invent la notion de caractre dchappement, un caractre dont la prsence modie linterprtation du ou des caractres qui suivent. On a dni un code Lettre et un code Chiffre , les autres caractres tant interprts en fonction du caractre dchappement qui les prcde. Ainsi, chaque codage binaire a deux interprtations, selon quon se trouve en mode Lettre ou en mode Chiffre (par convention, on reste dans le mode slectionn tant quon ne trouve pas un nouveau caractre dchappement). On dispose ainsi de 30 caractres en conguration Lettre et 30 caractres en conguration Chiffre . On dispose donc au maximum de 62 codes diffrents pour reprsenter tous les caractres.

Remarque
Pour la saisie des caractres dactylographis sur un clavier, la touche Maj est un caractre dchappement qui modie la valeur du caractre suivant : tant quon nappuie pas sur cette touche, on tape les minuscules ou les caractres spciaux correspondant au codage en mode Minuscule.

22

Architecture des rseaux

Chapitre

EXERCICE 12 INTERFACE ETTD-ETCD


Linterface ETTD-ETCD dnie par V24 est conue de telle sorte quun ETTD ne puisse tre reli qu un ETCD. Peut-on relier deux ETTD utilisant localement (cest--dire sans ETCD) une interface V24 ? Reliez les signaux des circuits des deux ETTD donns sur la gure pour permettre un change de donnes correct entre les deux ETTD.
ETTD1 ETTD2

ED (103) RD (104) DPE (105) PAE (106) PDP (107) PD (108.2) DP (109)

ED (103) RD (104) DPE (105) PAE (106) PDP (107) PD (108.2) DP (109)

Oui, on appelle une telle liaison zro-modem (ou null modem). Cela consiste croiser les ls, de telle sorte que ce qui est mis par lETTD1 soit reu par lETTD2 et vice versa. Les ETCD tant absents, le cblage doit toujours tre prt mettre, do la boucle locale des circuits 105 106 de chaque ct, de mme pour les circuits 107 et 108. Enn, il ny a plus de porteuse mais les deux ETTD doivent tre informs du fonctionnement de linterface. Les circuits 107 et 109 doivent recevoir un signal pendant la dure des changes : on utilise pour cela le signal 108.
ETTD1 ETTD2

ED (103) RD (104) DPE (105) PAE (106) PDP (107) PD (108.2) DP (109)

ED (103) RD (104) DPE (105) PAE (106) PDP (107) PD (108.2) DP (109)

Les transmissions et les supports 23

Exercices

EXERCICE 13 PRINCIPES

DE FONCTIONNEMENT DE LADSL

Examinons les principes de transmission utiliss dans lADSL. Dans la modulation DMT, la plage des frquences disponible sur la boucle locale est divise en 256 canaux juxtaposs de 4 312,5 Hz chacun. Le canal 0 est utilis pour le tlphone vocal et les canaux 1 5 ne sont pas exploits pour viter les interfrences entre la voix et les donnes. Parmi les canaux restants, deux sont rservs pour le contrle des ux montant et descendant, le reste est utilis pour transmettre les donnes. Combien reste-t-il de canaux utiliser pour le transfert des donnes dans les deux sens en modulation DMT ? De quoi dpend le nombre de canaux affecter aux donnes de chaque sens ? Qui se charge de laffectation des canaux ? Que faudrait-il faire pour que les ux montant et descendant aient des dbits identiques ? Lutilisation la plus courante en ADSL consiste rserver 32 canaux pour le ux montant et les canaux restants pour le ux descendant. Quel est le dbit thorique que lon peut obtenir pour le ux montant si lon transmet des signaux binaires sur chaque canal ? Mme question pour le ux descendant. Une autre technique de modulation utilise, pour le ux descendant, une rapidit de modulation de 4 000 bauds et met 15 bits par signal transmis sur 224 canaux. Quel dbit binaire peut-on obtenir avec cette technique ? Il reste 248 canaux pour les ux de donnes montant et descendant. Le nombre de canaux affects chaque sens dpend du dbit binaire quon veut offrir aux abonns : plus ce nombre est grand et plus le dbit binaire sera important pour le ux considr. Cest bien videmment le fournisseur daccs qui rpartit les canaux, en allouant gnralement 90 % des canaux au ux descendant et les 10 % restants au ux montant. Il faut simplement allouer autant de canaux pour le ux montant que pour le ux descendant. On obtient ainsi une technologie DSL symtrique (SDSL). On peut obtenir : 4 312,5*32 = 138 kbit/s pour le ux montant. Il reste pour le ux descendant : 248 32 = 216 canaux, soit un dbit binaire de 931,5 kbit/s. On peut obtenir : 15*4 000*224 = 13,44 Mbit/s.

Remarque
Les technologies symtriques sont rserves aux oprateurs et aux fournisseurs daccs. Elles ne sont pas disponibles pour les abonns. On natteint pas dans la pratique le dbit obtenu la question f, car le rapport S/B des lignes est insufsant le plus souvent. On obtient couramment 8 Mbit/s sur de courtes distances, avec une boucle locale de bonne qualit.

24

Architecture des rseaux

Chapitre

Les protocoles de liaison de donnes


1. Rle et fonctions dun protocole de liaison ................................ 26 2. Fonctionnalits dun protocole de liaison ................................ 30 3. Description du protocole HDLC . 38 4. Cas particulier du protocole PPP 41

Le circuit de donnes pouvant altrer les informations transportes, le protocole de liaison de donnes le supervise et dfinit un ensemble de rgles pour assurer la fiabilit des changes sur une liaison de donnes. Ce protocole spcifie le format des units de donnes changes (les trames), leur dlimitation, les moyens de contrler leur validit (parit, code polynomial), ainsi que le mode de correction des erreurs dtectes. Il fixe galement les rgles du dialogue entre les deux extrmits de la liaison. Il exerce en outre deux fonctions importantes : le contrle de flux (mcanisme vrifiant le rythme denvoi des informations) et la gestion des acquittements (mcanisme validant la rception des informations). HDLC (High level Data Link Control) est un exemple de protocole normalis trs rpandu, orient bit, transparent tous les codes, dans lequel toutes les trames ont le mme format. Il permet dexploiter une liaison bidirectionnelle simultane avec contrle derreurs, de squence et de flux. PPP (Point to Point Protocol ) en est une version trs simplifie, utilise dans Internet.
25

Problmes et exercices 1. Problme li linsertion du bit de transparence ...................... 42 2. Transparence aux donnes transmises ............................... 42 3. Calcul du VRC et du LRC ......... 43 4. Dtection derreur par VRC et LRC 43 5. VRC, LRC et contrle polynomial 44 6. Calcul dun contrle polynomial 45 7. Dtection derreur par contrle polynomial .............................. 45 8. Contrle polynomial avec le polynme V41 ..................... 46 9. change de donnes avec des temps de propagation importants ...... 46 10. Relation entre taille de fentre et modulo de la numrotation des trames ... 47 11. Premire reprsentation dun change de donnes selon le protocole HDLC ...................................... 48 12. Rejet simple et rejet slectif de trames errones ................. 49 13. Autre exemple de rejet des trames errones ................................. 53 14. Cas dquipements ayant des dbits binaires diffrents .... 55

Rle et fonctions dun protocole de liaison


Pour faire communiquer des machines identies par leurs adresses, il faut dnir un grand nombre de rgles concernant la structuration du dialogue, le format des messages transmis, leur enchanement logique, le codage de linformation, le rythme de transmission, etc. Lensemble des rgles, assimilables des rgles dorthographe et de grammaire dnissant la construction des phrases dune langue, sappelle protocole de liaison de donnes ou protocole de communication. Un programme (logiciel de communication), install sur les quipements qui doivent communiquer distance, lexcute. An dassurer un maximum dinteroprabilit entre quipements diffrents, les instances de normalisation ont travaill la dnition des protocoles de communication lchelle internationale.

Dnition
Un protocole est un ensemble de rgles et de formats de donnes respecter pour changer des donnes dans de bonnes conditions entre deux quipements ou deux programmes. Un protocole de liaison de donnes a pour objet de rendre able le circuit de donnes.

Alors que le circuit de donnes transmet des lments binaires, le protocole de liaison de donnes travaille sur des blocs dlments binaires appels trames. La trame est donc lunit de donnes quil gre. Elle transporte les donnes de lutilisateur et contient, en outre, des informations de commande, ncessaires au protocole pour garantir le bon droulement du dialogue (certaines trames, les trames de supervision, sont dailleurs rduites aux seules informations de commande). Une trame compte diffrents champs. Chacun deux est un bloc dlments binaires dont la signication et linterprtation sont prcises dans la dnition du protocole. Le protocole doit galement dnir les rgles du dialogue et spcier la faon de corriger les erreurs dtectes. Enn, on doit pouvoir dtecter les pannes des quipements ou les ruptures compltes de liaison pour avertir lutilisateur de lindisponibilit du service.

Remarque
Dnir un protocole de liaison de donnes consiste prciser : le format des trames changes, les conditions de dlimitation des trames (dbut et n) et leur validit, la position et la signication des diffrents champs dune trame, la technique de dtection derreur utilise, les rgles du dialogue (supervision de la liaison) et les procdures respecter aprs dtection derreurs ou de panne de la liaison.

1.1 MISE

EN FORME DES DONNES


En thorie, les dlimitations de dbut et de n de trame sont indpendantes de la technique de transmission utilise. En pratique, certains procds utilisent des particularits du codage en ligne pour dlimiter les trames. Les solutions les plus frquentes sont la dlimitation par une squence binaire spciale ou lindication explicite de la longueur de la trame.

Dlimitation par une squence spcique dlments binaires


Les trames ayant un nombre quelconque de bits, une squence spcique, appele fanion (ou ag), sert indiquer le dbut aussi bien que la n des trames. En gnral, il se compose de loctet 01111110. Un mcanisme de transparence est ncessaire pour viter de retrouver cette squence lintrieur dune trame : lmission, on insre dans le corps de la trame un lment binaire 0 aprs avoir rencontr cinq lments binaires conscutifs de valeur 1.

26

Architecture des rseaux

Chapitre

En rception, il faut supprimer llment binaire de valeur 0 aprs avoir rencontr cinq lments binaires conscutifs de valeur 1. Un tel mcanisme (le bit stufng) interdit lmission de plus de cinq lments binaires de valeur 1 dans le corps de la trame, puisque cette conguration est rserve sa dlimitation. Cette mthode permet la transmission de trames de longueur quelconque sans contraintes particulires.

Exemple

Prenons les donnes utiles suivantes : 0110 1111 1110 1001. Prcdes et suivies de fanions, elles seront rellement mises sous la forme : 01111110 0110 1111 10110 1001 01111110. Dans cette squence, les fanions sont souligns et le bit insr pour la transparence est en gras soulign.

Dlimitation par transmission de la longueur du champ de donnes


Une autre mthode de dlimitation consiste indiquer, dans un champ particulier, le nombre doctets utiles contenus dans la trame. Aprs une squence de dbut de trame, un ou plusieurs octets indiquent sa longueur (lemplacement de ce champ est x par rapport au dbut de trame), qui sexprime gnralement en octets ou en nombre de mots (de 16 ou 32 bits, par exemple). Ce procd induit une limitation de la taille des trames : ainsi, si la longueur, exprime en octets, est code sur un octet, on se limite des trames de 256 octets. Ce faisant, on vite les problmes de transparence puisque le rcepteur ninterprte en aucun cas les donnes reues comme des dlimiteurs. La longueur de la trame peut tre ajuste une longueur xe par ajout dlments binaires de remplissage. Le champ prcise alors la taille des donnes utiles transportes dans la trame.

1.2 CONTRLE

DE LA VALIDIT DE LINFORMATION TRANSMISE

Le contrle derreurs consiste vrier la validit des donnes transmises. Si on admet que le service de transmission nest pas able, il faut se protger contre dventuelles erreurs, donc les dtecter puis les corriger. Pour cela, on ajoute linformation transmise une redondance, cest--dire des informations de contrle calcules par un algorithme spci dans le protocole partir du bloc de donnes. la rception, on excute le mme algorithme pour vrier si la redondance est cohrente. Si cest le cas, on considre quil ny a pas derreur de transmission et linformation reue est traite ; sinon, on est certain que linformation est invalide et elle est ignore. La gure 2.1 illustre le principe de contrle de validit de linformation transmise. Figure 2.1
Principe de calcul du code de contrle de validit.

Calcul l'mission
Information transmettre

Vrification la rception

Algorithme de calcul Information redondante Comparaison

La correction des erreurs se fait soit par lintermdiaire dune nouvelle tentative de transmission, soit en exploitant la richesse des informations de redondance, qui localisent et
Les protocoles de liaison de donnes 27

corrigent les erreurs dtectes. Lorsquon utilise une simple dtection derreurs, le rcepteur na aucun moyen de localiser lerreur dtecte : celle-ci peut se situer aussi bien dans le champ de redondance que dans le champ des donnes. Dans tous les cas, la trame est considre comme invalide et ignore du rcepteur. Il est toujours possible que des erreurs de transmission apparaissent et que, par malchance, la cohrence reste vraie. On se trouve alors en prsence derreurs rsiduelles. Dans ce cas, le mcanisme de contrle derreurs na pas pu dtecter que plusieurs erreurs de transmission se sont mutuellement compenses. Le taux derreurs rsiduelles doit tre aussi faible que possible mais il ne peut jamais tre nul sur une liaison de donnes relle.

Remarque
Les erreurs rsiduelles peuvent galement exister sur des liaisons de donnes employant des codes correcteurs derreurs. Le nombre derreurs compenses a alors dpass les capacits de correction du code correcteur, et le protocole de liaison ne peut pas signaler cet vnement.

La dtection des erreurs rsiduelles ne seffectue donc pas au niveau du protocole de liaison mais des niveaux plus levs de larchitecture de communication : par exemple, au niveau de lapplication ou mme seulement par lutilisateur qui a reu une information incohrente par rapport ce quil attendait.

Contrle de la validit : protection au niveau du code


La protection au niveau du code consiste organiser une redondance interne celui-ci : parmi toutes les combinaisons possibles, certaines sont retenues comme valides. Ce type de protection est possible lorsque lmission des donnes se fait par caractre (on introduit une redondance pour chaque caractre transmis). Par exemple, on ajoute chaque caractre un bit de parit dit parit verticale ou VRC (Vertical Redundancy Check)1, calcul comme suit : pour chaque caractre, on fait la somme modulo 2 de ses bits. Si le nombre de bits 1 est pair, on ajoute 0 la n du caractre, et si le nombre de bits 1 est impair, on ajoute 1. Le contrle de validit par VRC est frquemment utilis avec le code CCITT no 5 sur les liaisons asynchrones. Par exemple, pour le caractre M cod par 1001101, le bit de parit vaut 0. On transmet dans cet ordre 10110010 (les 7 bits de donnes en commenant par les poids faibles puis le bit de parit). Linconvnient gnral li aux contrles par parit est quon ne dtecte pas les erreurs doubles.

Contrle de la validit : protection au niveau de la trame


La protection au niveau des trames consiste rajouter une redondance chaque trame, en fonction de lensemble des lments binaires qui la constituent. Plusieurs techniques sont envisageables, mais nous nexaminerons ici que la parit longitudinale et le contrle polynomial, qui sont les mthodes les plus connues et les plus utilises. Contrle de parit longitudinale ou LRC (Longitudinal Redundancy Check) Pour amliorer la dtection des erreurs dans les transmissions utilisant les contrles par parit, on associe souvent parit longitudinale et parit verticale (VRC + LRC). Pour cela on ajoute, la n de la trame, un mot de code appel parit longitudinale ou LRC, constitu par la somme modulo 2 de tous les bits de mme rang.
1. Par rfrence aux bandes magntiques utilises comme mmoire de masse. Sur la bande, vue comme un long ruban, on crivait, dune part, en parallle les bits du caractre, do le nom de par t verticale donn cette mthode de protection du caractre, et, dautre part, les caractres les uns la suite des autres, dans le sens longitudinal de la bande, pour constituer le bloc de donnes. Un autre code de protection tait inscrit en fin de bloc.

28

Architecture des rseaux

Chapitre

Exemple

Soit la suite de caractres L, 2, M transmettre, code en CCITT no 5 par les valeurs hexadcimales 4C, 32 et 4D. En parit paire, les bits de parit (en gras dans le texte) pour chaque caractre valent respectivement 1, 1 et 0. Le caractre de parit longitudinale est calcul comme suit : 1 1 0 0 1 1 0 0 caractre L + parit VRC ; 1 0 1 1 0 0 1 0 caractre 2 + parit VRC ; 0 1 0 0 1 1 0 1 caractre M + parit VRC ; 0 0 1 1 0 0 1 1 caractre du LRC ajouter la n du bloc de donnes comme caractre de contrle. La suite des lments binaires mise est donc 0011 0011 0100 1101 1011 0010 1100 1100, si on transmet les caractres les uns derrire les autres, en commenant par les poids faibles de chaque caractre. Contrle polynomial Le contrle polynomial, appel couramment par abus de langage code cyclique ou CRC (Cyclic Redundancy Check), est trs utilis dans les protocoles modernes car il permet de dtecter les erreurs sur plusieurs bits. Nous nous contentons ici den dcrire le processus sans en faire la thorie. Dans le contrle polynomial, on considre la trame transmettre comme un groupe de bits auquel on fait correspondre un polynme P(x), tel que le coefcient de degr i correspond la valeur du ie bit. Les algorithmes de calcul se font modulo 2 sur les polynmes [par exemple, (x7 + x3) + (x3 + x) = x7 + x]. On choisit un polynme G(x) de degr r, appel polynme gnrateur, caractristique du contrle. lmission, on multiplie P(x) par xr et on divise le polynme obtenu par G(x). Le reste not R(x), obtenu par division euclidienne, est de degr strictement infrieur r. Il est ajout la n de la trame comme code de contrle. Ainsi : xr*P(x) = G(x)*Q(x) + R(x). (1) On transmet le polynme T(x), constitu partir de P(x) et du reste R(x) et dni par lquation (2) : T(x) = xr*P(x) + R(x). (2) Daprs les quations (1) et (2) et en tenant compte du fait que les calculs seffectuent modulo 2, ce polynme vrie : T(x) = G(x)*Q(x). Il est donc divisible par G(x). Nous avons vu que le circuit de donnes peut modier linformation. Soit E(x) le polynme associ aux erreurs apportes par le circuit. Les donnes reues ont pour polynme associ S(x), dni par : S(x) = T(x) + E(x). la rception, on divise S(x) par G(x) et on obtient un reste R1(x) qui vrie lquation suivante : S(x) = G(x)*Q1(x) + R1(x). Si R1(x) est nul, on considre que E(x) est nul et que linformation reue correspond celle mise. Si R1(x) nest pas nul, le polynme E(x) ne lest pas non plus : le circuit de donnes a introduit une ou plusieurs erreurs et linformation reue doit tre ignore. linformation 1000001110000100 est associe P(x) = x15 + x9 + x8 + x7 + x2. Soit le polynme gnrateur de degr 12 : G(x) = x12 + x11 + x3 + x2 + x + 1. La division de x12*P(x) par G(x) donne : R(x) = x11 + x9 + x8 + x7 + x6 + x4 + 1.

Les protocoles de liaison de donnes 29

On transmet :
1 0 0 0 0 0 1 1 1 0 0 0 0 1 0 0 1 0 1 1 1 1 0 1 0 0 0 1

x *P(x)

12

R(x)

la rception, on vrie que le reste de la division par G(x) est nul.

1.3 MODES DEXPLOITATION DUNE

LIAISON DE DONNES

Le mode dexploitation dune liaison de donnes dpend du choix fait par le protocole de liaison (voir gure 2.2). La liaison peut tre exploite en simplex, semi-duplex (ou halfduplex ou lalternat), duplex intgral (ou full-duplex). Dans le mode simplex, lchange de donnes se fait dans un seul sens. En semi-duplex, il se fait alternativement dans les deux sens, cest--dire que les deux stations ne doivent pas transmettre simultanment (sinon il y a contention). En duplex intgral, les stations peuvent mettre simultanment sans aucune contrainte.

Remarque
Le mode dexploitation de la liaison de donnes peut diffrer des caractristiques du circuit de donnes : par exemple, on peut exploiter une liaison en semi-duplex alors que le circuit de donnes autorise des transmissions en duplex intgral.

Figure 2.2
Modes dexploitation de la liaison.

SIMPLEX

SEMI-DUPLEX (half-duplex)

DUPLEX INTGRAL (full-duplex)

Fonctionnalits dun protocole de liaison


partir dun exemple simple de dialogue entre deux quipements, nous introduisons les diffrents types de protocoles de liaisons de donnes et les concepts quils utilisent.

2.1 REPRSENTATION

DES CHANGES DE DONNES

Pour reprsenter les changes de donnes, considrons que le temps scoule selon un axe horizontal. La transmission dune trame est schmatise par un trait gras la gure 2.3 et sa longueur reprsente la dure dmission de la trame. Une che lgrement incline par rapport la verticale reprsente la propagation de la trame ; la n de la seconde che (ct destinataire) reprsente linstant o la trame est totalement reue.

30

Architecture des rseaux

Chapitre

Figure 2.3
Reprsentation des changes.
A Dure de transmission

Dlai de propagation

Trame

B A commence B commence mettre la recevoir la trame trame A finit d'mettre la trame B finit de recevoir la trame Temps

2.2 CONTRLE

DE FLUX

Considrons deux quipements A et B relis par un circuit de donnes sur lequel A veut envoyer des donnes B. Lquipement A dcoupe les donnes en trames, appeles trames dinformation, et les transmet les unes la suite des autres. Elles sont repres par la lettre I. Le circuit tant exempt danomalies, toutes les donnes sont dlivres sans erreur lquipement B qui les stocke pour les exploiter. Supposons que A soit un ordinateur et B une imprimante lente, dote dune capacit mmoire limite, lui imposant de garder en mmoire toutes les informations envoyes par A tant quelles ne sont pas imprimes. Si le rythme denvoi des informations est nettement suprieur son rythme dimpression, il y a rapidement saturation de la mmoire et perte dinformations par B. Il faut mettre en place un mcanisme de contrle du rythme denvoi des informations vers le rcepteur, appel contrle de ux. Le petit engrenage de la gure 2.4 reprsente le mcanisme mis en jeu pour contrler le ux des informations arrivant dans limprimante. Figure 2.4
Exemple dune transmission sans contrle de ux sur un circuit de donnes parfait.
A I I I I

B ? Mmoire

Pour raliser le contrle de ux, on introduit deux trames de supervision, RR (Receiver Ready) et RNR (Receiver Not Ready). Ces trames ne transportent aucune information utile et ne servent qu la gestion du dialogue. Elles sont gnres et exploites par le protocole de liaison et sont invisibles pour lutilisateur. Le mcanisme est le suivant : chaque rception de trame, lquipement B envoie une trame RR sil est prt accepter dautres trames ou une

Les protocoles de liaison de donnes 31

trame RNR sil ne veut plus en recevoir de nouvelles. Dans ce dernier cas, B envoie RR ds quil est prt accepter de nouvelles trames, comme le montre la gure 2.5. Figure 2.5
Mcanisme du contrle de ux.
A I I I I

RR B

RR

RNR Blocage

RR

RR

Il existe des variantes ce mcanisme : par exemple, lquipement B peut sabstenir denvoyer des trames RR. Lorsque la mmoire disponible descend au-dessous dun certain seuil, lquipement gnre une ou plusieurs trames RNR et envoie des trames RR ds quune partie de la mmoire est libre. Dans une autre variante, B peut transmettre en continu des trames RR tant quil a de la mmoire disponible (quelle que soit laction de lquipement A) et des trames RNR ds que sa mmoire est pleine. Un tel processus est couramment utilis pour les liaisons entre ordinateur personnel et imprimante. Les trames de supervision sont alors rduites deux caractres : la trame RNR est code par le caractre XOFF (Ctrl+S), la trame RR par XON (Ctrl+Q).

2.3 GESTION

DES ACQUITTEMENTS

Supposons maintenant que le circuit ne soit pas totalement able et introduise des erreurs. Au mcanisme de contrle de ux dcrit prcdemment, il faut ajouter un processus dacquittement des trames dinformation reues. Plusieurs options sont possibles : Lorsque lquipement rcepteur reoit correctement une trame, il envoie une trame dacquittement et ne fait rien en cas de mauvaise rception. Lorsquune trame est mal reue, lquipement rcepteur envoie une demande de retransmission lmetteur et ne fait rien en cas de bonne rception. Dans la seconde stratgie, labsence de rponse est considre comme un acquittement : chaque trame, lquipement metteur arme un temporisateur correspondant lattente maximale dune demande de retransmission provenant du rcepteur ; si une telle demande parvient lmetteur, il rpte la dernire trame. Dans le cas contraire, expiration de la temporisation, lmetteur considre que la transmission sest bien effectue. Cette stratgie prsente deux inconvnients : elle est peu able car la demande de retransmission elle-mme peut tre mal transmise. Elle est en outre peu efcace puisquelle provoque une attente systmatique en cas de bonne transmission. Dans les protocoles de liaison de donnes, on utilise plutt une stratgie dacquittement positif, laide des trames de supervision prcdentes (RR et RNR). La stratgie de fonctionnement de B devient : Si B reoit une trame correcte, lquipement envoie un acquittement (trame RR ou RNR), selon ltat de sa mmoire pour assurer le contrle de ux.

32

Architecture des rseaux

Chapitre

Sil reoit une trame errone, il ne la mmorise pas et ne renvoie rien, comme sil navait rien reu.

Le principe de gestion des trames est le suivant : lmission de chaque trame dinformation, A arme un temporisateur (correspondant lattente maximale de lacquittement de B) qui sera dsarm rception de lacquittement correspondant. lchance de cette temporisation, si B na pas rpondu ou si sa rponse est brouille, A rmet la trame et ritre le processus prcdent. Le nombre de rptitions autorises est limit : au-del dun certain seuil, on considre quun incident grave sest produit (rupture totale de liaison, panne de lquipement B, panne dun lment de transmission sur A ou B). Il faut alors avertir lutilisateur que la liaison de donnes est rompue. Ce mode dacquittement nest pas encore satisfaisant, car le circuit de transmission peut corrompre aussi bien les trames mises par A que celles mises par B. La gure 2.6 montre un change de donnes mal conduit : une trame mal reue par le rcepteur se reprsente par un trait pointill sans che ; les sabliers symbolisent les temporisations associes aux trames. Figure 2.6
Protocole avec acquittement simple. I[info 0] signie que la trame I transporte linformation info 0 . Dans cet exemple, la trame l info 1 est duplique.

A I[info 0] I[info 1] I[info 1] I[info 1]

RR

RR

RR info 1

info 1 info 0 info 0

info 1 info 0

En effet, supposons que A envoie vers B une trame contenant linformation 1 et que B rponde cette trame bien reue par une trame RR qui est mal transmise (que lquipement A ne reconnat pas). Il rmet la mme trame qui sera duplique dans B. Or, celui-ci na aucun moyen de dtecter la duplication, puisquen aucun cas il nanalyse le contenu de la trame (A peut trs bien dcider de transfrer deux fois de suite la mme trame !). Puisque le protocole de liaison de donnes doit tre compltement indpendant du contenu des trames transfres, il faut introduire un mcanisme supplmentaire qui distingue deux trames successives diffrentes. Lintroduction dun champ supplmentaire de numrotation ou dindication de retransmission rpond ce besoin.

2.4 NUMROTATION

DES TRAMES DINFORMATION

Le protocole numrote chaque trame dinformation. La numrotation est place dans len-tte, tout comme le type de la trame. Deux trames possdant des numros diffrents sont considres comme transportant des units de donnes distinctes. Le protocole du rcepteur exploite len-tte pour vrier si la trame est correcte et en squence. Dans lafrmative, linformation contenue dans le champ de donnes est dlivre lutilisateur. On appelle N(S) [S pour send] la variable donnant le numro de la trame. Cette variable, code sur quelques bits, est prise modulo M, un entier qui peut prendre les valeurs : 2 (le minimum pour distinguer deux trames successives diffrentes), 8 ou 128. Lintroduction

Les protocoles de liaison de donnes 33

de numros dans les trames impose des compteurs dans chaque station. De plus, il faut initialiser le dialogue pour que les deux stations se mettent daccord sur les valeurs initiales des compteurs. Le processus fonctionne de la faon suivante : A possde un compteur interne V(S) donnant le numro de la prochaine trame mettre. A met cette trame en copiant V(S) dans le champ N(S), puis il incrmente V(S). Pour toute rptition dune trame dinformation, A met la trame sans modier son numro dordre. La gure 2.7 montre un change de trames dont certaines sont errones. La poubelle matrialise llimination des trames par le rcepteur. Sur rception dune trame, B teste la valeur du compteur N(S) : si sa valeur est gale celle de la trame prcdente, la trame est duplique et B lignore. Il peut cependant envoyer une trame de supervision pour acquitter la trame quil vient de recevoir. Figure 2.7
Protocole numrotation de trames.

A I[info 0] I[info 1] I[info 1] I[info 1]

RR

RR info 1

RR info 1 info 0

info 0

info 0

Ce mcanisme possde une grosse faiblesse puisque la valeur de la temporisation est un paramtre critique. En effet, un mauvais choix de valeur peut entraner un dysfonctionnement du protocole, comme le montre lexemple de la gure 2.8. Considrons le scnario o A envoie une trame I0 bien reue par B mais dont lacquittement lui arrive aprs expiration de la temporisation associe ; A met nouveau la trame I0. Lorsquil reoit lacquittement de la premire trame I0 mise, il considre quil sagit de lacquittement de la seconde et il met la trame I1. A interprte lacquittement qui suit comme lacquittement de sa trame I1. Si, par malheur, I1 est mal transmise, elle va manquer B : A croit quelle est acquitte alors quen ralit B ne la pas reue. On est donc oblig de prciser dans une trame dacquittement le numro de la trame dinformation quelle acquitte.

2.5 NOTION

DE FENTRE

An daugmenter lefcacit du dialogue, on introduit la notion danticipation, cest-dire la possibilit dmettre plusieurs trames la suite, sans avoir reu lacquittement des trames prcdentes. Ainsi, une trame de supervision nacquitte plus une seule trame mais un ensemble de trames qui se suivent sans erreur. Le nombre de trames successives quon peut mettre sans rception dacquittement est limit par une valeur note k, appele fentre. Considrons une numrotation des trames modulo 8. Intuitivement, on peroit que la valeur maximale de k est au plus gale 8. Nous montrons quelle doit tre au plus de 7.

34

Architecture des rseaux

Chapitre

Figure 2.8
Exemple de mauvais fonctionnement avec des trames numrotes et des acquittements sans numrotation.

A I0[info 0] I0[info 0] I2[info 2]

RR

RR

!
info 2 info 0 info 0 info 0

Adoptons une reprsentation circulaire des trames en attente dacquittement. la gure 2.9, un disque reprsente lensemble des valeurs des numros dune trame ; chaque trame occupe une part du disque. Un trait gras reprsente la valeur V(S) du compteur interne de A donnant le numro de la prochaine trame mettre. linstant initial, A est au repos. Ds que A lance lmission de la trame 0, cette trame est considre comme mise mais non acquitte : on noircit la portion 0 du disque. Si A met plusieurs trames successives, on noircit lensemble des trames en attente dacquittement. Lorsque A reoit un acquittement, les portions correspondant aux trames acquittes sont blanchies. Lensemble des portions noircies reprsente ltat de la fentre dmission. On reprsente galement par un disque ltat du rcepteur en noircissant les numros que B sattend recevoir. linitialisation, B sattend recevoir la trame numrote 0 : la case 0 est noircie. Lorsque cette trame est reue correctement, B se met en attente de la trame 1 ; la case 1 est, par consquent, noircie son tour et ainsi de suite. Figure 2.9
Reprsentation des fentres dmission et de rception.
Fentre d'mission
6 5 4 3 7 0 1 2

6 5

7 0 1 2 4 3

6 5

7 0 1 2 4 3

I0[info 0] A

B Fentre d'mission
6 5 4 3 7 0 1 2 6 5 4 3 7 0 1 2

RR1

En absence derreur de transmission, le fonctionnement est le suivant : ds que B reoit une trame, il enregistre son numro N(S), lincrmente de 1, le mmorise dans une variable interne V(R) puis place cette valeur dans le champ N(R) de la trame de supervision quil renvoie A. Tant quil en reste, lquipement A met ses trames, moins quil nait atteint le nombre de trames autorises sans rception dacquittement. Une temporisation, arme lmission de chaque trame, est dsarme chaque fois que la trame correspondante est acquitte. On remarque que ce protocole suppose des quipements fonctionnant en mode duplex intgral car les acquittements sont reus pendant lmission des trames. La gure 2.10 illustre ce procd.

Les protocoles de liaison de donnes 35

Figure 2.10
Scnario pour un protocole fentre danticipation de largeur 2. Lorsque A a mis les trames I0 et I1, sa fentre est ferme. Il attend la rception dun acquittement pour pouvoir mettre la trame I2.
Fentre d'mission

6 5

7 0 1 2 4 3

6 5

7 0 1 2 4 3

6 5

7 0 1 2 4 3

6 5

7 0 1 2 4 3

6 5

7 0 1 2 4 3

I0

I1

I2

B Fentre d'mission
6 5 4 3 7 0 1 2 6 5

RR1
7 0 1 2 4 3

RR2
6 5 4 3 7 0 1 2 6 5

RR3
7 0 1 2 4 3

Dterminons par un exemple la taille maximale de la fentre danticipation, lorsque les trames sont numrotes sur 3 bits (les valeurs vont de 0 7). Considrons les deux scnarios suivants : A transmet une trame numrote 0, acquitte par B. Lacquittement nest pas reu par A qui met nouveau la trame 0 expiration de la temporisation associe. A transmet une trame numrote 0, acquitte par B laide de la trame RR1. Ensuite, huit trames sont successivement mises (les trames 1 7 puis la trame 0), mais les sept premires ne sont pas reues par B. Dans le dernier scnario, de son point de vue, B a reu deux trames successives portant lindice 0, autrement dit, deux fois la mme trame alors quil sagit de deux trames diffrentes. Il est donc ncessaire de limiter la fentre danticipation sept trames pour viter toute confusion. De faon gnrale, si les trames sont numrotes de 0 n, la taille maximale de la fentre danticipation est au plus n : graphiquement, il doit toujours y avoir une part du disque non noircie pour viter toute ambigut dans lacquittement. Quand une trame reue est errone, elle nest pas prise en compte. Une erreur ne sera alors dtecte que si lune des trames I suivantes est correctement reue. Par contre, son numro ne correspondra pas au N(S) attendu. Deux stratgies sont envisageables : on rmet toutes les trames partir de la trame errone (Go-back-N) ou on ne rmet que la trame errone par un mcanisme de rejet slectif (Selective Reject).

2.6 PROTOCOLE GO-BACK-N


Dans la stratgie Go-back-N (retour au n-ime), une trame de supervision appele REJ (Reject) sollicite la retransmission des trames partir de la trame errone. Le Go-back-N est illustr la gure 2.11 et respecte le scnario suivant : A envoie la trame 0 (mal reue), suivie de la trame 1 (bien reue). En recevant la trame 1, B constate une rupture de squence : il a reu la trame 1 sans avoir reu de trame 0. De ce fait, il ne mmorise pas la trame 1 et envoie une trame REJ avec le numro 0 pour demander la reprise dmission partir de la trame 0. En recevant la trame REJ0, A interrompt ventuellement lmission de la trame en cours pour reprendre le processus dmission partir de la trame errone.

36

Architecture des rseaux

Chapitre

Figure 2.11
Scnario dun protocole Go-back-N.

Fentre d'mission

6 5

7 0 1 2 4 3

6 5

7 0 1 2 4 3

6 5

7 0 1 2 4 3

6 5

7 0 1 2 4 3

6 5

7 0 1 2 4 3

A I0 I1 I2 I0 I 1

B Fentre d'mission
6 5 4 3 7 0 1 2

REJ0

RR1

6 5

7 0 1 2 4 3 6 5

7 0 1 2 4 3

2.7 PIGGY-BACKING
Dans des changes bidirectionnels, chaque quipement envoie des trames dinformation numrotes et acquitte les trames I quil a reues (voir gure 2.12). Il y a donc deux sortes de trames mises : les trames I et les trames dacquittement (RR, RNR ou REJ selon ltat de la rception). Un tel mcanisme nest pas trs efcace ; on lamliore en utilisant les trames I pour vhiculer la fois les informations mettre et les acquittements des trames reues prcdemment. Chaque trame I possde deux numros : un numro N(S) [le numro dordre de la trame I], et un numro N(R) acquittant les trames mises dans le sens oppos. Ce mcanisme est appel piggy-backing. Enn, lorsquune station na pas de trame I mettre, elle peut toujours utiliser des trames RR pour acquitter le trac quelle reoit. Figure 2.12
Scnario dun protocole duplex intgral avec piggy-backing. Une trame I N(S),N(R) a comme signication I N(S) et RRN(R). La fentre danticipation lmission est de taille 3 au moins dans cet exemple.
A
I0,1 I1,1 I2,3 I3,3

I0,0

I1,0

I2,1 I3,3

2.8 CONCLUSIONS
Un protocole de liaison de donnes peut offrir plusieurs services suivant la qualit de la transmission : Service sans acquittement, ni connexion, ni contrle de ux lorsquon souhaite utiliser un protocole trs simple ou lorsque le circuit de donnes est dexcellente qualit. Service avec acquittement mais sans connexion, ni contrle de ux qui permet damliorer un peu la abilit de la liaison mais ne garantit pas la non-duplication des messages. Service avec acquittement, connexion et contrle de ux qui inclut la numrotation des trames et des acquittements. Ce service, le seul offrir une relle garantie de abilit,

Les protocoles de liaison de donnes 37

est aussi le plus complexe implanter. On distingue plusieurs stratgies dans la gestion des acquittements : le Stop-and-Wait (utilisation dune fentre danticipation gale 1), le Go-back-N et le Selective Reject. Le Stop-and-Wait est peu efcace, le Goback-N est le plus utilis ; le Selective Reject napporte pas de gain agrant de performances dans la majorit des cas. De multiples protocoles de liaison de donnes ont t dvelopps. Nous nous contentons ici de la prsentation dtaille dun seul protocole : HDLC (High level Data Link Control), une recommandation internationale datant des annes 1970.

Description du protocole HDLC (High level Data Link Control)


HDLC est le protocole normalis par lITU (International Telecommunications Union2), qui dcrit une transmission en duplex intgral fonctionnant sur une liaison point point ; la transmission est synchrone et oriente bit. Ce protocole met en uvre le mcanisme de transparence dcrit en dbut de chapitre, ce qui le rend totalement indpendant du codage des donnes transportes. HDLC peut transporter des informations utilisant des codes de longueur variable. Sa variante la plus connue est de type Go-back-N avec un mcanisme de contrle de ux. Il fonctionne en mode quilibr ou symtrique3, cest--dire que les deux stations ont les mmes prrogatives et peuvent ventuellement fonctionner selon un mode half-duplex.

3.1 STRUCTURE DUNE

TRAME

HDLC

La trame est la structure unique de longueur quelconque qui transporte toutes les informations. Un fanion en marque le dbut et la n ; un seul fanion marque la n dune trame et le dbut de la suivante lorsque deux trames sont mises conscutivement. Le tableau 2.1 dcrit les diffrents champs de la trame, dans leur ordre dapparition : Le champ Address stend sur un octet et identie une des extrmits de la liaison. Le champ Control dcrit le type de la trame : il stend sur 1 octet (sur 2 octets dans le mode tendu). Le champ Information est facultatif. Il contient un nombre quelconque dlments binaires reprsentant les donnes de lutilisateur. Le champ FCS (Frame Control Sequence) est la squence de contrle de trame, obtenue par un contrle polynomial dont le polynme gnrateur vaut x16 + x12 + x5 + 1. Ce polynme gnrateur est celui prconis par la recommandation V41 de lITU.
Tableau 2.1 Format de base des trames HDLC

Flag

Address

Control

Information

FCS

Flag

01111110

8 bits

8 bits

N bits

16 bits

01111110

Le champ de gauche est le premier transmis, le champ de droite est le dernier.

2. On trouve galement le sigle franais UIT (Union internationale des tlcommunications) pour dsigner la mme instance internationale. Nous utiliserons le sigle anglais. 3. Dans ce mode, chaque quipement possde deux fonctions : une primaire, qui met des requtes, et une secondaire, qui envoie des rponses aux requtes.

38

Architecture des rseaux

Chapitre

On commence par mettre les bits de poids faibles (du bit 1 au bit 8 de chaque champ). La transmission dlments binaires est continue ; en labsence dmission spcique, les quipements mettent des suites de fanions pour maintenir la synchronisation entre les deux extrmits de la liaison de donnes.

3.2 DIFFRENTS

TYPES DE TRAMES

HDLC

Il existe trois types de trames identis par le champ Control : les trames dinformation ou trames I permettent la transmission de donnes de lutilisateur. Les trames de supervision ou trames S permettent lacquittement et le contrle de ux ; elles ne transportent pas de donnes, de mme que les trames non numrotes ou trames U (Unnumbered)4. Ces dernires servent commander la liaison : initialisation, libration, notication derreurs irrcuprables Seule une trame I peut transmettre des donnes ; elle est numrote par la variable N(S) et contient galement lacquittement des trames reues en sens inverse (procd de piggy-backing), grce au numro N(R). Le tableau 2.2 montre le format du champ Control dune trame I.
Tableau 2.2 Format de loctet Control des trames I

7 N(R)

5 P/F

3 N(S)

0 Format gnral des trames I

Le bit 1 de valeur 0 est spcique la trame I. La valeur du bit P/F dpend du statut de lquipement (primaire ou secondaire) et de la nature de la trame (requte ou rponse5).

Trames de supervision (trames S )


Les trames S acquittent les trames I et indiquent ltat de disponibilit des stations (aptitude ou non recevoir de nouvelles trames I). Contenant un numro N(R), elles servent au contrle derreurs et au contrle de ux. Les trois trames de supervision6 sont : La trame RR indique que lquipement est prt recevoir de nouvelles trames I. Le numro N(R) donne le numro de la prochaine trame attendue. Il signie que toutes les trames I de numro N(S) strictement infrieur N(R) ont t reues. Un quipement peut aussi envoyer des trames RR pour indiquer son tat ou pour demander ltat de la station situe lautre extrmit. La trame RNR acquitte les trames reues et indique en outre que lquipement nest pas en mesure de recevoir de nouvelles trames I. Le numro N(R) a la mme signication que dans la trame RR. La trame REJ sert demander larrt immdiat des missions en cours et une retransmission partir de la trame I portant le numro indiqu dans N(R). Le tableau 2.3 donne le format de loctet Control des trames S.
Tableau 2.3 Format de loctet Control pour les trames S de supervision

7 N(R) N(R) N(R)

5 P/F P/F P/F

4 0 0 1

3 0 1 0

Format gnral des trames S

0 0 0

1 1 1

RR RNR REJ

4. Nous verrons plus loin dans le protocole PPP quil existe des trames U, appeles trames UI (Unumbered Information), qui transportent des donnes de lutilisateur. 5. Linterprtation du bit 5 (bit P ou F) dpend du statut de lquipement. Une trame de requte est mise par la fonction primaire qui gre le bit P. Une trame de rponse, mise par la fonction secondaire de lautre quipement, utilise le bit F.

6. Une quatrime trame de supervision, la trame SREJ, a t dfinie pour le rejet slectif, mais ce mode de rejet des trames errones ne fait pas partie de la version normalise dcrite ici. Nous verrons son fonctionnement au cours des exercices.

Les protocoles de liaison de donnes 39

Trames non numrotes (trames U )


On utilise les trames U pour les fonctions supplmentaires de commande de la liaison. Citons les principales : SABM (Set Asynchronous Balanced Mode) pour initialiser le fonctionnement en mode quilibr. DISC (DISConnect) pour rompre logiquement la liaison entre les deux stations. UA (Unnumbered Acknowledgement) pour acquitter des commandes comme SABM ou DISC. FRMR (FRaMe Reject) pour rejeter une commande invalide (correcte du point de vue de la dtection des erreurs mais incohrente par rapport ltat du dialogue). DM (Disconnect Mode) pour indiquer ltat de dconnexion dune station. Elle sutilise, en particulier, pour rpondre ngativement une demande dinitialisation par SABM.

Le tableau 2.4 donne le format de loctet Control des trames U.


Tableau 2.4 Format de loctet Control pour les trames U

8 0 0 0 1 0

7 0 1 1 0 0

6 1 0 1 0 0

5 P/F P/F P/F P/F P/F

4 1 0 0 0 1

3 1 0 0 1 1

1 1 1 1 1

1 1 1 1 1

SABM DISC UA FRMR DM

3.3 TABLISSEMENT

ET LIBRATION DE LA LIAISON DE DONNES

HDLC est un protocole orient connexion : il faut tablir la liaison avant denvoyer des informations ou en recevoir. De mme, lorsque lun des quipements veut terminer le dialogue, il engage une procdure de libration. La gure 2.13 dcrit un problme survenu lors dune tentative de connexion. Figure 2.13
Initialisation de la liaison de donnes. A tente dtablir une connexion vers B qui ne dtecte pas la premire trame mais acquitte la seconde.
SABM,P A SABM,P

Connexion tablie B UA,F

Nimporte quel quipement peut initialiser la liaison. Le primaire de lquipement initiateur envoie la trame SABM,P et attend la rponse du secondaire de lautre quipement. En cas de non-rponse, il ritre son envoi jusquau nombre maximal de tentatives de connexion. Au bout de ce nombre dessais infructueux, il considre que la liaison est impossible tablir. rception dune SABM,P, le rcepteur transmet une trame UA,F si son utilisateur accepte le dialogue, sinon il envoie une trame DM,F. Dans le premier cas, la connexion est alors tablie ; tous les compteurs et les temporisateurs sont initialiss. Les premires trames mises de chaque ct porteront un N(S) gal 0. Dans le second cas, les quipements entament une phase de libration. Ce dernier processus, symtrique ltablissement de la liaison, utilise les commandes DISC et UA.

40

Architecture des rseaux

Chapitre

Cas particulier du protocole PPP (Point to Point Protocol)


Le protocole PPP est le protocole de liaison point point utilis dans Internet. Il utilise les lignes tlphoniques de labonn pour accder au rseau (la liaison concerne typiquement un ordinateur personnel et le fournisseur daccs Internet). Il sagit dune version trs simplie dHDLC qui ne comprend sauf options ni contrle de ux, ni mcanisme de reprise sur erreurs. La gure 2.14 donne la structure dune trame PPP.

Figure 2.14
Format dune trame PPP.

Flag

Address

Control

Data PPP

Flag

Les 8 bits du champ Address sont 1 (la liaison tant point point, une seule valeur dadresse suft). Le champ Control a la mme signication que dans HDLC. Le champ Data PPP commence par deux octets (le champ protocole), qui identient le protocole de niveau suprieur auquel est destine la trame ; il se termine par un champ FCS dont le mode de calcul est identique celui dune trame HDLC. La seule trame transportant des donnes sur une liaison able est une trame U de type UI (Unnumbered Information). Cette trame contient un champ dinformations mais nest pas numrote (car il ny a pas de contrle de ux). Labsence de mcanisme de reprise sur erreur ne signie pas que le circuit est able : le champ FCS sert valider les trames reues. PPP comprend galement un ensemble de sous-protocoles choisis louverture de la liaison de donnes pour scuriser les changes : LCP (Line Control Protocol), PAP (PPP Authentication Protocol), CHAP (Challenge Authentication Protocol) et NCP (Network Control Protocol). linitialisation dun transfert, PPP ngocie les paramtres de lchange par le protocole LCP ; PAP autorise lchange en clair des mots de passe avant le transfert des donnes. Si on souhaite un change scuris, on peut utiliser CHAP, qui effectue un chiffrement tout au long de la communication grce un change pralable de cls publiques et de cls secrtes (voir les complments pdagogiques sur le site www.pearsoneducation.fr). Enn, le protocole NCP sert ngocier les paramtres de connexion (les options de transfert choisies par chaque extrmit de liaison, indpendamment lune de lautre) et les paramtres de niveau rseau (par exemple, laffectation des adresses IP, que nous verrons au chapitre 6).

Rsum
Le protocole de liaison de donnes supervise le circuit de donnes et dnit un ensemble de rgles pour assurer la abilit des changes. Il spcie le format des trames, les moyens de contrler leur validit, ainsi que les rgles du dialogue entre les deux extrmits de la liaison. Il exerce aussi un contrle de ux pour matriser le rythme denvoi des informations et valider la rception des informations reues. HDLC est un exemple de protocole normalis trs rpandu, qui gre des trames de donnes laide de trames de supervision. Il fonctionne en full-duplex et permet la reprise sur erreur. Il garantit en outre lordre des donnes. PPP, utilis dans Internet, en est une version trs simplie qui nexerce pas de contrle de ux mais propose plusieurs modes dchanges de donnes, ngocies avant tout transfert de donnes entre les deux extrmits de la liaison.

Les protocoles de liaison de donnes 41

Problmes et exercices
EXERCICE 1 PROBLME
LI LINSERTION DU BIT DE TRANSPARENCE
Soit la suite de donnes binaires situe dans le champ dinformation dune trame HDLC : 011110111110011111100011. Quelle est la suite rellement fournie au support de transmission (pour ces donnes seulement) ? Que se passe-t-il si le douzime bit de la suite rellement transmise a t mal reconnu du rcepteur ? Pour garantir la transparence, la suite rellement mise est : 0111101111100011111010001 (nous avons indiqu en gras les bits de transparence). Par suite de lerreur de transmission, la suite rellement transmise devient : 01111 01111110 011111010001. Le rcepteur reconnat un fanion dans la zone grise : il considre donc que la trame se termine cet endroit ! Lerreur est dtecte car la trame ne respecte pas le format dune trame I (de mme, ce qui est pris pour la trame suivante na pas dadresse valide). En outre, les 16 bits prcdant le faux fanion sont considrs comme les bits du FCS, qui a toute chance dtre faux. Enn, un rcepteur ignore toute trame comptant moins de cinq octets.

EXERCICE 2

TRANSPARENCE

AUX DONNES TRANSMISES

crire la suite des bits rellement transmise pour une trame SABM mise par un quipement dadresse A (03 en hexadcimal) vers un quipement dadresse B (01 en hexadcimal). Le bit no 5 (bit P) est mis 1. On admettra que le FCS de cette trame vaut en binaire 1101011111111011. Par quelle trame rpond lquipement B ? Il faut transmettre dans lordre : le fanion de dbut, ladresse de lquipement B, loctet Control (correspondant la trame SABM,P), le FCS puis le fanion de n. En reprsentant les donnes de gauche droite et en indiquant en gras les 0 insrs pour la transparence, la suite rellement transmise est :
01111110 00000001 111110100 11010111101111 01111110

fanion

adresse B

octet SABM

FCS

fanion

Lquipement B rpond par une trame UA,F, cest--dire par une trame U compose de : fanion, adresse B7, FCS, fanion.
7. Une trame de commande (SABM) contient ladresse de lquipement auquel est destine la trame. Dans la trame de rponse (UA), lquipement place sa propre adresse. Les deux trames contiennent donc la mme adresse.

42

Architecture des rseaux

Chapitre

EXERCICE 3

CALCUL

DU

VRC

ET DU

LRC

Calculez le VRC et le LRC du message HELLO en utilisant la parit paire, sachant que H est cod par 0001001, E par 1010001, L par 0011001 et O par 1111001. Prcisez lordre de transmission du message construit. VRC H E L L O LRC
0001001 0 1010001 1 0011001 1 0011001 1 1111001 1

--------------------------0100001 0

Message transmis (bits de poids faible en premier) : LRC + O + L + L + E + H


01000010 11110011 00110011 00110011 10100011 00010010

EXERCICE 4

DTECTION DERREUR

PAR

VRC

ET

LRC

On dsire transmettre la suite de 16 bits de donnes : 2BE3 (en hexadcimal), le premier bit transmis correspondant au bit de poids faible du chiffre 2. La protection contre les erreurs se fait par parit verticale (de parit paire) et longitudinale. Donnez la suite de bits des quatre caractres et la suite binaire complte transmise au rcepteur pour ce bloc de donnes. En supposant que, par suite dune erreur de transmission, le 19e bit de la suite trouve la question a soit modi, calculer la valeur du reste trouve par le rcepteur. Il faut ajouter, chaque caractre, le VRC qui lui correspond puis calculer le LRC du bloc de donnes. Les rsultats sont rcapituls au tableau 2.5 :
Tableau 2.5 VRC et LRC de la question a

Chiffre

Codage

VRC

2 B E 3

0 0 1 0 1 0 1 1 1 1 1 0 0 0 1 1 0 1 0 0

1 1 1 0 1

LRC

Les protocoles de liaison de donnes 43

Exercices

On envoie : LRC 3 E B 2 soit dans lordre dmission : 01001 00110 11101 10111

00101.

Le bit erron et le LRC trouvs sont indiqus en gras au tableau 2.6 :


Tableau 2.6 Corrig de la question b

Chiffre

Codage

VRC

2 B E 3

0 0 1 0 1 0 1 1 1 1 1 0 0 1 1 1 0 0 0 0

1 1 1 0

LRC

EXERCICE 5

VRC, LRC

ET CONTRLE POLYNOMIAL

On dsire vrier le bloc de donnes constitu par les deux octets cods avec une parit paire : 00110011 et 11110011. Quel est le LRC correspondant ce bloc de donnes ? Reprsentez le LRC sous forme polynomiale. On dsire vrier ce bloc de donnes par un contrle polynomial de polynme gnrateur x8 + 1. Donnez la valeur du polynme LRC(x). Que constatez-vous ? Le calcul du LRC est donn tableau 2.7.
Tableau 2.7 LRC de la question a

octet 1 octet 2 LRC

00110011 11110011 11000000

La forme polynomiale du LRC est : LRC(x) = x7 + x6. Le polynme M(x) du message est gal : x13 + x12 + x9 + x8 + x7 + x6 + x5 + x4 + x + 1. Il faut diviser le polynme P(x) = x8*M(x) par x8 + 1, cest--dire : x21 + x20 + x17 + x16 + x15 + x14 + x13 + x12 + x9 + x8/x8 + 1 = x7 + x6. Les deux mthodes de calcul donnent le mme rsultat.

Remarque
Nous voyons que le LRC est, en fait, un contrle polynomial de polynme gnrateur x8 + 1. Ce rsultat est intressant car il permet de calculer le LRC la vole, au fur et mesure de larrive des bits en srie, alors que, normalement, il se calcule en parallle sur tous les bits des caractres composant le bloc de donnes.

44

Architecture des rseaux

Chapitre

EXERCICE 6

CALCUL DUN

CONTRLE POLYNOMIAL

Soit la suite dlments binaires 0 1 1 1 0 1 0 0 0 0 1 0 1 0 1. Calculer le bloc de contrle derreur pour ces donnes, en supposant quon utilise un code polynomial de polynme gnrateur x5 + x3 + 1. On reoit le bloc suivant : 0 0 0 1 0 1 0 0 0 0 1 0 1 0 1 0 0 0 1 0 . Le contrle derreur utilisant le mme polynme gnrateur, quelle est la dcision prise par le rcepteur concernant ce bloc ? Le polynme M(x) correspondant au message est gal x13 + x12 + x11 + x9 + x4 + x2 + 1. Multiplions-le par x5, ce qui donne : P(x) = x5*M(x) = x18 + x17 + x16 + x14 + x9 + x7 + x5. Le reste R(x) vaut x4 + x2 + x + 1. Le mot de code mis est : P(x) = x18 + x17 + x16 + x14 + x9 + x7 + x5 + x4 + x2 + x + 1. Le polynme M(x) correspondant au mot de code reu vaut : x16 + x14 + x9 + x7 + x5 + x + 1. Il nest pas identique au mot de code mis. Effectivement, la division polynomiale donne un reste non nul, valant : R(x) = x4 + x2 + 1. Le rcepteur refusera donc le bloc de donnes.

Remarque
Dans ce bloc de donnes, nous voyons que plusieurs bits ont t mal transmis, sinon le polynme reu serait identique celui trouv la question a. Remarquons que les erreurs se trouvaient aussi bien dans le corps du message que dans le bloc de contrle mais, cela, le rcepteur ne pouvait pas le savoir !

EXERCICE 7

DTECTION DERREUR

PAR CONTRLE POLYNOMIAL

On considre la suite de donnes binaires : 010110110000111101010100 , constitue de deux caractres de 8 bits suivis dun bloc de contrle derreur calcul laide dun code polynomial de polynme gnrateur x8 + 1. Le rcepteur dtecte-t-il des erreurs de transmission dans la suite reue ? Pourquoi ? Soit P(x) = x22 + x20 + x19 + x17 + x16 + x11 + x10 + x9 + x8 + x6 + x4 + x2 le polynme reprsentant les deux caractres, suivi du reste de la division polynomiale. Le rcepteur ne dtecte pas derreur car le reste calcul par lmetteur correspond celui calcul par le rcepteur. En effet, les deux octets de donnes valent : 01011011 00001111, cest--dire que M(x) = x14 + x12 + x11 + x9 + x8 + x3 + x2 + x +1. En multipliant M(x) par x8, on retrouve les 16 premiers bits de P(x). Si on effectuait la division polynomiale de x8*M(x), on trouverait un reste R(x) = x6 + x4 + x2. Le rcepteur considre quil ny a pas derreur.

Les protocoles de liaison de donnes 45

Exercices

EXERCICE 8

CONTRLE

POLYNOMIAL AVEC LE POLYNME

V41

Les premiers bits transmettre dans une trame dinformations gre par le protocole HDLC sont les suivants : 10101110. Le polynme gnrateur utilis est le polynme normalis par la recommandation V41. Trouvez le reste de la division polynomiale du message par ce polynme. En supposant que la transmission des 8 bits ait t effectue sans erreur, reprsentez la suite des oprations effectue par le rcepteur depuis le premier bit de donnes jusqu la rception du dernier bit de contrle. M(x) = x7 + x5 + x3 + x2 + x. La division polynomiale effectuer est : x16*M(x), diviser par G(x), soit : x23 + x21 + x19 + x18 + x17 diviser par x16 + x12 +x5 + 1. Le tableau 2.8 donne les restes et les quotients successifs calculs par le rcepteur :
Tableau 2.8 Restes successifs du contrle polynomial utilisant le polynme V41

Restes successifs

Quotients successifs

x23 + x21 + x19 + x18 + x17 x21 + x18 + x17 + x12 + x7 x18 + x12 +x10 + x7 + x5 x14 + x12 + x10 + x5 + x2

x7 x7 + x5 x7 + x5 + x2

Ce qui donne un reste : R(x) = x14 + x12 + x10 + x5 + x2, soit en binaire sur 16 bits : 0101010000100100.

EXERCICE 9

CHANGE

DE DONNES AVEC DES TEMPS DE PROPAGATION

IMPORTANTS (CAS DES LIAISONS PAR SATELLITE)

Un quipement A dialogue avec un quipement B selon le protocole LAP-B, via une liaison satellite. Le satellite rmet les signaux reus sans aucun traitement et se trouve 200 km daltitude. Tous les dlais dus aux traitements sont ngligeables. Les quipements dialoguent 9 600 bit/s et limitent la taille du champ de donnes 64 octets. Tout quipement recevant une trame dinformation correcte lacquitte immdiatement sil na aucune information transmettre. En faisant lhypothse quil ny ait aucune erreur de transmission, dterminez quelle est la taille minimale de la fentre danticipation pour une transmission efcace, lorsque A est le seul quipement mettre des donnes. Mme question avec un satellite situ maintenant 36 000 km daltitude. Soit T le temps de transmission, l la longueur en bits du message, tp le temps de propagation (temps mis par le message mis la vitesse de la lumire, cest--dire 300 000 000 m/s) et D le dbit binaire en bit/s. Nous avons la relation : T = l /D.

46

Architecture des rseaux

Chapitre

A transmet un message B, qui le reoit T + tp et B envoie immdiatement la rponse. Pour viter toute perte de temps, il faut que la taille de la fentre soit telle quelle corresponde un temps dmission suprieur T, augment du temps dattente de la rponse. Calculons le temps de transmission dun message et le temps de propagation. Le temps de transmission dun message 64 octets de donnes vaut : T = (48 + 64*8)/9 600 = 58,33 ms. 200 km daltitude, le temps de propagation vaut : tp = 2*200 000/300 000 000 = 1/750 = 0,001333333 = 1,333 ms. Si est le temps dattente de rception de la trame RR :

= 2*tp + tRR = 2 tp + (48/9 600) = 2*1,33 + 5 = 7,66 ms.


Pendant quon envoie le second message par anticipation, on recevra le RR. Il ny aura donc jamais de problme de taille de fentre. 36 000 km daltitude, le temps de propagation devient : tp = 2*36 000/300 000 = 240 ms. vaut alors :

= 2*tp + tRR = 485 ms.


Soit n le nombre de messages couls avant quon nisse de recevoir la rponse. Nous trouvons : n = /T = 8,31, ce qui est une valeur suprieure la taille maximale de la fentre danticipation prvue dans le protocole HDLC. Il y aura un silence chaque fois que la fentre sera pleine. On pourrait amliorer le systme si le modulo de la numrotation tait plus grand ou si les messages envoys taient plus longs.

EXERCICE 10 RELATION ENTRE TAILLE DE FENTRE ET MODULO DE LA NUMROTATION


DES TRAMES

Dans un protocole de liaison de donnes, on suppose que chaque metteur peut utiliser au maximum Maxseq + 1 numros de squence diffrents, compts de 0 Maxseq. Expliquer pourquoi la taille de la fentre en mission doit rester infrieure Maxseq. Mettre en vidence un cas dambigut. Soit W la taille de la fentre. Si elle est gale la largeur N du champ de numrotation (correspondant au modulo du compteur), il y a confusion entre le message portant le numro k et le message de numro k+N, puisque les deux numros ont la mme congruence (ils ont le mme reste modulo N). Un cas dambigut est dcrit dans ce qui suit : Prenons une numrotation modulo 8. Les numros possibles sont donc 0, 1, 2 7 (Maxseq = 7). Si W = 8 = Maxseq + 1, une station X qui met plusieurs trames dont la premire est mal transmise recevra un acquittement RR0. Si, maintenant, elle envoie huit trames conscutives avec succs, elle recevra galement RR0 ! La station rceptrice va considrer que la trame 7 est un doublon de la trame 0 (puisque, pour elle, les deux trames portent le

Les protocoles de liaison de donnes 47

Exercices

mme numro). La station rceptrice va ignorer les huit trames quelle a pourtant reues correctement Nous pouvons conclure de cet exemple que la taille maximale de la fentre doit tre au plus gale Maxseq.

EXERCICE 11 PREMIRE

REPRSENTATION DUN CHANGE DE DONNES

SELON LE PROTOCOLE

HDLC

On considre un change de donnes bidirectionnel simultan entre deux stations A et B, gr par le protocole LAP-B (sous-ensemble de HDLC utilisant le rejet simple des erreurs). La liaison est dj initialise et aucun temporisateur nest arm. La station A a 5 trames dinformation transmettre la station B. Celle-ci en a 10 mettre vers A. On suppose que toutes les trames sont de mme longueur. Les deux stations commencent leur transmission des instants trs voisins lun de lautre. Donnez le schma des changes en indiquant le numro des trames mises et reues avec la nomenclature classique : I, N(S), N(R) pour une trame I portant le numro N(S) et acquittant les trames jusquau numro N(R) 1. On suppose de mme : Quil ny a aucune erreur de transmission sur les trames de A. Quil y a une erreur de transmission sur les sixime et septime trames de B. Que les trames sont correctement retransmises. Que le temps de propagation est quivalent au quart de la dure de transmission dune trame I. Que la taille de la fentre danticipation est maximale. Que les accuss de rception (dont la dure de transmission est gale au quart de la dure dune trame I) sont transmis ds que possible. Ils sont en tout cas inclus dans des trames I sil y en a.

Que se passerait-il si les trames de A taient dix fois plus longues que celles de B ? Le diagramme de la gure 2.15 dcrit la suite des trames changes par A et B. Figure 2.15
Diagramme dchange de trames entre A et B.
REJ5 RR2

I00

I10

I21

I32

I43

I00

I10

I21

I32

I43

I54

I65

I75

I55

I65

I75

I05

I15

Remarque
Il faut que A attende la huitime trame de B pour dtecter la rupture de squence. Cette trame a pu tre mise car le nombre de trames mises par B mais non encore acquittes est infrieur la taille de la fentre. Cela montre que la dernire trame I errone dune station ne peut pas tre signale par une trame REJ. Seule lexpiration de la temporisation dattente dacquittement de cette trame provoquera sa rmission.

48

Architecture des rseaux

Chapitre

B aurait le temps denvoyer toutes les trames de la fentre avant davoir reu la premire trame de A. Tout se passerait comme si les changes se droulaient lalternat (semiduplex).

EXERCICE 12 REJET SIMPLE ET REJET SLECTIF (DEUXIME REPRSENTATION)

DE TRAMES ERRONES

On considre deux stations A et B utilisant la version LAP-B du protocole HDLC. Dans cet exercice, nous supposons que la liaison de donnes est correctement initialise et que le transfert de donnes peut dmarrer ds que possible. La taille de la fentre danticipation est 2 ; lchange de donnes est full-duplex et les deux stations dmarrent simultanment le transfert de donnes. B na quune seule trame dinformations mettre et sa trame est sans erreur. A a 3 trames dinformations mettre. Nous allons envisager plusieurs scnarios pour le transfert de donnes de A : Dans le premier cas, la premire trame de A est errone la premire fois quelle est mise mais elle est retransmise correctement. Donnez le diagramme correspondant aux diffrentes trames changes entre A et B. Dans le deuxime cas, la deuxime trame de A est errone la premire fois quelle est mise mais elle est retransmise correctement. Donnez le diagramme correspondant aux diffrentes trames changes entre A et B. Dans le dernier cas, les deux dernires trames de A sont errones la premire fois quelles sont mises mais elles sont retransmises correctement. Donnez le diagramme correspondant aux diffrentes trames changes entre A et B. On considre maintenant que les deux stations A et B utilisant la version du protocole HDLC demandant la rmission des trames errones en utilisant le rejet slectif SREJ. En reprenant les mmes hypothses de travail qu la question a, donnez le diagramme correspondant aux diffrentes trames changes entre A et B. En reprenant les mmes hypothses de travail qu la question b, donnez le diagramme correspondant aux diffrentes trames changes entre A et B. En reprenant les mmes hypothses de travail qu la question c, donnez le diagramme correspondant aux diffrentes trames changes entre A et B. Les trames changes entre les stations sont reprsentes diffremment. Par convention, laxe des temps est vertical. Une che oriente reprsente une trame, dont la nature est donne lorigine de la che (ct metteur). Elle est prise en compte par le rcepteur linstant gur par la n de la che (le rcepteur ragit alors la trame quil vient de recevoir). la gure ci-aprs, les trames errones sont reprsentes par des ches et des informations de commande grises. La gure 2.16 donne les changes de trames entre A et B.

Les protocoles de liaison de donnes 49

Exercices

Figure 2.16
Diagramme des changes avec rejet simple des trames errones de la question a.

A I00 I10

B I00

REJ0 I01 I11 RR1

I21 RR3

La gure 2.17 donne les changes entre A et B pour la question b. Figure 2.17
Diagramme des changes en rponse la question b. La fentre dmission de A est ferme aprs lmission de I10 et B ne peut pas mettre de trame REJ. A peut mettre I21 ds quil a reu lacquittement de sa premire trame (par RR1)

A I00 I10

B I00

RR1

I21 REJ1 I11 I21 RR2 RR3

50

Architecture des rseaux

Chapitre

La gure 2.18 donne les changes entre A et B pour la question c. Figure 2.18
Diagramme de rponse la question c. A met la trame I21 ds que sa fentre est ouverte par la trame RR1. Comme cest la dernire trame I mettre, B ne peut pas la rejeter. Il faut donc que A attende lexpiration du temporisateur associ I11 pour quil puisse rmettre les deux dernires trames.

A I00 I11
Temporisation

B I00 RR1

I21 I11 I21 RR2 RR3

La gure 2.19 donne les changes entre A et B pour la question d. Figure 2.19
Diagramme de rponse la question d. B a dtect la rupture de squence et redemande la trame I00. Elle sera rmise sous la forme de I01 pour acquitter la trame reue de B. Lorsque I01 parvient correctement destination, B peut reconstituer la squence complte des trames mises et acquitter les deux premires. A met alors sa dernire trame.

I00 I00 I10

SREJ0 I01

RR2 I21 RR3

Les protocoles de liaison de donnes 51

Exercices

La gure 2.20 donne les changes entre A et B pour la question e. Figure 2.20
Diagramme de rponse la question e. Lorsque B a reu la trame I11, il peut acquitter toutes les trames quil a reues.

I00 I00 I10 RR1

I21

SREJ1 I11 RR3

La gure 2.21 donne les changes entre A et B pour la question f. Figure 2.21
Diagramme de rponse la question f. Les deux dernires trames de A tant errones, toutes les trames de sa fentre sont ignores. Il faut attendre lexpiration des temporisations associes aux trames pour les rmettre.

A I00 I10 I21


Temporisations associes aux trames I

B I00 RR1

I11 I21 RR2 RR3

La rponse cette question est donne par le diagramme de la gure 2.21. Nous y remarquons que, comme dans le cas du rejet simple, il faut attendre la reprise sur temporisation pour rmettre les deux dernires trames I.

52

Architecture des rseaux

Chapitre

Remarque
Nous constatons des similitudes et certaines diffrences entre les deux modes de rejet. Commenons par les similitudes : 1. Dans le rejet slectif comme dans le rejet simple, seules les trames I sont acquittes explicitement, soit par une trame RR ou RNR, soit par lincrmentation du compteur N(R) insr dans la trame I qui suit la bonne rception des trames. Cet acquittement valide toutes les trames I jusqu la trame de numro N(R) 1 incluse. 2. Une trame I errone ne se dtecte qua posteriori : par exemple, cest seulement parce que le rcepteur a reu la trame I10 quelle peut dtecter que la trame I00 tait en erreur. Ainsi, une trame SREJ, comme une trame REJ, ne sera mise quaprs la premire trame I reue correctement mais qui nest pas en squence. 3. Le compteur de trames reues correctes est incrment aprs que le rcepteur a vri que la trame respecte deux conditions : elle est bonne (format et FCS corrects) et elle est en squence (la valeur N(S) de la trame reue est gale la valeur N(S) de la trame prcdente augmente dune unit). 4. Dans les deux techniques de rejet, la valeur courante de N(R) signie que toutes les trames I jusqu la valeur N(R) 1 sont bonnes et en squence. En ce sens, on peut dire que N(R) compte, modulo 8, le nombre de trames I bien reues. Examinons maintenant les diffrences : 1. La manire de renvoyer les trames errones est trs diffrente dans les deux modes : dans le rejet slectif, on ne renvoie une trame I que si le rcepteur de la trame le demande explicitement par une trame SREJ (ou par expiration de la temporisation associe si cette trame est la dernire de la srie). La squence des trames mises va ainsi dpendre du succs de la rmission des trames prcdentes. Lincrmentation du compteur N(R) dpend de deux conditions : a) la trame I reue est correcte, b) on peut reconstituer la squence des trames I en chanant toutes celles dj reues correctement. Par exemple, la gure 2.19, aprs rmission de la trame I00 (sous la forme I01), lmetteur continue lmission avec la trame I21 tant que la fentre danticipation nest pas pleine, alors quavec le rejet simple il doit rmettre toutes les trames I partir de la trame errone. 2. Le rejet slectif dune trame signie seulement que le rcepteur a trouv au moins une trame I qui nest pas en squence, ce qui lui permet denvoyer une trame SREJ. Par exemple, si plusieurs trames I successives sont errones, le rcepteur doit envoyer une trame SREJ pour chaque trame I errone. Ainsi, tant que la trame I00 nest pas correctement reue, le compteur N(R) ne peut sincrmenter. Ds que la trame I01 est reue, le rcepteur peut acquitter les trames I01, I11 et I21 comme on peut le constater avec lenvoi de la trame RR3.

EXERCICE 13 AUTRE

EXEMPLE DE REJET DES TRAMES ERRONES

Donnez le diagramme des trames changes entre les deux stations avec le mode de rejet simple (REJ). Donnez le diagramme des trames changes entre les deux stations lorsquelles utilisent le mode de rejet slectif (SREJ au lieu de REJ).

Les protocoles de liaison de donnes 53

Exercices

Soit deux stations mettant en bidirectionnel simultan 4 trames I conscutives et utilisant une procdure de type HDLC. On suppose que linitialisation de la liaison de donnes a t effectue et que le temps de propagation et dacquittement des trames est ngligeable. On suppose de mme que la taille de la fentre est sufsante pour ne pas bloquer les processus dmission. Les trames numrotes 0 et 2 sont errones lorsquelles sont mises les deux premires fois dans les deux sens. Elles sont rmises correctement la fois suivante.

Le diagramme de la gure 2.22 montre les changes de trames selon le protocole LAP-B. Figure 2.22
change de trames selon le protocole LAP-B.

A I00 I10 I20 REJ0 I00 I10 REJ0 I20 I00 I11 I22

B I00 I10 I20 REJ0 I00 I10 I20 REJ0 I00 I10 I21 I32

I33 RR3 RR4 RR4

Le diagramme de la gure 2.23 montre les changes de trames avec rejet slectif des trames errones. Lchange peut se dcomposer en quatre phases : (1) Envoi des premires trames I par les deux quipements. (2) On dtecte la rupture de squence ; A et B demandent la rmission des trames 0, qui sont nouveau mal transmises. (3) 0 et 1 sont maintenant correctes ; A et B redemandent les trames no 2, encore errones. (4) Toutes les trames sont maintenant correctes. Elles sont acquittes par RR4.

54

Architecture des rseaux

Chapitre

Figure 2.23
Diagramme dchanges de trames avec rejet slectif.

A I00 I10 I20 SREJ0 I30 I00 SREJ0 I00

B I00 I10 I20 SREJ0 I30 I00 SREJ0 I00 SREJ2 I22 SREJ2 I22 RR4 (4) (2) (1)

SREJ2 I22

(3)

SREJ2 I22

EXERCICE 14 CAS DQUIPEMENTS

AYANT DES DBITS BINAIRES DIFFRENTS

Une banque gre les liaisons de donnes de ses automates bancaires grce au protocole HDLC avec rejet simple8. Chaque automate possde une liaison de donnes ayant les caractristiques suivantes : dbit binaire : 14 400 bit/s ; fentre danticipation gale 4. Le serveur de la banque utilise une liaison de donnes congure comme suit : dbit binaire : 2,048 Mbit/s ; fentre danticipation gale 7. Les automates bancaires peuvent-ils savoir que les paramtres de connexion sont diffrents aux deux extrmits de la liaison ? O se fait ladaptation entre les services utiliss aux deux extrmits ?

8. La banque utilise en fait un GFA (groupe ferm dabonns), qui permet un groupe dabonns dutiliser linfrastructure dun rseau public de donnes comme sils se trouvaient au sein dun rseau priv.

Les protocoles de liaison de donnes 55

Exercices

(suite)

Lintroduction de la carte bancaire dun client lance une opration bancaire, qui se droule comme suit : aprs la saisie des donnes du client, lautomate envoie une trame I dcrivant lopration demande au serveur de la banque. Celui-ci, aprs vrication des donnes envoyes par lautomate, lance lapplication de gestion du compte client, puis lapplication fabrique un accus de rception et lenvoie lautomate dans une trame I. Lautomate pourra alors imprimer le ticket fournir au client (ou afcher le rsultat de lopration sur lcran de lautomate). Dcrivez lchange de trames entre lautomate bancaire et son point daccs au rseau, en supposant que la transmission des donnes seffectue avec une erreur de transmission dans la premire trame I mise dans chaque sens (on ne sintresse pas la gestion du bit P/F). Cette fois, le traitement des erreurs de transmission se fait par rejet slectif (SREJ) des trames (nous nutilisons plus le protocole LAP-B). En prenant les mmes hypothses que prcdemment, donnez le diagramme dcrivant les changes entre lautomate et son point daccs au rseau. Non, les automates bancaires pas plus que le serveur ne peuvent le savoir, car ils ont choisi leurs paramtres de connexion en fonction de leurs propres besoins et possibilits. Ladaptation entre les paramtres de lquipement local et ceux de lquipement distant se fait donc dans le nud daccs au rseau sur lequel chaque quipement est connect. Les trames changes sont donnes la gure 2.24. Une seule trame I suft pour contenir les informations du client. Puisquelle est errone, le rcepteur ne peut ni lacquitter, ni la rejeter puisquelle nest pas suivie dune trame I hors squence. Cest grce la temporisation associe la trame que lmetteur constate quelle na pas t acquitte. Il va donc la rmettre9.

Figure 2.24
Diagramme des trames changes entre lautomate et son point daccs. 1 : trame dinformations contenant les informations du client. 2 : trame dinformations contenant les rsultats de transaction afcher ou imprimer.

Temporisation I00 (1)

I00 RR1 (2) I11 Temporisation I11

RR1

Les hypothses de travail tant les mmes qu la question prcdente, la reprise sur erreur se fera de la mme faon, puisquon ne peut pas utiliser de trame de rejet Les changes de donnes seront identiques ceux de la gure 2.24.

9. En fait, la trame sera rmise avec le bit P = 1 et lacquittement portera le bit F = 1.

56

Architecture des rseaux

Chapitre

Les concepts gnraux des rseaux


1. Infrastructure des rseaux de communication ....................... 58 2. Notion dadressage dans les rseaux .............................. 67 3. Notion de service dans un rseau commutation ........................ 68 4. Contrles internes dans un rseau 72

Problmes et exercices 1. Choix dun service rseau ........ 76 2. Affectation des numros de voie logique aux circuits virtuels ...... 76 3. Ouverture de plusieurs circuits virtuels entre quipements terminaux .... 77 4. Multiplexage de circuits virtuels sur la mme liaison de donnes ...... 78 5. Calcul du temps de transmission dans un rseau commutation . 79 6. Transfert de donnes sur circuit virtuel ..................................... 81 7. Transfert de donnes sur plusieurs circuits virtuels ......................... 85 8. Transfert de donnes sur des circuits virtuels avec acquittements locaux et acquittements de bout en bout ................................... 87

Loprateur dun rseau comptant un grand nombre dabonns doit offrir une garantie de bon fonctionnement, tout en optimisant les cots dvolution et de maintenance du rseau. Il lui faut donc exploiter une infrastructure de rseau conue pour optimiser les ressources mises en uvre. Pour cela, on utilise principalement deux techniques de commutation : la commutation de circuits et la commutation de paquets. La premire, utilise pour les communications tlphoniques, rserve des ressources physiques pour chaque couple dquipements dsirant communiquer. La seconde est la plus utilise pour les changes de donnes informatiques. Pour assurer le transfert des donnes, deux services rseau sont possibles : lun, volu, en mode connexion et lautre, plus simple, sans connexion. Le premier, normalis sur le plan international, est baptis circuit virtuel. Il transporte des units de donnes appeles paquets. Le second, transportant des datagrammes, sert lchelle mondiale dans Internet. Des fonctions de contrle interne du rseau assurent la meilleure gestion des ressources disponibles, pour en garantir le meilleur usage possible aux utilisateurs.
57

Infrastructure des rseaux de communication


Jusqu prsent, nous avons examin la manire dont les deux extrmits dune liaison de donnes schangent les donnes. Pour connecter un grand nombre dutilisateurs, il devient trs vite irraliste de les interconnecter deux par deux. Il faut donc gnraliser lchange entre deux quipements un ensemble de N quipements. Le terme gnrique dquipements terminaux dsigne aussi bien des ordinateurs que de simples tlphones. Nous tudions dans la suite les matriels et les procdures mettre en place pour permettre un dialogue entre deux quipements quelconques de cet ensemble. En effet, comme le montre la gure 3.1, pour permettre toutes les communications au sein dun ensemble de N quipements terminaux, il faudrait N(N 1)/2 liaisons ; chaque quipement devrait alors grer N 1 liaisons. Concrtement, pour faire dialoguer directement 100 stations, il faudrait environ 5 000 liaisons ! Cela montre limpossibilit denvisager des liaisons distinctes et exclusives entre deux quipements terminaux connects un grand rseau. Il est donc ncessaire de fdrer les moyens de communication et de les partager entre tous les quipements terminaux pour constituer un rseau de communication. Ce terme possde diffrentes signications suivant le contexte : il peut comprendre lensemble des ressources (les quipements terminaux inclus) ou ne dsigner que le rseau de communication, parfois encore appel rseau de transport. Dans ce chapitre, le rseau de communication nenglobe pas les quipements terminaux. Parmi les quipements terminaux, on distingue habituellement deux catgories : les ETTD (quipement terminal de traitement de donnes) et les ETCD (quipement de terminaison du circuit de donnes). Les ETTD sont les quipements dextrmit abonns au rseau de communication (un ordinateur, une imprimante, un fax) alors que les ETCD servent de point dentre dans le rseau aux ETTD. Nous allons utiliser galement le terme de nud daccs pour dsigner les ETCD.

Dnition
Un rseau de communication est constitu dun ensemble de liaisons de donnes et de nuds. Il constitue lensemble des ressources mises la disposition des quipements terminaux pour changer des informations.

Figure 3.1
Connexions directes entre N utilisateurs : il y a N(N 1)/2 liaisons.

58

Architecture des rseaux

Chapitre

1.1 COMMUNICATIONS

DANS LES RSEAUX

La prsence dune multitude dquipements terminaux oblige dnir un systme didentication cohrent au sein du rseau pour les diffrencier : cest la fonction dadressage. La fonction de routage permet dacheminer une information vers un destinataire dans tout le rseau de communication, selon son adresse (voir gure 3.2). Figure 3.2
Structure dun rseau de communication.
A B quipement terminal C RSEAU DE COMMUNICATION (SOUS-RSEAU)

Accs au rseau (normalis)

Quand un oprateur possde un rseau de communication, il met cette ressource la disposition de tiers, moyennant rtribution (cest le cas des grands rseaux : France Tlcom grait entirement le rseau tlphonique franais jusquen 1998). Lorganisation du rseau est alors du ressort exclusif de loprateur. Son accs est normalis, tant pour les caractristiques mcaniques et lectriques que pour les procdures de dialogue. Il est indpendant de la structure interne du rseau : par exemple, dans le cas des rseaux radiomobiles, il se fait par transmission sur la voie hertzienne alors que les transmissions au sein du rseau se font sur des liaisons laires. Les rseaux locaux dentreprise, appels LAN (Local Area Network), sont gnralement la proprit exclusive de lutilisateur. Celui-ci gre et maintient alors entirement tous les quipements et les moyens de communication. Les LAN accueillent plusieurs centaines dquipements sur une distance de quelques kilomtres. La ressource partage entre les quipements est le support de transmission qui assure la diffusion (broadcast) : tous les quipements sont relis au support commun et tout message mis est reu par lensemble des quipements. Cette caractristique ncessite des architectures spciques qui seront traites au chapitre 5.

1.2 RSEAUX

COMMUTATION
Les rseaux grande distance, appels aussi WAN (Wide Area Network), relient plusieurs centaines de milliers, voire des millions dquipements terminaux sur un territoire national ou linternational. Il nest donc pas possible de partager le mme support de transmission, ni de raccorder directement deux abonns dsirant communiquer. On cre une structure de communication qui, en mettant bout bout des tronons de lignes raccords par un ensemble de commutateurs, ralise une connexion entre deux abonns dun rseau ; on parle alors de rseau commutation. De ce fait, un rseau commutation fournit lquivalent dune liaison de donnes point point entre deux quipements terminaux quelconques abonns au rseau. Des commutateurs, qui ont pour fonction de concentrer, dclater et de rediriger les informations, relient les quipements terminaux. Ils communiquent entre eux par des circuits point point, qui constituent les artres de communication du rseau. On considre un

Les concepts gnraux des rseaux 59

rseau de communication comme un graphe, o les nuds reprsentent les commutateurs et les arcs gurent les circuits (quelquefois appels canaux, jonctions, lignes de transmission ou mme liaisons, selon les cas). La gure 3.3 montre la structure dun rseau commutation. Figure 3.3
Structure gnrale dun rseau commutation : commutateurs et circuits.
A B C

E Circuit Accs au rseau Commutateur

La topologie du rseau dnit la faon de relier les diffrents commutateurs. Dans une topologie en toile (voir gure 3.4a), un mme commutateur central relie lensemble des commutateurs. Certaines fonctions, comme le routage, sont alors trs simples. Un tel rseau est cependant trs fragile car il dpend essentiellement du bon fonctionnement du commutateur central. La gnralisation du cas prcdent, avec introduction dune hirarchie, donne la topologie en arbre de la gure 3.4b : chaque commutateur est reli un ensemble de commutateurs du niveau infrieur. Dans les topologies en arbre ou en toile, il ny a toujours quun chemin possible entre deux commutateurs : toute rupture de liaison entre eux empche le dialogue entre certains quipements terminaux. Dans la topologie compltement maille de la gure 3.4c, chaque commutateur est reli tous les autres. On atteint alors un haut niveau de scurit, au prix dune augmentation considrable du nombre de liaisons et, par consquent, du cot du rseau. Dans la plupart des grands rseaux, la solution choisie est un mlange des solutions prcdentes : le rseau est hirarchis selon une topologie en arbre et utilise un certain degr de maillage. La gure 3.4d montre un exemple de rseau maill. Figure 3.4
Diffrentes topologies dun rseau commutation : un maillage plus ou moins dense.

a) Topologie en toile

b) Topologie en arbre

c) Topologie compltement maille

d) Topologie maille

60

Architecture des rseaux

Chapitre

Remarque
La fonction de routage prend une importance particulire dans un rseau commutation puisquen rgle gnrale il ny a pas de lien direct entre quipements terminaux, mais une multitude de chemins possibles qui traversent plusieurs commutateurs et empruntent plusieurs liaisons.

Commutation de circuits
Dans les rseaux commutation de circuits, de multiples supports de transmission relient les diffrents commutateurs. changer des informations entre deux quipements terminaux ncessite de dterminer un chemin dans le rseau et de rserver un support de transmission entre chaque paire de commutateurs situs sur ce chemin. Chaque commutateur reoit les signaux dune liaison et les retransmet sur la liaison vers le commutateur suivant. Le rseau tlphonique est lexemple le plus connu de rseau commutation de circuits. En tlphonie, le mot circuit dsigne une liaison entre deux commutateurs. Tout dialogue entre quipements terminaux se dcompose en trois phases. La premire, ltablissement du circuit, rserve lensemble des circuits ncessaires lintrieur du rseau. Suit la phase classique de transfert des informations. Enn, la phase de libration rend les diffrents circuits utiliss disponibles pour les communications ultrieures. La libration se fait la demande de lun des quipements terminaux (ou par le rseau sil dtecte quun des quipements du chemin est en panne). Tant que la libration na pas eu lieu, les circuits restent attribus aux mmes correspondants, mme sils neffectuent aucun transfert dinformations sur une longue dure. Ce type de commutation prsente linconvnient de monopoliser les circuits entre commutateurs pendant toute la dure du dialogue, mme pendant les priodes de silence. Il est donc ncessaire de multiplier les circuits entre commutateurs ; on parle dans ce cas de faisceaux (trunks). De plus, la commutation de circuits requiert la disponibilit simultane des deux quipements terminaux pour tout dialogue. En revanche, elle prsente lavantage dtre assez simple et peut semployer sur un rseau analogique ou numrique. Dans le cas dun rseau numrique, la mmoire ncessaire dans les commutateurs est rduite. La gure 3.5 dcrit le principe de fonctionnement dun rseau commutation de circuits. Nous voyons que la communication entre A et D traverse diffrents commutateurs et emprunte plusieurs circuits. Les deux quipements terminaux disposent de lensemble de ces ressources pour la dure de leur communication. Figure 3.5
Principe de la commutation de circuits : rservation de ressources physiques pour la dure de la communication.
E A Commutateur

B C

Mise en relation temporaire

D Circuits

Les concepts gnraux des rseaux 61

Commutation de messages
La commutation de messages est la premire technique imagine pour les rseaux transportant des donnes informatiques. Un message se dnit comme une suite de donnes binaires formant un tout cohrent pour les utilisateurs (une page de texte, un chier son, une image xe ou anime). Un utilisateur qui veut mettre un message lenvoie au commutateur en prcisant ladresse du destinataire. Le commutateur attend la rception complte du message, le stocke, analyse ladresse du destinataire puis met le message vers le commutateur voisin adquat ou, le cas chant, vers lquipement terminal (technique store and forward). Laiguillage du message seffectue en fonction des informations de contrle. Le commutateur conserve le message si la liaison est occupe : chaque commutateur se comporte donc comme une mmoire tampon. Le message transite ainsi travers le rseau par missions successives entre les commutateurs jusquau destinataire. La gure 3.6 montre linfrastructure dun rseau commutation de messages : A, B, C, D et E sont des abonns au rseau qui changent des messages et les carrs reprsentent les commutateurs. Dans la commutation de messages, les liaisons ne sont utilises que pour la dure de transmission entre les deux quipements adjacents. Chaque commutateur doit tre capable de stocker le message entier. Figure 3.6
Rseau commutation de messages : les liaisons ne sont utilises que pour la dure de transmission entre quipements adjacents.
A B

Comme un commutateur gre simultanment plusieurs changes, la taille de la mmoire ncessaire la gestion des messages est importante et entrane des problmes dallocation complexes. De plus, les liaisons entre commutateurs ne sont pas dune abilit totale. Des protocoles de liaison de donnes sont ncessaires entre chaque paire dquipements. Les commutateurs grent autant de liaisons de donnes que dquipements auxquels ils sont relis. Le dlai de transmission dans le rseau est fonction du nombre de commutateurs traverss et de la longueur du message. Remarquons que la probabilit dune erreur sur un message augmente avec sa longueur : la transmission de messages longs dans le rseau est trs pnalisante. Une amlioration de cette technique rduit la taille des messages envoys et conduit la commutation de paquets.

Commutation de paquets
Dans la commutation de paquets, on dcoupe dabord le message en plusieurs morceaux, appels paquets, avant de lenvoyer dans le rseau : cela sappelle la fragmentation. Comme dans un rseau commutation de messages, les commutateurs utilisent des informations de contrle pour acheminer correctement les paquets depuis lexpditeur jusquau destinataire.

62

Architecture des rseaux

Chapitre

Loprateur du rseau (ou des normes internationales) dnit le format de len-tte et la taille maximale dun paquet. Le destinataire doit attendre la rception de tous les paquets pour reconstituer le message et le traiter : cette opration est le rassemblage. Un paquet ne forme donc pas un tout logique pour lquipement terminal : ce nest quun lment dinformation , achemin dans le rseau par les rmissions successives entre commutateurs. Sa petite taille rduit le dlai global dacheminement des messages. Cependant, elle accrot la complexit de sa gestion dans les commutateurs : le dimensionnement de la mmoire des commutateurs est un lment important dans la dtermination de la capacit et les performances dun rseau commutation de paquets. Si la mmoire dun commutateur est entirement utilise, celui-ci nest plus en mesure de recevoir de nouveaux paquets. Il peut, dans certains cas, dtruire des paquets et dgrader les performances du rseau. Lensemble des techniques mises en uvre pour viter la saturation de la mmoire des commutateurs sappelle le contrle de congestion. (La description des techniques de contrle de congestion dpasse le cadre de cet ouvrage.) Comme pour la commutation de messages, une paire dquipements ne monopolise plus une liaison entre commutateurs : celle-ci supporte la transmission de paquets de multiples utilisateurs. Si le dbit de la liaison est suprieur au ux transmis par lensemble des utilisateurs, elle peut supporter de plusieurs dialogues simultans tout en donnant chaque utilisateur limpression dtre seul sur le rseau. Ainsi, mme si le ux gnr par un utilisateur donn augmente subitement, limpact sera faible sur le ux global dans le rseau. La gure 3.7 montre comment un message constitu de cinq paquets est transmis dun utilisateur lautre. Figure 3.7
Rseau commutation de paquets : il peut y avoir simultanment transmission de plusieurs paquets dun mme message sur diffrentes liaisons du rseau.
A 5 4 3 C 2 1

Le message mis par A est dcoup en 5 paquets, achemins un par un par le rseau.

Remarque
La mthode pour structurer les quipements et les services est hirarchique : chaque extrmit dun circuit on trouve une succession dentits assurant un service donn pour une entit de niveau suprieur. une extrmit de la liaison de donnes, lentit de liaison assure un dialogue able avec lentit de mme type situe lautre extrmit. Une entit de niveau suprieur, lentit de rseau, assure le routage des paquets travers le rseau. Elle utilise pour cela lentit de liaison comme une bote noire lui fournissant un service. Elle est la seule interprter et exploiter len-tte pour acheminer les paquets jusqu leur destination. Lentit de liaison de donnes considre le paquet comme llment transmettre : par exemple, elle linsre dans le champ dinformations de la trame gre selon le protocole HDLC. Ce procd sappelle lencapsulation.

Les concepts gnraux des rseaux 63

La gure 3.8 montre la mise en uvre dune succession de liaisons de donnes, et la gure 3.9, le dcoupage dun message en paquets et leur intgration dans plusieurs trames. Figure 3.8
Mise en uvre des liaisons de donnes dans un rseau commutation : des successions de liaisons de donnes relient toutes les paires dquipements.
E A Liaison de donnes B

D Liaison de donnes

Une succession de liaisons de donnes est mise en uvre entre toutes les paires d'quipements pour acheminer les donnes de l'expditeur jusqu'au destinataire.

Figure 3.9
Dcoupage dun message en trois paquets insrs dans trois trames successives.
Message

Donnes de longueur quelconque

Paquet

ENTTE

Segment 1

ENTTE

Segment 2

ENTTE

Segment 3

Trame

F A C

FCS

Le message est coup en trois morceaux : un en-tte s'ajoute chacun pour constituer un paquet, transmis dans le champ Information d'une trame.

Commutation de cellules
Une nouvelle technique de commutation merge dans les annes 1990, tout particulirement pour le RNIS (rseau numrique intgration de services) large bande. Il sagit dune commutation hybride, utilisant une technique dite ATM (Asynchronous Transfer Mode). Les informations sont toutes dcoupes en petits paquets de taille xe, les cellules, qui optimisent la gestion interne du rseau et de ses commutateurs. Chaque cellule contient 53 octets : un en-tte de 5 octets suivi de 48 octets dinformations utiles. Lobjectif est de transmettre en temps rel sur le mme rseau des donnes, de la parole et des images. Les problmes poss par les mthodes de commutation prcdentes sont multiples : trop faible capacit des rseaux, faibles vitesses de transmission, rigidit des services offerts, interconnexion difcile entre diffrents types de rseaux, cots levs des solutions performantes, incapacit de transmettre paroles et images en temps rel, qualit de service insufsante. ATM est une solution lintgration de services, elle utilise la fois la commutation de circuits avec une notion de rservation de ressources et celle de commutation de paquets avec le dcoupage des informations en cellules.

64

Architecture des rseaux

Chapitre

La technique ATM exploite le fait que les supports sont des bres optiques, donc des supports de trs bonne qualit : elle nassure pas la dtection des erreurs sur les donnes et rduit les contrles la seule vrication de len-tte des cellules. Pour une communication donne, les cellules passent toutes par le mme chemin virtuel et leur traitement, effectu dans les commutateurs du rseau, est rduit au strict minimum. ATM offre ainsi une excellente qualit de service et apporte un confort dutilisation tel, que la qualit des liaisons tablies la demande est la mme que celle des liaisons permanentes. Par ailleurs, les dlais de traverse du rseau sont garantis trs faibles (commutateurs puissants et dimensionns pour le traitement de cellules de taille xe). ATM permet la mise en uvre dapplications dimages avec compression en temps rel et constitue lunique technologie pour le multimdia haut dbit. On la rencontre aujourdhui dans le cur des rseaux doprateurs de tlcommunications. Son cot trs lev a frein son dploiement et les technologies Gigabit Ethernet (voir chapitre 5) sont une alternative intressante pour les rseaux locaux.

1.3 OPTIMISATION

DES RESSOURCES DE TRANSMISSION

LE MULTIPLEXAGE

La gestion des ressources dun grand rseau est une tche lourde qui ncessite des investissements considrables de la part de loprateur. Ce dernier a donc le souci doptimiser son infrastructure, an doffrir moindre cot un service satisfaisant ses clients. En plus des techniques de commutation vues aux sections prcdentes, il utilise des techniques de multiplexage pour minimiser le nombre dartres ncessaires. Lorsque la bande passante dun support est nettement plus large que le spectre du signal transmettre, il est intressant dutiliser ce support pour transmettre simultanment plusieurs communications ; on parle alors de multiplexage. Le dmultiplexage consiste reconstituer et redistribuer les diffrents signaux sur les bonnes artres partir du signal multiplex. Deux techniques principales fonctionnent : le multiplexage frquentiel ou spatial et le multiplexage temporel.

Multiplexage frquentiel ou spatial


Le multiplexage frquentiel ou spatial sutilise dans les transmissions analogiques comme dans les transmissions numriques. Il consiste transposer en frquence en utilisant une technique de modulation les n signaux dentre, chacun avec une frquence porteuse diffrente, en les juxtaposant dans la bande des frquences utilisables. On parle alors dAMRF (accs multiple rpartition en frquence) ou de FDMA (Frequency Division Multiple Access). La gure 3.10 montre comment multiplexer n voies utilisant la mme bande passante sur un support large bande. Figure 3.10
Multiplexage en frquence : juxtaposition de signaux dans la bande des frquences utilisables.
Voie 1

Voie 2 E f1 Voie n f2 fn

Les concepts gnraux des rseaux 65

Le multiplexage frquentiel sutilise aussi sur bre optique ; on parle alors de multiplexage en longueur dondes. Les oprations de multiplexage et de dmultiplexage se font de manire totalement optique, en jouant sur les phnomnes de rfraction, qui dpendent des longueurs donde : un dmultiplexeur opre en fait comme un prisme.

Multiplexage temporel
Le multiplexage temporel, appel AMRT (accs multiple rpartition dans le temps) ou TDMA (Time Division Multiple Access), sutilise dans les transmissions numriques. Si on considre n signaux numriques transports sur n voies, le multiplexage temporel revient transmettre sur un seul support (dit liaison multiplex) et dans une mme trame un lment dinformation de chaque voie dentre (un bit ou un caractre), pendant un intervalle de temps IT. Lintervalle de temps choisi dpend du dbit binaire de la liaison multiplex. Pour constituer une trame multiplex, on place dans le premier IT llment dinformation de la voie 1, llment dinformation de la voie 2 dans lIT suivant, et ainsi de suite jusqu la voie n. Ce cycle est rpt indniment dans le temps. Si le dbit binaire des voies dentre vaut b bit/s, alors le dbit de la liaison multiplex est de n*b bit/s. Pour dmultiplexer correctement, il faut, en plus des donnes des n voies, transmettre des lments de synchronisation an de raffecter le bon lment dinformation la bonne voie. LAMRT sutilise dans le rseau tlphonique pour la transmission des communications numrises. Un signal 64 kbit/s numrise la parole humaine qui se trouve ainsi transmise raison dun octet toutes les 125 s et code en bande de base. En Europe, on multiplexe temporellement 30 communications tlphoniques pour constituer un groupe primaire ou canal E1. La trame multiplex contient 30 IT, chacun contenant llment dinformation dune communication (ici un octet), auxquels il faut ajouter llment de synchronisation (dans lIT 0) et un lment de signalisation (en gnral dans lIT 16). Pour transporter ces 30 communications, il faut donc un total de 32 IT, soit un dbit brut de : 32*64 = 2 048 kbit/s. On parle alors de MIC (modulation par impulsions codes) 30 voies (voir gure 3.11). Figure 3.11
Multiplexage temporel de 30 voies tlphoniques : juxtaposition dans le temps, octet par octet.
Voie 1 Voie 2 Voie 30 Marque le dbut de la trame Les voies 1 15 sont places dans les IT 1 15 ; les voies 16 30 dans les IT 17 31. 125 s IT0 Multiplexage Trame TDMA, dure=125 s IT1 IT2 2,048 Mbit/s IT31

Il est possible de multiplexer des signaux dj multiplexs si le support de transmission peut transmettre des dbits encore plus levs. Dans le cadre du rseau tlphonique europen, la hirarchie de multiplexage dnit diffrents niveaux de multiplexage, par multiples de 2,048 Mbit/s. Les tats-Unis et le Japon emploient une hirarchie de multiplexage diffrente.

Remarque
Le multiplexage de n signaux, occupant chacun une largeur de bande B, gnre un signal de largeur suprieure ou gale n*B, pour le multiplexage spatial comme pour le multiplexage temporel. Si on ne ralise aucune conomie sur la bande passante consomme, on minimise le matriel ncessaire au transport des donnes dans le rseau (utilisation dun seul support de transmission au lieu de n). Cette conomie est intressante pour loprateur car le cot dinstallation et de maintenance dun support ne dpend pas de son dbit mais du lieu de son implantation (en zone urbaine ou rurale) : le prix est le mme pour installer des artres bande passante faible ou large, pour une zone donne.

66

Architecture des rseaux

Chapitre

Notion dadressage dans les rseaux


Si deux quipements relis directement lun lautre par une liaison de donnes nont pas de problme didentication du correspondant, il nen va pas de mme pour les abonns des grands rseaux : chacun deux doit possder une identit unique, an que les commutateurs acheminent les donnes au bon destinataire. Nous avons remarqu prcdemment quil existait une structure hirarchique des quipements : la communication utilise un circuit de donnes, contrl par le protocole de liaison, sur lequel sont vhiculs les messages dcoups en paquets. Une entit distincte gre chaque niveau. Il faut, pour chaque niveau, une identication unique de la ressource gre ; on utilise donc plusieurs niveaux dadressage. Selon ses besoins, chaque niveau dadressage doit faire la correspondance entre ladresse quil utilise et les adresses manipules par les niveaux qui lui sont immdiatement infrieurs ou suprieurs. On distingue principalement trois types dadresses : physique, logique et symbolique. Prsentons-les successivement.

2.1 ADRESSE

PHYSIQUE
Ladresse physique est ladresse de lquipement situ au plus prs du support de transmission. Elle identie linterface srie utilise pour lmission et la rception des donnes. Elle distingue, parmi plusieurs interfaces srie disponibles, celle vers laquelle mettre ou depuis laquelle sont reues des donnes. Elle a une signication purement locale lquipement. En gnral, les abonns dun rseau commutation nutilisent gure ladresse physique, puisquune seule liaison point point les relie au commutateur dentre dans le rseau. En revanche, ladresse physique est indispensable aux commutateurs qui doivent dcider sur quelle liaison acheminer les donnes dun abonn ou dun commutateur lautre. Ladresse physique est utile dans les rseaux locaux. Par exemple, on identie avec elle la carte Ethernet qui sert daccs au support commun du rseau local. Nous y reviendrons au chapitre 5.

2.2 ADRESSE

LOGIQUE
Pour atteindre un utilisateur quelconque depuis nimporte quel point du rseau, il ne suft pas de distinguer localement les diffrentes liaisons disponibles. Il faut que les commutateurs puissent abouter les liaisons emprunter pour relier la source la destination. Pour cela, ils doivent identier un utilisateur parmi tous les usagers du rseau : chaque utilisateur doit donc possder une adresse unique, connue de tous les commutateurs traverss, partir de laquelle les points daccs au rseau organisent le routage pour acheminer les donnes le plus efcacement possible. Ladresse utilise doit tre unique et dpend de la nature du rseau de transport et du mode dacheminement des donnes : cest ladresse logique. Elle est dtermine par loprateur du rseau ou par un organisme international. Ladresse IP utilise dans Internet en est lexemple le plus connu. Nous y reviendrons lors du chapitre 6, consacr au rseau Internet et son protocole IP.

2.3 ADRESSE

SYMBOLIQUE
Ladresse logique identie tous les quipements du rseau. Un utilisateur peu familier des contraintes imposes par la structure du rseau peut avoir des difcults mmoriser

Les concepts gnraux des rseaux 67

cette information. Pour faciliter son accs au rseau, il se choisit (ou ladministrateur du rseau choisit pour lui) une adresse symbolique plus facilement comprhensible et mmorisable quune adresse logique1. Ainsi par exemple, plutt que de se souvenir de ladresse IP : 195.122.1.25, il retiendra plus facilement ladresse symbolique : prenom.nom@mon_fournisseur.mon_pays Tout comme ladresse logique, elle doit tre unique pour le rseau. Des organismes internationaux ont propos une structuration des adresses symboliques, pour garantir leur unicit. Le logiciel grant la connexion rseau de lordinateur au fournisseur daccs Internet doit apparier adresse logique et adresse symbolique et mmoriser ces informations.

Remarque
On pourrait faire un parallle entre adresse symbolique/nom de personne et adresse IP/numro de tlphone. Une personne, identie par son nom, est utilisatrice du rseau tlphonique qui lidentie par son numro de tlphone. Un service dannuaire fait la correspondance entre le nom de la personne et son numro de tlphone. La comparaison est limite dans la mesure o les noms de personnes ne sont pas uniques !

Notion de service dans un rseau commutation


On distingue deux types de services rseau : le service sans connexion et le service en mode connect, encore appel service orient connexion. Le premier type est utilis dans Internet ; le second est propos dans les rseaux publics de donnes respectant les normes X.25 de lITU. Ces services correspondent deux faons dexploiter la commutation de paquets. Dans un service sans connexion, lexpditeur traite chaque paquet comme une unit de donnes totalement indpendante des autres. Un paquet doit donc inclure ladresse complte du destinataire, ventuellement celle de lexpditeur. tout moment, lquipement terminal peut fournir au rseau un paquet transmettre sans procdure pralable. Un tel service est par exemple celui fourni par le rseau postal : une lettre peut tre poste tout moment. La gure 3.12 donne un exemple de service rseau sans connexion.

Figure 3.12
Service rseau sans connexion : un paquet peut tre mis tout moment, indpendamment des autres paquets et sans se soucier de ltat du destinataire.

C
RSEAU

1. Dautant que, de plus en plus, les adresses IP attribues sont des adresses dynamiques, valables pour une dure dtermine (voir les dtails au chapitre 6).

68

Architecture des rseaux

Chapitre

Dans un service en mode connect ou orient connexion, lutilisateur doit dabord indiquer avec qui il veut dialoguer. Pour cela, une procdure, appele ouverture de connexion, tablit un lien logique entre les deux quipements terminaux et constitue un tube de dialogue, appel circuit virtuel. La connexion cre nest active que si le destinataire accepte la communication. Ensuite, le rseau transmet tous les paquets de donnes jusquau destinataire, en se rfrant au circuit virtuel prcdemment tabli (lmetteur na plus besoin de prciser ladresse du destinataire dans chaque paquet). Lorsque le dialogue se termine, un des utilisateurs indique au rseau quil souhaite librer la connexion. Pour dialoguer avec un autre quipement (ou le mme), il faut dclencher une nouvelle ouverture de connexion. Le rseau tlphonique illustre un tel service : il faut dcrocher le tlphone, composer le numro de son correspondant, attendre quil rponde avant pouvoir dialoguer avec lui. Aprs avoir raccroch, il faut rpter les oprations prcdentes si on veut communiquer nouveau. La gure 3.13 montre une connexion tablie entre les quipements terminaux A et C. Figure 3.13
Service rseau en mode connect entre les quipements A et C : un lien logique entre metteur et rcepteur est maintenu pendant toute la communication, mais les ressources physiques sont partages.

RSEAU

3.1 SERVICE

SANS CONNEXION
Un rseau commutation de paquets qui offre un service sans connexion sappelle couramment rseau datagrammes, du nom des units de donnes transportes. Un service sans connexion considre les diffrents datagrammes comme totalement indpendants les uns des autres. Chacun transite travers le rseau avec lensemble des informations ncessaires son acheminement. Il comprend notamment les adresses compltes de lexpditeur et du destinataire. La fonction de routage sexcute pour chaque datagramme. Ainsi, plusieurs datagrammes changs entre les mmes quipements terminaux peuvent suivre des chemins diffrents dans le rseau et le destinataire les recevoir dans un ordre diffrent de lordre dmission. De plus, en cas de problme (rupture de liaison, manque de mmoire dans un commutateur), des datagrammes peuvent se perdre. Lquipement terminal doit non seulement reconstituer lordre des datagrammes reus pour en exploiter correctement le contenu, mais aussi vrier quaucun ne sest gar.

Les concepts gnraux des rseaux 69

Lavantage dun tel rseau est sa simplicit de ralisation interne : ce sont les quipements terminaux qui mettent en uvre les fonctions de contrle. La gure 3.14 montre lacheminement des datagrammes entre les quipements A et D. Figure 3.14
Acheminement des datagrammes entre les quipements A et D : lordre nest pas garanti et il y a des pertes.
A V 4 3 2 1 2 U Z X 1 Y 3 3 2 D W

A envoie successivement les paquets 1, 2, 3, 4. Le paquet 1 emprunte le chemin passant par les commutateurs U, V, W, X. Les paquets 2 et 3 empruntent respectivement U, Z, X et U, Y, X. Le paquet 4 se perd. D reoit dans l'ordre 2, 3 puis 1 et ne reoit pas 4.

3.2 SERVICE

AVEC CONNEXION
Le service avec connexion est coupl avec la notion de circuit virtuel. louverture de la connexion, le rseau dtermine le chemin que tous les paquets emprunteront par la suite. Ce chemin sappelle circuit virtuel . Il sagit dun circuit car on utilise les mmes principes que dans la commutation de circuits ; il est virtuel puisquune connexion ne monopolise une liaison entre commutateurs que pendant le temps de transfert dun paquet. Une fois le paquet transmis, la liaison est utilisable par un autre circuit virtuel. La liaison entre deux commutateurs transporte donc plusieurs circuits virtuels entre des quipements terminaux totalement diffrents. De ce fait, lutilisation du support de transmission est beaucoup plus efcace que dans le cas de la commutation de circuits. Un quipement terminal peut grer plusieurs connexions en parallle. Un identiant, souvent appel numro de voie logique, les distingue. Lquipement metteur prcise ladresse logique du destinataire ltablissement dune connexion. Il lui associe un numro de voie logique. Le commutateur reli au rcepteur attribue de son ct un numro de voie logique la future connexion. Les deux numros de voie logique identiant la connexion sont choisis indpendamment lun de lautre, pour la dure de la connexion. Ils constituent un adressage abrg : les correspondants nont pas besoin de transporter dans leurs paquets les adresses compltes de lmetteur et du destinataire. titre de comparaison, lorsquun usager du tlphone affecte une touche du clavier un numro de tlphone particulier, il na pas taper les 10 chiffres avant chaque appel. Lquipement terminal place le numro de voie logique appropri dans len-tte du paquet quil transmet. Celui-ci parvient au point daccs du rseau et les commutateurs le propagent jusquau destinataire. Tous les paquets reus et mis sur cette connexion portent donc

70

Architecture des rseaux

Chapitre

le mme numro de voie logique. La gure 3.15 montre un exemple de connexions multiples entre plusieurs quipements terminaux. Figure 3.15
Exemple de connexions dans un rseau commutation fonctionnant en mode connect : signication locale des numros de voie logique.

A Pour VL2

B De VL1 2 1 1

RSEAU

24 D

La voie logique 2 rfrence pour A sa connexion avec C, la voie logique 1 rfrence pour C sa connexion avec A. La voie logique 1 rfrence pour A sa connexion avec D, la voie logique 24 rfrence pour D sa connexion avec A. L'quipement A dispose de deux voies logiques 1 et 2 multiplexes sur la liaison avec le commutateur d'accs.

La correspondance entre ladresse logique du destinataire (ladresse complte de labonn) et le raccourci dadressage qui lidentie localement (le numro de voie logique utilis) est bijective (un numro de voie logique nidentie quun seul circuit virtuel, pour un change de donnes bidirectionnel). Lavantage dun rseau circuits virtuels (voir gure 3.16) est sa abilit : comme les paquets dun mme circuit virtuel suivent le mme chemin, il suft de conserver lordre des paquets sur chaque tronon du chemin pour conserver globalement lordre des paquets sur le circuit virtuel. Loprateur du rseau peut donc garantir une certaine qualit de service (taux derreur, contrle de squence et de ux), au prix dune plus grande complexit de ralisation et de gestion du rseau. Figure 3.16
Exemple de rseau circuits virtuels.
3 2 1 U Z X 1 Y 2 3 D A V W

Tous les paquets empruntent le chemin dfini par les commutateurs U, V, W, X.

Les concepts gnraux des rseaux 71

Contrles internes dans un rseau


Pour assurer le bon fonctionnement du rseau, loprateur ou ladministrateur du rseau exerce des fonctions de contrle internes au rseau, principalement les fonctions de routage, de contrle de congestion et dadministration. Prsentons-les successivement.

4.1 FONCTION

DE ROUTAGE

Le routage dtermine le chemin des paquets dans le rseau pour atteindre le correspondant dsign. Cette opration se fait ltablissement dun circuit virtuel ou rel et pour chaque datagramme dans un rseau service sans connexion. Puisquil y a une multitude de chemins possibles dans un rseau maill, le meilleur se choisit en fonction dun critre qui peut tre : le moins coteux pour loprateur (ou pour le client), le plus rapide, le plus able Deux grandes catgories de fonctions existent : le routage statique et le routage adaptatif. Avec le premier, les nuds du rseau choisissent lavance le chemin entre deux quipements et le mmorisent. Dans le second, le chemin varie en fonction de ltat du rseau et tient compte des pannes (de liaisons ou de commutateurs) ou du trac coul par le rseau. Ce type de routage utilise au mieux les ressources du rseau et amliore sa dfense en cas dincident. En outre, un algorithme de routage peut tre local, rparti dans tout le rseau, ou centralis. Dans un routage local, chaque commutateur dtermine le chemin vers le destinataire sur la base dinformations locales : la taille de ses les dattente, loccupation des lignes qui le raccordent aux autres commutateurs Il na pas connaissance de lenvironnement, cest-dire de ltat des commutateurs voisins. Un exemple de routage local est le routage par inondation : un commutateur envoie tout paquet reu sur toutes les liaisons, hormis celle do il provient (voir gure 3.17). Cet algorithme provoque une multiplication, en thorie innie, du nombre de paquets. Il faut donc en dtruire certains pour viter la congestion du rseau. Pour cela on place, dans len-tte de chaque paquet, un compteur que les commutateurs dcrmentent chaque envoi. Lorsque la valeur du compteur sannule, le paquet est dtruit. La valeur minimale initiale doit tre gale au nombre minimal de commutateurs traverser pour atteindre le correspondant. Si le nombre de sauts est inconnu de lexpditeur, on peut prendre le nombre maximal de commutateurs sparant deux quipements quelconques. Les avantages principaux du routage par inondation sont la simplicit et la abilit, puisquil trouve toujours le chemin le plus court (lorsquil existe), quel que soit ltat du rseau. Les militaires lutilisent, le fonctionnement de leur rseau (transmission dalarmes) devant tre assur cote que cote, mme si un grand nombre de commutateurs ou de liaisons est dtruit. Un autre algorithme de routage trs simple est celui de la patate chaude (hot potatoe), qui consiste pour un commutateur se dbarrasser le plus rapidement possible dun paquet reu, en le transmettant sur la liaison la moins charge (hormis celle do vient ce paquet). Un tel algorithme est adaptatif puisquil prend en compte ltat du rseau. Pour amliorer son efcacit, il peut tre combin avec un routage statique qui mmorise plusieurs routes possibles. Dans le cas dun routage centralis, un quipement spcialis est ddi la fonction de calcul de toutes les routes. Lensemble des commutateurs interroge cet quipement chaque opration de routage. Pour un routage adaptatif, lquipement excutant lalgorithme de routage doit connatre en permanence ltat complet du rseau. Dans un routage

72

Architecture des rseaux

Chapitre

Figure 3.17
Routage par inondation dans un rseau : le paquet suit toutes les directions possibles.
A V W U Z X D

rparti, chaque nud diffuse ses voisins des indications sur son tat. Un nud peut donc dterminer un chemin en fonction de son propre tat et de ltat de ses proches voisins. La description de lensemble des algorithmes de routage sort du cadre de ce livre. Ils sont varis et peuvent tre assez complexes. Nous nous sommes contents ici de donner deux exemples simples de routage dans un rseau commutation de paquets : le routage par inondation et celui de la patate chaude.

4.2 CONTRLE

DE CONGESTION

Le contrle de congestion est lensemble des oprations quil faut effectuer pour viter que les ressources des commutateurs soient satures. Lefcacit de la fonction de routage est, ce titre, fondamentale car elle doit rpartir le trac entre les commutateurs. On peut mentionner plusieurs mthodes : perte dlibre de paquets, limitation du nombre de connexions et le contrle isarythmique. Perdre des paquets est une mthode radicale qui vide la mmoire dun commutateur ! Celui-ci rcupre des ressources pour la suite. En gnral, on compte sur le fait que tous les paquets jets et qui vont tre retransmis par les utilisateurs ne le seront pas tous en mme temps. La limitation du nombre des connexions consiste refuser de nouvelles connexions si le niveau de disponibilit des ressources dpasse un certain seuil. Le contrle isarythmique peut se substituer au contrle du nombre des connexions ou sy ajouter : il consiste matriser le nombre de paquets entrant dans le rseau : chaque commutateur daccs dispose dun certain nombre de crdits , tout paquet entrant consomme un crdit et tout paquet sortant du rseau libre un crdit. Lorsque le commutateur na plus de crdits, il bloque les paquets lentre. La description prcdente nest pas exhaustive car il existe de nombreuses mthodes de contrle de congestion, qui peuvent tre combines.

4.3 ADMINISTRATION

DES RSEAUX

Administrer un rseau revient grer au mieux sa mise en uvre oprationnelle. Or, les architectures actuelles ne sont pas homognes car il nexiste pas de systme permettant de rpondre lensemble des besoins dun utilisateur. De plus, la gestion du rseau ne se limite pas la bonne gestion du service de transport de linformation. Elle implique galement la gestion correcte de son traitement. Lutilisateur a donc besoin dune gestion puissante, qui tienne compte de lhtrognit de larchitecture du rseau et lui fournisse un vritable systme dexploitation rseau prenant en

Les concepts gnraux des rseaux 73

charge les aspects distribus du systme. Les besoins, en matire de gestion, se situent donc deux niveaux : celui de lutilisateur et celui de loprateur du rseau. Prsentons-les successivement.

Besoins de lutilisateur
Les besoins de lutilisateur sont trs varis et sexpriment par laccs aux applications et aux serveurs, la condentialit des changes, lassistance technique et la qualit du service. Lutilisateur demande tout dabord de pouvoir se connecter aux diffrentes applications, grce un ensemble doutils daccs. Il a besoin, dans certains cas, daccder aux serveurs de noms an de localiser une ressource. Il peut souhaiter que ses changes soient condentiels (inexploitables pour celui qui les aurait indment rcuprs). Depuis sa console, il na a priori aucune connaissance de larchitecture du systme sur lequel il est connect. cause de pannes ou pour des raisons personnelles, il pourrait avoir besoin de conseils pour se sortir dune situation anormale ou inconnue. Il apprcie alors les aides et les modes opratoires qui lui sont fournis pour surmonter ces cas dexception. Enn, la qualit de service est un lment important dans la gestion dun rseau car elle est directement ressentie par lutilisateur. Elle correspond aux notions de disponibilit du systme (pourcentage du temps pendant lequel le systme fonctionne) et de performances attendues (temps de rponse, taux de perte).

Besoins de loprateur
Les besoins de loprateur sont galement varis et se dclinent de multiples faons : planication, exploitation et maintenance, prise en compte de lhtrognit, rsistance aux pannes, connaissance des chanes de liaison. Loprateur dun rseau recherche constamment ladquation entre les ressources de son systme et les besoins de ses utilisateurs. La planication doit harmoniser lensemble des ressources disponibles par rapport aux demandes, tout en optimisant les cots. Il doit donc disposer dune vue globale du systme, pour effectuer la rpartition des ressources offertes et suivre lvolution du systme dans le temps. La phase dexploitation du rseau correspond au suivi permanent des ressources. Elle reprsente lensemble des actions journalires menes par une quipe rseau. Lexploitation seffectue par la surveillance des diffrents composants constituant le rseau. Cest, en gnral, lors de cette phase quon dtecte les anomalies (logicielles ou matrielles) de fonctionnement auxquelles il faut remdier. Lopration est plus ou moins aise, selon les outils disponibles (outils de tests logiciels aussi bien que matriels). Le but est de rparer au plus vite les lments dfectueux. En gnral, le service dexploitation intervient pour localiser au mieux la cause de lanomalie et propose, si possible, une solution de secours. Aprs rparation par lquipe de maintenance, lexploitation rintgre lensemble des composants dans le rseau. La prise en compte de lhtrognit dun rseau est un vritable problme pour le gestionnaire. En effet, il faut pouvoir corrler lensemble des tats des systmes, an dtablir des relations de cause effet. Il faut aussi mettre en vidence des situations de fonctionnement anormal et analyser nement les vnements qui y ont conduit. La complexit du problme provient du fait que les diffrents lments constituant larchitecture dun rseau ne fonctionnent pas ncessairement suivant les mmes normes : ils ne fournissent donc pas des informations directement comparables. La qualit dune gestion se mesure au fait quelle est capable, dans tous les cas, de continuer sa surveillance et donc de rsister aux pannes. Cela implique quune panne isole ne

74

Architecture des rseaux

Chapitre

puisse invalider la gestion. En effet, il serait drisoire dimplanter une application qui bloque le systme, surtout si le but de cette application est de fournir des remdes ces blocages ! La connaissance des chanes de liaison (cest--dire la succession des quipements matriels et logiciels qui interviennent dans une communication) est importante. Elle fournit un suivi dynamique des diffrents changes survenant dans le systme distribu. On peut ainsi suivre une ou plusieurs communications. Cette connaissance permet, entre autres, de rtablir des connexions et de masquer lutilisateur le chemin daccs son application.

Rsum
Une infrastructure de communication optimise les cots de fonctionnement et de maintenance dun rseau reliant un grand nombre dquipements informatiques. Elle utilise diffrentes techniques de commutation pour organiser le partage des ressources. La commutation de circuits est la technique employe dans le rseau tlphonique alors que la commutation de paquets sert dans les changes de donnes informatiques. Deux services rseau peuvent sutiliser pour transfrer les donnes. Le premier service est volu, il est normalis sur le plan international et fonctionne en mode connect. Il est couramment appel circuit virtuel et transporte des paquets en garantissant leur squence et leur intgrit. Lautre, plus simple, sutilise lchelle mondiale dans Internet. Il fonctionne en mode non connect et transfre des datagrammes indpendants les uns des autres sans leur apporter de contrle. Enn, des fonctions de contrle interne routage, contrle de congestion et administration assurent la bonne marche dun rseau.

Les concepts gnraux des rseaux 75

Problmes et exercices
EXERCICE 1 CHOIX DUN
SERVICE RSEAU
Un message de 40 octets doit tre transmis entre deux quipements A et B. Supposons quon puisse connecter ces deux quipements trois types de rseaux : (1) un rseau commutation de circuits, (2) un rseau commutation de paquets offrant un service orient connexion, (3) un rseau commutation de paquets offrant un service sans connexion. Quel type de rseau choisiriez-vous pour raliser ce transfert de donnes ? Sans autres prcisions sur la nature du message et du degr de abilit souhaite pour le transfert, il serait beaucoup plus simple dutiliser un rseau commutation de paquets, offrant un service sans connexion. Cela vite dtablir la connexion puis de la librer aprs transfert (tapes obligatoires dans les rseaux en mode connect) pour une si petite taille de message.

EXERCICE 2

AFFECTATION
VIRTUELS

DES NUMROS DE VOIE LOGIQUE AUX CIRCUITS

Deux entits A et B communiquent travers un rseau de donnes utilisant des circuits virtuels. Pour communiquer, ils ont tabli un circuit virtuel, identi par le numro de voie logique 152 du ct de A. Peut-on en dduire le numro de voie logique utilis par B ?

Non, il est impossible de dduire le numro de voie logique utilis du ct de B partir du numro employ par A. En effet, les numros de voie logique sont dnis localement, au niveau de linterface entre lquipement terminal et le nud daccs au rseau. Les deux numros sont donc choisis indpendamment lun de lautre. Il nexiste aucune corrlation entre eux.

Remarque
Les numros de voie logique ne sont pas choisis au hasard par les quipements. Si tel tait le cas, un mme numro pourrait tre attribu trop souvent deux communications diffrentes, crant une collision dappels. Pour viter cela, lquipement appelant (celui qui demande louverture de connexion) choisit le plus grand numro de voie logique disponible localement, alors que lquipement appel se verra affect du plus petit numro de voie logique disponible sur linterface locale (en gnral partir de 1, le numro 0 tant rserv ladministration du rseau). Le risque de collision dappels est alors minimal.

76

Architecture des rseaux

Chapitre

EXERCICE 3

OUVERTURE
TERMINAUX

DE PLUSIEURS CIRCUITS VIRTUELS ENTRE QUIPEMENTS

On considre un rseau commutation de paquets offrant un service orient connexion reliant plusieurs ETTD. Peut-on ouvrir simultanment plusieurs circuits virtuels entre deux ETTD ? Combien ? De quoi dpend ce nombre ? Si vous avez rpondu par lafrmative dans la prcdente question, quel serait lintrt dune telle solution ? Sinon, quel est linconvnient ? A priori, seul lETTD choisit avec qui il veut tablir un circuit virtuel. Il peut naturellement en ouvrir plusieurs avec le mme correspondant sil le dsire. Le nombre de circuits virtuels quil peut ouvrir simultanment dpend de deux facteurs : labonnement contract et la taille du champ dvolu lidentication du numro de voie logique. Si celle-ci est, par exemple, 12 bits, on pourra identier localement 4 096 circuits virtuels diffrents. Le nombre de circuits virtuels utilisables simultanment est un service factur lutilisateur.

Remarque
La norme dcrivant lutilisation des circuits virtuels spcie la taille du champ dnissant le numro de voie logique. Les rseaux publics utilisant les circuits virtuels sappuient sur la recommandation X.25 de lITU. Cette norme dnit trois niveaux : le type dinterface srie utiliser, le protocole de liaisons de donnes employer (gnralement LAP-B, cest--dire le mode quilibr de HDLC avec rejet simple des erreurs) et le mode dacheminement des donnes (les paquets sont mis sur des circuits virtuels). Dans X.25, la taille du champ affect aux numros de voie logique est 12 bits.

Lintrt dutiliser plusieurs circuits virtuels entre les deux mmes ETTD est daugmenter le ux des donnes entre eux, puisqu chaque circuit virtuel est associ un dbit binaire maximal. Le dbit binaire entre les deux ETTD est presque multipli2 par le nombre de circuits virtuels affects cette communication. Il faut toutefois disposer, aux deux extrmits, doutils capables de rordonnancer les paquets provenant des diffrents circuits virtuels. Supposons quun ETTD utilise trois circuits virtuels diffrents pour communiquer avec le mme ETTD distant. Il envoie ses donnes en utilisant un mcanisme d clatement des donnes sur les trois circuits virtuels (par exemple, en mettant le premier paquet sur le premier circuit virtuel, le deuxime paquet sur le deuxime circuit virtuel et ainsi de suite). Lordre des paquets sera respect au sein de chaque circuit virtuel mais ne correspondra pas forcment lordre initial des paquets du message.

Remarque
Le dbit binaire maximal disponible est lui aussi un paramtre ngoci labonnement. Il est complt par la notion de classe de service, qui garantit lutilisateur un dbit binaire minimal pour la dure de la connexion. Par exemple, un abonn peut possder un accs 56 kbit/s et demander une classe de service de 9 600 bit/s. Cela signie que, quel que soit lencombrement du rseau, le dbit binaire de ce circuit virtuel ne pourra tre infrieur cette valeur.

2. La transmission des paquets sur plusieurs circuits virtuels ncessite divers traitements au niveau des quipements terminaux. Le dbit global est donc infrieur la somme des dbits des diffrents circuits virtuels utiliss pour le transfert des donnes.

Les concepts gnraux des rseaux 77

Exercices

EXERCICE 4

MULTIPLEXAGE DE CIRCUITS VIRTUELS SUR LA MME LIAISON


DE DONNES

Un ETTD A tablit 4 connexions avec 4 autres ETTD dnomms B, C, D et E. Il utilise pour cela un circuit virtuel par ETTD distant. Les numros de voie logique affects aux circuits virtuels valent respectivement 154, 153, 152 et 151. On suppose que A doit envoyer une information qui tient en 4 paquets chacun des 4 destinataires. En supposant que les ETTD contacts naient aucune communication en cours, quel(s) numro(s) de voie logique utiliseront-ils pour la communication avec lETTD A ? Si un paquet est contenu dans une seule trame I, combien de trames transportant les paquets destination des ETTD distants seront mises par A ? Combien les autres ETTD recevront-ils de trames ? Comment seffectue la rpartition des paquets de donnes dans les diffrentes trames I au niveau de A ?

Chaque ETTD distant nayant aucune communication en cours, il utilisera le numro de voie logique 1 pour identier le circuit virtuel avec lETTD A. Cela est d au fait que lattribution des numros de voie logique est locale linterface ETTD nud daccs au rseau. Il y a donc 16 trames I mises par lETTD A, chacune contenant un paquet destination de lun des ETTD distants. Par contre, chaque ETTD distant ne reoit que 4 trames, contenant les 4 paquets qui lui sont destins. Chaque ETTD distant reoit ses paquets dans lordre o ils ont t mis par A. On ne peut pas en dduire pour autant lordre des trames I qui sont mises vers le nud daccs de A. En effet, chaque paquet mettre est plac dans la le dattente des paquets affecte au circuit virtuel concern ; il y a autant de les dattente que de circuits virtuels actifs. Ensuite, lentit qui gre la liaison de donnes prlve les donnes mettre dans lune des les dattente, selon un ordre qui lui est propre (et qui dpend de la conception du logiciel). Ainsi, le gestionnaire de liaison peut dcider dentrelacer les donnes destination des diffrents circuits virtuels (il envoie le premier paquet du premier circuit puis le premier paquet du deuxime circuit, et ainsi de suite), ou bien il peut envoyer tous les paquets dun mme circuit virtuel avant denvoyer ceux du circuit virtuel suivant. Au moment dmettre la trame I, le paquet remplit le champ de donnes de la trame.

Remarque
Cet exercice montre comment les entits du niveau immdiatement infrieur rendent les services une entit de niveau suprieur. Il met aussi en vidence lindpendance des entits des diffrents niveaux. En effet, le niveau grant les paquets contient une ou plusieurs entits grant les circuits virtuels, conformment au protocole de gestion des paquets. Chaque entit de ce niveau va soumettre des paquets lentit grant la couche Liaison de donnes. Cette dernire est donc la seule dcider du mode denvoi des donnes sur la liaison, en fonction de lactivit des diffrents circuits virtuels.

78

Architecture des rseaux

Chapitre

EXERCICE 5

CALCUL

DU TEMPS DE TRANSMISSION DANS UN RSEAU

COMMUTATION

Soit un rseau commutation au sein duquel deux stations A et B ont tabli une communication. A doit envoyer un chier de taille L bits B. Le transfert de donnes prsente les caractristiques suivantes : S est le nombre de commutateurs traverss pour la communication entre A et B. Toutes les liaisons de donnes utilises ont un dbit D bit/s. Le protocole de liaison est le mme sur toutes les liaisons ; il ajoute un en-tte de H bits chaque unit de donnes transfre. On nglige les temps de propagation et les temps de traitement dans les commutateurs du rseau. On nglige de mme les temps de gestion des accuss de rception. Le rseau est un rseau commutation de messages. Le chier est transmis dans un seul message, dune liaison lautre, jusquau destinataire. Donnez lexpression Tc1 du temps de transmission de ce chier dans le rseau. Le rseau est un rseau commutation de paquets. Le chier est dcoup en paquets contenant P bits de donnes (pour simplier, on supposera que les paquets sont tous de taille identique). Montrez que lexpression Tc2 du temps de transmission du chier est : Tc2 = (S + L/P)(P + H)/D. Calculez et comparez les temps obtenus dans les deux premires questions en prenant : L = 64 000 octets ; H = 9 octets ; S = 2 ; D = 64 kbit/s. On prendra trois valeurs possibles pour la taille des paquets : P = 128 octets ; P = 16 octets ; P = 48 octets (dans ce dernier cas, il sagit dune cellule ATM dont len-tte H utilise 5 octets). Quels sont les avantages et les inconvnients de la commutation de paquets par rapport la commutation de messages ? Les liaisons sont affectes dun taux derreurs not . Montrez que la probabilit p pour quune trame de longueur L soit reue correctement vaut p = (1 )L. En dduire que le nombre moyen N de transmissions dune trame vaut : N = 1/p. Pour obtenir ce rsultat, on supposera que le protocole de liaison rpte indniment la mme trame sans anticipation, jusqu ce que la trame soit correctement reue. Refaire lapplication numrique de la question c en prenant un taux derreurs = 10-4. Pour ces calculs, on considre quune seule trame est mise dans le rseau commutation de messages. Dans la commutation de paquets, chaque paquet est transmis dans une trame. Comparez les rsultats et concluez. Ces techniques sont-elles adaptes aux hauts dbits ?

La dure de transmission dun paquet sur une liaison de donnes vaut : Tpaq = (P + H)/D. La dure de transmission du chier est gale la dure de transmission des paquets jusquau premier commutateur, plus le dlai ncessaire au dernier paquet pour parvenir jusqu B. Le nombre de paquets ncessaires pour transmettre le chier vaut n = L/P. On en dduit : Tc2 = (S + n)*Tpaq = (S + n)*(P + H)/D.

Les concepts gnraux des rseaux 79

Exercices

La dure de transmission du chier sur une liaison est gale : Tc =(L + H)/D. La dure de transmission du chier est gale au temps de transmission sur toutes les liaisons traverses, cest--dire : Tc1 = Tc*(S + 1).

La gure 3.18 montre comment calculer les diffrents temps de transmission. Figure 3.18
Calcul des diffrents temps de transmission.
Fichier 1 Paquet E 1 Fichier = n paquets

Commutateur 1 2

2 Commutateur 2 3 3 n x Tpaq S x Tpaq Temps

Applications numriques : a. Cas de la commutation de messages : P = L = 64 000*8 = 512 000 bits Tc1 = (2 + 1)*(64 000 + 9)*8/64 000 = 24 s. b. Cas de la commutation de paquets avec P = 128 octets = 128*8 = 1 024 bits ; n = L/P = 500 paquets Tc2 = (2 + 500)*(128 + 9)*8/64 000 = 8,6 s. c. Cas de la commutation de paquets avec P = 16 octets = 16*8 = 128 bits ; n = L/P = 4 000 paquets Tc2 = (2 + 4 000)*(16 + 9)*8/64 000 = 12,5 s. d. Cas de la commutation de cellules ATM avec P = 48 octets = 48*8 = 384 bits ; H = 5 octets ; n = L/P = 1 334 paquets (par excs) Tc2 = (2 + 1 334)*(48 + 5)*8/64 000 = 8,85 s.

Remarque
Pour la commutation de messages, le temps de transmission du chier ne dpend que du nombre de liaisons traverses. En revanche, pour la commutation de paquets, il faut tenir compte du recouvrement des temps de transmission des diffrents paquets sur lensemble des liaisons : en effet, pendant que A transmet son deuxime paquet au premier commutateur, celui-ci envoie le premier paquet au commutateur suivant et ainsi de suite. Cest la raison pour laquelle les performances des rseaux commutation de paquets sont suprieures celles des rseaux commutation de messages. Lcart des performances sera encore plus notable si certaines liaisons transmettent le message avec des erreurs, comme nous le verrons aux questions suivantes.

Nous voyons bien que le dcoupage en paquets permet de rduire les dlais dacheminement travers le rseau. Cependant, il faut respecter une juste proportion entre la taille de len-tte par rapport au corps du message : une taille de paquet trop petite provoque un allongement de dlai dacheminement.

80

Architecture des rseaux

Chapitre

Pour quune trame de longueur L soit reue sans erreur, il faut que tous ses bits soient reus sans erreur. La probabilit de recevoir un bit sans erreur vaut 1 . La probabilit de recevoir L bits sans erreur vaut : (1 )L. La probabilit de recevoir une trame errone est de pt = 1 (1 )L. Puisque la longueur dune trame vaut L = P + H, le nombre moyen dmissions est donc : 1*(1 pt) + 2*(1 pt) pt + 3*(1 pt) pt2 + = 1/(1 pt). En appliquant la formule prcdente en tenant compte des rptitions, on obtient : Tc = Tc/(1 pt) = Tc/1 (1 )L. Les applications numriques donnent : a. Cas de la commutation de messages : P = L = 64 000*8 = 512 000 bits Tc = 16 848 s soit plus de 4 heures ! b. Cas de la commutation de paquets avec P = 128 octets = 128*8 = 1 024 bits Tc = 9,6 s, soit une dgradation de 11,6 % par rapport au cas parfait. c. Cas de la commutation de paquets avec P = 16 octets = 16*8 = 128 bits ; n = L/P = 4 000 paquets Tc = 12,75 s, soit une dgradation de 2 % par rapport au cas parfait. Tc = 9,22 s, soit une dgradation de 4,2 % par rapport au cas parfait. La prise en compte du taux derreurs dans les liaisons montre tout lintrt du dcoupage des messages en paquets. Il est visiblement hors de question dutiliser la commutation de messages pour les applications ncessitant les hauts dbits, tout particulirement lorsque les liaisons sont peu ables. Nous voyons galement quune taille de paquet trop petite est un choix peu judicieux. Les cellules ATM et les paquets de 128 octets sont donc des compromis intressants entre les diffrentes contraintes pour les hauts dbits.

EXERCICE 6

TRANSFERT

DE DONNES SUR CIRCUIT VIRTUEL

Les concepts gnraux des rseaux 81

Exercices

Aprs avoir fait vos courses dans lhypermarch proche de votre domicile, vous vous prsentez une caisse pour rgler vos achats. Vous dcidez de payer avec la carte du magasin. Examinons le droulement des oprations entre votre caisse et le centre de traitement informatique de la chane de magasins via Transpac, le rseau public de donnes franais utilisant le protocole X.25. La caisse C de lhypermarch possde un accs avec les caractristiques suivantes : le dbit binaire est de 48 000 bit/s ; le niveau Liaison de donnes utilise le mode quilibr du protocole HDLC (protocole LAP-B) avec une fentre danticipation de 4. La gestion des paquets de donnes est faite sur un CVC (circuit virtuel commut), ouvert par la caisse ds sa mise en service (le CVC reste ouvert jusqu la fermeture du magasin : inutile de le fermer aprs chaque opration de la caisse). La taille de la fentre danticipation des paquets est 1. Le serveur S de la chane dhypermarchs possde un accs congur comme suit : le dbit binaire est de 2,048 Mbit/s ; le niveau Liaison de donnes utilise le mme protocole LAP-B avec une fentre danticipation de 7 ; le CVC possde une fentre danticipation des paquets de 1.

(suite)

Aprs avoir saisi le prix de tous les articles que vous avez achets, la caissire appuie sur une touche qui provoque lenvoi dune requte Demande de paiement par carte magasin. Cette requte parvient au centre de traitement de la chane de magasins et active lapplication de facturation. Celle-ci traite la transaction et renvoie une Autorisation de paiement par carte magasin. La caisse afche alors sur lcran un message vous invitant taper le chiffre qui prcise la nature de votre paiement ( comptant ou crdit), puis les chiffres de votre code secret. Vous pianotez votre choix de paiement puis votre code sur le pav numrique. La caissire vrie que la saisie est correcte et valide les donnes fournies en appuyant sur une touche. La caisse transmet les donnes que vous avez tapes dans un paquet Donnes du paiement EFT3, puis elle reoit un paquet Fin de transfert EFT, qui provoque lafchage du message daccueil du client suivant sur lcran de la caisse. En supposant que le plus grand numro de voie logique disponible soit 9 et le plus petit soit gal 1 pour les deux ETTD, dcrivez lchange des paquets ncessaires louverture du CVC par la caisse, en respectant les conventions dattribution des numros de voie logique. Pour ouvrir le CVC et transfrer les donnes, vous disposez des types de paquets donns au tableau 3.1. En supposant que chaque message ou requte tienne dans un seul paquet de donnes, dcrivez le transfert des paquets de donnes entre la caisse et son ETCD (le nud daccs au rseau) dune part, et entre le centre de traitement et son ETCD dautre part. Vous veillerez respecter la chronologie des vnements (par exemple, un paquet mis par le serveur en rponse un paquet de la caisse doit tre mis aprs que le paquet de la caisse est parvenu au serveur). Pourquoi le serveur S utiliserait-il le numro de voie logique 5 pour identier la connexion avec la caisse C ? Indiquez comment seffectue la fermeture du CVC par la caisse la n de la journe. Si des parasites sur les liaisons de donnes avaient produit des erreurs de transmission, quel niveau les dtecterait ?
Tableau 3.1 : Les diffrents types de paquets utiliss sur un circuit virtuel

Type du paquet

Fonction

Paramtres

Mnmonique utilis

Ouverture de connexion Indication douverture Acceptation douverture Indication dacceptation Demande de libration

Ouvre le circuit virtuel Alerte lETTD distant Accepte la communication

O, D, no VL O, D, no VL O, D, no VL

APPEL (O, D, no VL) (a) AP_ENT (O, D, no VL) (b) COM_ACC (O, D, no VL) (c) COM_ETA (O, D, no VL) (d) DEM_LIB (O, D, no VL) (e)

Indique lETTD appelant que lappel accepte O, D, no VL la connexion Un ETTD demande la n o du transfert de donnes O, D, n VL

3. EFT signifie Electronic Fund Transfer (transfert de fonds lectronique).

82

Architecture des rseaux

Chapitre

(suite)

Tableau 3.1 : Les diffrents types de paquets utiliss sur un circuit virtuel (suite)

Type du paquet

Fonction

Paramtres

Mnmonique utilis

Indication de libration Conrmation de libration Acquittement des donnes Paquet de donnes

Indique une demande de n o de transfert de lautre ETTD O, D, n VL Conrme la n du transfert de donnes Acquitte les paquets de donnes jusqu P(R) 1 Numrote le paquet mis et acquitte les paquets reus par piggy-backing O, D, no VL X X,Y, Z

IND_LIB (O, D, no VL) (f) LIB_CONF (O, D, no VL) PRR(X) (g) DXY(Z) (h)

Au tableau 3.1, nous utilisons les notations suivantes : (a) O est ladresse complte de labonn origine ; D ladresse complte de labonn distant ; no VL est le numro de voie logique localement utilis pour identier le circuit virtuel ouvrir. (b) AP_ENT est la notation abrge utilise pour un appel entrant. Ce paquet est mis par le nud de lETTD appel pour lavertir dune demande de connexion par un ETTD distant. (c) COM_ACC signie que lETTD distant accepte la demande de connexion. Ce paquet est mis par lETTD appel vers son ETCD. (d) COM_ETA sert indiquer lETTD appelant que lETTD distant a accept la communication. Ce paquet est mis par le nud de lETTD origine. (e) DEM_LIB signie que lETTD qui lmet demande la n du transfert de donnes. (f) LIB_CONF est la conrmation de la libration demande soit par le rseau (en cas de panne ou dimpossibilit de traiter lappel), soit par lETTD distant. (g) PRR(X) est le paquet dacquittement des paquets reus en squence jusquau paquet de numro P(R) 1. (h) DXY(Z) est un paquet de donnes dans lequel X reprsente le numro dordre P(S), Y est lacquittement des paquets jusqu P(R) 1 et Z le numro de voie logique utilis. La gure 3.19 montre lchange des paquets entre les ETTD et les ETCD pour ouvrir le CVC. C utilise le plus grand numro de voie logique et S le plus petit disponible sur linterface locale. Figure 3.19
Ouverture du CVC par la caisse.
C APPEL (C, S, 9) NC NS S

COM_ACC (C, S, 1) COM_ETA (C, S, 9)

Les concepts gnraux des rseaux 83

Exercices

AP_ENT (C, S, 1)

La gure 3.20 nous montre les changes de paquets entre ETCD et ETTD pour assurer le transfert de donnes demand. Figure 3.20
Transfert de donnes entre la caisse et le serveur.
(1) C NC NS S

D00 (9) PRR1(9) D00 (1) PRR1(1) (1 )

(2 ) (3)

D01(9) PRR1(1) D11(9) PRR2(9) D11(1)

D01(1)

(2)

(3 ) PRR2(1) D12(1) (4)

(4 ) PRR2(9)

D12(9) PRR1(1)

(1) : Paquet contenant Demande de paiement par carte magasin . (1) : Le paquet contenant Demande de paiement par carte magasin est arriv dans le nud du serveur. Il est envoy au serveur et va servir lancer la transaction de paiement. (2) : Paquet contenant Autorisation de paiement par carte magasin , gnr par lapplication de facturation, aprs vrification des donnes du client. Ce paquet est envoy au nud du serveur. (2) : Le paquet contenant Autorisation de paiement par carte magasin est arriv au nud de la caisse, qui le transmet la caisse. Il va servir afficher le message vous invitant taper votre code secret. (3) : Paquet contenant Donnes du paiement EFT , contenant vos donnes client. (3) : Le paquet contenant Donnes du paiement EFT est arriv au nud du serveur, qui le retransmet au serveur. Il va permettre de mettre jour votre compte client dans le serveur. (4) : Paquet contenant Fin de transfert EFT pour demander la fin de la transaction. (4) : Le paquet contenant Fin de transfert EFT arrive au nud de la caisse. Ce dernier le retransmet la caisse. Il va permettre dafficher le message daccueil du client suivant.

Dans la rponse la question prcdente, nous supposons implicitement que le serveur na pas dautres circuits virtuels ouverts quand il reoit la demande de connexion de la caisse C. Sil utilise maintenant le numro de voie logique 5, cest tout simplement parce quil a dj utilis les quatre premiers numros de voie logique pour dautres connexions. La gure 3.21 montre la fermeture du CVC par la caisse.

84

Architecture des rseaux

Chapitre

Figure 3.21
Fermeture du CVC par la caisse.
C DEM_LIB (C, S, 9) LIB_CONF (C, S, 9) IND_LIB (C, S, 1) LIB_CONF (C, S, 1) NC NS S

Remarque
Nous avons vu la question a que louverture dun circuit virtuel seffectue de bout en bout : seul lETTD appel peut rpondre la demande douverture de connexion envoy par lETTD appelant. la question d, nous voyons que la libration du circuit virtuel seffectue localement : cest le nud auquel est raccord lETTD qui conrme la libration de connexion et non lETTD distant. La libration dun circuit virtuel seffectue donc beaucoup plus rapidement que son ouverture.

La dtection des erreurs ne peut se faire au niveau de lentit qui gre le circuit virtuel puisque le protocole de gestion du circuit virtuel ne contient aucun mcanisme de dtection des erreurs. Elle est assure au niveau du protocole grant la liaison de donnes, grce au FCS plac la n de la trame. Si la transmission altre une trame (et donc le paquet qui est dans son champ de donnes), celle-ci est rejete car le rcepteur dtecte lerreur dans la trame et demande sa retransmission. Tout paquet se trouvant dans une trame errone est ignor du rcepteur.

EXERCICE 7

TRANSFERT

DE DONNES SUR PLUSIEURS CIRCUITS VIRTUELS

Soit un rseau utilisant le protocole X.25, dans lequel un serveur C initialise les deux circuits virtuels qui le relient A et N. Le premier, ouvert entre C et A, utilise une fentre de 1 alors que celui entre N et C, ouvert en second, utilise une fentre de 2. Le transfert des donnes se droule comme suit : A et N envoient au mme instant deux paquets vers le serveur C. Lorsquil a reu tous les paquets des ETTD, C leur rpond en envoyant chacun deux paquets, en entrelaant les paquets des 2 circuits virtuels (cest-dire C envoie le premier paquet vers A puis le premier paquet vers N puis le second paquet vers A et enn le second paquet vers C). On sintresse au transfert des paquets de donnes entre les stations A, N et le serveur C. Protocole rseau : le transfert des donnes seffectue sur des CVP (circuits virtuels permanents4), ouverts par le centre serveur C, au moment de la mise en service du rseau. Les fentres de chaque CVP sont indiques ultrieurement. La gure 3.22 montre deux stations clientes (A et N) communiquant avec un serveur C. Les points NA, NC, NN constituent les points daccs au rseau X.25 (ce sont les ETCD locaux respectivement raccords aux ETTD A, C et N).

4. Un CVP est un circuit virtuel tabli une fois pour toutes, entre deux ETTD, jusqu la fin de labonnement contract. On na pas besoin de ltablir, ni de le librer.

Les concepts gnraux des rseaux 85

Exercices

(suite)

Figure 3.22
Connexions entre ETTD et ETCD du rseau.

A NA C NC NN X 25

Quels sont les numros de voie logique utiliss par les diffrents ETTD, sachant que le plus grand numro de voie logique disponible sur tous les ETTD est gal 10 et quaucun ETTD na de circuit virtuel dj ouvert ? Reprsentez, sur le mme diagramme, les changes de paquets correspondant au transfert de donnes entre les trois stations et rpondant aux hypothses dcrites prcdemment. Vous supposerez pour cela que les circuits virtuels sont dj ouverts avant le transfert de donnes. Le circuit virtuel entre A et C utilise une fentre de 1, celui entre N et C une fentre de 2. Sur un circuit virtuel, les donnes peuvent aussi tre acquittes de bout en bout, cest-dire que lETTD destinataire est le seul habilit acquitter les donnes reues. Dterminez en quoi cela peut affecter la faon de transfrer les donnes et les performances attendues. Daprs les conventions daffectation des numros de voie logique, le circuit virtuel entre A et C utilise le numro de voie logique 10 dans lETTD C. Le numro 9 identie le circuit virtuel entre C et N. Les ETTD A et N utilisent tous les deux, pour identier le circuit virtuel avec C, le numro de voie logique 1. La gure 3.23 dcrit les changes entre les trois ETTD. Figure 3.23
Transfert de donnes entre les trois ETTD.
C NC N D 10 (1) D 00 (1) PRR2(1) PRR1(1) D 10(1) D 00(9) D 10(9) D 00(10) PRR1(10) PRR2(9) D 10(10) PRR2(10) D 12(9) D 02(9) D 02(10) D 02(1) PRR2(9) PRR1(10) D 12(10) PRR2(10) PRR2(1) D 12(1) PRR2(1) D 10 (1) D 00 (1) PRR1(1) PRR2(1) NN NA A

D 00 (1)

Avec des acquittements locaux, les paquets de donnes mis par lETTD sont acquitts par le nud daccs. Cette technique permet dmettre les donnes le plus vite possible mais, en cas de panne, il y a un risque den perdre : ds quun paquet est acquitt, lETTD metteur efface les donnes qui viennent dtre envoyes pour rutiliser la zone mmoire alors que le paquet nest pas encore parvenu au destinataire ! (Comme pour lenvoi dune

86

Architecture des rseaux

Chapitre

lettre par la Poste : ce nest pas parce quon vient de la mettre dans la bote quelle se trouve dj dans les mains du destinataire. Elle peut se perdre ou tre dtruite avant darriver, mme si cette ventualit est rare.) Avec des acquittements de bout en bout, les nuds intermdiaires se contentent de transporter le paquet puis de renvoyer lacquittement qui est mis par le rcepteur distant. En le recevant, lmetteur est sr que le paquet est bien parvenu destination. Lacquittement de bout en bout est la mthode dacquittement la plus able mais aussi la plus lente. Aprs lenvoi du paquet dans le rseau, il faut attendre que lacquittement du destinataire ait parcouru tout le rseau en sens inverse jusqu lexpditeur. Au mieux, le transfert des donnes avec acquittement de bout en bout pour chaque paquet est deux fois plus lent quun transfert nutilisant que des acquittements locaux. Si nous conservons notre exemple de courrier postal, cette mthode dacquittement correspond lenvoi dune lettre recommande avec accus de rception.

Remarque
Pour viter lengorgement du rseau et des cadences de transfert trop lentes, il est recommand de ne pas utiliser uniquement lacquittement de bout en bout mais de le rserver des points de reprise critiques du chier. Lexercice 8 montre comment panacher acquittements locaux et acquittements de bout en bout. Pour illustrer ce principe, supposons quon veuille transfrer le contenu de ce livre. Sachant que chaque page gnre plusieurs paquets de donnes, plusieurs manires de transfrer le chier peuvent senvisager. Chaque paquet est acquitt de bout en bout : cette mthode, longue et fastidieuse, nest pas conseiller, mme si elle est trs able ! Chaque page est acquitte de bout en bout : seul le dernier paquet de la page est acquitt de bout en bout. En recevant lacquittement correspondant, lmetteur sait que toute la page a t bien reue, puisquun acquittement valide galement les paquets qui le prcdent. Cette mthode est intressante si le rseau prsente une abilit insufsante en regard des besoins de lapplication de transfert de chiers. Chaque chapitre est acquitt de bout en bout : la mthode est la mme pour le dernier paquet du chapitre au lieu du dernier paquet de la page. Cette mthode est certainement la plus sre et la plus rapide si le rseau est sufsamment able

EXERCICE 8

TRANSFERT

DE DONNES SUR DES CIRCUITS VIRTUELS AVEC

ACQUITTEMENTS LOCAUX ET ACQUITTEMENTS DE BOUT EN BOUT


Un serveur S communique avec une station A. Il utilise pour cela un circuit virtuel dj ouvert, identi par les numros de voie logique 7 du ct de S, 1 du ct de A ; la fentre du circuit virtuel vaut 2 dans les deux sens. A envoie 4 paquets de donnes vers le serveur, qui rpond par 2 paquets de donnes. Lacquittement des paquets de donnes est local pour les premiers paquets de donnes, de bout en bout pour le dernier paquet transmis par chaque ETTD. Reprsentez, laide dun diagramme, les changes de paquets correspondant la transaction effectue entre les stations A et S. Les paquets transmis de bout en bout seront distingus des paquets acquitts localement par un astrisque sur le diagramme. Combien A peut-il encore envoyer de paquets, une fois quil a envoy son dernier paquet de donnes ?

Les concepts gnraux des rseaux 87

Exercices

La gure 3.24 montre le transfert des donnes entre A et S. Figure 3.24


Transfert de donnes avec acquittements locaux et de bout en bout.
A NA S NS

D10(1) D00(1) (2) D30(1)* D20(1) (6)

(1) PR R2(1) (3) PR R2(7) D 00(7) D 10(7) (4)

(5) PR R3(1)

(7) PR R4(7)*

D 20(7) D 30(7)* (8)

(9)

PR R4(1)*

D 04(7) D 14(7)*

(10)

(11) (12) D 04(1) D 14(1)*

PR R1(7)

PR R2(1)*

(13)

PRR2(7)*

(1) : A envoie les paquets correspondant la fentre d'anticipation. (2) : L'ETCD les acquitte localement. (3) : Aprs avoir travers le rseau, les deux premiers paquets de donnes sont transmis S. (4) : S acquitte les paquets reus. (5) : A envoie ses 2 derniers paquets et demande l'acquittement de bout en bout du dernier paquet. (6) : L'ETCD n'acquitte que le troisime paquet. (7) : Les derniers paquets de A sont transmis S. (8) : S acquitte tous les paquets et demande la propagation de bout en bout de son acquittement. (9) : L'acquittement des paquets a travers tout le rseau et parvient A. (10) : S envoie 2 paquets et demande l'acquittement de bout en bout du dernier paquet, tout en validant les paquets reus prcdemment. (11) : Seul le premier paquet de S peut tre acquitt par l'ETCD. (12) : Les paquets sont transmis A ; le dernier doit tre acquitt de bout en bout. (13) : A acquitte les paquets et demande la propagation de bout en bout de son acquittement. (14) : L'acquittement de bout en bout parvient S.

Aprs avoir envoy son dernier paquet, A ne peut pas envoyer plus dun paquet, car la rception de lacquittement local PRR3(1) lui indique que seuls 3 paquets sont acquitts. La fentre nest compltement ouverte quaprs rception de lacquittement de bout en bout provenant de S. La situation est identique pour le serveur S qui na reu que lacquittement (local) du premier paquet.

Remarque
La demande dacquittement de bout en bout revient au fait que lETTD distant commande louverture de la fentre de lETTD local.

88

Architecture des rseaux

Chapitre

Les architectures de communication


1. Concept darchitecture en couches ............................. 90 2. Modle OSI ........................... 92 3. Architecture TCP/IP ................ 95 4. Normalisation dans les tlcommunications et les rseaux .. 96

Ce chapitre dcrit comment se formalisent les notions dempilement de couches de protocoles et de services, que nous avons rapidement voques au cours du chapitre prcdent. Nous abordons galement les modifications quil a fallu apporter au modle initial pour dcrire la structure des rseaux locaux (LAN), aujourdhui les plus utiliss dans les entreprises ou mme chez les particuliers. Nous introduisons ensuite larchitecture de communication utilise dans Internet, connue sous le nom darchitecture TCP/IP ou encore de pile TCP. Enfin, nous voquons comment normes et standards sont labors par les organismes internationaux et le comit technique charg de lvolution dInternet.

Problmes et exercices 1. Choix des primitives dun niveau donn .................. 98 2. Procdures en cas de panne du rseau ................................ 99 3. tablissement de connexions Liaison et Rseau .................... 99 4. Notions de SDU et PDU des niveaux Rseau et Liaison ....... 102 5. Contenu des PDU dun niveau quelconque ........................... 102 6. Quelques primitives du modle OSI ...................................... 103 7. Rle des primitives du modle OSI ...................................... 103 8. Relations entre PDU et SDU des diffrents niveaux ............ 104

89

Concept darchitecture en couches


Lempilement des couches et les services quelles offrent constituent larchitecture de communication. Une architecture de communication est donc une reprsentation abstraite (indpendante de toute rfrence des logiciels ou des matriels particuliers) de la circulation des informations et des concepts utiliss au sein dun rseau quelconque. Pour cela, nous nous appuyons sur le modle abstrait darchitecture de communication dni dans le milieu des annes 1970 pour les rseaux grande distance (WAN). Cette architecture, communment appele modle de rfrence OSI ou modle OSI, a apport un vocabulaire et des concepts encore utiliss de nos jours. En effet, mme des architectures labores en dehors de ce modle se rfrent la terminologie qui y est dnie.

1.1 POURQUOI

UTILISER UNE ARCHITECTURE EN COUCHES

La structuration en couches considre un systme comme logiquement compos dun ensemble de n sous-systmes ordonns. Les sous-systmes adjacents communiquent travers leur interface commune. Un sous-systme de rang i peut tre constitu dune ou plusieurs entits ; il communique avec les autres sous-systmes de mme rang : on parle alors de la couche de rang i ou, plus simplement, de la couche i. Les avantages dune telle structure sont multiples : Une architecture de communication se dnit entirement en dcrivant les services offerts par chaque couche, les interfaces entre les couches adjacentes et la manire dont ces couches cooprent avec les entits du mme niveau (les entits homologues) dans les autres systmes. On peut dvelopper sparment et simultanment toutes les couches dune architecture de communication, une fois dnies les interfaces entre les diffrents sous-systmes. Le nombre dinterfaces dnir est minimal : il suft de dcrire, pour chaque niveau, les interfaces avec la couche suprieure (sauf pour la couche la plus leve de larchitecture) et avec la couche infrieure (sauf pour la couche la plus basse). Les cooprations entre entits homologues sont rgies par un ou plusieurs protocoles. Ainsi, chaque couche fournit des services aux entits des couches suprieures et sappuie sur les services offerts par les entits des couches infrieures. La couche la plus leve offre lutilisateur tous les services utilisables dans larchitecture ; la couche la plus basse communique directement avec le support de transmission.

1.2 TERMINOLOGIE

EMPLOYE

Dans la suite, nous utilisons la notation (i) pour signier de niveau i , an de ne pas alourdir inutilement les dnitions et les notations employes. Service (i). Capacit que possde la couche (i) et les couches infrieures celle-ci, fournie aux entits (i + 1), la frontire entre la couche (i) et la couche (i + 1). Les services sont invoqus par des primitives, spciques du service. Primitive. Demande de service par une entit de niveau suprieur une entit de niveau infrieur. Protocole (i). Ensemble de rgles et de formats dterminant les caractristiques de communication des entits (i) lorsquelles effectuent les fonctions ncessaires lexcution du service (i). Le protocole utilise des units de donnes appeles PDU(i) [Protocol Data Unit(i)].

90

Architecture des rseaux

Chapitre

Point daccs des services (i) [SAP(i), Service Access Point(i)]. Point o les services (i) sont fournis par une entit (i) une entit (i + 1). Les units de donnes du service SDU(i + 1) [SDU, Service Data Unit] traversent les SAP(i). SDU(i + 1). Units de donnes du service changes localement entre entits (i + 1) et entits (i) pour lexcution dun service (i). PDU(i). Unit de donnes du protocole, change entre entits (i) homologues.

1.3 NOTION DENCAPSULATION


Une entit (i + 1) qui fait appel aux services assurs par une entit (i) lui transmet les donnes concernes et utilise la primitive approprie la demande dexcution du service. Pour cela, lentit (i) construit une (ou plusieurs) unit(s) de donnes, pour transporter les donnes, conformment au protocole (i). Celles-ci sont insres dans le champ de donnes de la PDU(i) : on dit que les donnes (i + 1) sont encapsules dans une unit de donnes (i). Une entit (i) reoit donc les donnes manant de lentit (i + 1) sous la forme dune SDU(i). chaque SDU(i), lentit (i) ajoute en tte et/ou en queue des informations de contrle permettant dexcuter le service demand pour constituer une PDU(i) qui est soumise la couche infrieure. Ainsi, une PDU(i) constitue une SDU(i 1) linterface entre les couches (i) et (i 1). Inversement, une SDU(i) contient une PDU(i + 1). Dans certaines couches, les protocoles employs pour rendre le service (i) peuvent utiliser plusieurs PDU(i) pour traiter une SDU(i). En outre, les services peuvent ncessiter des PDU spciques comme, par exemple, des PDU dacquittement qui ne contiennent pas de champ de donnes. Une couche fournit un ensemble de services au niveau suprieur, invoqus par des primitives. On utilise quatre primitives, selon le sens et la nature de linteraction : la requte, lindication, la rponse et la conrmation (voir gure 4.1). Figure 4.1
Les diffrents types de donnes changes entre couches adjacentes ou entre couches homologues.
Couche i+1 locale i_Primitive Request (SDU) (1) (2) i_Primitive Indication (SDU) (3) i_Primitive.Confirm (SDU) i_PDU (5) (4) i_Primitive Response (SDU) Couche i Couche i+1 distante

(1) Lentit ( i+1) locale fabrique la primitive demandant un service une entit de la couche (i) locale et lui fournit les donnes (SDU) (2) Lentit ( i) distante prvient lentit (i+1) destinataire par une primitive de type Indication (3) Lentit ( i+1) distante donne sa rponse dans une primitive de type Response (4) Lentit (i) locale transmet la rponse de lentite (i+1) distante dans une primitive de type Confirm (5) Les entits (i) fabriquent les PDU (i) qui transportent les donnes des entits (i+1)

Comme on le voit la gure 4.1, la partie donnes de la primitive est la SDU : son contenu est totalement transparent pour le fournisseur du service. Pour signaler un vnement la

Les architectures de communication 91

couche suprieure lorsque le protocole le prvoit, le fournisseur utilise une primitive de type Indication. Le destinataire de la primitive renvoie une primitive de type Response (si le protocole le requiert). Enn, une primitive de type Conrm, mise par son prestataire de service, permet lauteur de la requte dtre inform de la n correcte ou non de sa requte. Un paramtre prcise alors les conditions de lexcution de la requte.

Modle OSI (Open System Interconnection)


La compatibilit (linteroprabilit) entre quipements htrognes (constructeurs, fonctions ou gnrations de matriels diffrents) implique des normes dinterconnexion dnissant le comportement de chaque quipement vis--vis des autres. Tout quipement (ou ensemble dquipements) interconnecter est un systme ouvert (un ordinateur, un terminal, un rseau), sil respecte des normes dinterconnexion. Le modle OSI est une architecture abstraite de communication, dcrit dans la norme X.200 de lITU. Il est compos de sept couches, chacune remplissant une partie bien dnie des fonctions permettant linterconnexion.

Remarque
Open System Interconnection se traduit en franais par interconnexion des systmes ouverts , ce qui donne lacronyme ISO. Pour viter toute confusion entre le modle et lorganisme de normalisation, nous parlerons du modle OSI.

2.1 DIFFRENTES

COUCHES DU MODLE

OSI

La gure 4.2 montre les SDU et PDU de toutes les couches du modle OSI. La couche de plus bas niveau est la couche Physique. Elle se caractrise par son taux derreurs, la vitesse de transmission et le dlai de transit. Lunit de donnes manipule ce niveau est le bit. Au-dessus, la couche Liaison de donnes fournit les moyens dtablir, de maintenir et de grer les connexions de liaison de donnes entre entits de rseau. Elle dtecte et corrige, dans la mesure du possible, les erreurs de la couche physique. La trame est lunit de donnes manipule par la liaison de donnes. La couche Rseau fournit aux entits de transport les moyens dtablir, de maintenir et de grer les connexions de rseau ; elle manipule des paquets et les achemine travers le rseau. Ces trois premires couches ont t dnies dans la norme X.25, que nous avons voque au chapitre 3. Tous les quipements du rseau, dans les systmes intermdiaires comme dans les systmes dextrmit, contiennent des entits de rseau. Seuls les systmes dextrmit implmentent les couches suprieures. La quatrime couche, Transport, assure un transfert de donnes able et optimise les cots dutilisation des services rseau disponibles, compte tenu des exigences de service des entits suprieures. Le message est lunit de donnes quelle manipule. Cette couche charnire masque, pour les couches hautes, les disparits entre rseaux. La cinquime couche, Session, organise et synchronise le dialogue entre les systmes dextrmit. La sixime couche, Prsentation, soccupe de la reprsentation des informations, quels que soient les modes de reprsentation interne des machines et dans le rseau. Elle peut se charger aussi de la compression de donnes et de la scurit des informations changes (chiffrement/ dchiffrement, quon appelle parfois cryptage/dcryptage). La dernire couche est la couche Application. Elle contient les entits dapplication, cest--dire les processus des utilisateurs

92

Architecture des rseaux

Chapitre

qui gnrent les informations changer. Au sens du modle OSI, une entit dapplication peut tre une entit de messagerie ou de transfert de chiers par exemple. Il ny a pas de mot dans la langue franaise pour qualier lunit de donnes des trois dernires couches. On parle en gnral de messages. Dans les changes lintrieur du modle OSI, nous trouvons des PDU et des SDU : Ph_PDU dsigne les PDU du niveau Physique, L_PDU celle du niveau Liaison, les N_PDU (N pour network) sont les PDU de niveau Rseau La lettre prxe est T pour Transport, S pour Session, P pour Prsentation et A pour Application. De mme, nous rencontrons des SDU de niveau Liaison, de niveau Rseau, etc. Les premires sont des L_SDU et les suivantes des N_SDU, etc. titre dexemple, les N_SDU sont des units de donnes provenant dentits de la couche Transport, comme les paramtres de connexion fournis par lentit de transport pour louverture du circuit virtuel au niveau Rseau. Figure 4.2
Empilement des sept couches du modle OSI, avec les PDU et SDU utilises.
APDU PSDU Prsentation PPDU SSDU Transaction SPDU TSDU Transport Session Donnes utilisateur

Application

Message

TPDU NSDU Paquet NPDU LSDU Trame LPDU Ph-SDU

Rseau

Liaison

Bit

Physique

A priori, chaque couche (sauf la couche Physique) peut utiliser les quatre types de primitives. Dans le modle de rfrence, le nom complet dune primitive est couramment obtenu en faisant prcder son type par linitiale de la couche, suivie de la nature de lopration : Request, Indication, Response, Conrm.

Exemple

La primitive T_CONNECT.Request est la requte (Request) de demande douverture de connexion (CONNECT) mise par lentit de couche Session vers son entit de Transport (T). Cette primitive demande la couche Transport dtablir une connexion.

Les architectures de communication 93

2.2 MODLE DARCHITECTURE

COUCHES

Le dcoupage propos par le modle initial a connu une volution, du fait de la complexit des normes. En effet, les couches 5 et 6 (Session et Prsentation) ont t progressivement vides de leur substance au l du temps : les couches adjacentes ont intgr leurs fonctionnalits. La couche Transport assume le plus souvent celles de la couche Session, alors que les applications incorporent la description des structures de donnes, mme si la compatibilit totale entre systmes ou versions de systmes est encore loin dtre parfaite Les architectures existantes ne respectent plus vraiment le dcoupage tel que le dcrit le modle initial, mais le principe mme de la structuration en couches reste la base de toutes les architectures. La terminologie et le dcoupage des services rseau ont t adopts par tous : on parle couramment de couche 2 pour la couche Liaison, de couche 3 pour dsigner la couche Rseau, mme si larchitecture considre ne les place cet endroit !

Remarque
Dans larchitecture ATM (que nous avons cite au chapitre 3), il ny a que deux couches basses : la couche 1 ou Physique et la couche 3 ou couche ATM. La couche suprieure, baptise Adaptation lATM (ou AAL, ATM Adaption Layer) est considre comme une couche Transport donc de niveau 4.

2.3 MODLE DARCHITECTURE

ADAPT AUX RSEAUX LOCAUX

LIEEE (Institute for Electricity and Electronics Engineers), une socit amricaine, a constitu un comit dtudes au dbut des annes 1980 (le groupe 802, essentiellement des constructeurs amricains). Lobjectif est alors de dvelopper des standards pour la transmission de messages haut dbit entre systmes informatiques, travers un support partag par ces systmes et indpendant de leur architecture. Ce comit a publi une srie de standards nomms 802.n. Nous les dcrivons plus en dtail au chapitre 5. LISO a ensuite repris les travaux du groupe 802 et les a rfrencs sous le numro 8802.n (le n des rfrences ISO est identique au n utilis dans les rfrences de lIEEE). La modlisation de lIEEE rednit les niveaux 1 et 2 du modle OSI pour les rseaux locaux. Cette modlisation spcie les services rendus la couche suprieure et la faon dimplanter les niveaux 1 et 2. La gure 4.3 montre la correspondance entre les couches 1 et 2 du modle OSI et les couches du modle IEEE. Nous remarquons que, par rapport au modle OSI, larchitecture normalise dans les rseaux locaux dcoupe la couche Liaison en deux sous-couches : MAC (Medium Access Control) et LLC (Logical Link Control). Le niveau MAC, comme son nom lindique, dnit la mthode daccs, cest--dire la manire dont il faut envoyer et recevoir les donnes sur le support partag par toutes les stations du rseau local. Il existe diffrentes mthodes daccs, incompatibles entre elles. CSMA/CD, la mthode daccs des rseaux Ethernet, est la plus connue et la plus utilise. Elle est dcrite dans le standard 802.3. La sous-couche LLC masque les disparits des mthodes daccs. Le chapitre 5 consacr aux rseaux locaux dcrit le fonctionnement dtaill de ces deux sous-couches.

94

Architecture des rseaux

Chapitre

Figure 4.3
Comparaison des modles OSI et IEEE : des positionnements diffrents.


Liaison Physique

LLC MAC Signal physique (PS)

Support (medium) Modle OSI

Support (medium) Modle IEEE

Architecture TCP/IP (Transmission Control Protocol/Internet Protocol)


Larchitecture TCP/IP porte le nom des protocoles principaux qui la constituent, savoir TCP et IP ; on la dnie dans les annes 1960 pour le rseau ARPAnet. Elle sest considrablement dveloppe avec le succs dInternet. Les chapitres 6 et 7 consacrs Internet et chacun de ses deux protocoles phares TCP et IP en dtaillent le fonctionnement.

3.1 STANDARDISATION

DE LARCHITECTURE

TCP/IP

La conception de larchitecture TCP/IP a t trs diffrente de la mthode utilise dans le modle OSI. Les organismes de normalisation internationaux ont en effet dni des concepts universels, rpondant tous les besoins possibles, et des fonctionnalits en dehors de tout souci de ralisation. Les normes de lISO sont de ce fait trs complexes, car elles contiennent de nombreuses options, destines couvrir lensemble des fonctionnalits proposes, quel que soit lenvironnement dapplication. Les concepteurs de larchitecture TCP/IP se sont attachs dcrire en premier les protocoles, avant de proposer un modle de rfrence dcrivant leur empilement. De plus, ils ont privilgi une approche pragmatique : trouver une solution rapide et oprationnelle, mme si elle ne rsout pas la totalit du problme.

3.2 PRSENTATION

DE LARCHITECTURE

TCP/IP

Larchitecture TCP/IP compte quatre couches, comme le montre la gure 4.4 : Rseau physique, Rseau, Transport et Application. Aucune caractristique particulire nest requise pour linfrastructure du ou des rseaux physiques traverss. La couche Rseau physique est donc quelconque. La couche Rseau (quil serait dailleurs plus juste de dnommer interrseaux ) assure la communication entre les rseaux grce au protocole IP (Internet1 Protocol). On utilise la commutation de
1. Internet est lapocope dinternetworking (interrseaux).

Les architectures de communication 95

paquets de type datagramme pour acheminer des donnes entre les systmes dextrmit, quelle que soit la technologie rseau quils emploient. Le protocole IP gre les datagrammes : il les achemine jusqu leur destinataire, se charge du routage et de ladaptation de la taille des donnes au rseau sous-jacent. IP dnit en fait un service minimal, lacheminement des datagrammes travers linterconnexion de rseaux. Ce service est sans connexion et sans garantie. Il ne fait aucune hypothse quant la abilit des rseaux traverss. Au-dessus de la couche IP, larchitecture dnit deux protocoles de transport, en fonction des besoins des utilisateurs : un protocole en mode connect, TCP (Transmission Control Protocol), et un protocole en mode non connect, UDP (User Datagram Protocol). TCP est destin abiliser les changes : il permet aux utilisateurs situs aux extrmits de la connexion dchanger des donnes, avec contrle de ux, contrle derreur, contrle de squence entre les deux extrmits. Il garantit en particulier la livraison squentielle des donnes, leur non-duplication et la rcupration des donnes manquantes. UDP est un protocole non able. Il sert aux applications qui ne souhaitent pas ralentir les transferts de donnes par la lourdeur de la mise en uvre des processus de gestion du mode connect, ou celles qui nont pas besoin de la abilit de TCP : inutile de mettre en uvre des mcanismes complexes pour garantir le squencement des messages par exemple, quand il ny a quun seul message mettre. Enn, la couche Application se greffe directement au-dessus de la couche Transport. Elle contient tous les protocoles de haut niveau quun utilisateur souhaite avoir sa disposition : Telnet, FTP, SMTP, HTTP Nous verrons plusieurs exemples dapplications au chapitre 9. Figure 4.4
Architecture TCP/ IP : un ensemble charnire TCP et IP.

Applications Transport (UDP et TCP) Interrseaux (IP) Rseau physique

Normalisation dans les tlcommunications et les rseaux


Dans des domaines techniques comme les rseaux et les tlcommunications, la normalisation rpond aussi bien aux attentes des consommateurs quaux besoins des fabricants. Dun ct, elle offre aux utilisateurs la garantie que deux produits aux fonctions identiques mais de fabricants diffrents puissent fonctionner correctement ensemble. De lautre, les industriels peuvent esprer toucher un plus grand nombre de consommateurs grce la normalisation de leurs produits. En effet, toute solution propritaire provoque la rticence des utilisateurs et des entreprises dpendre dun seul fournisseur pour leur approvisionnement : dans la mesure o certains quipements sont vitaux pour la survie mme de lentreprise, la continuit du service passe par la possibilit de disposer de plusieurs sources indpendantes dapprovisionnement.

96

Architecture des rseaux

Chapitre

Diffrents organismes de normalisation dictent des avis qui couvrent tous les aspects dun quipement : aspects lectriques, mcaniques, interconnexion Les principaux organismes internationaux de normalisation regroupent des reprsentants des industriels, des administrations, des utilisateurs : lISO (International Standardization Organization), lITU (International Telecommunications Union) On trouve galement divers groupements de constructeurs comme : lECMA (European Computer Manufacturer), lEIA (Electronic Industries Association) Dans Internet, lIAB (Internet Architecture Board) dnit la politique du rseau long terme alors que lIETF (Internet Engineering Task Force) soccupe de lhomognit des solutions et publie les RFC (Request For Comments). Une norme passe par plusieurs tapes : le rsultat des compromis entre les diffrentes parties sexprime dans un document brouillon (draft). La forme stable du document est publie sous forme de draft proposable. Le Draft International Standard est la forme quasiment dnitive. Il constitue une base de travail pour les industriels. Enn, lIS (International Standard) est la forme dnitive du document. Lorganisme considr publie la forme nale, en utilisant une rfrence qui dpend de son domaine dapplication.

Rsum
Une architecture de communication formalise lempilement de couches de protocoles et des services offerts pour assurer linterconnexion des systmes. Nous avons prsent le modle abstrait, dni dans le milieu des annes 1970, communment appel modle de rfrence ou modle OSI. Si ce modle ne prcise pas le fonctionnement dtaill des systmes rels, il a apport un vocabulaire et des concepts de structuration encore utiliss de nos jours. La preuve en est donne par les adaptations apportes au modle OSI initial pour tenir compte de lavnement des rseaux locaux, aujourdhui les plus utiliss dans les entreprises ou chez les particuliers. Nous avons prsent succinctement larchitecture de communication TCP/IP, la plus largement rpandue puisquelle est utilise dans Internet. Les prochains chapitres dtailleront les protocoles un par un. Enn, nous voquons brivement le processus de normalisation.

Les architectures de communication 97

Problmes et exercices
EXERCICE 1 CHOIX
DES PRIMITIVES DUN NIVEAU DONN
Une interface entre deux couches adjacentes peut se dcrire par lensemble des primitives quelle offre aux entits de la couche suprieure. Quels sont les critres retenir dans le choix des primitives dun niveau donn ?

Trois considrations principales doivent guider le concepteur dun niveau donn : dnir les services offerts par la couche (i) aux entits (i + 1), en tenant compte de la position de ce niveau dans larchitecture de communication ; proposer un nombre minimal de primitives diffrentes, pour ne pas compliquer inutilement linterface ; minimiser le nombre de paramtres prendre en compte dans chaque primitive dnie.

Pour satisfaire la premire condition, il faut avoir une ide trs prcise du fonctionnement de la couche (i). Par ailleurs, la complexit de linterface dpend de lendroit o se situe le niveau considr : une couche de bas niveau offre forcment des services plus limits quune couche haute de larchitecture. Il faut donc dnir les services qui seront disponibles et dcider du nombre dentits ncessaires leur gestion. Il faut galement dterminer les interactions entre les diffrentes entits, an de dnir la circulation des informations au sein de la couche. La deuxime condition doit tre remplie dans un souci defcacit. Si linterface compte un grand nombre de primitives diffrentes, lentit (i + 1) risque au mieux de ne pas en utiliser toutes les subtilits. Au pire, elle peut entraner une baisse des performances prjudiciable toute larchitecture. En effet, le nombre lev de primitives risque fort de mener des doublons. loppos, les entits (i + 1) pourraient laisser certaines primitives inusites. La troisime condition fournit une meilleure lisibilit du service demand et acclre son traitement. Supposons que chaque paramtre de la primitive soit gr par une entit. Si la primitive contient 10 paramtres, il faudra concevoir 10 entits pour les manipuler, dnir leur mode de coopration et prvoir toutes les situations possibles entre chaque paire dentits concernes par le traitement du service Cela risque de provoquer, lintrieur du niveau, des boucles dans le parcours de donnes entre les entits charges de traiter le service demand. Dans tous les cas, le temps de traitement de la primitive sen trouve notablement allong par rapport une primitive plus simple. Il faut donc assurer un compromis entre des conditions contradictoires : une primitive simple se traite plus efcacement, mais elle nexcute quun service limit par rapport une primitive plus sophistique. Il faut alors augmenter le nombre de primitives disponibles. On risque de tomber dans le travers de dnir un excs de primitives, forcment trs mal utilis

98

Architecture des rseaux

Chapitre

EXERCICE 2

PROCDURES

EN CAS DE PANNE DU RSEAU

Pendant un transfert de donnes sur un circuit virtuel, une panne se produit lintrieur dun rseau respectant la norme X.25. Quelles sont les consquences de la panne dans le rseau ? Quels types de primitives le rseau utilise-t-il pour signaler lvnement aux deux extrmits du circuit virtuel ? Quelles en sont les consquences pour les entits de niveau Transport ? Quelles sont les stratgies de reprise possibles ? La panne dans le rseau provoque la rupture du circuit virtuel dj tabli. Les nuds voisins du nud dfaillant (ou les nuds situs aux deux extrmits de la liaison de donnes dfaillante) dtectent cet vnement et le propagent jusquaux extrmits du circuit virtuel. Les entits de Rseau des systmes dextrmit le signalent leurs entits de Transport en envoyant une primitive de type Indication, indiquant la cause de la rupture du circuit virtuel, lorsque celle-ci est connue. En recevant la primitive de type Indication, les entits de Transport ragissent en fonction des choix quelles ont faits au moment de ltablissement de la connexion de Transport. Par exemple, si elles ont ou non ngoci la possibilit dun fonctionnement en mode dgrad. Deux stratgies sont possibles : soit il y a abandon de la communication interrompue, soit il y a tentative de reprise, en particulier si la connexion de Transport a prvu un fonctionnement en mode dgrad. Dans le premier cas, la connexion est rejete ; il faut rtablir ultrieurement une connexion de Transport, en utilisant la mme connexion Rseau (si on utilise un CVP, circuit virtuel permanent, rinitialis) ou en ouvrant une nouvelle connexion Rseau avant dtablir la nouvelle connexion de Transport. Dans le second cas, les entits de Transport ont prvu dutiliser une procdure de rcupration derreurs, ce qui leur permet de redmarrer le transfert des donnes par la rmission de toutes les donnes non encore acquittes.

EXERCICE 3

TABLISSEMENT

DE CONNEXIONS LIAISON ET

RSEAU

Une entit de Rseau souhaite envoyer des donnes provenant des couches suprieures. Dcrivez les changes de primitives entre une entit de Rseau quelconque et lentit de Liaison, en supposant que la liaison de donnes soit exploite avec le protocole LAP-B, quelle ne soit pas encore initialise et quil ny ait aucune erreur de transmission des donnes. Que se passe-t-il sil se produit une erreur de transmission ? En supposant que la liaison de donnes soit oprationnelle, dcrivez les changes entre lentit de Rseau locale et lentit de Liaison locale pour ouvrir un circuit virtuel.

Les architectures de communication 99

Exercices

Supposons que nous soyons du ct du systme dextrmit qui prend linitiative. Nous appellerons entit de Rseau locale lentit de Rseau situe dans notre systme et entit de Rseau distante lentit de Rseau du systme dextrmit qui doit recevoir les donnes. De mme, nous appellerons nud local le point daccs au rseau du systme dextrmit local et nud distant le point daccs au rseau du systme dextrmit distant. Les changes entre les entits locales de Liaison et de Rseau concernent le systme dextrmit local qui dsire envoyer des donnes. Pour envoyer ses donnes lentit de Rseau distante, lentit de Rseau locale met une primitive de type Requte vers son entit locale de Liaison. Cette requte contient les donnes transmettre. la rception de cette primitive, lentit de Liaison locale constate quelle ne peut pas assurer le service demand puisque la liaison de donnes nest pas oprationnelle. Elle tablit donc la liaison laide dune trame dinitialisation (une trame U, par exemple SABM,P et reoit en retour la trame U dacceptation UA,F, [voir chapitre 2]). Puis lentit de Liaison locale envoie lentit de Liaison du nud local autant de trames I que de paquets envoyer. Elle reoit les acquittements des trames I mises par lentit de Liaison du nud local, conformment au protocole de liaison. Une fois le transfert de donnes correctement termin, lentit de Liaison locale envoie lentit de Rseau locale une primitive de type Indication pour la prvenir de la (bonne) n du transfert. La gure 4.5 montre les changes entre les deux entits locales et lentit de Liaison du nud local. Figure 4.5
changes entre les diffrentes entits pour le traitement de la requte : une requte rseau simple peut donner lieu de multiples changes du protocole de liaison.
Entit de rseau locale (1) Requte (SDU) (2) SABM, P UA,F (4) I20 I10 I00 RR3 (6) Indication (OK) (5) (3) Entit de liaison du nud local

Entit de liaison locale

(1) Lentit de rseau locale du systme dextrmit met une requte pour envoyer les donnes (SDU). (2) Lentit de liaison locale demande linitialisation de la liaison de donnes en envoyant la trame SABM,P (3) lentit de liaison du nud d'accs accepte linitialisation de la liaison en envoyant UA,F. (4) Lentit de liaison d'accs met autant de trames I que ncessaire (ici 3 trames). (5) Lentit de liaison du nud local acquitte les trames I. (6) Lentit de liaison locale prvient lentit de rseau locale de la bonne fin du transfert de donnes.

En cas derreur de transmission, lentit de Liaison situe dans le nud daccs met une trame REJ si la trame errone est suivie dune autre trame I. Si la trame errone est la dernire, elle est retransmise par lentit de Liaison locale aprs expiration du temporisateur associ.

100

Architecture des rseaux

Chapitre

Remarque
Lchange des trames et des primitives montre bien que les entits de Rseau (locale et distante) ne peuvent pas tre averties dune erreur de transmission, puisque cet vnement est totalement pris en charge par leurs entits de Liaison respectives : les entits de Rseau ne manipulent que des units de donnes exemptes derreurs (en cas derreurs rsiduelles, elles grent des units de donnes dont les erreurs nont pas t dtectes par les entits de Liaison).

Pour ouvrir le circuit virtuel, lentit de Rseau locale envoie une primitive de type Requte avec les paramtres de la future connexion contenus dans le paquet APPEL (voir chapitre 3). Lentit de Liaison locale insre ce paquet dans une trame I et lenvoie dans le rseau. Lentit de Liaison du nud local acquitte la trame I contenant le paquet APPEL. Au bout dun certain temps, lentit de Liaison locale reoit de lentit de Liaison du nud local la trame I contenant le paquet COMMUNICATION_ETABLIE (provenant de lentit de Rseau distante). Elle extrait ce paquet du champ de donnes et le soumet lentit de Rseau locale. Celle-ci analyse le contenu du paquet et apprend ainsi que lentit de Rseau distante a accept la connexion. Elle peut alors commencer le transfert de donnes. La gure 4.6 dcrit les changes entre les entits concernes. Dans cette gure, les units de donnes manipules par lentit de Rseau sont en italique gras ; le contenu du champ de donnes dune trame est entre crochets. Les trames sont les units de donnes manipules par les entits de Liaison. Figure 4.6
change de donnes entre les entits de Rseau et de Liaison.
Entit de liaison du nud local

Entit de rseau locale (1) I01 [APPEL]

Entit de liaison locale

RR1 I00 [APPEL] RR1 I01[COM_ACC] (5) I01 [COM_ETA] RR1 (1) Lentit de rseau locale met une demande douverture de connexion ( APPEL). (2) Lentit de liaison locale insre le paquet APPEL dans une trame I rfrence I00. (3) Lentit de liaison du nud local acquitte la trame contenant le paquet APPEL. (4) Lentit de liaison du nud local a reu la rponse de lentit de rseau distante. Elle linsre dans le champ de donnes de la trame I01. (5) Lentit de liaison locale acquitte la trame contenant la rponse de lentit de rseau distante. (6) Lentit de liaison locale soumet le rsultat de la requte lentit de rseau locale par une primitive de type Indication (COM_ETA). (6) RR1 (2) (3) (4)

Les architectures de communication 101

Exercices

EXERCICE 4

NOTIONS

DE

SDU

ET

PDU

DES NIVEAUX

RSEAU

ET LIAISON

Utilisez les notations de ce chapitre pour dcrire les PDU et SDU changes entre entits locales de couches adjacentes : reprenez lexercice prcdent demandant les changes de donnes ncessaires louverture du circuit virtuel en indiquant quelles sont les PDU et les SDU des niveaux Rseau et Liaison de donnes.

Dans ces changes, nous trouvons deux types de PDU et deux types de SDU : les PDU de niveau Liaison (L_PDU) et de niveau Rseau (N_PDU). Puisque nous nous plaons au niveau de linterface Liaison et Rseau, nous ne pouvons pas trouver de N_SDU dans notre change. Les N_PDU sont les units de donnes manipules par les entits de Rseau : il sagit du paquet APPEL (gnr par lentit de Rseau locale partir des donnes fournies par lentit de Transport locale) et du paquet COMMUNICATION_ETABLIE (gnr par lentit de Rseau distante et transport travers le rseau de communication jusqu lentit de Rseau locale). Les L_SDU sont les units de donnes du service fourni par la couche Liaison. Ces units de donnes sont insres dans le champ de donnes dune trame dinformations. Elles contiennent les paquets APPEL et COMMUNICATION_ETABLIE. Les L_PDU sont les units de donnes que gre le protocole de liaison. Il sagit donc des trames de type I, S et U. Dans notre exemple, nous trouvons les trames I transportant les paquets et les trames S qui acquittent les trames prcdentes : dune part les trames I00 et I01 (L_PDU avec champ de donnes) et, dautre part, les trames RR1 (L_PDU dacquittement, sans donnes).

EXERCICE 5

CONTENU

DES

PDU DUN

NIVEAU QUELCONQUE

Que peut contenir une PDU(N), cest--dire une PDU de niveau N, pour N 7 ? Donnez des exemples pour N = 2 et N = 3 dans le cas de X.25 (gestion des circuits virtuels avec LAP-B comme protocole de liaison). En nous appuyant sur lexercice prcdent, nous voyons quil y a deux types de PDU(N) : celles qui contiennent des informations de supervision (ou de commande) et celles qui contiennent des donnes et/ou des informations de commande de lutilisateur. Les entits homologues schangent le premier type de PDU pour la supervision du protocole de niveau N. Le second type de PDU correspond celles qui transportent des donnes et des informations de commande du niveau N + 1 : ce sont les PDU qui transportent tout ou partie dune SDU de niveau N, cest--dire une PDU de niveau N + 1. Lorsque N = 3, il sagit de N_PDU. Ce sont soit des PDU de commande, comme APPEL, RR, LIB_CONF, COMMUNICATION_ETABLIE, soit des paquets contenant les donnes de lutilisateur ou des informations de commande provenant de la couche Transport.

102

Architecture des rseaux

Chapitre

Quand N = 2, les L_PDU de commande sont, par exemple, SABM, UA, RR Les trames I sont les seules L_PDU contenant des donnes dun utilisateur de la couche Rseau, quel que soit leur contenu.

Remarque
Puisque les trames I sont les seules L_PDU contenant des units de donnes du protocole rseau, nous voyons bien maintenant la diffrence entre une trame RR et un paquet RR : une trame RR est une trame S, cest--dire une L_PDU de commande. Un paquet RR est une N_PDU de commande transporte dans une trame I.

EXERCICE 6

QUELQUES

PRIMITIVES DU MODLE

OSI

Un systme dextrmit utilise une architecture de communication conforme au modle OSI. Considrons par exemple la primitive : N_CONNECT.Indication. Dans quelle couche du modle OSI se situe lentit qui met cette primitive ? quelle entit est destine cette primitive ? Considrons maintenant la primitive : L_DATA.Request. quel niveau se situe lentit qui met cette primitive ? Quelle est son utilit ? La primitive provient dune entit de Rseau. Elle signale quune demande douverture de circuit virtuel lui est parvenue. La primitive sadresse une entit de Transport, qui dcide si elle accepte ou non la connexion. La rponse de cette entit se trouve dans la primitive N_CONNECT.Response (elle contient un paramtre codant lacceptation ou le refus de la connexion). La primitive L_DATA.Request mane dune entit de Rseau, destine lentit de Liaison. Elle fournit cette dernire les paquets de donnes mettre. En la recevant, lentit de Liaison construit une trame dinformations avec les informations de commande appropries (en-tte et queue de la trame), puis elle place le paquet dans le champ de donnes de la trame.

EXERCICE 7

RLE

DES PRIMITIVES DU MODLE

OSI

Un systme dextrmit utilise une architecture de communication conforme au modle OSI. Considrons la primitive de service : N_CONNECT.Request. Dans quelle couche du modle OSI se situe lentit mettrice de la primitive ? quoi sert cette primitive, si le systme dextrmit accde un rseau public de donnes utilisant le protocole X.25 ? Comment lentit mettrice de la primitive N_CONNECT.Request saura-t-elle que sa primitive a t traite ? qui est destine cette primitive ?

Les architectures de communication 103

Exercices

Lentit mettrice se situe au-dessus de la couche Rseau puisquelle utilise ses services. Elle se trouve donc dans la couche Transport. Elle sadresse au prestataire de services, donc une entit de niveau Rseau. Elle sert dclencher le processus dtablissement dun circuit virtuel. Elle sait que sa primitive est prise en compte en recevant une primitive N_CONNECT.Conrm de la part de lentit de niveau Rseau. Cette primitive lui indique comment sest droul ltablissement de la connexion (succs ou chec).

EXERCICE 8

RELATIONS

ENTRE

PDU

ET

SDU

DES DIFFRENTS NIVEAUX

Un utilisateur souhaite envoyer une photo de 448 000 octets dans un rseau. Larchitecture de communication respecte le modle 5 couches voqu la section 2.2, cest-dire un modle de rfrence OSI adapt aux rseaux locaux. Sachant que la couche Transport gre des messages de 1 Kilo-octet (1 Kilo-octet vaut 1 024 octets) et utilise pour cela un en-tte de 24 octets pour grer 1 000 octets de donnes, que la couche Rseau utilise des paquets de 128 octets dont les 3 premiers constituent len-tte du paquet, on demande : Quelle est, en octets ou en kilo-octets, la taille dune T_SDU ? Quelle est celle dune T_PDU de donnes ? Dune N_SDU ? Dune N_PDU de donnes ? Dune L_SDU ? Dune L_PDU de donnes ? Combien de paquets de donnes faut-il envoyer pour transmettre la photo si on ne tient pas compte des paquets envoyer pour la gestion du protocole de transport ? Mme question si on en tient compte. Lutilisateur bncie maintenant de larchitecture TCP/IP dans son ordinateur. Quel protocole de transport lapplication utilise-t-elle ? Pourquoi ? TCP gre des segments de 64 Kilo-octets. Combien de segments diffrents TCP fabrique-t-il pour transporter la photo sur Internet ? La T_SDU est la photo envoyer. Sa taille est de 448 000 octets. Lentit de Transport gre des units de donnes de 1 Kilo-octet ; une T_PDU de donnes contient donc 1 000 octets de donnes, une N_SDU en contient 1 024. Lentit de Rseau utilise des paquets de 128 octets, dont les 3 premiers reprsentent lentte du paquet. Une N_PDU de donnes contient 125 octets, alors quune L_SDU contient 128 octets dans son champ de donnes. Nous avons vu que dans chaque paquet se trouvent 125 octets de donnes. Il faut : 3 584 paquets de donnes pour transporter la photo. En fait, il faut envoyer : 448 000/ 1 024 = 437,5 soit 437 messages de 1 024 octets et un message moiti plein. Cela fait en tout 3 589 paquets, sans compter les paquets ncessaires la gestion de la connexion de Transport. Il utilise TCP pour que le destinataire puisse recevoir les diffrents paquets de la photo dans lordre et sans erreur TCP fabrique 6 segments de 64 Kilo-octets de donnes plus un dernier segment de donnes partiellement rempli.

104

Architecture des rseaux

Chapitre

Les rseaux locaux dentreprise


1. Architectures de rseaux locaux 106 2. Techniques daccs au support 111 3. Ethernet IEEE 802.3 de premire gnration ............................ 113 4. Token Ring IEEE 802.5 ........... 116 5. volution des rseaux locaux .. 119 6. Interconnexion des rseaux locaux 121 7. Rseaux locaux sans fil .......... 128

Pour rpondre leurs besoins propres en informatique distribue, les entreprises ont mis en uvre des rseaux locaux dentreprise, constitus dun ou plusieurs rseaux locaux ou LAN (Local Area Network). Ils utilisent des protocoles simples car les distances couvertes sont courtes (de quelques centaines de mtres quelques kilomtres) et les dbits importants (jusqu plusieurs centaines de Mbit/s). Aprs avoir vu la normalisation des architectures de rseaux locaux, nous dtaillerons les diffrentes techniques daccs au support, spcifiques de ce type de rseau. Puis nous analyserons le fonctionnement des rseaux locaux de premire gnration pour mieux comprendre leurs volutions technologiques. Nous verrons comment interconnecter ces diffrents rseaux, en insistant sur les commutateurs qui occupent une place de choix dans les rseaux actuels. Enfin, nous aborderons les rseaux sans fil.
105

Problmes et exercices 1. Cbler un petit rseau local .... 131 2. Diffrences entre 802.3 et 802.5 132 3. Bouchon de terminaison ......... 132 4. Priode de vulnrabilit .......... 132 5. Longueur quivalente dun bit . 133 6. Adresse MAC ........................ 133 7. Dbit utile thorique ............... 134 8. Dbit utile rel ....................... 134 9. Taille minimale des trames E hernet 135 10. Simulation de trafic sur Ethernet 136 11. Risque de collisions et dlai moyen dattente ..................... 137 12. Latence dun anneau jeton ... 138 13. Trafic sur un anneau jeton ... 139 14. Ethernet commut .................. 140 15. Gigabit Ethernet .................... 140 16. Rseaux locaux virtuels .......... 141 17. Interconnexion ....................... 142 18. Rle des ponts ....................... 143 19. Algorithme de larbre couvrant 144 20. Utilisation de VRRP pour quilibrer le routage dans un rseau dentreprise 145

Architectures de rseaux locaux


Les rseaux locaux informatiques rpondent aux besoins de communication entre ordinateurs au sein dune mme entreprise. Il sagit de relier un ensemble de ressources devant communiquer : stations de travail, imprimantes, disques de stockage, ordinateurs, quipements vido. Ns dans les annes 1970, ils ont t proposs par les fournisseurs informatiques. Leur simplicit et leur popularit sont dues au fait quils furent conus pour des environnements privs, sans recours aux solutions normalises que proposaient les oprateurs de tlcommunications (qui se trouvaient en situation de monopole cette poque). Laccs Internet fut ensuite largement facilit, du fait que les quipements taient relis au sein de lentreprise. Il ny avait plus qu mettre en place un partage scuris de cet accs. Des rseaux plus tendus ont prolong les rseaux locaux (surtout aux tats-Unis) : des rseaux mtropolitains ou interurbains appels MAN (Metropolitan Area Network) se sont dvelopps pour relier les tablissements dune mme ville. Les rseaux grande distance ou WAN (Wide Area Network) assurent linterconnexion de tous ces rseaux aux niveaux national et mondial. Des mcanismes dinterconnexion permettent de relier les rseaux locaux aux autres types de rseaux. Un rseau local se caractrise par des quipements gographiquement proches les uns des autres et qui cooprent en utilisant le support de transmission pour diffuser les donnes : lensemble des autres quipements du rseau reoit tout bit mis par un quipement du rseau local. Cette particularit est la base des architectures spciques de rseaux locaux, standardises dans les annes 1980. La section suivante nous permet de dcouvrir lorganisation physique des rseaux locaux, ladressage, la topologie, le cblage et la couche Liaison de donnes.

1.1 STANDARDS IEEE


Le comit 802 de lIEEE, essentiellement constitu de reprsentants des constructeurs amricains, sest occup de larchitecture des rseaux locaux. Plusieurs documents dnissent larchitecture propose (voir gure 5.1) : Le standard 802.1 dnit le contexte gnral des rseaux locaux informatiques. Le standard 802.2 dnit la couche Liaison de donnes. Les standards 802.3, 802.4, 802.5 et 802.6 dnissent diffrents protocoles daccs au support, pour plusieurs types de supports physiques : paire mtallique, cble coaxial ou bre optique. Le standard 802.11 dnit un protocole daccs pour les rseaux locaux sans l (WLAN, Wireless LAN). Dautres standards ont vu le jour ultrieurement, au fur et mesure de lvolution technologique. Par rapport au modle OSI, larchitecture normalise dans les rseaux locaux dcoupe la couche Liaison en deux sous-couches : MAC (Medium Access Control) et LLC (Logical Link Control). La premire rgle laccs au support partag. Elle ltre les trames reues pour ne laisser passer que celles rellement destines lquipement concern. La seconde gre lenvoi des trames entre quipements, quelle que soit la technique daccs au support. Les spcications de lIEEE ne concernent donc pas les couches situes au-dessus de LLC.

106

Architecture des rseaux

Chapitre

Figure 5.1
Modle IEEE des rseaux locaux.
Non spcifi LLC (Logical Link Control) MAC (Medium Access Control) PMI (Physical Medium Independent sub-layer) PMD (Physical Medium Dependent sub-layer)

Comme on le voit la gure 5.1, la couche physique est quelquefois dcoupe en deux niveaux : PMI (Physical Medium Independent sub-layer) qui assure le codage en ligne indpendamment du type de support de transmission utilis, et PMD (Physical Medium Dependent sub-layer), qui soccupe de lmission physique du signal.

1.2 ADRESSAGE
Dans les rseaux locaux, ladresse utilise est une adresse physique qui se gre au niveau du matriel. Elle possde un format dni par lIEEE sur 16 ou sur 48 bits. Ce dernier format constitue ladressage universel des quipements : il correspond un numro de srie dont un premier champ de 24 bits donne le constructeur de la carte (champ attribu par lIEEE). Le second champ de 24 bits, librement choisi par le constructeur, est le numro de la carte elle-mme. De cette faon, toute carte rseau dun ordinateur possde une adresse physique unique dans le monde1. Le format universel sur 48 bits est le plus utilis (voir gure 5.2). Il est gnralement baptis adresse MAC, du nom de cette couche. Figure 5.2
Format gnral des adresses MAC.
Adresse universelle sur 48 bits Adresse constructeur 24 bits Adresse carte 24 bits

On peut galement dnir des adresses de groupe qui englobent plusieurs utilisateurs. Par exemple, dans le format universel, ladresse de diffusion (ou broadcast) correspond lensemble des quipements dun rseau local. Dans cette adresse, tous les bits sont 1. On lcrit : FF:FF:FF:FF:FF:FF en hexadcimal.

Remarque
Les systmes dexploitation afchent ladresse MAC de la carte rseau en hexadcimal, grce la commande ifconfig (pour Unix) ou ipconfig (pour Windows). On spare les diffrents octets par deux points sous Unix ou par un tiret sous Windows, comme le montrent les deux exemples ci-aprs : Sous Linux, la commande /sbin/ifcong eth0 afche (entre autres) : eth0Link encap:EthernetHWaddr 00:90:27:6A:58:74 Sous Windows, la commande ipcong /all afche (entre autres) : Adresse physique : 525405-FD-DE-E5

1. Cette rgle nest plus vraiment respecte, car il est dsormais possible de programmer soi-mme ladresse MAC de sa carte rseau (voir lexplication dans la remarque de lexercice 6).

Les rseaux locaux dentreprise 107

1.3 TOPOLOGIE DUN

RSEAU LOCAL

partir des trois topologies de base : le bus, lanneau et ltoile, de nombreuses versions sont possibles. Il faut distinguer la topologie physique de la topologie logique. La premire caractrise la manire dont est ralis le cblage du rseau local (la structure des chemins de cbles, le type de raccordement) ; la seconde dcrit comment on attribue le droit la parole entre toutes les stations. La topologie logique dnit la mthode daccs au support (ou niveau MAC) utilise.

Topologie physique
La topologie en bus consiste utiliser un long cble, sur lequel les diffrents quipements se raccordent en srie, pour quil ny ait quun seul chemin sans boucle entre deux quipements du rseau local. Chaque station peut accder tout moment au support commun pour mettre. Les donnes sont diffuses toutes les stations. Le temps de propagation ntant pas nul, il peut se produire des collisions lorsque diffrentes stations mettent au mme moment. Lexemple type dune topologie en bus est illustr gure 5.3. Cette topologie permet de faire des communications point point et se prte naturellement la diffusion. En revanche, toute coupure du bus entrane une panne complte du rseau. Figure 5.3
Topologie en bus.

Dans la topologie en anneau, chaque station est connecte au support par un port dentre et transmet les donnes la station suivante par son port de sortie. Les diffrentes stations sont relies en cascade et les donnes circulent dune station lautre, toujours dans le mme sens : chaque station traverse prend le message, lanalyse puis le retransmet sur son port de sortie (voir gure 5.4). Lanneau manque de abilit en cas de rupture du support. On le double parfois pour raliser deux anneaux qui peuvent transmettre soit dans le mme sens soit en sens inverse. La seconde solution est prfrable car elle permet de reconstituer le rseau, mme en cas de rupture des deux anneaux au mme endroit. La topologie en toile est, en fait, la gnralisation des liaisons point point : chaque quipement est reli par une liaison spcique un quipement central. La complexit de celui-ci dpend des modes de communication entre stations. Cette topologie prsente un point faible : le rseau est inutilisable en cas de panne de lquipement central, lequel peut constituer un goulet dtranglement et entraner la dgradation des performances du rseau sil est mal dimensionn.

108

Architecture des rseaux

Chapitre

Figure 5.4
Topologie en anneau.

Figure 5.5
Topologie en toile.

Topologie logique
La topologie logique sappuie sur la manire dont les quipements changent leurs donnes sur le rseau local. Elle ne dpend que du niveau MAC choisi et non de la faon de raccorder les quipements entre eux. Pratiquement, deux topologies logiques sont considrer : le bus et lanneau. On peut en effet utiliser diffrentes topologies physiques pour raliser une topologie logique donne. Par exemple, une topologie logique en bus peut utiliser aussi bien un cblage physique en bus (cas du coaxial) quune topologie en toile (pour un cblage physique par paires torsades). De mme, une topologie logique en anneau peut utiliser un anneau physique, un cblage en toile autour dun rpartiteur, voire une topologie physique en bus !

Les rseaux locaux dentreprise 109

1.4 POLITIQUE

DE CBLAGE

La mise en place du cblage constitue un service de base, au mme titre que linfrastructure lectrique des btiments. Cest pourquoi il faut disposer dun systme de cblage universel, adapt la diversit des quipements et permettant la mise en uvre de toutes les architectures de rseaux. Il existe deux possibilits de cblage : le postcblage et le prcblage. Le postcblage consiste installer linfrastructure de communication, au fur et mesure des besoins, dans des btiments qui navaient pas t prvus pour cela. On cble gnralement le rseau local en calquant la topologie physique sur la topologie logique. Laccroissement du parc des quipements informatiques, les restructurations de socits, les dmnagements donnent lieu des modications de cblage continuelles et coteuses. Cette solution est de plus en plus obsolte. Le prcblage se conoit ds la construction du btiment. On le trouve aujourdhui dans tous les btiments neufs, notamment dans les immeubles de bureaux. Il permet la mise en uvre de toutes les topologies et consiste poser une grande quantit de conducteurs offrant une grande souplesse darrangement. La prsence des cbles est prvue tous les tages, mme si on ne connat pas laffectation future des locaux. Certains constructeurs proposent mme une gestion technique du systme de cblage. Le prcblage est videmment moins coteux pour lentreprise.

1.5 COUCHE LLC


Le standard IEEE 802.2 dnit un protocole de commande, LLC, fond sur les principes du protocole normalis HDLC que nous avons vu au chapitre 2. Trois classes sont dnies : LLC1 fournit un service simple sans connexion ni contrle, en point point, en multipoint ou en diffusion. LLC2 assure un service avec connexion entre deux points daccs et possde les fonctionnalits compltes du niveau Liaison du modle OSI (contrle de ux et contrle derreur). LLC3, adapt au monde des rseaux industriels, rend un service sans connexion avec acquittement. LLC1 est le protocole le plus courant dans les rseaux locaux informatiques. Il se rduit pratiquement une seule trame : UI (Unnumbered Information), trame dinformation non numrote, correspondant la notion de datagramme. Le service rendu par le protocole LLC1 est minimal : il se contente de formater les messages mettre et de leur ajouter un bloc de contrle derreur. Le rcepteur vrie le bloc de contrle et dtruit les messages reus errons. Il ny a aucun accus de rception, ni aucune demande de retransmission. Un tel fonctionnement est acceptable dans lenvironnement des rseaux locaux car les distances ainsi que les taux derreur sont trs faibles. Les messages manquants sont ventuellement dtects puis rmis au niveau de la couche Transport. LLC2 est un protocole complet, analogue la norme HDLC vue au chapitre 2. Quant LLC3, il ajoute LLC1 la notion daccus de rception. Dans les rseaux locaux industriels ou la commande de processus, il est important de garantir la abilit des transmissions, do lide dun protocole sans connexion qui permette la bonne rception des messages sans la lourdeur impose par la gestion des connexions. Les trois classes de LLC taient destines couvrir lensemble des besoins des utilisateurs. Aujourdhui, la plupart des installations existantes se contentent de LLC1.

110

Architecture des rseaux

Chapitre

Techniques daccs au support


Les rseaux locaux ncessitent un partage du support donc de sa bande passante utile entre les diffrents utilisateurs. Les constructeurs informatiques ont propos de nombreuses techniques daccs regroupes en deux grandes familles : les unes accs alatoire, les autres accs dterministe. Dans les techniques accs alatoire, chaque quipement met ses donnes sans se soucier des besoins des autres. Plusieurs variantes sont fondes sur ce principe. Dans les techniques dterministes, laccs au support se fait tour de rle. Laccs est soit x a priori (indpendamment de lactivit des quipements), soit dynamiquement (en fonction de leur activit). Cette famille de techniques comprend tous les protocoles jetons, dans lesquels le droit dmettre est explicitement allou un quipement grce une trame particulire appele jeton.

Remarque
Aloha, la plus ancienne mthode de contrle daccs un support physique, appartient aux techniques alatoires. Elle consiste envoyer un message, sans soccuper de ce que font les autres quipements. En cas de collision, le message est retransmis au bout dun temps alatoire. Son nom provient de larchipel dHawa car cette technique y fut exprimente pour la premire fois, dans un rseau hertzien reliant les diffrentes les.

2.1. TECHNIQUES DACCS

ALATOIRE

Les mthodes daccs alatoire portent le nom gnrique de CSMA (Carrier Sense Multiple Access). Elles sont bien adaptes la topologie en bus et exploitent la trs faible distance entre les quipements. Quand un quipement a une trame mettre, il se met lcoute du support2, attend que celui-ci soit libre avant de commencer la transmission. Du fait des temps de propagation non nuls, un quipement peut provoquer une collision, mme sil a cout au pralable et na rien entendu : plus le dlai est grand et plus le risque de collision augmente. Il existe diffrentes variantes de ce mcanisme. La plus classique est normalise sous le nom IEEE 802.3 : CSMA/CD (CSMA with Collision Detection). Loriginalit de ce mcanisme, illustr la gure 5.6, est que lquipement continue dcouter le support de transmission aprs le dbut de son mission. Il arrte dmettre, aprs un trs bref dlai, sil dtecte une collision3. Le temps dcoute pendant lmission est limit quelques microsecondes (il reprsente le temps de propagation aller et retour entre les deux stations les plus loignes). La dure de la collision est ainsi rduite au strict minimum. La priode pendant laquelle il est impossible dviter une collision malgr lcoute pralable sappelle priode de vulnrabilit. La longueur maximale du bus dtermine la dure maximale de cette priode.

2. couter revient mesurer la puissance du signal reu : en effet, le rapport signal/bruit garantit qu'on sait faire la diffrence entre un signal de donnes et un simple bruit sur le support. Le support est libre si on ne dtecte pas de signal transportant une donne. 3. Lorsque deux stations mettent simultanment, leurs signaux se superposent et chaque metteur ne reconnat plus son message sur le support.

Les rseaux locaux dentreprise 111

Figure 5.6
Mcanisme CSMA/CD.
Oui

Trame mettre Essai := 0

Porteuse ? Non Essai := essai + 1

Calculer dlai (fonction du nombre Essai)

Dbut d'mission Collision ? Non Suite et fin d'mission Oui

Continuer l'mission (dure minimale) puis stopper

Attendre

Essais >16 ? Oui

Non

Fin : mission russie

Fin : chec

Avec une technique alatoire, le temps ncessaire pour mettre une trame ne peut tre garanti. En effet, les retransmissions sont faites au bout dun intervalle de temps qui dpend du nombre de tentatives. Aprs 16 tentatives infructueuses, lquipement abandonne. Lintrt de cette technique est sa simplicit de mise en uvre, car elle ne ncessite pas la prsence dun quipement de contrle. De plus, elle est totalement dcentralise, indpendante du nombre et de ltat des machines connectes.

2.2. TECHNIQUES DACCS

DTERMINISTE

Les techniques dterministes utilisent un jeton, sur un bus ou sur un anneau. Le jeton est une trame qui circule dans le rseau dquipement en quipement : un quipement A qui reoit et reconnat le jeton possde le droit la parole . Il est autoris mettre sur le support (voir gure 5.7). Une fois sa transmission termine, il transmet le jeton lquipement suivant. Le mode de transmission du jeton dpend de la topologie logique du rseau : Dans un anneau, lquipement suivant est le premier quipement oprationnel, physiquement reli au prcdent et en aval de celui-ci. La transmission du jeton (ou de toute trame) se fait toujours vers cet quipement, sans quil y ait besoin de le dsigner explicitement : le jeton est non adress. Dans un bus, lquipement suivant est lun des quipements du rseau, connu seulement du possesseur du jeton. Une trame contenant le jeton est diffuse sur le bus et possde ladresse explicite du destinataire ou successeur. Chaque quipement na quun et un seul successeur dont il connat ladresse. On cre ainsi un anneau virtuel de circulation du jeton. Le jeton est adress. En fonctionnement normal, une phase de transfert de donnes alterne avec une phase de passation du jeton. Chaque quipement doit pouvoir traiter la rception et le passage du jeton, en respectant le dlai maximal dni par la mthode daccs. Il est galement indispensable de prendre en compte lajout dun nouvel quipement. Enn, il faut ragir laltration, voire la perte du jeton (cette trame, comme les autres, peut subir des erreurs de transmission) en mettant en place un mcanisme de rgnration du jeton qui dpend du type du jeton (adress ou non).

112

Architecture des rseaux

Chapitre

Figure 5.7
Mcanisme de jeton.
Non

Trame mettre

Rception jeton ? Oui Lancement temporisation

Slection trame suivante Oui

mission de la trame Autre trame mettre et temporisation non coule ? Non Transmission du jeton Fin

Pour mieux comprendre le fonctionnement des rseaux locaux, nous allons dcrire les rseaux de premire gnration (Ethernet-IEEE 802.3 et Token Ring-IEEE 802.5). Ils diffrent par leur organisation physique, leurs supports, leur plan de cblage, ainsi que par le format des trames. Nous verrons la section 5 comment ces rseaux ont volu au cours des trente dernires annes.

Ethernet IEEE 802.3 de premire gnration


La socit Xerox a dvelopp Ethernet en 1976. Ce fut le premier produit de rseau local utilisant le mcanisme CSMA/CD sur un bus physique. Vu son grand succs, les socits Xerox, DEC et Intel ont dcid den faire un standard qui a servi de base au comit IEEE pour sa norme 802.3, mme si Ethernet et le standard IEEE 802.3 diffrent sur des points mineurs. La russite dEthernet a t considrable : il est dusage courant maintenant dappeler Ethernet tout rseau local utilisant CSMA/CD, mme sil na plus grand-chose en commun avec le rseau initial.

3.1 ORGANISATION

PHYSIQUE DUN RSEAU

ETHERNET

Les rseaux IEEE 802.3 utilisent une transmission en bande de base avec un code Manchester. Le rseau est organis en un ou plusieurs segments, relis de faon conserver la structure de bus (voir gure 5.8). An que tous les quipements reoivent un signal de puissance sufsante, la longueur de chaque segment est limite. Pour des longueurs suprieures, il faut utiliser des rpteurs, qui dcodent et amplient les signaux reus sans les interprter. Ils contribuent augmenter lgrement le dlai de propagation et relient diffrents segments de faon former un seul bus logique et un seul domaine de collision (ensemble des stations susceptibles de provoquer des collisions en cas dmissions simultanes).

Les rseaux locaux dentreprise 113

Pour limiter les risques de collision, le standard impose un dlai de propagation aller et retour du signal strictement infrieur 51,2 microsecondes. Figure 5.8
Structure de bus rami .

quipement

Rpteur

Remarque
Chaque extrmit dun bus est munie dun bouchon de terminaison qui est, en fait, une rsistance lectrique dont limpdance est gale 50 (impdance caractristique du bus). Son rle est dabsorber le signal lectrique qui se propage, pour lempcher au maximum dtre rchi lextrmit du support et provoquer par l un brouillage du signal par lui-mme. Le bouchon dextrmit joue un rle important dans la structure du rseau, puisquil absorbe littralement le message mis sous la forme dun courant lectrique.

3.2 FORMAT

DE LA TRAME

ETHERNET

La gure 5.9. illustre le format de la trame Ethernet de base. Il comprend un long prambule (101010) provoquant lmission dun signal rectangulaire de frquence 10 MHz si le dbit de transmission est de 10 Mbit/s. Lensemble des quipements du rseau se synchronise ainsi sur le message mis. Le champ SFD (Start Frame Delimitor) contient la squence 10101011 qui marque le dbut de la trame. La trame contient dans son premier champ signicatif ladresse du destinataire DA (Destination Address) et celle de lexpditeur SA (Source Address). Il sagit des adresses MAC dont nous avons parl la section 1.2. Un champ sur deux octets prcise la longueur (en nombre doctets) des donnes de la couche LLC. La norme 802.3 ayant dni une longueur minimale de trame 64 octets (qui reprsente 10 Mbit/s un temps de transmission de 51,2 microsecondes), celle-ci est complte par des octets de bourrage si la trame est plus courte. En fait, la taille de la trame doit tre comprise entre 64 et 1 518 octets, ce qui laisse de 46 1 500 octets utiles dans le champ de donnes. La taille maximale est impose pour assurer un rle quitable entre les diffrents quipements (celui qui a russi prendre la parole ne peut pas la monopoliser). La trame se termine par un champ FCS (Frame Check Sequence). Calcul par lmetteur, le FCS permet au

114

Architecture des rseaux

Chapitre

rcepteur de vrier la validit des trames reues. La dtection des erreurs se fait laide du polynme gnrateur : G(x) = x32 + x26 + x23 + x22 + x16 + x12 + x11 + x10 + x8 + x5 + x4 + x2 + 1. Une trame doit contenir obligatoirement un nombre entier doctets. Enn, un silence, obligatoire entre les trames, dure 9,6 microsecondes. Figure 5.9
Format de la trame Ethernet. (a) Ethernet (b) IEEE802.3
Octets Ethernet 8 6
Adresse source

0-1500
Donnes

0-46
Remplissage

4
Total de contrle

Prambule

Adresse de Type destination

IEEE802.3 Prambule

Adresse source

Adresse de Long destination

Donnes

Remplissage

Total de contrle

Dlimiteur de dbut

Initialement, dans la norme IEEE 802.3, le champ longueur devait indiquer la longueur relle du contenu de la trame. Dans la pratique, le contenu de la trame dnit implicitement sa propre longueur. Ce champ, rebaptis type, sutilise dsormais pour indiquer quel protocole appartiennent les donnes encapsules dans la trame. Par exemple, il peut prendre (en hexadcimal) les valeurs suivantes : 0800 (protocole IP), 0806 (protocole ARP), 0835 (protocole RARP). Nous reverrons au chapitre 6 le rle de ces trois protocoles.

3.3 SUPPORTS

ET PLAN DE CBLAGE DETHERNET

Historiquement, la premire solution rencontre est un plan de cblage en bus et le support utilis un cble coaxial. Les quipements raccords doivent respecter entre eux une contrainte de distance minimale. La nomenclature, sous la forme XBase n, dcrit le dbit du rseau et le support : X exprime le dbit en Mbit/s, Base indique une transmission en bande de base, et n renseigne sur le type de cble. Les cblages initialement utiliss sont le 10 Base 5 et le 10 Base 2 : 10 Base 5 est un cble coaxial de 500 m maximum par segment, avec une transmission en bande de base et un dbit de 10 Mbit/s. Il est lorigine du produit Ethernet. 10 Base 2 est un cble coaxial plus n donc plus maniable, de 180 m maximum par segment, avec une transmission en bande de base et un dbit de 10 Mbit/s. Le cble est pos dans des goulottes et alimente les diffrents bureaux. Le raccordement physique de la station au coaxial utilise une prise BNC (voir gure 5.10). Si le branchement dun nouvel quipement est trs facile pratiquer, ce type de cblage prsente toutefois deux inconvnients : la longueur maximale est facilement atteinte dans un btiment, et la coupure du bus empche le fonctionnement du rseau. Figure 5.10
Connecteurs (a) BNC et (b) RJ45.

Par Mu ler Kim

(a)

(b)

Les rseaux locaux dentreprise 115

Ds les annes 1990, on a recours au cblage en toile (voir gure 5.11), dans lequel toutes les stations sont branches sur un concentrateur , ou hub, qui retransmet sur lensemble de ses ports tout signal reu sur un port quelconque. La topologie logique reste celle dun bus et le fonctionnement de laccs par CSMA/CD est inchang. Le support le plus courant fut alors la paire torsade : 10 Base T (T pour Twisted pair) est une paire torsade de 100 m par segment, transmettant en bande de base un dbit de 10 Mbit/s. La prise RJ45 remplace dans ce cas le connecteur BNC (voir gure 5.10). On peut aussi utiliser une bre optique 10 Base F (F pour Fiber) de 2,5 km, transmettant en bande de base 10 Mbit/s. Certains concentrateurs ont plusieurs ports pour raccorder des paires torsades et un port pour raccorder une bre optique, par exemple. Figure 5.11
Cblage en toile autour dun concentrateur (hub).

Vers autres concentrateurs Concentrateur Paires torsades

Le concentrateur reste un quipement qui agit exclusivement au niveau du signal transmis : si la nature des supports change entre ses ports, il est simplement capable de rcuprer les donnes binaires et den refaire le codage. Il ninterprte en aucun cas les donnes reues.

3.4 CONCLUSION

SUR

ETHERNET

La grande force du standard IEEE 802.3 est sa simplicit : il ny a aucun quipement centralisant le contrle du rseau. Lajout et le retrait dun quipement se font sans interruption de fonctionnement, que ce soit avec un cblage en bus ou en toile sur le concentrateur. Si le trac est faible, laccs au support est quasiment immdiat. En revanche, le rseau supporte mal les fortes charges qui peuvent provoquer un effondrement du dbit utile, car le temps daccs au support nest pas born. Un rseau 802.3 est donc une solution rapide et peu coteuse mettre en uvre, destine principalement la bureautique. Les concentrateurs rassemblent en un point tous les raccordements physiques, ce qui amliore la scurit et la rapidit dintervention en cas de panne.

Token Ring IEEE 802.5


La socit IBM a dvelopp lanneau jeton ou Token Ring, standardis par lIEEE sous le nom 802.5. Les dveloppements datent de la mme poque quEthernet mais les solutions proposes sont totalement diffrentes, tant dans lorganisation physique que dans le format des trames et les supports utiliss.

116

Architecture des rseaux

Chapitre

4.1 ORGANISATION

PHYSIQUE DE LANNEAU JETON

La transmission se fait en bande de base avec un code Manchester diffrentiel (au lieu de coder chaque bit, le codage diffrentiel code la diffrence entre deux bits conscutifs). La topologie physique est un anneau simple unidirectionnel, dans lequel un quipement oprationnel actif sur lanneau rpte ce quil reoit de lamont vers lquipement en aval. Un quipement en panne ou teint ne participe pas lanneau (on dit quil est mis en by-pass) mais la propagation du signal est assure. Des dispositifs lectroniques ou lectromagntiques permettent lanneau de se recongurer automatiquement en cas dincident. chaque instant, on distingue deux types dquipements dans le rseau : celui qui possde le jeton et les autres. La topologie logique est un anneau dans lequel un quipement qui na pas le jeton se comporte comme un simple rpteur physique. Lquipement qui dtient le jeton a le droit dmettre une trame vers son successeur qui la transmet au suivant et ainsi de suite jusqu lquipement metteur. Celui-ci peut donc vrier, en comparant la trame reue avec la trame mise, que celle-ci a correctement fait le tour de lanneau. Il peut savoir si le destinataire la correctement reue et recopie. Lorsquun quipement a ni de recevoir sa propre trame, il met la trame spciale contenant le jeton et repasse en fonctionnement de base.

4.2 FORMAT

DE LA TRAME

802.5

La gure 5.12 illustre le format des trames 802.5. Lorsquil ny a aucun trac de donnes, le jeton circule dans lanneau dun quipement lautre. Il faut que la dure t entre lmission dun lment binaire et sa rception aprs un tour complet de lanneau soit suprieure la dure dmission du jeton. On appelle latence de lanneau la quantit dinformations quil contient un instant donn. La latence doit tre suprieure la dure dmission dune trame de jeton code sur 24 bits. Si lanneau est trop court, lquipement de surveillance ou moniteur (Monitor) gre une petite mmoire tampon pour retarder la rptition du signal et porter la latence 24 bits. Le champ SD (Start Delimitor) marque le dbut dune trame. AC (Access Control) indique sil sagit dune trame jeton libre ou dune trame de donnes. En outre, cet octet contient un bit M gr par le moniteur et deux groupes de 3 bits, donnant respectivement la priorit du jeton (ou de la trame transmise) et la priorit des trames en attente dans les stations de lanneau. FC (Frame Control) donne le type de la trame. Les champs dadresses MAC (DA, SA) et le bloc de contrle derreurs (FCS) sont dnis comme dans IEEE 802.3. Loctet ED (End Delimitor) dlimite la n du jeton ou de la trame de donnes. Dans cette dernire, ED est suivi dun octet FS (Frame Status) qui vhicule des informations de contrle. Figure 5.12
Format de la trame 802.5.
Porte du calcul pour le contrle d'erreur

Jeton (token) trame de donnes

SD AC ED SD AC FC DA

SA

Donnes LLC
N octets (< 4027)

FCS ED FS
4 oct. 1 1 oct. oct.

1 1 1 6 oct. 6 oct. oct. oct. oct.

Les rseaux locaux dentreprise 117

FS contient deux indicateurs (rpts par scurit dans la seconde moiti de loctet) : ARI (Address Recognized Indicator, ou indicateur dadresse reconnue) et FCI (Frame Copied Indicator, ou indicateur de trame copie). ARI est mis 1 quand le rcepteur reconnat son adresse. FCI, quant lui, est mis 1 si le rcepteur est parvenu copier avec succs la trame provenant de lanneau. Les dlimiteurs de dbut et de n (SD et ED) sont des squences particulires qui violent le principe du code Manchester : certains symboles de loctet ne correspondent ni un 0 ni un 1 valides (on parle parfois de non-donnes ).

4.3 GESTION

DE LANNEAU

Lquipement dtenteur du jeton peut mettre une trame qui fait le tour de lanneau avant de lui revenir. Grce aux diffrents indicateurs, lquipement vrie que lanneau nest pas coup, quil ny a quun seul moniteur actif et que le destinataire a bien copi la trame. Il dtecte aussi la demande de jeton de plus haute priorit exprime par un autre quipement du rseau. Aprs avoir reu correctement sa propre trame, il met un jeton libre sur lanneau. Pour viter toute utilisation abusive du support, chaque station arme un temporisateur au dbut de la phase dmission. Elle passe obligatoirement le jeton lorsque ce temporisateur expire, ce qui revient dterminer la taille maximale dune trame. On peut aussi affecter diffrentes priorits aux quipements du rseau. Celui qui a une trame en attente de priorit infrieure celle du jeton ne peut prendre le jeton circulant. Il doit attendre le passage dun jeton dot dune priorit infrieure ou gale celle de sa trame. La mise hors service ou la panne de lquipement qui possdait le jeton provoque la disparition de celui-ci. Un anneau jeton est donc compliqu surveiller : le moniteur cre un jeton linitialisation de lanneau, surveille lactivit des quipements connects, rgnre le jeton en cas de perte, dtecte les messages ayant fait plus dun tour, assure la synchronisation bit, ajuste la latence de lanneau, etc. En outre, pour remplacer le moniteur actif quand celui-ci tombe en panne, tous les autres quipements jouent le rle de moniteurs dormants (Standby Monitor) Tant que le moniteur est oprationnel, il doit envoyer intervalles rguliers une trame AMP (Active Monitor Present). Ds que cette trame nest plus envoye en temps voulu, une des stations dormantes met une trame Claim Token pour prendre le contrle de lanneau. Si elle y parvient, elle devient le moniteur actif. Les stations dormantes signalent leur prsence intervalles rguliers en transmettant la trame SMP (Standby Monitor Present). Lchange de trames AMP-SMP sutilise galement pour dterminer la liste des stations actuellement oprationnelles dans le rseau. Pour cela, le moniteur envoie une trame AMP et utilise ladresse de diffusion gnrale (broadcast address) dans le champ adresse destination. Chaque station active de lanneau propage le jeton libre engendr par la station la plus proche du moniteur. Elle met une trame SMP contenant ladresse de diffusion gnrale comme adresse destination et sa propre adresse comme adresse source (NAUN, Nearest Active Upstream Neighbour). La procdure se poursuit jusqu ce que toutes les stations actives de lanneau aient rpondu. son retour dans le moniteur, la trame SMP contient ladresse de son voisin aval, situ le dernier sur lanneau. Cette procdure est importante en cas de dfaillance partielle ou totale de lanneau. Si une station ne reoit pas le ot de bits entrants, elle envoie une trame dalarme Beacon pour signaler une condition derreur possible aux stations aval et au moniteur. Dans cette trame, la prsence du champ NAUN facilite le diagnostic derreur.

118

Architecture des rseaux

Chapitre

4.4 SUPPORTS

ET PLAN DE CBLAGE

Le plan de cblage gnralement propos pour lanneau jeton est une toile ou un ensemble dtoiles. Un concentrateur actif AWC (Active Wire ring Concentrator) permet de constituer lanneau (voir gure 5.13). Par des dispositifs lectroniques ou lectromcaniques, AWC surveille la prsence active de chaque quipement (dtection dun quipement hors tension, dun cble coup) et recongure lanneau automatiquement en cas dincident, en excluant lquipement concern (mise en by-pass). Il est possible de relier plusieurs concentrateurs entre eux pour augmenter la taille de lanneau et le nombre des stations. Figure 5.13
Cblage en toile dun anneau.

Concentrateurs

Le cble de raccordement entre lquipement et le concentrateur est gnralement une paire torsade blinde dimpdance 150 . Les dbits possibles sont de 1 ou 4 ou 16 Mbit/s. Le nombre de stations dans lanneau peut dpasser 200.

4.5 CONCLUSION

SUR LANNEAU JETON

Le dbit utile dun anneau rsiste bien la charge et ne seffondre jamais comme avec la norme IEEE 802.3. Comme le dlai daccs au support est born, on peut mettre en uvre des dialogues entre quipements sur lesquels sexcutent des applications temps rel. Linconvnient principal de lanneau jeton rside dans la lourdeur et la complexit des mcanismes de sa gestion. Un tel rseau est donc globalement plus coteux quun rseau Ethernet. Paradoxalement, les performances de lanneau jeton sont pnalises faible charge : le dlai daccs tant non nul, il faut attendre le jeton avant dmettre alors que laccs est immdiat en CSMA/CD sur un bus libre. De ce fait, lanneau jeton na pas pu offrir des dbits suprieurs 16 Mbit/s et na pu suivre laccroissement des dbits disponibles sur les rseaux Ethernet.

volution des rseaux locaux


Si Ethernet a t initialement conu pour fonctionner sur des cbles coaxiaux un dbit de 10 Mbit/s, il est devenu le rseau local le plus rpandu, ds quon a pu utiliser le cblage tlphonique et les paires mtalliques. Deux volutions majeures ont eu lieu simultanment :

Les rseaux locaux dentreprise 119

lutilisation de dbits plus levs et lapparition des commutateurs. Enn, lavance technologique a permis lavnement des rseaux sans l dont le dveloppement est en plein essor, en raison du confort de raccordement quils procurent.

5.1 FAST ETHERNET, ETHERNET

COMMUT,

GIGABIT ETHERNET

Fast Ethernet est une version dEthernet 100 Mbit/s compatible avec les rseaux 10 Mbit/s. Elle a t largement diffuse ds le milieu des annes 1990. Les concentrateurs proposs taient bien souvent compatibles 10 et 100 Mbit/s. Ils se diffrenciaient simplement par leur nombre de ports. Gigabit Ethernet est la version 1 Gbit/s (1 000 Mbit/s, standard 802.3z) qui a suivi. Les quipements Gigabit combinent gnralement des ports 10 et 100 Mbit/s avec une ou plusieurs connexions sur des bres optiques 1 Gbit/s. La paire mtallique non blinde de catgorie 5 peut, elle aussi, supporter le dbit de 1 Gbit/s sur de courtes distances. Une version Ethernet 10 Gbit/s est apparue en 2001 (Standard 802.3ae). La bre optique la plus utilise est la bre multimode. Dans ce support, un transducteur optique assure la transformation entre le signal lumineux et le signal lectrique. La distance maximale entre deux quipements est de 1,5 km. Les nouvelles technologies issues des recherches les plus rcentes promettent des bres multifrquences (1 024 canaux par bre) avec, pour chaque canal, un dbit de plusieurs Go/s. Le principal dsavantage de la bre est son cot lev. Paralllement, les concentrateurs ont t remplacs par des commutateurs (switches). Dans un rseau Ethernet commut, tous les quipements du rseau sont relis un (ou plusieurs) commutateurs. La topologie physique peut tre mixte : en toile pour toutes les stations directement connectes au commutateur, en bus pour celles qui sont relies via un concentrateur. Le commutateur, la diffrence du concentrateur, lit les trames quil reoit et exploite ladresse du destinataire : il ne transmet la trame que sur le port qui permet datteindre le destinataire et non sur tous les ports. Si le port est occup, le commutateur mmorise la trame et attend que ce dernier se libre. De plus, il possde des ressources de traitement leves et peut grer plusieurs trames simultanment. Il accrot donc normment la capacit du rseau : par exemple au lieu de partager un dbit de 100 Mbit/s entre tous les quipements relis par un concentrateur, on obtient 100 Mbit/s ddis chacun dentre eux ds lors quils sont relis par un commutateur : sil y a 10 quipements dans le rseau dialoguant deux deux, on peut obtenir un dbit global de 500 Mbit/s. Gigabit Ethernet sest dvelopp dans les environnements commuts et possde deux modes de fonctionnement : les modes duplex intgral et semi-duplex. Dans le mode duplex intgral, utilis sur les liaisons point point, un quipement met et reoit simultanment des donnes avec le commutateur ; il ny a plus de collision possible. Le semi-duplex est employ pour les quipements raccords par lintermdiaire dun concentrateur. Dans ce cas, des collisions peuvent encore se produire. Grce au dbit employ, le temps dmission dune trame est trs faible. Il a fallu apporter des fonctionnalits supplmentaires dans la mthode daccs : lextension de trame et le mode rafale. La premire consiste porter la longueur minimale de la trame 512 octets (au lieu de 64 octets dans lEthernet classique) ; la seconde permet un metteur denvoyer en une seule fois plusieurs trames conscutives. Ces deux fonctionnalits rendent supportable la contrainte de longueur maximale du rseau. Il existe principalement deux technologies de commutateurs : store and forward et cut through. Quand un commutateur store and forward reoit une trame, il la vrie et, si elle ne possde pas derreurs, la stocke avant de lenvoyer sur le port adquat. Ce fonctionnement convient bien au mode client/serveur car il limine les trames errones et accepte le

120

Architecture des rseaux

Chapitre

mlange de divers supports (cuivre-bre optique, par exemple) ou encore le mlange de dbits. Il prsente linconvnient dintroduire un dlai supplmentaire, puisque chaque trame est transmise deux fois. Un commutateur cut through analyse ladresse MAC du destinataire et transmet la trame la vole sans aucune vrication. Ce systme fournit de faibles temps dattente, mais il napporte aucun service valeur ajoute puisque mme les trames incompltes sont transfres. Une variante adaptative consiste mesurer le taux derreur pendant le fonctionnement cut through et basculer en store and forward si ce taux dpasse un certain seuil. Enn, les commutateurs peuvent intgrer des fonctions supplmentaires pour grer, par exemple, une table de correspondance adresses MAC-numros de ports sur plusieurs commutateurs relis entre eux. On gre les commutateurs par une interface locale ou une interface Web.

5.2 RSEAUX

LOCAUX VIRTUELS OU

VLAN (VIRTUAL LAN)

Lintroduction des commutateurs dans un rseau local a permis de construire des rseaux logiques, indpendants les uns des autres. Les rseaux sont dsormais dnis en fonction des centres dintrt de leurs utilisateurs, et non en fonction de la situation gographique des quipements au sein de lentreprise. On parle alors de rseaux locaux virtuels ou VLAN (Virtual LAN). Un rseau virtuel regroupe une communaut dusagers rpartis dans toute lentreprise, comme sils appartenaient au mme rseau physique. Les changes lintrieur dun VLAN sont scuriss et les communications entre VLAN contrles. Par exemple, le rseau virtuel rserv la direction de lentreprise fournit un espace de communication scuris lquipe directoriale. Ce rseau est logiquement distinct du rseau virtuel affect aux services de production, mme si les machines des deux dpartements sont relies physiquement aux mmes commutateurs. On utilise plusieurs techniques de diffrentiation des quipements pour crer un VLAN. La premire opre au niveau des ports du commutateur : un sous-ensemble des ports correspond un VLAN donn. Cette solution a linconvnient de ne pas grer la mobilit des utilisateurs. La deuxime consiste identier les quipements dun VLAN par leurs adresses MAC, quel que soit le port du commutateur sur lequel lquipement est raccord. Cette solution est plus souple que la prcdente, mais elle lie encore lappartenance un VLAN particulier au matriel utilis. La troisime utilise les adresses IP, nous la verrons au prochain chapitre. Le commutateur contient une table de correspondance entre les VLAN et la liste des ports associs. Pour grer le VLAN avec un maximum de souplesse (quelle que soit la technique de diffrentiation), il faut quil soit tiquet (tagged), cest--dire que les trames portent un identicateur du VLAN auquel elles appartiennent. Cette tiquette se rsume par deux octets ajouts dans la trame, selon les recommandations du comit 802 (standard 802.1Q). Nous voquerons plus loin ce standard et ses volutions.

Interconnexion des rseaux locaux


Physiquement, deux rseaux ne peuvent tre relis que par lintermdiaire dun quipement connect chacun deux, sachant acheminer des messages de lun lautre. Plusieurs dispositifs dinterconnexion se mettent en place, selon le degr de similitude des rseaux :

Les rseaux locaux dentreprise 121

lquipement dinterconnexion peut tre selon les cas un rpteur, un pont, un routeur ou une passerelle (voir gure 5.14). Figure 5.14
Rpteurs, ponts, routeurs et passerelles.
Couches suprieures Couches suprieures Couches suprieures Pont entre deux LAN de niveaux MAC diffrents Couches suprieures

LLC MAC Phys LAN 1 Rpteur LAN 2

LLC MAC Phys

LLC MAC Phys

LLC MAC Phys

LAN 1

LAN 2

Couches suprieures

Routeur entre deux LAN diffrents

Couches suprieures

Couches suprieures Passerelle LLC MAC Phys LAN 1

Couches suprieures

Rseau LLC MAC Phys LAN 1 LAN 2

Rseau LLC MAC Phys

LLC MAC Phys LAN 2

6.1 RPTEURS
Les rpteurs ne font que prolonger le support physique en ampliant les signaux transmis. Ils propagent aussi les collisions. Ils sont utiliss pour relier deux segments de rseaux Ethernet, par exemple. Un rpteur na aucune fonction de conversion ou de transcodage. Il se contente de veiller la rptition et la rgnration de signaux. Les rpteurs sont souvent utiliss pour saffranchir des contraintes de distances prconises dans les standards. Ils supposent donc que les architectures des sous-rseaux relier soient identiques partir de la couche MAC.

6.2 PONTS (BRIDGES)


Les ponts (bridges) sont conus pour construire un rseau local logique, partir de plusieurs rseaux locaux, voisins ou distants. Ce sont des quipements qui interviennent au niveau de la couche LLC. Si les rseaux sont distants, deux demi-ponts peuvent tre relis par une liaison grande distance. Dans les deux cas, les rseaux relis utilisent le mme espace dadressage MAC et constituent un rseau unique, les ponts tant transparents aux protocoles des couches suprieures. Les ponts amliorent les performances du rseau, dans la mesure o ils ltrent les collisions et ne les retransmettent pas. Ils ont volu vers des quipements plus sophistiqus, comme les ponts ltrants, qui possdent des fonctions particulires de scurit et de contrle du trac : ils dtectent, par exemple, les chemins redondants entre deux rseaux locaux grce un change dinformations de gestion interne. Lalgorithme excute le protocole appel STP (Spanning Tree Protocol), mis en uvre pour liminer le tronon qui cre un chemin redondant et garder au rseau sa structure de bus rami.

Algorithme de larbre couvrant (Spamming Tree)


Cet algorithme, dcrit dans le standard 802.1d4, fait dcouvrir dynamiquement aux ponts un sous-ensemble sans boucle de la topologie du rseau. Pour cela, les ponts changent des messages spciaux permettant de calculer larbre couvrant. De tels messages sont 122
Architecture des rseaux

Chapitre

appels BPDU de conguration (Bridge Protocol Data Unit). Lobjectif des BPDU de conguration est de choisir : Un pont unique de rfrence (le pont racine). Ce pont sera considr comme la racine de larbre parmi tous les ponts situs sur les rseaux locaux interconnects. Un pont dans chaque rseau local (le pont dsign). Considr comme le plus proche du pont racine, le pont dsign transmettra toutes les trames de ce rseau vers le pont racine. Un port dans chaque pont (le port racine). Ce port donne accs au meilleur trajet entre ce pont et le pont racine. Les ports inclure dans larbre couvrant. Les ports qui composent larbre couvrant sont constitus du port racine, de tous les ports racine et de tous les ports o le pont est considr comme pont dsign. Le trac des donnes est achemin vers et en provenance des ports choisis pour faire partie de larbre couvrant. Jamais le pont ne retransmet de trames sur les ports nen faisant pas partie : ces ports sont dans ltat bloqu. Les BPDU sont transmises par un pont sur un port donn. Elles sont reues par tous les ponts du rseau local rattach au port et ne sont pas rexpdies en dehors du rseau local. Dans une BPDU de conguration, ladresse destination est une adresse spciale attribue tous les ponts. Ladresse source est ladresse physique associe au port : un pont possde autant dadresses physiques que de ports. En outre, un pont possde un identicateur unique ID, cod sur 48 bits, quil utilise comme identicateur propre dans le champ de donnes dun message de conguration. Nous utiliserons par la suite les termes : ID racine. Identication du pont suppos tre la racine. ID pont metteur. Identication du pont mettant le message de conguration. Cot. Cot du meilleur trajet depuis le pont metteur jusqu la racine. ID port. Adresse physique dun port. linitialisation du protocole, chaque pont suppose quil est racine. Il met donc des BPDU de conguration sur chaque port, avec son propre identicateur comme ID racine et ID pont metteur et un cot nul vers la racine. Ensuite, il va recevoir continuellement des BPDU de conguration sur chaque port. Pour chacun deux, il sauvegarde le meilleur message de conguration, cest--dire celui dont lID racine est le plus petit. En cas dgalit dID racine, il choisit la BPDU dont le cot est le plus faible puis, si ncessaire, celle dont lID pont metteur est le plus petit. Lorsque lID racine, le cot et lID pont metteur sont identiques, cest lID port qui sert darbitre. Une fois calculs la racine et le cot la racine et aprs dtermination du pont dsign sur chaque port, il faut dcider quels ports doivent faire partie de larbre couvrant. Celui-ci est constitu du pont racine, de tous les ponts dsigns et de tous les ports racine.

Exemple

Soit un pont dID = 92 qui a reu un ensemble de BPDU de conguration conformment au tableau ci-aprs :
ID racine Cot ID pont metteur

Port 1 Port 2 Port 3 Port 4

11 11 81 17

90 83 0 32

50 41 81 26

4. Une version plus rcente de cet algorithme est RSTP (Rapid Spanning Tree Protocol), dcrit dans le standard 802.1w. Ce dernier protocole converge en quelques secondes au lieu dune minute environ.

Les rseaux locaux dentreprise 123

LID racine le plus petit est 11; le cot le plus faible parmi les messages ayant 11 comme ID racine est 83, donc le port 2 est le port racine. Le pont dtermine ensuite sa distance au pont racine en comptant 83+1 soit 84 (dans la ralit, le nombre 1 est le rsultat dune mesure). La BPDU de conguration que peut mettre notre pont vaut : 11.84.92. Ce message est meilleur que celui quil a reu sur les ports 1, 3 et 4. Le pont 92 est en consquence pont dsign sur ces trois ports, sur lesquels il envoie sa BPDU de conguration.

Segmentation dun rseau local


Les ponts permettent galement de segmenter un rseau local en deux pour amliorer les performances. Par exemple, dans un rseau Ethernet qui approche de la saturation, on peut chercher les couples de machines qui ont un gros trac entre elles et les isoler (voir gure 5.15). Le pont travaille par apprentissage : il apprend situer les quipements progressivement, au fur et mesure de leur activit. Ds quune trame se prsente sur le pont et quelle est destine au sous-rseau do elle vient, le pont la ltre (il ne la transmet pas dans un autre sous-rseau). Figure 5.15
Segmentation dun rseau local.

Les deux machines A et B changent normment de donnes entre elles ; D, C, E et F ont un trafic quelconque rparti sur toutes les machines.

B
Pont

Les deux machines A et B changent normment de donnes entre elles ; leur trafic ne perturbe plus les autres machines grce au pont.

Un pont peut relier des rseaux locaux qui diffrent par leur technique daccs au support (un rseau utilisant CSMA avec un rseau utilisant des jetons, par exemple). Il doit alors grer les diffrences de dbit, de format, de mthodes daccs et de services rendus. Le pont peut perdre des messages sil est soumis pendant trop longtemps des rafales de trac sur lun des rseaux qui dpassent la capacit de transmission sur lautre. De plus, lensemble des diffrences ncessite un traitement dans le pont qui provoque un retard dans la transmission. Grce aux progrs technologiques, de nouveaux quipements, les commutateurs (switches), ont remplac les ponts dans la plupart des installations. Ils prennent une place de plus en plus importante dans les rseaux dentreprise car ils ont volu et assurent dsormais des fonctions plus sophistiques que la simple commutation de trames.

6.3 VOLUTION

DES PONTS

LES COMMUTATEURS

Lessor des commutateurs a commenc lavnement des VLAN (que nous avons vu la section 5.2). Le commutateur dun rseau local peut tre assimil un pont volu trs hautes performances, qui transmet et ltre les trames grce ses tables de racheminement. Dans les rseaux dentreprise comptant plusieurs VLAN, les trunks sont des liaisons ddies entre commutateurs, sur lesquelles circulent les donnes des diffrents VLAN. Pour tenir compte des nouvelles topologies et des contraintes quelles ont imposes dans la circulation des ux dinformation entre VLAN, certains protocoles antiboucles, comme

124

Architecture des rseaux

Chapitre

STP, ont t modis pendant que dautres ont merg : RSTP (Rapid Spanning Tree) ou 802.1w est la version modie de larbre couvrant qui permet une convergence plus rapide ; le MSTP (Multiple Spanning Tree), dcrit dans le standard IEEE 802.1Q, permet de crer des arbres couvrants multiples pour les diffrents VLAN.

Arbre couvrant multiple dans les VLAN (802.1Q)


Lide sous-jacente au concept de STP multiple est de proposer un algorithme qui tienne compte de la complexit de la circulation des ux des diffrents VLAN dans les trunks. Dans lexemple de la gure 5.16a, deux commutateurs relis par deux trunks transportent les donnes de deux VLAN (lun des deux VLAN est en trait plein, lautre en pointill). La mise en uvre dun seul arbre couvrant conduit bloquer un port dans chaque commutateur pour viter les boucles. La gure 5.16b montre que lutilisation de deux arbres couvrants vite ce problme. Pour permettre une conguration dynamique des diffrents VLAN, les trunks doivent transporter les donnes de tous les VLAN. Figure 5.16
Exemple de deux commutateurs relis par deux trunks pour vhiculer les donnes de deux VLAN.
SW1 Trunk 1 Trunk 1

VLAN 2 Trunk 2 VLAN 1 SW2 SW1

VLAN 2 Trunk 2 VLAN 1 SW2

(a)

(b)

Configuration avec deux VLAN vhiculs sur deux trunks distincts entre les commutateurs SW1 et SW2. Un gros trait signifie quun port est bloqu. (a) : Configuration utilisant un seul arbre couvrant. Pour viter la cration dune boucle entre SW1 et SW2, on ne peut pas se ser vir dun des deux liens pour couler le trafic normal des VLAN. Ici, SW2 a ses deux ports bloqus : le second lien sert uniquement de secours en cas de panne du premier. (b) : Configuration utilisant deux arbres couvrants. Dans ce cas, un des trunks transporte les donnes dun VLAN, tandis que lautre vhicule les donnes de lautre VLAN. En cas de panne dun trunk, le lien sur vivant peut transporter les donnes des deux VLAN.

Nous voyons bien que la contrepartie de la multiplication des VLAN dans le rseau de lentreprise est la multiplication du nombre darbres couvrants maintenir. Cette prolifration risque dentraner une gestion complexe de lalgorithme et provoquer une baisse des performances des commutateurs. Pour rendre la circulation entre VLAN plus efcace, il sest dvelopp des techniques de routage interVLAN, naturellement assumes par les commutateurs, qui sont ainsi devenus des commutateurs-routeurs.

Commutateurs-routeurs
Les fonctionnalits de plus en plus tendues des commutateurs empitent sur les fonctions classiquement dvolues aux routeurs. De ce fait, les commutateurs les plus sophistiqus sont souvent appels des commutateurs-routeurs. Dsormais, en plus des fonctions traditionnelles de commutation dun port lautre, les commutateurs-routeurs sont capables deffectuer des fonctions de niveau 3 et mme de niveau 4 du modle OSI.

Les rseaux locaux dentreprise 125

Les fonctions de niveau 3 que peuvent excuter les commutateurs-routeurs sont : Le routage interVLAN, en fonction des adresses IP. Le routage dynamique car ils peuvent excuter les protocoles de routage comme RIP, OSPF, BGP que nous verrons au chapitre 8. Le protocole VRRP (Virtual Router Redundancy Protocol), dcrit par la RFC 2338. Ce protocole, de plus en plus utilis aussi bien dans les routeurs que dans les commutateurs-routeurs , sattache rsoudre le problme de lunicit du routeur par dfaut. Il est dvelopp la section suivante. La gestion de listes de contrle daccs ou ACL (Access Control List). Pour chaque sousrseau IP, le commutateur peut autoriser ou interdire laccs tel autre sous-rseau IP, comme le fait normalement un routeur. En plus des fonctions de niveau 3, les commutateurs-routeurs comme la plupart des routeurs peuvent inspecter le contenu des datagrammes IP. En effet, on peut afner lutilisation des listes de contrle daccs en autorisant ou en interdisant la circulation des ux de donnes sur certains ports TCP ou UDP. De la sorte, le commutateur-routeur se comporte comme un pare-feu de base dcrit dans les complments pdagogiques, sur le site www.pearsoneducation.fr.

Remarque
Ces nouvelles fonctions expliquent que les commutateurs sont des quipements dinterconnexion de plus en plus utiliss. Nanmoins, elles sont assures en consommant des ressources (mmoire, processeur) utiles aux tches normalement excutes par les commutateurs : excution du spanning tree et des autres protocoles antiboucles, apprentissage de la localisation des stations, gestion de la diffusion de niveau MAC, etc. En cas de trac important, les performances du commutateur se dgradent si un grand nombre de listes de contrle daccs est mis en place.

Protocole VRRP (Virtual Router Redundancy Protocol) [RFC 2338]


Le protocole VRRP est un standard Internet qui propose une solution permettant un rseau de ne pas tre compltement isol lorsquun quipement dinterconnexion de niveau 3 (routeur ou commutateur-routeur), unique dans le rseau, tombe en panne. Par exemple, si le routeur de sortie du rseau de lentreprise existant en un seul exemplaire ne fonctionne plus, le rseau est compltement isol du monde extrieur. VRRP dcrit comment installer plusieurs quipements de secours qui prennent, automatiquement et en trs peu de temps, la relve de lquipement dfaillant. Pour cela, deux routeurs (ou plus5) se partagent une adresse IP et une adresse MAC virtuelles ; un seul routeur est actif (Master router) linstant t. En cas de panne du routeur actif, le changement de routeur est transparent pour les utilisateurs. Les routeurs utilisant VRRP (les routeurs VRRP) se trouvent dans lun des trois tats suivants : Initialize, Master ou Backup. Dans ltat Initialize, le routeur attend un vnement qui le fera basculer dans lun des deux autres tats. Ltat Backup sert vrier que le routeur actif est bien dans ltat Master et quil est en fonctionnement. Dans ltat Master, le routeur actif informe les routeurs de secours (Backup routers) intervalles rguliers quil peut toujours assurer le routage vers lextrieur du rseau. La gure 5.17 donne un exemple dutilisation de VRRP.

5. VRRP prvoit jusqu 255 quipements de secours mais la plupart des installations se contentent dun seul quipement redondant.

126

Architecture des rseaux

Chapitre

Figure 5.17
Exemple de rseau utilisant le protocole VRRP.
R1 Internet

R2

Routeur virtuel RV : @IP_RV, @MAC_RV

LAN

R1 et R2 forment le routeur virtuel. Ils possdent leurs propres adresses IP et MAC. R1 est le routeur actif. Les adresses relles (IP et MAC) des routeurs sont respectivement : @IP_R1 ; @MAC_R1 pour le routeur R1 et @IP_R2 ; @MAC_R2 pour le routeur R2. Les machines du rseau ont comme seule adresse de routeur par dfaut ladresse du routeur virtuel, soit @IP_RV.

Les routeurs VRRP utilisent ladresse MAC virtuelle : 00 00 5E 00 01 Id du routeur VRRP (cet identiant est cod sur un octet6). Ladresse IP virtuelle et les adresses IP relles des routeurs sont dtermines par ladministrateur, en fonction de la structure du rseau.

Remarque
Il existe des variantes non standard de cet algorithme. On peut notamment citer le protocole HSRP (RFC 2281) de Cisco Systems Inc.

6.4 ROUTEURS (ROUTERS)

ET PASSERELLES (GATEWAYS)

Les routeurs (routers) sont destins relier plusieurs rseaux de technologies diffrentes. Ils oprent essentiellement au niveau de la couche 3 du modle OSI, cest--dire quils assurent le routage des informations travers lensemble des rseaux interconnects. Le routeur possde au moins deux interfaces rseau et contient un logiciel trs volu, administrable distance. Pour tenir compte de lvolution des commutateurs, les routeurs proposent leur tour des fonctions de niveau plus lev que le niveau 3 : fonctions de pare-feu et autres, comme nous lavons vu pour les commutateurs-routeurs. Ils sont lis larchitecture des protocoles de routage utiliss, contrairement aux commutateurs. La majorit des routeurs utilisant le protocole IP, nous tudierons plus en dtail leur fonctionnement au chapitre 6. Enn, les passerelles (gateways) sont des quipements qui relient des rseaux totalement diffrents : elles assurent une compatibilit au niveau des protocoles de couches hautes entre rseaux htrognes et effectuent, par exemple, des conversions vers des protocoles et des applications propritaires . Notons que dans le jargon franglais des administrateurs de rseaux, le terme gateway dsigne un routeur.

6. Les routeurs VRRP communiquent en multicast avec ladresse 224.0.0.18.

Les rseaux locaux dentreprise 127

Remarque
Aprs avoir constat lvolution des commutateurs, on peut se demander dans ces conditions ce qui distingue rellement un commutateur-routeur dun routeur Les routeurs ne se chargent pas de la gestion des VLAN (qui reste lapanage des commutateurs), alors que les commutateurs ne grent pas de rseaux privs virtuels (VPN, Virtual Private Network7 ), pour lesquels les routeurs restent indispensables. En outre, le nombre de ports dun commutateur est souvent beaucoup plus lev que celui dun routeur. Enn, pour des fonctions de routage complexes, le routeur offrira de meilleures performances quun commutateur-routeur.

Rseaux locaux sans l


Pour quune technologie puisse merger, elle doit offrir, outre de nouvelles fonctionnalits, une certaine compatibilit avec des normes ou standards existants. Les contraintes qui ont guid les concepteurs dans leurs choix techniques pour concevoir des rseaux sans l taient nombreuses : trouver une bande de frquences disponible (de prfrence mondiale) pour une grande diffusion des produits, tenir compte de la porte limite des signaux radio, prserver la condentialit des communications et de la dure de vie limite des batteries des stations nomades, disposer dune bande passante sufsante pour que le systme soit viable conomiquement et assurer une compatibilit ascendante. Le standard 802.11 pour rseaux locaux sans l (WLAN, Wireless LAN) a t conu pour tre compatible avec Ethernet. De ce fait, les protocoles situs au-dessus de la couche MAC sont utiliss sans aucune modication. Dans un WLAN, lcoute pralable du signal avant mission ne fonctionne pas trs bien, pour plusieurs raisons : par exemple, la disparit des puissances dmission des diffrentes stations et la rexion des ondes radio par des objets solides, entranent des rceptions multiples du mme message. Aprs une brve description des standards de rseaux sans l, nous prsentons les techniques de transmission spciques de ces rseaux avant dvoquer les diffrentes architectures : les rseaux ad hoc et les rseaux infrastructure.

7.1 STANDARDS

DES RSEAUX SANS FIL

On distingue deux grandes catgories de rseaux sans l, selon leur usage et les performances attendues (voir tableaux 5.1 et 5.2) : rseaux sans l (WLAN) compatibles Ethernet, standardiss par 802.11 ; rseaux sans l (WPAN, Wireless Personal Area Network), reliant des assistants personnels (PDA), tlphones, etc. Standardiss par 802.15, ils sont plus connus sous le nom de Bluetooth.
Normes WLAN Nom commercial Dbit thorique en Mbit/s Porte max

Tableau 5.1 Normes WLAN

ETSI 300 652 ETSI (en cours) 802.11a 802.11b 802.11g HomeRF 1.0

Hiperlan1 Hiperlan2 Wi-Fi Wi-Fi Wi-Fi HomeRF

20 54 54 11 54 1,6

30 m 40 m 90 m 70 m 50 m

7. Les VPN sont prsents dans les complments pdagogiques, sur le site www.pearsoneducation.fr.

128

Architecture des rseaux

Chapitre
Tableau 5.2 Normes WPAN

Normes WPAN

Nom commercial

Dbit thorique en Mbit/s

Porte max

IrDA 802.15.1 802.15.3 802.15.4

FIR (Fast IR) Bluetooth Bluetooth 2 Zigbee

4 1 12 0,250

1m 30 m 10 m 75 m

7.2 TECHNIQUES

DE TRANSMISSION UTILISES DANS LE STANDARD

802.11

La bande de frquences la plus utilise pour les rseaux sans l est dans la bande 2,4 GHz [2,4-2,4835 GHz]. Celle-ci est partage par dautres domaines dapplications (four micro-ondes, transmetteurs domestiques, relais, tlmesures, tlmdecine, camras sans l). Il y a donc des risques dinterfrences ! Pour transmettre les donnes, les rseaux sans l utilisent des combinaisons de modulations adaptes aux transmissions par radio (variantes de modulation de frquence ou de phase) mais aussi des techniques spciques comme les techniques talement de spectre (spread spectrum) : elles utilisent une bande de frquences large pour transmettre des donnes avec une faible puissance dmission. La technique consiste dcouper la large bande de frquences en au moins 75 canaux de 1 MHz : dans la bande des 2,4 GHz, on peut ainsi crer 79 canaux de 1 MHz. La transmission seffectue pendant environ 400 ms sur un canal puis sur un autre, en utilisant une combinaison de canaux connue de toutes les stations de la cellule. Dans le standard 802.11b, la bande de 2,4 GHz est dcoupe en 14 canaux spars de 5 MHz. Aux USA, seuls les 11 premiers canaux sont utilisables. En France, on nutilise que les canaux 10 13. Pour transmettre correctement 11 Mbit/s, il faut une largeur de bande de 22 MHz (thorme de Shannon). De ce fait, certains canaux recouvrent partiellement des canaux adjacents : il faut choisir des canaux isols les uns des autres (par exemple, les canaux 1, 6 et 11). Dans la pratique, on utilise gnralement des canaux distants de 25 MHz les uns des autres. Il faut donc organiser les points daccs et lutilisation des canaux pour viter les interfrences. Dans le standard 802.11a, on utilise la bande des 5 GHz [5,15-5,35 GHz] et [5,7255,825 GHz] et 8 canaux distincts, chacun ayant une largeur de 20 MHz.

7.3 ARCHITECTURES

DES RSEAUX SANS FIL

Deux modles darchitecture sont considrer : les rseaux ad hoc et les rseaux infrastructure. Dans les rseaux ad hoc, les communications seffectuent en point point entre les stations. Cest le modle de fonctionnement des WPAN. Dans les rseaux infrastructure, le rseau est gr par une ou plusieurs bases (ou bornes ou points daccs). Lorsquun rseau comprend plusieurs bornes, celles-ci sont raccordes par un rseau Ethernet laire. Chaque borne offre un ensemble de services appels BSS (Basic Service Set). Les bases servent de ponts entre le rseau laire et le rseau sans l. Lorsquil existe plusieurs bornes, il faut mettre en place un service tendu an de permettre aux utilisateurs de se dplacer dune base lautre. Lensemble des bornes constitue le systme de distribution. Outre lacheminement des donnes, les services fournis par un systme de distribution sont : Lauthentication (pour ajouter une station dans le rseau). Elle se fait le plus souvent par ladresse MAC. La dsauthentication est le service oppos au prcdent qui gre correctement la sortie dune station du WLAN.

Les rseaux locaux dentreprise 129

Lassociation. Elle permet une station dchanger des donnes via un point daccs auprs duquel elle sest identie. La rassociation permet daller dune base lautre tandis que la dsassociation permet de quitter une base ou le WLAN. La condentialit. Cela consiste utiliser une mthode de chiffrement. La distribution. Cest lquivalent du routage dans un rseau classique.

7.4 MTHODE DACCS

DANS LES

WLAN

802.11 utilise CSMA/CA (Collision Avoidance) pour grer les contentions daccs la frquence partage par toutes les stations dune base. Une station nmet que si elle ne dtecte pas de trac sur la bande de frquences partage. Sinon, elle attend un temps alatoire avant de se remettre lcoute. Pour minimiser les collisions, on utilise souvent un mcanisme optionnel : avant de lui envoyer une trame, la base envoie dabord la station une trame RTS (Request To Send), laquelle celle-ci doit rpondre et attendre ensuite la rception de la trame de donnes. Les autres stations, qui dtectent la trame RTS, retardent leur ventuelle mission. Contrairement Ethernet, les rcepteurs doivent envoyer une trame dacquittement (ACK) pour chaque trame dinformations reue, car les frquences radio peuvent tre perturbes. De plus, pour minimiser limpact des interfrences, les stations changent des trames courtes. Les stations doivent pouvoir passer dune base lautre sans que la communication soit coupe (roaming). La station, identie auprs de plusieurs bases, dtermine la meilleure (celle qui lui offre la meilleure qualit de transmission), avec laquelle elle doit tre en contact, et se rassocie avec.

Remarque
Le nom BSS est parfois synonyme de borne dans la terminologie des rseaux sans l.

Rsum
Lutilisation dun support unique partag entre plusieurs utilisateurs dun rseau local ncessite la mise en uvre de mthodes daccs spciques (accs alatoire avec dtection de porteuse ou mcanismes jetons). Par ailleurs, les rseaux locaux permettent la diffusion de linformation dans tout le rseau. Grce sa simplicit et sa capacit dadaptation, Ethernet est le rseau le plus rpandu. Depuis les origines, il a su voluer du rseau en bus 10 Mbit/s jusquau rseau en toile autour dun commutateur pouvant grer des rseaux locaux virtuels avec des dbits dpassant le Gbit/s. Selon le niveau de linterconnexion, les rseaux locaux se relient au monde extrieur par diffrents quipements : rpteurs, ponts, commutateurs, commutateurs-routeurs, routeurs et passerelles. En outre, nous avons prsent les particularits des rseaux locaux sans l.

130

Architecture des rseaux

5 Problmes et exercices
Chapitre

EXERCICE 1

CBLER

UN PETIT RSEAU LOCAL LA MAISON

Comme vous possdez plusieurs ordinateurs la maison (3 PC et 2 portables), vous souhaitez les mettre en rseau de la manire la plus simple possible. numrez les problmes que vous devez rsoudre pour mener bien votre installation. Pour viter de tirer trop de cbles dans la maison, vous dcidez de relier les machines par des liaisons sans l. Quelles sont les consquences sur votre installation ? Il faut tout dabord disposer des matriels et des logiciels appropris. Pour cela, vous devez choisir le rseau local que vous voulez crer (Ethernet ou anneau jeton), et la topologie physique que vous allez utiliser. Vous optez pour des cartes Ethernet, an de crer un rseau local plus simple et moins coteux installer. Vous devez ensuite dcider comment raccorder vos ordinateurs : topologie physique en bus ou en toile ? La topologie en bus est la solution la plus conomique si vos ordinateurs sont situs dans la mme pice. La topologie en toile, dsormais la plus populaire, impose lachat dun concentrateur (hub) dont le prix dpend du nombre de ports disponibles. Cette dernire solution vous permettra de faire voluer plus aisment votre installation (mais aurez-vous plus dune dizaine de machines la maison ?). Vous dcidez donc de raccorder vos machines en bus. Les tapes de votre installation sont : achat et assemblage des diffrents matriels, installation des logiciels, conguration des adresses IP. Au terme de la premire tape, vous devez possder les matriels suivants : un cble dit Ethernet n ; autant de prises BNC en T que vous raccordez dordinateurs sur le cble ; des prises BNC femelles pour raccorder les prises prcdentes sur le cble ; des bouchons de terminaison aux extrmits du cble ; des cartes rseau (ou cartes Ethernet), une par ordinateur connecter. Pour les portables, vous choisissez plutt des cartes quipes de deux connecteurs (un connecteur BNC et un connecteur RJ45), pour pouvoir utiliser la mme carte si vous changez de rseau physique. Vous pouvez vous contenter de cartes avec un connecteur BNC pour les autres machines. Vous devez galement disposer, sur chaque machine connecte, des logiciels de communication : un pilote (driver) pour chaque carte rseau, en gnral fourni par le constructeur de la carte ; une pile TCP/IP par ordinateur, le plus souvent fournie avec le systme dexploitation de votre machine ; un navigateur par ordinateur. Il vous reste tout assembler pour achever la deuxime tape ! Pour la troisime tape, les systmes dexploitation modernes possdent souvent des fonctions de type Plug and Play (littralement : branchez et jouez) ; les pilotes et autres logiciels sont alors trs faciles installer. Reste la dernire tape : laffectation des adresses IP toutes les machines. Cette tape sera vue au chapitre 6 qui traite du protocole IP.

Les rseaux locaux dentreprise 131

La consquence immdiate de ce choix est que toute votre belle installation est jeter ! Si vous souhaitez installer le rseau sans l le plus simple qui soit, vous quipez tous les ordinateurs avec une carte Wi-Fi au lieu de la carte rseau prcdente. Toutes les applications (partage de limprimante, jeux en rseau) qui utilisent la pile TCP/IP seront utilisables sur vos machines. Cette architecture est une architecture ad hoc, dcrite dans le standard 802.11.

EXERCICE 2

DIFFRENCES

ENTRE

802.3

ET

802.5

Pourquoi la trame IEEE 802.3 (Ethernet) ne contient-elle pas de fanion de n comme une trame type HDLC ? Pourquoi la trame IEEE 802.5 (Token Ring) ne contient-elle pas un long prambule comme la trame IEEE 802.3 ? La trame Ethernet 802.3 ne contient pas de fanion de n car elle est suivie dun silence obligatoire (intervalle intertrame), et sa longueur est code dans le champ longueur. Dans le cas o le champ longueur est remplac par un champ type, il faut extraire la longueur du contenu lui-mme. Avec Ethernet, nimporte quelle station peut un moment donn prtendre prendre la parole. Pour une station qui reoit, lmetteur est inconnu et se situe une distance quelconque, variable dune transmission la suivante : il est ncessaire de refaire la synchronisation chaque rception de trame. Avec Token Ring, une station reoit toujours les donnes de son prdcesseur sur lanneau. La synchronisation est donc beaucoup plus simple acqurir.

EXERCICE 3

BOUCHON

DE TERMINAISON

Que se passe-t-il dans un rseau local en bus sil ny a pas de bouchon de terminaison ? Aucune transmission nest possible. Le bouchon a un rle lectrique, il doit avoir une impdance bien adapte de telle sorte que les signaux ne soient pas rchis en arrivant aux extrmits du cble. La rexion est une source de bruit qui perturbe toutes les transmissions.

EXERCICE 4

PRIODE

DE VULNRABILIT

Soit un rseau Ethernet en bus de 8 stations. La distance moyenne entre stations est de 15 m. La vitesse de propagation est de 250 m/s. Quelle est la dure de la priode de vulnrabilit ? Si les stations sont rparties tous les 15 m, la distance entre les deux stations les plus loignes lune de lautre est de 15*7 = 105 m. La priode de vulnrabilit correspond au temps de propagation aller et retour entre les deux stations les plus loignes soit : 2*105 / 250 = 0,84 s.

132

Architecture des rseaux

Chapitre

Remarque
Sur un bus aussi court, la probabilit quil y ait une collision est trs faible : il faudrait que deux (ou plusieurs) quipements aient cout et pris la dcision dmettre dans le mme intervalle de 0,84 s. Do lintrt dutiliser des bus plutt courts.

EXERCICE 5

LONGUEUR

QUIVALENTE DUN BIT

Dans un rseau local dont le dbit binaire est de 5 Mbit/s et la longueur de 1 km, les signaux se propagent la vitesse de 250 m/s. quelle longueur de cble correspond un bit transmis ? Cela a-t-il une inuence sur le choix de la taille des messages ? Si le dbit est de 5 Mbit/s, un bit dure 1/(5*106) = 0,2 s, soit avec la vitesse de propagation de 250 m/s, une longueur quivalente 50 m de cble. Dans le rseau local dont la longueur est 1 km, soit 1 000 m, cela suppose quil y ait, un instant donn, 1 000/50 = 20 bits. Cette longueur est donc trs petite : le message est la fois en cours de transmission et en cours de rception.

Remarque
Dans un rseau local dont le dbit nest pas trs lev, il est inutile de prvoir des protocoles complexes avec anticipation : un instant donn, il ny a quun (et un seul) message en cours dmission.

EXERCICE 6

ADRESSE MAC
Une entreprise dispose dun rseau Ethernet. Un nouvel employ dans lentreprise est dot dun ordinateur ayant une carte Ethernet dadresse universelle 3E:98:4A:51:49:76 en hexadcimal. quel niveau cette adresse est-elle gre ? Est-il ncessaire de vrier quaucun autre ordinateur ne dispose de la mme adresse dans le rseau local ? Ladresse MAC est ladresse physique de la carte Ethernet. Cest le numro de srie de cette carte, dni par le constructeur de la carte. Les constructeurs ont des prxes uniques au monde (3 octets) et numrotent ensuite leurs cartes sur les 3 octets suivants : deux cartes ne peuvent jamais avoir le mme numro de srie. Il est donc impossible quun autre ordinateur possde la mme adresse.

Pour simplier le travail des administrateurs responsables du parc de machines, il est possible de asher la PROM qui contient ladresse MAC. Bien que cette technique viole la rgle dunicit des adresses MAC au sein dun rseau donn, elle vite la mise jour les tables de correspondance entre adresses MAC et adresses IP en cas de remplacement dune carte rseau dfectueuse, par exemple.

Les rseaux locaux dentreprise 133

Exercices

Remarque

EXERCICE 7

DBIT

UTILE THORIQUE

On rappelle que le dbit nominal dun rseau Ethernet est de 10 Mbit/s et que les trames contiennent un prambule de 8 octets, deux champs dadresse de 6 octets chacun, un champ longueur de 2 octets, des donnes dont la longueur est obligatoirement comprise entre 46 et 1 500 octets et un bloc de contrle derreur de 4 octets. Par ailleurs, un intervalle de silence entre trames est obligatoire : sa dure est de 9,6 s. Dterminez le dbit utile maximal sur un rseau Ethernet. Que pensez-vous du rsultat obtenu ? Pourquoi ne peut-on pas latteindre ? Quel est le degr du polynme gnrateur utilis pour le contrle derreur ? Le dbit utile maximal est obtenu de manire thorique si une station unique met en permanence (en respectant lespace intertrame) des trames de longueur maximale. On obtient alors : Longueur totale quivalente dune trame en octets = 8 (prambule) + 6 (adresse destinataire) + 6 (adresse metteur) + 2 (longueur ou type) + 1 500 (contenu utile) + 4 (bloc de contrle derreurs) + 12 (correspondant au silence intertrame) = 1 528 octets. Le dbit utile vaut = 10*(1 500/1 528) = 9,82 Mbit/s soit un rendement de 98,2 %. Cela est bien videmment un calcul thorique : il est impossible datteindre un tel rendement dans la pratique, ds que plusieurs quipements tentent dmettre. Il y aura des silences et des collisions qui entraneront dventuels silences et/ou collisions supplmentaires. Le bloc de contrle derreur a une longueur de 4 octets soit 32 bits. Donc le polynme gnrateur utilis est de degr 32.

Remarque
En pratique, on considre quun rendement de 50 60 % est une valeur limite. Si le trac devait tre plus important, les performances seffondreraient. Cet exercice montre lintrt des ponts et des commutateurs pour segmenter les rseaux locaux.

EXERCICE 8

DBIT

UTILE REL

Un rseau local en bus de type 802.3 a un dbit de 10 Mbit/s et mesure 800 m. La vitesse de propagation des signaux est de 200 m/s. Les trames MAC contiennent 256 bits en tout. Lintervalle de temps qui suit immdiatement une transmission de donnes est rserv lmission de laccus de rception de 32 bits. Quel est le nombre de bits en transit sur le bus un instant dtermin ? Quel est le dbit utile rel du rseau, en supposant quil y ait 48 bits de service (champs MAC et LLC) dans chaque trame ? Si le dbit est de 10 Mbit/s, un bit dure 1/(10*106) = 0,1 s soit, avec la vitesse de propagation de 200 m/s, un temps correspondant au parcours dans 20 m de cble. Dans le rseau local dont la longueur est 800 m, cela suppose quil y ait, un instant donn, 800/20 = 40 bits. Le temps total pour transmettre une trame et son accus de rception est de (256 + 32)/ (10*106) + 2*800/(200*106) = 28,8 + 8 = 36,8 s.

134

Architecture des rseaux

Chapitre

Dans ce calcul, nous comptabilisons le temps de transmission dune trame de 256 bits, plus son accus de rception (soit 32 bits), plus un temps de propagation aller et retour en prenant les quipements distance maximale. Les informations utiles dans la trame sont de 256 48 = 208 bits. Il faut donc 36,8 s pour transmettre 208 bits utiles. Le dbit utile est de 208/36,8 = 5,65 Mbit/s.

EXERCICE 9

TAILLE

MINIMALE DES TRAMES

ETHERNET

On considre un rseau local en bus utilisant le mcanisme CSMA/CD. On appelle A et B les deux quipements les plus loigns. On note : p, le temps de propagation entre les stations A et B, T le temps de transmission dune trame (toutes les trames mises sont supposes avoir la mme longueur). Par hypothse T < p. , le temps sparant les dbuts dmission des stations A et B. Par hypothse, on prend galement < p. La station A met une trame linstant initial t et la station B t + , comme le montre la gure 5.18. Figure 5.1
Dlai de propagation et temps de transmission dune trame.
Dlai de propagation p

A t

t+

Les deux stations peuvent-elles dtecter la collision ? En dduire la taille M, exprime en octets, du message de longueur minimale pour que toutes les stations puissent dtecter une collision. Pourquoi le standard 802.3 impose-t-il un nombre maximal de rpteurs traverser entre deux stations dun mme rseau dentreprise utilisant des rseaux Ethernet ? Pour que toutes les stations dtectent la collision, il faut quon ait T = p + , quon peut borner suprieurement par T = 2 p. Dans ce cas, aucune station ne dtecte la collison. Puisque T = M/8, on trouve M = 16 p, en remplaant T par sa valeur dans lexpression ci-dessus. Les rpteurs introduisent un dlai supplmentaire, ils interviennent donc dans la valeur de p.

Remarque
On comprend pourquoi la norme 802.3 impose une taille minimale pour les messages mis par les quipements dun rseau local de type CSMA/CD. Les rcepteurs font ensuite le tri entre les rsidus de collision trop courts et les vraies trames dune longueur sufsante.

Les rseaux locaux dentreprise 135

Exercices

EXERCICE 10 SIMULATION

DE TRAFIC SUR

ETHERNET

Soit un rseau local en bus utilisant un protocole de type CSMA/CD et comptant 4 stations notes A, B, C et D. Le temps est dcoup en intervalles nots ST (Slot-Time), de dure gale 51,2 s. On supposera que toutes les trames sont de longueur xe et que la dure dmission dune trame quelconque est de 6 ST. linstant t = 0, la station A commence transmettre une trame. t = 2 ST, les stations B et C dcident chacune de transmettre une trame et t = 5 ST, la station D dcide de transmettre une trame. On suppose que lors dune collision, les deux machines impliques interrompent leur communication et attendent un dlai alatoire avant de rmettre. La valeur de ce dlai (exprim en nombre entier de ST) est dtermine par lalgorithme suivant : aprs la premire collision, une machine attend un temps alatoire, gal soit 0 soit 1 ST ; aprs la deuxime collision, elle attend un temps alatoire uniformment rparti entre 0 et 3 ST ; aprs i collisions, elle attend un temps alatoire uniformment rparti entre 0 et 2i 1 ST (si i est infrieur ou gal 10) et entre 0 et 1 023 ST si i est compris entre 11 et 16. Au-del de 16 collisions, elle abandonne la transmission. On nglige le dlai intertrame (on suppose donc quune trame peut tre mise par une machine ds que celle-ci dtecte le support libre). On nglige galement le temps de propagation sur le support. Remplissez un diagramme des temps, gradu en ST, dcrivant le droulement des diffrentes transmissions de trames, en adoptant la convention suivante :
A X

slot occup par A slot occup par une collision slot vide

et en supposant que les valeurs alatoires gnres par les machines B, C et D soient les suivantes :

aprs 1 collision aprs 2 collisions aprs 3 collisions

0 2 4

1 1 5

1 1 1

Calculez, sur la priode allant de t = 0 la n de la transmission de la dernire trame, le taux dutilisation du canal pour la transmission effective des 4 trames.

136

Architecture des rseaux

Chapitre

Le chronogramme est le suivant :


ST 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28

A A A A A A X B B B B B B X

D D D D D D C C C C C C

Commentaire : la date 0, A dmarre, le support est libre et sa trame dure 6 ST donc de 0 5 ST. t = 2 ST, B et C veulent transmettre mais le support est occup : elles attendent. t = 5 ST, D veut transmettre, le support est occup, donc elle attend. t = 6 ST, le support devient libre, toutes les stations en attente (B, C et D) tentent leur chance : il y a collision. B, C et D suspendent leur transmission et dmarrent une attente alatoire. Celle-ci sera nulle pour B et de 1 ST pour les deux autres. t = 7 ST, B tente sa chance une nouvelle fois. Le support est libre, sa trame dure 6 ST, elle va de 7 12 ST. t = 8 ST, C et D veulent faire une nouvelle tentative. Le support tant occup, elles attendent. t = 13 ST, le support devient libre. Toutes les stations en attente (C et D) tentent leur chance : il y a une nouvelle collision. C et D suspendent leur transmission et dmarrent une deuxime attente alatoire, valant 1 ST pour chacune, conformment au tableau prcdent. t = 14 ST, il y a un silence, car les deux stations C et D attendent la n du dlai alatoire et t = 15 ST, elles tentent leur chance, une nouvelle fois ensemble ! Il y a nouveau collision. Cette fois, le dlai alatoire est heureusement diffrent pour les deux stations qui vont donc russir transmettre : pour D t = 17 ST et pour C t = 23 ST puisque sa troisime tentative ( t = 16 + 5 = 21 ST), le support est occup par D. Le taux dutilisation du canal est de 24/29 soit de 82 %.

EXERCICE 11 RISQUE

DE COLLISIONS ET DLAI MOYEN DATTENTE

On suppose que lalgorithme de calcul du dlai alatoire aprs collision est celui de lexercice prcdent. Deux quipements A et B sur un rseau local Ethernet entrent en collision. Pour A, il sagit dune premire collision, alors que pour B, il sagit de la seconde. Quelle est la probabilit quil y ait une nouvelle collision entre A et B leur prochaine tentative ? Mme question avec une premire collision pour A et la cinquime pour B. Calculez le temps moyen Tn dattente cumul pour laccs au support dun quipement qui a subi n collisions successives pour une trame donne.

A na subi quune collision, donc le dlai alatoire quil a tir au sort est 0 ou 1 fois lintervalle ST. B en a subi deux successives, donc le dlai quil a pu tirer au sort est uniformment rparti entre 0 ST, 1 ST, 2 ST et 3 ST. Soit p la probabilit dune nouvelle collision. Pour quun tel vnement se produise, il faut que les deux quipements aient tir au sort simultanment 0 ou simultanment 1. Notons NA (respectivement NB) la dure du dlai pour A (respectivement B). Nous obtenons : p = Proba [NA = 0]*Proba [NB = 0] + Proba [NA = 1]*Proba [NB = 1] p = 1/2*1/4 + 1/2*1/4 = 1/4 = 0,25.

Les rseaux locaux dentreprise 137

Exercices

Si B a dj subi 5 collisions, le dlai quil va tirer est rparti entre 0 ST et 31 ST. p = Proba [NA = 0]*Proba [NB = 0] + Proba [NA = 1]*Proba [NB = 1] p = 1/2*1/32 + 1/2*1/32 = 1/32. Le nombre de collisions dj subies par un quipement permet de dterminer la taille de lintervalle dans lequel il tire au sort son dlai dattente. Le temps moyen dattente avant retransmission pour un essai donn est en effet gal la moiti de lintervalle de tirage, puisquil sagit dune loi uniforme. Le temps moyen cumul pour n tentatives est donc la somme de chaque temps moyen, pour n allant de 1 16. Soit ST la dure du Slot-Time. Si n = 0, lquipement na subi aucune collision et T0 = 0. Dans le cas o lquipement a subi n collisions au total, avec n infrieur ou gal 10, avant de russir sa transmission, son dlai dattente se calcule comme suit : Le dlai dattente a une valeur nulle avant la premire transmission. Aprs la premire collision, comme N vaut 0 ou 1, on a D1 = (0 + 1)/2*ST = ST/2. Aprs la deuxime collision, N vaut 0, 1, 2 ou 3, donc on a D2 = (0 + 1 + 2 + 3)/4*ST = 3 ST/2. Aprs la troisime collision, N vaut 0, 1, 2, 3, 4, 5, 6 ou 7. On obtient : D3 = (0 + 1 + 2 + 3 + 4 + 5 + 6 + 7)/ 8*ST = 7 ST/2 et ainsi de suite jusqu n. Donc : Tn = D0 + D1 + D2 + + Dn = 0 + ST/2 + 3 ST/2 + + (2n 1) ST/2 = (2n (n + 1)/2)*ST. Si lquipement a subi n collisions au total, avec n compris entre 11 et 15 (bornes incluses), le calcul est lgrement diffrent du prcdent puisque : D10 = D11 = D12 = D13 = D14 = D15. On trouve alors : Tn = T10 + (n 10)*D10.

EXERCICE 12 LATENCE DUN

ANNEAU JETON

Un rseau local en anneau comprend 10 stations uniformment rparties sur lanneau. La vitesse de propagation des signaux est de 200 m/s. Les trames ont une longueur totale de 256 bits. Calculez le nombre de bits en transit sur lanneau pour les congurations suivantes : Pour une longueur de 10 km et un dbit binaire de 5 Mbit/s. Pour une longueur de 1 km et un dbit binaire de 500 Mbit/s. Comparez les deux anneaux du point de vue du nombre de trames en transit, du dbit utile et du rendement, si la station mettrice attend le retour de sa propre trame pour rinjecter un jeton sur lanneau. Le dbit est 5 Mbit/s, donc 1 bit dure 1/(5*106) = 0,2 s. La vitesse de propagation tant de 200 m/s, 1 bit quivaut 200*0,2 = 40 m de cble. Si la longueur de lanneau est de 10 km, la latence vaut : 10 000/40 = 250 bits. Le dbit est 500 Mbit/s, donc 1 bit dure 1/(500*106) = 0,002 s. La vitesse de propagation tant de 200 m/s, 1 bit quivaut 200*0,002 = 0,40 m de cble. Si la longueur de lanneau est de 1 km, la latence est alors de 1 000/0,40 = 2 500 bits.

138

Architecture des rseaux

Chapitre

Le nombre de trames en transit dans le cas a est presque de 1, puisque le temps de propagation sur lanneau est de 10 000/200 = 50 s et que le temps de transmission dune trame vaut : 256/(5*106) = 51,2 s. Un quipement met le 251e bit quand il reoit le 1er. Il met le 252e bit quand il reoit le 2e Pour transmettre le jeton, il doit attendre davoir reu son 256e bit. Il attend donc 50 s. Le dbit utile est de (5*106*51,2)/ (51,2 + 50) = 2,52 Mbit/s. Le rendement vaut : 2,52/5 = 50 %. Dans le cas b, le nombre de trames en transit est presque de 10, car le temps de propagation sur lanneau est de 1 000/200 = 5 s et le temps de transmission dune trame est de 256/(500*106) = 0,512 s. Dans la latence de lanneau (2 500 bits) il pourrait y avoir 2 500/256 = 9,76 trames. Or, pour pouvoir rinjecter le jeton, lquipement doit attendre davoir reu la n de sa propre trame. Il attend donc 5 s et le dbit utile est de (500*106*0,512)/(0,512 + 5) = 46,4 Mbit/s. Le rendement est nettement plus faible : 46,4/ 500 = 9 %.

Remarque
Cette perte defcacit est caractristique du mcanisme base de jeton quand le dbit augmente. Elle explique pourquoi les rseaux de type Token Ring ont moins bien volu que les rseaux Ethernet vers les Gbit/s. Pour conserver une bonne efcacit, il aurait fallu changer le mode de gestion du jeton, donc changer les cartes rseau de toutes les machines, ce qui reprsente un investissement considrable. Une variante de lanneau jeton (FDDI, Fiber Distributed Data Interface) sur bre optique, fonctionnant 100 Mbit/s, utilise des jetons temporiss et autorise la prsence de plusieurs jetons dans lanneau.

EXERCICE 13 SIMULATION

DE TRAFIC SUR UN ANNEAU JETON

Soit un anneau jeton constitu de 4 stations A, B, C et D. un instant donn, A met une trame avec la priorit 2. C veut mettre une trame avec la priorit 5 et D veut mettre avec la priorit 7. Sachant que chaque station soccupe de retirer de lanneau la trame quelle a mise et quelle doit ensuite remplacer celle-ci par un jeton libre, indiquez comment les stations oprent pour rpondre aux besoins du trac. A possde le jeton et transmet sa trame de priorit 2 qui arrive la station voisine B qui na pas de trac. B se contente donc de la rpter vers C. La station C a une trame mettre et celle-ci est de priorit 5. Dans la trame de A quelle reoit de B et rpte vers D, C positionne le champ de rservation de priorit qui tait vide la valeur 5. La station D a une trame mettre de priorit 7. Dans la trame de A quelle reoit de C et rpte vers A, elle remplace le contenu du champ de rservation de priorit par la valeur 7 (et elle mmorise la valeur 5 quelle vient dcraser). Lorsque A a ni de recevoir sa propre trame, elle envoie donc un jeton libre vers B avec la priorit 7, que B laisse passer. C reoit le jeton mais celuici est de priorit plus leve que celle demande. Elle laisse donc passer le jeton destination de D. Celle-ci reoit le jeton qui correspond la priorit rclame. D prend le jeton et transmet sa trame de priorit 7 qui fait le tour de lanneau. Au passage de cette trame, la station C qui a toujours une trame en attente, laisse encore passer son tour. Lorsque D a ni de recevoir sa propre trame, elle envoie un jeton libre vers A avec la priorit 7 (cela permet toutes les autres stations qui auraient une trame de priorit 7 dcouler leur trac. Le jeton libre revient D puisque ici il ny a pas dautre trac de priorit 7). D envoie enn un jeton libre avec la priorit 5 que C souhaitait. C transmet sa

Les rseaux locaux dentreprise 139

Exercices

trame de priorit 5 qui fait tout le tour de lanneau puis elle rinjecte enn un jeton libre de mme priorit (5) avant denvoyer un jeton la priorit prcdente (2).

Remarque
Le niveau de priorit 5 est a priori rserv aux stations qui ont des fonctions particulires (les ponts, par exemple). La priorit maximale 7 est utilise pour les trames de supervision de lanneau. En absence de demande, le jeton libre circule avec la priorit 0, donc toutes les stations peuvent mettre, mme avec la priorit la plus faible. Lexercice donne un aperu de la complexit de gestion des priorits dans un anneau jeton.

EXERCICE 14 ETHERNET

COMMUT

Soit un rseau Ethernet commut constitu de 45 quipements et dun serveur connects un commutateur 100 Base T. Quelle est la topologie physique de ce rseau ? Quel est le dbit du rseau et quel support de transmission est utilis ? laide de cet exemple, montrez les principales diffrences de fonctionnement entre un concentrateur et un commutateur. Si 5 quipements transmettent des donnes simultanment vers le serveur, quel dbit thorique peut esprer chacun dentre eux ? La topologie physique est en toile, le dbit de 100 Mbit/s sur paires mtalliques. Avec un concentrateur, lorsquun quipement met vers un autre, tous les quipements du rseau reoivent linformation. Le dbit de 100 Mbit/s est partag entre les utilisateurs et les transferts de donnes se font lalternat. Un concentrateur est un quipement trs bon march. Avec un commutateur, si un quipement met vers un autre, seul le destinataire reoit linformation. Chaque utilisateur emploie un dbit de 100 Mbit/s et les transferts de donnes sont bidirectionnels simultans. Un commutateur est plus onreux mais le rapport prix/performances vaut le supplment. Si le commutateur a une capacit sufsante, chaque quipement, directement reli au commutateur, peut disposer dun dbit thorique ddi de 100 Mbit/s dans les deux sens de transmission. Puisque les 5 quipements communiquent avec le mme serveur, le lien entre le serveur et le commutateur est en fait partag entre les 5 communications : un dbit maximal de 20 Mbit/s est offert chaque dialogue.

EXERCICE 15 GIGABIT ETHERNET


Pour les transmissions de type Ethernet 1 Gbit/s, la trame doit avoir une longueur minimale de 512 octets. Quel est le temps dmission dune trame de longueur minimale ? Peut-on en dduire la priode de vulnrabilit dans un tel rseau ?

140

Architecture des rseaux

Chapitre

Le temps dmission dune trame de 512 octets est 512*8/109 soit environ 4 s. On peut en dduire que la priode de vulnrabilit est au plus gale 4 s.

Remarque
On comprend ici pourquoi il a fallu augmenter la taille de la trame : la priode de vulnrabilit aurait t trop courte.

EXERCICE 16 RSEAUX

LOCAUX VIRTUELS

On considre un commutateur avec 8 ports numrots P1, P2, , P8. 6 quipements nots M1, M2, , M6 sont connects ce commutateur. M1 est connect sur le port P1, M2 sur le port P2 Lquipement M1 envoie une trame Ethernet avec ladresse de diffusion. Qui reoit cette trame ? Si maintenant lquipement M1 envoie une trame Ethernet M3, qui la reoit ? On met en place des rseaux locaux virtuels par port sur le commutateur : le VLAN A contient les quipements M1, M3 et M5, le VLAN B les quipements M2, M4 et M6. Donnez laffectation des ports aux diffrents VLAN dans le commutateur. Que se passe-t-il pour le scnario de la question a ? On ajoute un second commutateur avec la mme conguration et 6 nouveaux quipements M11, M12, M13, M14, M15 et M16. Les quipements de numro impair appartiennent au VLAN A, ceux de numro pair au VLAN B. Proposez une solution pour relier les deux commutateurs. Donnez la nouvelle affectation des ports aux diffrents VLAN dans le premier commutateur. Peut-on nutiliser quun seul lien entre les deux commutateurs ? Lorsque M1 envoie une trame Ethernet avec ladresse de diffusion, le commutateur la rpte sur lensemble de ses ports : tous les quipements, de M1 M6, la reoivent. Quand M1 envoie ensuite une trame M3, le commutateur la reoit sur le port P1 et la transmet sur le port P3 : seul M3 la reoit. Le commutateur associe P1, P3 et P5 au VLAN A et P2, P4 et P6 au VLAN B. Le commutateur diffuse au sein du VLAN A la trame de M1 arrivant par le port P1. Les quipements de numros pairs ne la reoivent pas : le commutateur isole les quipements des deux VLAN, le trac de lun ne passe pas sur lautre. Le traitement de la trame envoye par M1 M3 est inchang, puisque M1 et M3 sont lintrieur du mme VLAN A. Le second commutateur peut avoir une table semblable celle du premier : P1, P3 et P5 appartiennent au VLAN A et P2, P4 et P6 au VLAN B. Il reste relier les deux commutateurs. Pour cela, on peut relier les ports 7 de chaque commutateur et affecter ce port au VLAN A. De mme, on peut relier les ports 8 de chacun deux et laffecter au VLAN B. La table devient alors : P1, P3, P5 et P7 au VLAN A et P2, P4, P6 et P8 au VLAN B. Si on met deux liens (en reliant les deux ports P7 entre eux et les deux ports P8 entre eux), on se retrouve avec une boucle dans le rseau et il faudra grer lalgorithme de larbre couvrant. Il ny a pas de boucle si on ne met quun seul lien entre les deux commutateurs (entre les ports P7, par exemple), mais les deux VLAN doivent alors partager ce lien : le

Les rseaux locaux dentreprise 141

Exercices

port P7 appartient aux deux VLAN. Dans ce cas, il faut que les VLAN soient tiquets pour que les commutateurs sachent comment traiter les trames. Il faut galement que les cartes rseau des quipements supportent le standard 802.1Q qui permet ltiquetage des VLAN.

Remarque
Cet exercice montre lintrt dutiliser le protocole 802.1Q : en permettant la cration de plusieurs arbres couvrants, on peut relier les deux commutateurs par plusieurs trunks et donc amliorer la tolrance aux pannes du rseau.

EXERCICE 17 INTERCONNEXION
Deux entreprises A et B, installes dans le mme immeuble de bureaux, sont quipes lune dun rseau local de type Ethernet, lautre dun rseau local de type Token Ring. Proposez une solution dinterconnexion pour que chaque station de lentreprise A puisse dialoguer avec toutes les stations de lentreprise B. quoi pourrait-on attribuer le goulet dtranglement et la dgradation ventuelle des dbits utiles dune station du rseau A ?

Les deux rseaux sont proches lun de lautre mais ils utilisent des couches MAC diffrentes. Il est donc impossible de les relier par des rpteurs. Un pont au minimum est indispensable, mais un routeur pourra tenir compte de la taille des trames diffrentes : en constatant quune trame de taille maximale de Token Ring ne peut pas entrer telle quelle dans un rseau Ethernet, il fabrique autant de trames que ncessaire pour ne pas perdre dinformations entre les deux rseaux locaux, ce quun simple pont ne sait pas faire. La rponse la question suivante explique pourquoi. Si les dbits sont diffrents (10 Mbit/s sur Ethernet et 16 Mbit/s sur Token Ring par exemple), une longue rafale de trac dans le sens B vers A peut entraner des pertes de trames, parce que le pont ne peut plus les mmoriser avant de les envoyer vers le rseau le plus lent. En outre, sil y a plusieurs trames de longueur maximale (4 500 octets) de B vers A, celles-ci doivent tre fragmentes dans le rseau A : il faut donc un quipement capable de fragmenter le champ de donnes trop long, puis dencapsuler chaque fragment dans une trame au format adquat. Seuls un routeur ou un commutateur-routeur peuvent assurer ces fonctions. Dautre part, le service rendu par les deux couches MAC est diffrent. Une station du rseau B ne reoit pas laccus de rception (champ FS de la trame) quelle attend. En effet, le pont qui se trouve dans le rseau A ne renvoie pas la trame, comme le fait une station dun anneau jeton. Dans le cas o le pont a rempli le champ FS de lui-mme, la machine du rseau B croit que son destinataire a bien reu la trame, ce qui nest peut-tre pas vrai. Dans le cas o Ethernet est le rseau local le plus rapide, il ny a pas de risque de trouver des champs de donnes trop longs mais la mmoire du pont peut tre insufsante pour ponger une rafale prolonge de trac vers le rseau Token Ring.

142

Architecture des rseaux

Chapitre

EXERCICE 18 RLE

DES PONTS

Soit le rseau suivant (voir gure 5.19) constitu de trois sous-rseaux Ethernet. Le protocole de niveau rseau utilis est IP. Les machines D et H sont des ponts. Dcrivez lenvoi de la trame de F C (une station qui vient de se connecter au rseau). Si K est un analyseur de trac, peut-il enregistrer la trame ? Figure 5.19
Exemple de rseau.
A B C I J K

Mme question avec la trame rponse de C F. On tend le rseau prcdent (voir gure 5.20). Les quipements dinterconnexion D, E, I et H peuvent-ils tre des rpteurs ? Des ponts ? Figure 5.20
Extension du rseau prcdent.
A B C I L

Si D et H sont des ponts, ils reoivent lun et lautre la trame mise par F. Les deux ponts, ne sachant pas o se trouve le destinataire, laissent passer la trame, laquelle circule sur les deux autres sous-rseaux. C reoit donc la trame. K, qui est dans le troisime sous-rseau, la voit passer de mme et peut lenregistrer. Lorsque C rpond F, la trame diffuse parvient au pont D qui sait quil doit la laisser passer puisque F est accessible de lautre ct. Par contre, le pont H sait que C et F sont situs

Les rseaux locaux dentreprise 143

Exercices

du mme ct. Il ltre donc la trame qui ne transite pas sur le troisime sous-rseau : lanalyseur de protocole K ne voit pas la trame rponse. Si D, E, I et H sont des rpteurs, le rseau ne peut pas fonctionner car il na plus sa structure de bus rami. Si D, E, I et H sont des ponts, le rseau ne peut fonctionner que si lun des ponts est inactif (ce qui a pour effet de couper la boucle). Les ponts constituent un ensemble collaboratif, ils discutent entre eux et dcident celui qui sera inactif (cest le rle de STP, lalgorithme de larbre couvrant).

Remarque
Lexplication de la question a suppose que les ponts fassent de lautoapprentissage. Si les ponts sont congurs lavance avec les adresses MAC des stations qui sont de chaque ct, seul le pont D laisse passer la trame qui va de F C ainsi que sa rponse de C F. Lanalyseur K ne voit rien de ce trac. Cet exemple montre lintrt des ponts pour segmenter des rseaux locaux.

EXERCICE 19 ALGORITHME

DE LARBRE COUVRANT

Considrons un rseau dentreprise compos de segments Ethernet interconnects par des commutateurs, comme le montre la gure 5.21. Figure 5.21
Interconnexion des segments Ethernet par des commutateurs.
Eth 4 Eth 3 Eth 1

Eth 2

Considrons les rseaux Eth1 et Eth2. Combien de chemins diffrents les donnes peuvent-elles emprunter pour aller dun rseau lautre ? Comment sera assure la redondance en cas de panne dun commutateur ? Que peut-il arriver si un des commutateurs narrive plus recevoir dinformations sur un port mais quil puisse toujours en mettre ? Les BPDU de conguration sont constitus du triplet : < ID pont racine.cot la racine. ID pont metteur >. Un commutateur didentiant ID = 27 reoit sur ses diffrents ports les BPDU : port 1 : < 35.2.48 > ; port 2 : < 15.3.17 > ; port 3 : < 15.3.19 > ; port 4 : < 15.3.22 >. Quel est le meilleur BPDU de conguration que ce commutateur peut fabriquer ? Quelle valeur maximale faut-il donner lID du commutateur pour quil puisse devenir racine ? Quel est le port racine ? Quels ports font partie de larbre couvrant ? 144
Architecture des rseaux

Chapitre

Avant le transfert des donnes, les commutateurs excutent lalgorithme STP pour viter les boucles dans le rseau. Une fois que les commutateurs lont excut, il ny a quun seul chemin possible pour les donnes entre Eth1 et Eth2. Certains commutateurs ne vont plus recevoir de BPDU de conguration et cela provoquera une nouvelle excution de lalgorithme de larbre couvrant pour construire une nouvelle arborescence. Il ne va plus recevoir de BPDU de conguration sur le port en panne. Il commence donc une nouvelle excution de lalgorithme de larbre couvrant de manire intempestive. Comme il ne reoit plus les informations, il peut dclencher une tempte de diffusion (broadcast storm). Il faut le dconnecter ! Le meilleur BPDU de conguration quil puisse produire est : <15.4.27>. Il faut que lID ait au maximum la valeur 14. Le port racine est le port 2. Les ports 1 et 2 font partie de larbre couvrant.

EXERCICE 20 UTILISATION DE VRRP RSEAU DENTREPRISE

POUR QUILIBRER LE ROUTAGE DANS UN

Une entreprise utilise deux serveurs pour les machines de son rseau constitu de quatre VLAN. Jusqu prsent, un simple commutateur raccorde les diffrents VLAN aux deux serveurs, comme le montre la gure 5.22. Figure 5.22
Larchitecture initiale du rseau de lentreprise.
Serveur 1 Serveur 2

Commutateur

VLAN 1

VLAN 2

VLAN 3

VLAN 4

Laccs aux serveurs devient une ressource critique. Lentreprise veut quilibrer le routage entre ses quatre VLAN, le serveur 1 tant principalement utilis par les VLAN 1 et 2, le serveur 2 par les VLAN 3 et 4. Proposez une solution qui puisse quilibrer le routage et permette au rseau de continuer fonctionner si lun des quipements dinterconnexion tombait en panne.

Les rseaux locaux dentreprise 145

Exercices

Le rseau volue car lentreprise grandit. Elle acquiert un deuxime commutateur pour constituer un cur de rseau, comme le montre la gure 5.23. Ladministrateur constate alors une saturation des liens de son rseau. Pouvez-vous expliquer pourquoi ? Figure 5.23
Relations enre le cur de rseau et les serveurs de lentreprise.
Serveur 1 Serveur 2

Commutateur 1

Commutateur 2

Cur de rseau

Proposez une solution pour y remdier tout en prservant la redondance de larchitecture. Pour introduire une redondance dans laccs aux VLAN, il faut doubler le dispositif qui assure lacheminement dans le rseau : le plus simple est dinstaller deux commutateursrouteurs utilisant le protocole VRRP pour raccorder chaque serveur par deux liens diffrents (en double attachement : un lien est actif pendant que lautre est dsactiv). Les deux commutateurs-routeurs constituent le cur du rseau de la gure 5.23. Avec ladjonction du nouveau commutateur, on a cr la boucle : Serv 1 commutateur 1 Serv 2 commutateur 2 Serv 1. Cela explique pourquoi les liens sont saturs. Pour supprimer la boucle, la premire des choses faire est dactiver larbre couvrant (STP). Pour privilgier un chemin en fonctionnement normal sans interdire la redondance, il faut crer des chemins diffrents, donc utiliser des arbres couvrants multiples, en construisant un STP par VLAN selon le standard 802.1Q. La solution prcdente est complter car, en cas de dfaillance dun quipement, le chemin entre un VLAN donn et le serveur auquel il fait le plus souvent appel nest pas forcment simple. On a donc intrt ajouter un lien entre commutateur 1 et commutateur 2 pour simplier le trajet dans le rseau.

146

Architecture des rseaux

Chapitre

Le protocole IP (Internet Protocol)


1. 2. 3. 4. 5. Les adresses IP (Internet Protocol ) 148 Service rendu par le protocole IP 154 Format du datagramme IP ...... 156 Protocole ICMP....................... 159 Protocole IPv6 ...................... 160

IP transfre les donnes travers une interconnexion de rseaux. Il est utilis par les protocoles de la couche de transport, TCP et UDP. Il cherche un chemin pour transfrer les donnes (datagrammes) dun quipement metteur, identifi par son adresse IP, un quipement destinataire, identifi lui aussi par son adresse IP. Dans une machine quelconque, le module IP ne fournit aucune garantie dun acheminement correct des donnes et ne gre aucun dialogue avec le module IP dune autre machine. Chaque datagramme est gr indpendamment des autres. Cela signifie que ceux-ci peuvent tre mlangs, dupliqus, perdus ou altrs ! Pour comprendre le fonctionnement du protocole IP, nous allons dabord voir les adresses IP elles-mmes ainsi que leur correspondance avec les adresses physiques, le traitement effectu par un module IP et le format du datagramme IP.

Problmes et exercices 1. Principes gnraux de ladressage ........................... 162 2. Classes dadresse .................. 162 3. Informations de configuration . 162 4. Adresse MAC et adresse IP .... 163 5. Correspondance adresse MAC/adresse IP .................... 163 6. Sous-rseaux ......................... 164 7. Plan dadressage gnral ....... 165 8. Plan dadressage particulier ... 165 9. Plan dadressage avec sous-rseaux ......................... 166 10. CIDR ..................................... 167 11. Fragmentation des datagrammes 167 12. Interconnexion ....................... 167 13. Rpteur, pont et routeur ........ 168 14. Utilitaire ping ........................ 169 15. Commande traceroute ........... 169 16. Dcodage de datagramme ..... 170 17. Dcodage de trame Ethernet .. 172 18. Autre dcodage de trame Ethernet ................................ 172

147

Les adresses IP (Internet Protocol)


Ladressage utilis dans Internet est un adressage logique. Chaque quipement possde un nom symbolique auquel on fait correspondre ladresse logique appele adresse IP. Celle-ci se dcompose en deux parties : lidenticateur du rseau, o se trouve lquipement, et lidenticateur de la machine elle-mme (qui a une signication locale ce rseau). Lensemble tient sur 32 bits soit 4 octets. Ladresse IP est le plus souvent crite en notation dcimale pointe : les octets sont spars par des points, et chaque octet est reprsent par un nombre dcimal compris entre 0 et 255.

Exemple

Adresse IP = 11000001 00011011 00101101 00100001 en binaire soit 193.27.45.33 en notation dcimale pointe.

1.1 LES

CLASSES DADRESSES
Plusieurs classes dadresses sont dnies : un rseau ayant beaucoup de machines dispose dune adresse avec un champ identicateur de rseau court et un champ identicateur de machine long. En revanche, dans un petit rseau local, lidenticateur de machine sera cod sur peu dlments binaires. La classe dadresse et lidenticateur de rseau sont attribus par un organisme central, lICANN (Internet Corporation for Assigned Names and Numbers), qui gre le plan dadressage lchelle mondiale et garantit lunicit des numros de rseau. Ladministrateur local du rseau attribue ensuite les numros de machine aux diffrents quipements de son rseau, selon le plan dadressage quil a conu. Lidenticateur de rseau est cod sur 7, 14 ou 21 bits selon la classe dadresse. Les adresses de classe A affectent 7 bits lidentit de rseau et 24 bits lidentit de machine ; les adresses de classe B affectent 14 bits lidentit de rseau et 16 bits lidentit de machine. Enn, les adresses de classe C allouent 21 bits lidentit de rseau et 8 bits lidentit de machine. Les adresses de classe D sont rserves pour mettre en uvre le mcanisme de diffusion de groupe. La classe dune adresse IP est dtermine partir des bits de poids fort, comme le montre la gure 6.1.

Figure 6.1
Diffrents formats dadresse IP.

16

24 ID.MACHINE

31

Classe A 0 ID.RSEAU

Classe B 1 0

ID.RSEAU

ID.MACHINE

Classe C 1 1 0

ID.RSEAU

ID.MACHINE

Classe D 1 1 1 0

ADRESSE DE DIFFUSION DE GROUPE

Classe E 1 1 1 1 0 ID = identificateur

RSERV POUR UTILISATION FUTURE

Les trs grands rseaux ont des adresses de classe A, dont le premier bit du premier octet est 0 tandis que les 7 autres bits servent identier 126 rseaux diffrents. Chaque rseau de classe A possde 24 bits didentiant de machine, ce qui permet dadresser 224 2, soit 16 777 214 machines (les deux identiants 0 et 16777215 sont, par convention, rservs un autre usage). 148
Architecture des rseaux

Chapitre

Exemple

Les rseaux de taille moyenne ont des adresses de classe B. Elles commencent en binaire par 10 et affectent 14 bits lidentiant de rseau ; il reste 16 bits pour identier les machines, soit au maximum 65 534 (pour la mme raison que prcdemment, les identiants 0 et 65535 ne sont pas attribus une machine). Enn, pour les petits rseaux, les adresses de classe C commencent en binaire par 110 et allouent 21 bits lidentiant de rseau et 8 bits lidentiant de machine. On peut ainsi adresser jusqu 254 machines (les identiants 0 et 255 ne sont pas utiliss). Les adresses de classe D, commenant en binaire par 1110, sont rserves la mise en uvre dun mcanisme de diffusion de groupe (multicast). Dans une communication multicast, un utilisateur met un message dont ladresse de destination est celle du groupe. Le message est achemin en un seul exemplaire le plus loin possible, jusqu ce quil soit indispensable de lclater en autant de messages individuels que le groupe possde de membres. La plupart des adresses multicast alloues le sont des groupes dutilisateurs concerns par une mme application (la radio sur Internet par exemple. On comprend dans ce cas lintrt denvoyer en multicast au lieu denvoyer massivement autant de messages quil y a de rcepteurs). Dans une adresse multicast, les 28 bits restants nont pas de structure particulire. Adresse IP = 11000001 00011011 00101101 00100001 soit 193.27.45.33. Il sagit dune adresse de classe C puisquelle commence en binaire par 110. Le dcoupage est alors le suivant : 110 (3 bits pour la classe C) 00001 00011011 00101101 (21 bits didentiant de rseau) et 00100001 (8 bits identiant la machine dans le rseau).

1.2 ADRESSES

PARTICULIRES

Lorsquune machine ne possde pas dadresse IP et quelle doit envoyer un (premier) message pour en obtenir une, elle remplit le champ Adresse du message par plein 0 ou 0.0.0.0 en notation dcimale pointe. loppos, remplir le champ Adresse par plein 1 permet de dsigner lensemble des machines au sein du rseau dans lequel se trouve la machine. Les rseaux eux-mmes possdent chacun une adresse : celle-ci est obtenue en remplaant le champ Identiant de machine par plein 0 , conformment la classe.

Exemple

La machine 37.194.192.21 appartient au rseau 37.0.0.0 (classe A). La machine 137.194.192.21 appartient au rseau 137.194.0.0 (classe B). La machine 197.194.192.21 appartient au rseau 197.194.192.0 (classe C). Une adresse de diffusion (broadcast address), dsigne lensemble des machines dun rseau distant. Elle est constitue en remplaant le champ Identiant de machine par plein 1 .

Exemple

Ladresse de diffusion du rseau 37.0.0.0 est 37.255.255.255 (classe A). Ladresse de diffusion du rseau 137.194.0.0 est 37.194.255.255 (classe B). Ladresse de diffusion du rseau 197.194.192.0 est 197.194.192.255 (classe C). Certains identiants de rseau nexistent pas, en particulier les rseaux de classe A : 0 et 127. 0 est rserv lusage dcrit ci-avant et 127 sert aux tests locaux. Par exemple, ladresse 127.0.0.1 est a priori affecte chaque carte rseau. Tout message envoy cette adresse est directement retourn son expditeur, sans aucune mission sur le rseau : cela permet de vrier que la pile TCP/IP fonctionne correctement. Notons que cette adresse, appele adresse de boucle locale (loopback address), na aucun rapport avec la notion de boucle locale utilise pour la desserte des usagers du rseau tlphonique.

Le protocole IP (Internet Protocol) 149

1.3 NOTIONS

DE SOUS-RSEAUX ET DE MASQUE

La hirarchie deux niveaux (rseau et machine) de ladressage IP sest rapidement rvle insufsante cause de la diversit des architectures des rseaux connects. La notion de sous-rseau (ou subnet), introduite en 1984, a conserv le format de ladresse IP sur 32 bits. Dans un rseau subdivis en plusieurs sous-rseaux, on exploite autrement le champ Identiant de machine de ladresse IP. Celui-ci se dcompose dsormais en un identiant de sous-rseau et un identiant de machine. Remarquons que ce dcoupage nest connu qu lintrieur du rseau lui-mme. En dautres termes, une adresse IP, vue de lextrieur, reste une adresse sur 32 bits avec ses deux champs. On ne peut donc pas savoir si le rseau est constitu dun seul rseau ou subdivis en plusieurs sous-rseaux. Ladministrateur local choisit le nombre de bits consacrer lidentiant de sous-rseau grce au masque de sous-rseau (ou subnet mask). Celui-ci, galement cod sur 32 bits, dnit le dcoupage de lidentiant machine en deux champs (Sous-rseau et Machine). Dans un rseau subdivis, chaque machine connat son adresse IP et le masque utilis, ce qui lui permet de savoir dans quel sous-rseau elle se trouve. Il suft de faire un ET logique entre son adresse IP et le masque :

Exemple

Adresse IP : 193. 27. 45. 33 Masque : 255.255.255.224 Comparaison sous masque : ET :

= 11000001 00011011 = 11111111 11111111 11000001 00011011 11111111 11111111 11000001 00011011

00101101 11111111 00101101 11111111 00101101

00100001 11100000 00100001 11100000 00100000

Le rsultat 193.27.45.32 est ladresse du sous-rseau auquel appartient la machine 193.27.45.33. Lorsquun quipement dun (sous-)rseau veut mettre un message un autre, il compare sa propre adresse bit bit avec celle du destinataire, en utilisant le masque de sous-rseau. Sil y a galit sur toute la partie identie par les 1 du masque, les deux quipements se trouvent dans le mme (sous-)rseau et le message peut donc tre transmis directement. Sinon, il est envoy au routeur, la machine qui assure lacheminement du message vers lextrieur du (sous-)rseau.

Exemple

Soit une adresse IP de rseau de classe C 193.27.45.0. Le masque de sous-rseau vaut : 255.255.255.224, soit en binaire : 11111111 11111111 11111111 11100000 . Nous voyons donc que, dans loctet rserv au champ Identiant de machine, trois bits sont utiliss pour identier des sous-rseaux interconnects par un routeur. Sur le sous-rseau 1, ladresse du sous-rseau est 193.27.45.32. Si ladministrateur dcide daffecter lidentiant 1 au routeur dans tous les sous-rseaux, ladresse du routeur dans le sous-rseau 1 est : 193.27.45.33; ladresse de diffusion dans le sous-rseau valant 193.27.45.63, il reste donc 29 adresses disponibles sur les 32 possibles pour les stations du sous-rseau 1. De mme, dans le sous-rseau 2, ladresse de sous-rseau tant 193.27.45.64, celle du routeur vaut 193.27.45.65 et ladresse 193.27.45.95 est celle de diffusion dans le sous-rseau. Il reste galement 29 adresses disponibles sur les 32 possibles pour les stations du sous-rseau 2.

Remarque
Dans un rseau plat (sans sous-rseau), on peut mettre 254 stations sur un rseau de classe C. Avec six sous-rseaux physiques comme dans cet exemple (on a exclu de fait les numros 0et 7), on ne peut en mettre que 174, mais on dispose dune identication plus ne et dune possibilit de diffusion limite chaque sous-rseau.

150

Architecture des rseaux

Chapitre

1.4 PNURIE DADRESSES


Le formidable succs dInternet a men lpuisement des adresses de classes A et B et lexplosion des tables de routage des routeurs situs dans les rseaux de transit. Si beaucoup dorganisations possdent plus de 254 ordinateurs, peu en possdent plusieurs milliers (or, une adresse de classe B permet didentier jusqu 65 534 machines). Ce manque de souplesse entre les classes explique les diffrentes solutions mises en uvre ds les annes 1990 : lutilisation dadresses prives, dadresses sans classe et la distribution dynamique des adresses.

Les adresses prives


Plusieurs plages dadresses IP ont t rserves dans chaque classe dadresses et sont dutilisation libre. Elles sont appeles adresses IP prives et sont dcrites dans la RFC 1918 (voir tableau 6.1).
Tableau 6.1 Les adresses IP prives en classes A, B et C

Classe

Adresses prives

Nombre maximal de machines

A B C

10.x.y.z, o 0 x 255 0 y 255 et 0 z 255 172.x.y.z, o 16 x 31 0 y 255 et 0 z 255 192.168.x.y, o 0 x 255 et 0 y 255

(256*256*256) 2 = 16 777 214 (15*256*256) 2 = 1 048 574 (256*256) 2 = 65 534

Ces adresses ne peuvent tre attribues par lICANN une organisation. Ainsi, des rseaux diffrents peuvent utiliser les mmes adresses IP prives, pourvu quils restent isols les uns des autres. Pour relier Internet les machines dun rseau utilisant des adresses prives, on met en place une traduction, gre par le routeur, entre adresses IP prives (internes au rseau de lorganisation et inaccessibles de lextrieur) et adresses IP publiques (visibles de lextrieur, cest--dire accessibles par Internet). Une adresse IP publique est unique ; elle est dite routable, car elle seule autorise laccs Internet. La correspondance entre les deux types dadresses est assure par le NAT (Network Address Translation), un mcanisme de conversion dadresse dcrit par la RFC 3022. De plus, les adresses IP prives garantissent une meilleure scurit daccs aux rseaux dorganisation, dans la mesure o les adresses relles utilises par les machines du rseau ne sont pas connues de lextrieur. Le NAT statique cre une bijection entre adresses IP publiques et adresses IP prives internes au rseau. Le routeur associe une adresse IP prive (par exemple 192.168.0.1) une adresse IP publique routable sur Internet. Il fait la traduction, dans un sens comme dans lautre, en modiant ladresse dans le paquet IP. Le NAT statique connecte des machines du rseau interne Internet de manire transparente, mais ne rsout pas le problme de la pnurie dadresses, dans la mesure o n adresses IP routables sont ncessaires pour connecter n machines du rseau interne. Le NAT dynamique partage une adresse IP routable (ou un nombre rduit dadresses IP routables) entre plusieurs machines dotes dune adresse prive. Ainsi, vu de lextrieur, toutes les machines du rseau interne possdent la mme adresse IP. Les adresses IP prives sont donc la garantie dune scurit accrue. De plus, elles constituent une rponse au manque dadresses IP. Leurs inconvnients sont : le travail supplmentaire lors de la conguration du rseau et la renumrotation envisager lors de la fusion dentreprises qui utiliseraient les mmes adresses IP prives.

Le protocole IP (Internet Protocol) 151

Les adresses sans classe CIDR (Classless InterDomain Routing)


Le CIDR a t propos partir de 1994. Lide est dorganiser une adresse rseau indpendamment de sa classe ; le masque de sous-rseau indiquant le nombre de bits rservs lidentiant rseau est alors x librement par ladministrateur. Par exemple, pour raliser lquivalent de deux adresses de classe C contigus, ladministrateur choisira un masque /23. Naturellement, le CIDR sutilise galement pour les adresses prives, telles quelles sont dnies dans la RFC 1918.

Exemple

Lentreprise sest vu attribuer ladresse : 12.22.36.0 /22. Cela veut dire que lidentiant rseau tient sur 22 bits. Il reste 10 bits que ladministrateur peut affecter librement. Dans certaines parties du rseau, il peut dcider dutiliser un masque /23, dans dautres il prendra un masque /25 mais jamais un masque de taille infrieure 22 bits dans notre exemple. Lavantage de CIDR est de saffranchir des contraintes imposes par le format des classes dadresses. Les seules restrictions qui demeurent concernent les adresses dvolues au rseau lui-mme, la diffusion dans le rseau et aux anciennes classes D (rserve au multicast) et E (classe dextension) dIPv4. Le tableau 6.2 donne des exemples dallocation dadresses en fonction des besoins de lorganisation (la liste est bien videmment non exhaustive. Elle est adapter aux besoins du rseau considr). Nous donnerons dautres exemples dans les complments pdagogiques, sur le site www.pearsoneducation.fr.

Tableau 6.2 Exemples dallocation dadresses CIDR

Besoin de lorganisation

Allocation dadresses

Masque utilis

< 64 adresses < 128 adresses

Subdivision de classe C Subdivision de classe C

/26 /25

< 256 adresses < 512 adresses < 1 024 adresses < 2 048 adresses < 4 096 adresses

1 rseau de classe C 2 rseaux de classe C contigus 4 rseaux de classe C contigus 8 rseaux de classe C contigus 16 rseaux de classe C contigus

/24 /23 /22 /21 /20

Exemple

Soit une entreprise possdant 780 quipements dans son rseau qui obtient 4 adresses de classe C conscutives : 194.42.36.0, 194.42.37.0, 194.42.38.0 et 194.42.39.0. Pour elle, tout se passe comme si son identiant de rseau tait 11000010 00101010 001001, puisquil y a 22 bits en commun sur les identiants rseau. En effet, dans le troisime octet, les nombres 36, 37, 38 et 39 ont en commun les 6 premiers bits 001001. La notation de ladresse IP dun quipement quelconque dans ce rseau sera, par exemple, 194.42.37.156/22, o /22 (prononcer slash 22) signie : Dont les 22 premiers bits sont lidentiant de rseau. Sur les 32 bits de ladresse, il en reste 32 22 = 10 pour lidentiant de machine, ce qui permet 210 adresses diffrentes et convient cette entreprise.

La distribution dynamique des adresses


Une autre solution pour grer la pnurie des adresses consiste utiliser une plage dadresses (ventuellement trop petite pour le parc de machines), en allouant temporairement les adresses IP disponibles aux seules machines connectes et en partant de lhypothse que toutes ne le seront pas simultanment. Pour assurer la distribution dynamique des adresses, le protocole DHCP (Dynamic Host Conguration Protocol) fournit automatiquement un ordinateur qui vient dtre install dans le rseau de lentreprise ses paramtres de conguration rseau (adresse IP et masque de sous-rseau). De plus, cette technique sim-

152

Architecture des rseaux

Chapitre

plie la tche de ladministrateur dun grand rseau, en vitant les doublons dadresses. Elle peut se mettre en uvre aussi bien avec des adresses publiques quavec des adresses prives et peut videmment servir lorsque la plage dadresses IP est plus grande que le parc de machines identier. Cette technique tant vue comme une application au sens de larchitecture de communication, nous laborderons au chapitre 9 qui traite des applications.

1.5 ASSOCIATION CONTROL)

DES ADRESSES

IP

ET DES ADRESSES

MAC (MEDIUM ACCESS

Au chapitre prcdent, nous avons vu que les quipements taient identis dans les rseaux locaux par leur adresse MAC, numro de srie de la carte rseau qui y est installe. Maintenant, les rseaux locaux sont interconnects et plongs dans des rseaux logiques, qui attribuent leurs quipements des adresses IP. Le mme quipement possde donc deux adresses, lune physique, lautre logique, et il est ncessaire de pouvoir faire lassociation entre les deux. Soit deux machines A et B, connectes un mme rseau local. Chaque machine a une adresse IP, respectivement IPA et IPB, et une adresse MAC (numro de srie de la carte Ethernet, par exemple), respectivement MACA et MACB. Le problme, nomm problme de rsolution dadresse ou address resolution problem, consiste faire la correspondance entre adresses IP et adresses MAC, sachant que les programmes dapplication ne manipulent au mieux que des adresses IP et que le rseau local ne voit que les adresses MAC. Dans chaque machine, des tables contiennent des paires adresse IP/adresse MAC, mais elles ne peuvent maintenir quun petit nombre de paires dadresses. Un protocole de rsolution dadresses (ARP, Address Resolution Protocol) fournit un mcanisme efcace et simple. Il est dni dans la RFC 826.

Le protocole ARP (Address Resolution Protocol ) [RFC 826]


Le protocole ARP tablit une correspondance dynamique entre adresses physiques et adresses logiques. Il permet une machine de trouver ladresse physique dune machine cible situe sur le mme rseau local, partir de sa seule adresse IP. Lorsquune machine A veut rsoudre ladresse IPB, elle diffuse un message spcial (en utilisant ladresse MAC FF:FF:FF:FF:FF:FF comme identit de destinataire). Celui-ci demande la machine dadresse IPB de rpondre en indiquant son adresse physique MACB. Toutes les machines, y compris B, reoivent ce message puisquil est envoy en diffusion ; seule la machine B reconnat son adresse IP. Elle rpond en envoyant son adresse MACB. Lorsque A reoit cette rponse, elle peut alors communiquer directement avec B. Les messages spciaux que nous venons de voir, ceux du protocole ARP, sont vhiculs dans les donnes de la trame du rseau local. Un protocole similaire, baptis RARP (Reverse Address Resolution Protocol) permet de la mme faon, pour une machine sans disque, de connatre son adresse IP auprs dun serveur dadresses. Le format de la requte/rponse ARP est trs mallable car la taille des adresses nest pas dnie lavance et se trouve donc code dans le message lui-mme. La requte/rponse ARP contient (voir gure 6.2) : Ladresse physique de lmetteur. Dans le cas dune requte ARP, lmetteur place son adresse ; dans une rponse ARP, ce champ rvle ladresse recherche. Ladresse logique de lmetteur (ladresse IP de lmetteur). Ladresse physique du rcepteur. Dans le cas dune requte ARP, ce champ est vide. Ladresse logique du rcepteur (ladresse IP du rcepteur).

Le protocole IP (Internet Protocol) 153

Un mcanisme de cache permet de conserver les informations ainsi acquises : chaque systme dispose dune table pour sauvegarder les correspondances (adresse MAC, adresse IP). Ainsi, une requte ARP nest mise que si le destinataire est absent dans la table. Figure 6.2
Requte ARP en diffusion.
Requte ARP

Exemple

La commande arp a afche le contenu de la table, aussi bien sous Windows que sous Unix :
arp -a poste_1(192.168.1.2) at 02:54:05:F4:DE:E5 poste_2(192.168.1.1) at 02:54:05:F4:62:30

[ether] on eth0 [ether] on eth0

Service rendu par le protocole IP


Un module logiciel grant le protocole IP est install dans tous les quipements du rseau local. Un quipement dinterconnexion, le routeur, gre laccs au monde extrieur (voir gure 6.3). Pour bien comprendre le service rendu par le protocole IP, nous dcrivons le principe de traitement dun message au format IP (un datagramme) travers linterconnexion de rseau, en dehors de tout vnement anormal.

Figure 6.3
Interconnexion de rseaux IP par des routeurs.
Routeur Routeur

Routeur

2.1 CRATION DUN

DATAGRAMME PAR UN QUIPEMENT METTEUR

Lorsquune application qui sexcute sur lquipement A veut transmettre des donnes lquipement B, elle donne un ordre au module IP de la machine A, traduit par une requte dmission comprenant deux paramtres : les donnes et ladresse du destinataire IPB. Dans son chier de conguration, le module IP de la machine A possde des informations comme : ladresse IPA, le masque de sous-rseau, ladresse IPR du routeur permettant de sortir du rseau. IPR est considre par lquipement comme la route par dfaut pour joindre tout destinataire extrieur au rseau. Le module IP de la machine A fabrique alors un datagramme, conformment au format dni par le protocole, puis il sollicite sa carte rseau pour que le datagramme soit encapsul dans une trame du rseau local et transmis jusquau destinataire nal (si B est dans le mme rseau local) ou

154

Architecture des rseaux

Chapitre

jusquau routeur (si B est lextrieur du rseau). Le traitement de la requte dmission est termin pour la machine A : il ny a aucun tablissement de connexion entre A et B, aucun dialogue pralable entre eux. Le module IP gre les requtes une par une, indpendamment les unes des autres. Aucun accus de rception nest prvu dans le protocole.

2.2 TRAITEMENT

DU DATAGRAMME PAR UN ROUTEUR

Le routeur est, par dnition, un quipement connect au moins deux rseaux IP. Il possde donc au moins deux interfaces rseaux (ventuellement diffrentes lune de lautre) et, de ce fait, au moins deux adresses IP (en fait, il possde autant dadresses IP que dinterfaces physiques diffrentes). Lorsquun routeur reoit sur lune de ses interfaces rseau la trame qui lui est adresse, il la dcapsule et en extrait le datagramme IP quelle contenait ; il lit alors ladresse IP de destination (ici IPB). Le rle du routeur est de chercher dans sa table de routage la route qui permet datteindre le rseau de B. La table de routage contient la liste de rseaux connus ainsi que ladresse du routeur suivant pour les atteindre (et lindication locale de linterface rseau concerne). partir des informations de la table, il peut en dduire le chemin suivre. Par exemple :
pour aller pour aller pour aller pour aller rseau IP X rseau IP Y rseau IP Z ailleurs passer par passer par passer par passer par routeur R2 routeur R3 routeur R3 routeur R1 en utilisant la carte dinterface en utilisant la carte dinterface en utilisant la carte dinterface en utilisant la carte dinterface Ethernet2 Ethernet2 Ethernet1 ls1

La table de routage contient toujours une entre par dfaut, dans le cas o le rseau du destinataire ne serait pas connu. Le routeur sollicite donc la carte dinterface spcie dans sa table et lui demande dexpdier le datagramme au routeur indiqu. Le datagramme est encapsul dans une nouvelle trame, destination dun deuxime routeur, et ainsi de suite jusquau rseau du destinataire. Le routeur ntablit aucune connexion ni avec A ni avec le routeur suivant, il ny a aucun dialogue pralable entre eux. Il gre les datagrammes, indpendamment les uns des autres. Aucun accus de rception nest prvu. Deux datagrammes qui se suivraient avec mme metteur et mme destinataire peuvent ne pas suivre la mme route et donc ne pas arriver au destinataire nal (sils arrivent), dans lordre o ils ont t mis : il suft que la table de routage ait t mise jour la suite dun incident par exemple.

2.3 RCEPTION DUN

DATAGRAMME PAR UN QUIPEMENT DESTINATAIRE

Le datagramme traverse ainsi linterconnexion de rseaux, de routeur en routeur, jusqu atteindre le routeur dentre du rseau de B. Encapsul une dernire fois dans une trame du rseau local de B, il parvient son destinataire. La carte rseau de la machine B reoit cette dernire trame qui lui est adresse ; elle en sort le datagramme quelle livre son module IP. Celui-ci analyse ladresse et reconnat la sienne : il signale alors lapplication concerne larrive des donnes, ce qui se traduit par une indication de rception avec deux paramtres : les donnes et ladresse de lmetteur IPA. Le traitement est termin pour B.

Le protocole IP (Internet Protocol) 155

2.4 CONCLUSION
Le protocole IP, implant dans tous les quipements du rseau (machines et routeurs), assure un service de remise des donnes non able et sans connexion. Il comprend la dnition du plan dadressage, la structure des informations transfres (le datagramme IP) et les rgles de routage. Nous avons vu que les datagrammes sont indpendants les uns des autres ; ils sont achemins travers linterconnexion, en fonction des adresses IP publiques (source et destination). Les diffrents routeurs choisissent un chemin travers les rseaux ; ils fragmentent les datagrammes lorsque le rseau suivant naccepte que des messages de taille plus petite. La MTU (Maximum Transfer Unit) dun rseau Ethernet est par exemple de 1 500 octets, celle dun autre rseau peut tre de 128 octets. Une fois le datagramme morcel, les fragments sont achemins comme autant de datagrammes indpendants jusqu leur destination nale o ils doivent tre rassembls. Pour trouver un chemin jusquau destinataire, les routeurs schangent, dans des messages spciaux, des informations de routage concernant ltat des diffrents rseaux. Ces informations sont vhicules elles aussi par IP. Elles servent mettre jour les tables de routage qui indiquent, pour chaque identiant de rseau, si les machines situes dans le rseau sont accessibles directement ou non. Le routage est direct si les machines appartiennent au mme rseau, sinon il est indirect. Dans ce cas, le routeur metteur envoie le datagramme au routeur suivant ; la coopration des deux routeurs permet de bien acheminer le datagramme. Diffrents protocoles comme GGP (Gateway to Gateway Protocol), EGP (Exterior Gateway Protocol), RIP (Routing Information Protocol), OSPF (Open Shortest Path First) sont utiliss entre les diffrents types de routeurs pour changer et effectuer la mise jour des informations de routage. Nous les aborderons au chapitre 8 consacr au routage. Lenvoi de messages derreur est prvu en cas de destruction de datagrammes, de problmes de remise ou dacheminement ; ces messages sont grs par ICMP (Internet Control Message Protocol), un protocole que nous verrons la section 4.

Format du datagramme IP
Le datagramme IP comprend un en-tte et des donnes. Len-tte contient principalement les adresses IP de la source et du destinataire, et des informations sur la nature des donnes transportes (voir gure 6.4). Classiquement, les diffrents champs sont dcrits par des mots de 32 bits. La premire ligne de la gure 6.4 contient quatre champs : Version. Il sagit de la version du protocole IP quon utilise (actuellement, cest la version 4 ou IPv4) an de vrier la validit du datagramme. La version est code sur 4 bits. Longueur de len-tte. Le nombre de mots de 32 bits de len-tte (qui commence avec le champ version). La longueur est galement code sur 4 bits. De ce fait, un en-tte IP contient (en hexadcimal) au maximum F mots de 32 bits, soit 60 octets. Type de services (ToS). Ce champ de 8 bits indique la faon dont le datagramme doit tre trait. Historiquement, il tait possible de demander que le datagramme soit trait sur la route la plus rapide, sur celle qui offrait le meilleur dbit, la plus able, etc. Encore fallait-il tre capable de mesurer ltat des routes et de grer les options Les premires implmentations du protocole IP ont vite abandonn cette ide de services diffrencis. Le champ ToS est rest 0, dautant que plusieurs propositions incompa-

156

Architecture des rseaux

Chapitre

Figure 6.4
Le datagramme IP.
4 bits Version 4 bits IHL 8 bits

32 bits 16 bits Longueur totale

Type de service

Identification En-tte TTL

D M Dplacement F F Protocole Total de contrle Adresse source Adresse destination Options (0 mot ou plus)

Donnes

tibles les unes avec les autres ont t faites pour modier lattribution de ce champ. Nous verrons la section 5 que la version IPv6 reprend, sous une forme diffrente, lide de qualit de service. Longueur totale. Ce champ de 16 bits exprime en octets la taille totale du datagramme (en-tte + donnes). La longueur maximale dun datagramme est donc 64 Ko, mais des raisons physiques imposent des tailles infrieures dans la plupart des rseaux.

Le deuxime mot de 32 bits concerne la fragmentation. Le champ Identication est un numro de 16 bits attribu chaque datagramme. Chaque fragment dun mme datagramme reprend le mme identiant, pour permettre le rassemblage correct du datagramme initial chez le destinataire. Aprs un premier bit non utilis, les deux bits suivants sont des drapeaux qui permettent le rassemblage : DF : Dont Fragment (le deuxime bit). Autorise ou non la fragmentation du datagramme (si DF = 0 la fragmentation est autorise, interdite si DF = 1). Par convention, toute machine doit pouvoir transmettre en un seul datagramme des donnes de 476 octets. MF : More Fragments (le dernier bit). Indique si le fragment de donnes est suivi ou non par dautres fragments (si MF = 0, le fragment est le dernier du datagramme).

Le champ Dplacement permet de connatre la position du dbut du fragment par rapport au datagramme initial. Le fragment doit avoir une taille qui est un multiple entier de 8 octets. Le dplacement est cod sur les 13 derniers bits du mot. Le troisime mot de 32 bits contient trois champs : Dure de vie (TTL, Time To Live). Indique sur 8 bits le nombre maximal de routeurs que le datagramme peut traverser. Ce champ tait prvu lorigine pour dcompter un temps, do son nom. La dure de vie est choisie par lmetteur ; elle est dcrmente chaque fois que le datagramme traverse un routeur. Lorsque la dure de vie atteint la valeur nulle, le datagramme est dtruit. Protocole. Champ de 8 bits indiquant quel protocole sont destines les donnes vhicules dans le datagramme. Les valeurs dcimales les plus courantes sont : 1 pour

Le protocole IP (Internet Protocol) 157

ICMP, 2 pour IGMP (Internet Group Management Protocol, ou protocole de gestion des groupes multicast), 6 pour TCP et 17 pour UDP. Header checksum. Ces 16 bits suivants constituent un bloc de contrle derreur pour len-tte : ce champ permet de contrler lintgrit de len-tte. Celui-ci, en effet, transporte toutes les informations fondamentales du datagramme. Si, par hasard, il tait dtect en erreur, le datagramme serait directement cart. Remarquons quil ny a aucune protection concernant les donnes transportes dans le datagramme. Les deux derniers mots de 32 bits contiennent, dans cet ordre, ladresse IP source et ladresse IP destination. Ces cinq mots constituent len-tte minimal, commun tous les datagrammes IP. En plus de ces informations, len-tte peut contenir en option des informations supplmentaires. Cest pourquoi il faut en indiquer la longueur. Les options doivent tenir sur un nombre entier de mots de 32 bits. Parmi elles, le routage et lhorodatage sont particulirement intressantes (lhorodatage demande chaque routeur destampiller le datagramme avec la date et lheure laquelle il a t trait). Elles constituent un bon moyen de surveiller ou de contrler la traverse des datagrammes dans le rseau. Une autre option, lenregistrement de route, demande chaque routeur travers de placer sa propre adresse dans le datagramme. Le destinataire reoit ainsi un datagramme contenant la liste des adresses des routeurs traverss. Le routage dni par la source, lui, permet lmetteur dimposer le chemin par lequel doit passer un datagramme.

3.1 CONTRLE

DU DATAGRAMME DANS UN ROUTEUR

Len-tte du datagramme est protg par un bloc de contrle derreur. Avant tout traitement, celui-ci est vri ; si des erreurs y sont dtectes, le datagramme est dtruit. Dautre part, le passage par un routeur provoque la diminution de 1 du champ dure de vie. Celui-ci faisant partie de len-tte, il est inclus dans le calcul du bloc de contrle derreur. Le routeur layant modi, il doit donc recalculer le bloc de contrle derreur avant de transfrer le datagramme.

3.2 GESTION

DE LA FRAGMENTATION

Maintenant que nous connaissons les dtails du format dun datagramme, examinons comment le fragmenter. Soit un rseau 1 o la MTU est 1 500 octets ; le routeur R1 de ce rseau le relie un rseau 2 de MTU gale 576 octets. Un routeur R2 le relie un rseau 3 de MTU 1 500 octets (voir gure 6.5). La machine A du rseau 1 envoie un datagramme contenant 1 480 octets de donnes la machine B situe sur le rseau 3. Figure 6.5
Ncessit de fragmentation dans un rseau intermdiaire.
A Rseau 1 R1 MTU = 1 500 octets MTU = 576 octets

Rseau 2 R2

Rseau 3 B MTU = 1 500 octets

Le datagramme fabriqu par A porte lidentication 17C9 (hexadcimal), le bit DF 0 (fragmentation autorise), le bit MF et le champ Dplacement 0. Sachant que len-tte dun datagramme contient 20 octets, le routeur R1 va fragmenter le datagramme en trois morceaux pour le passer dans le rseau 2. Les deux premiers fragments contiendraient

158

Architecture des rseaux

Chapitre

556 octets de donnes sil ny avait la contrainte dune taille multiple de 8 octets. Il faut donc choisir la taille la plus proche soit 552 octets. Le champ Dplacement vaut alors 552/ 8 = 69 pour le deuxime fragment puisque le dplacement est exprim en bloc de 8 octets. Le dernier fragment nen compte que 376. Les trois fragments auront chacun un en-tte de 20 octets qui est celui du datagramme initial, sauf pour le bit MF et le champ Dplacement, comme le montre le tableau 6.3.
Tableau 6.3 En-tte des diffrents fragments

Identication

MF

Dplacement

Fragment 1 Fragment 2 Fragment 3

17C9 17C9 17C9

1 1 0

0 69 138

Tous les datagrammes issus dune fragmentation deviennent des datagrammes IP comme les autres. Ils peuvent arriver destination, ventuellement dans le dsordre. IP doit faire le tri en utilisant les informations de len-tte pour faire le rassemblage. Au bout dun certain temps, si un fragment manque toujours, la totalit du datagramme est considre comme perdue. Puisque aucun mcanisme de contrle nest implment dans IP, la fragmentation est une source derreurs supplmentaire.

Protocole ICMP (Internet Control Message Protocol)


Dans linterconnexion de rseaux, chaque routeur fonctionne de manire autonome. Des anomalies, dues des pannes dquipement ou une surcharge temporaire, peuvent intervenir. Pour ragir correctement ces dfaillances (quil faut dj connatre), le protocole de diagnostic ICMP (RFC 590) soccupe de la transmission des messages de contrle. Chaque quipement surveille son environnement et signale les vnements anormaux. Nous avons vu que pour contrler le trac dans le rseau, un champ, dans len-tte du datagramme, indique la dure maximale de sjour dans linterconnexion ; chaque routeur traitant le datagramme dcrmente la dure de vie. Lorsquelle vaut zro, le datagramme est dtruit et le routeur envoie un message derreur lmetteur du datagramme. ICMP est donc un mcanisme de contrle des erreurs au niveau IP1. Initialement prvu pour permettre aux routeurs dinformer les utilisateurs des erreurs de transmission, il nest pas restreint cette fonction puisque des changes entre utilisateurs sont tout fait possibles. Chaque message ICMP traverse le rseau en tant que donnes dun datagramme IP. La consquence directe est que les messages ICMP sont traits comme les autres datagrammes travers le rseau. On comprend donc mieux la ncessit dindiquer, dans son entte, le contenu du datagramme IP par le champ Protocole, bien quICMP ne soit pas considr comme un protocole de niveau plus lev que IP. En fait, si les messages doivent traverser plusieurs rseaux avant darriver leur destination nale, IP est le seul protocole commun linterconnexion.

1. Habituellement, les protocoles contiennent eux-mmes les mcanismes ncessaires pour signaler les erreurs qui sont de leur ressort. IP fait exception, et le protocole ICMP a t dfini pour les situations d'anomalies.

Le protocole IP (Internet Protocol) 159

Chaque message ICMP possde un type particulier pour caractriser le problme quil signale. Len-tte ICMP sur 32 bits contient le type (code de lerreur sur 8 bits), un champ dinformation complmentaire selon le type (sur 8 bits) et un bloc de contrle derreur sur 16 bits utilisant le mme mcanisme de vrication que pour les datagrammes IP. De plus, les messages ICMP transportent des donnes qui sont en fait le dbut du datagramme lorigine du problme. Lutilitaire ping cre un message ICMP de type 8 (Echo Request) que la machine envoie ladresse IP spcie pour tester si ce dernier est oprationnel. Si tel est le cas, le destinataire rpond par un message ICMP de type 0 (Echo Reply), en renvoyant les donnes contenues dans le message mis. Lutilitaire traceroute exploite, quant lui, les messages ICMP de type 11 (Time Exceeded), en envoyant des datagrammes IP dont le champ TTL est dlibrment trop petit ; ces datagrammes sont carts par lun des routeurs de linterconnexion. Lvnement donne lieu message derreur ICMP retourn lexpditeur. Quand un routeur ne peut pas dlivrer un datagramme, il envoie un message ICMP de type 3 (Destination unreachable) lmetteur. Dans ce cas, le champ dinformation complmentaire prcise si cest le rseau, la machine, le protocole ou le port qui est inaccessible. Le mme message ICMP de type 3 est utilis lorsquun routeur doit fragmenter un datagramme et que celui-ci porte le bit DF 1 (le champ dinformation complmentaire spcie le cas).

Protocole IPv6 (IP version 6)


La croissance exponentielle du nombre dordinateurs connects Internet pose de nombreux problmes. Le plan dadressage IP atteint un seuil de saturation, les adresses disponibles commencent manquer. Par ailleurs, le protocole IP dans sa version 4, prsente plusieurs dfauts : ncessit de recalculer le bloc de contrle de len-tte dans chaque routeur, de congurer les machines avec une adresse IP, un masque de sous-rseau et une route par dfaut, sans parler de labsence de scurit : il ny a aucun service pour assurer la condentialit des donnes transmises, pour authentier les adresses utilises Pour terminer, IPv4 est incapable de traiter de faon satisfaisante des ux audio ou vido ou des ux contraintes temporelles fortes comme les jeux interactifs. Toutes ces raisons ont motiv le dveloppement dune nouvelle version dIP, appele IPv6, qui prvoit un nouveau plan dadressage, un format diffrent pour le datagramme, la notion de qualit de service et des mcanismes de scurit.

5.1 PLAN DADRESSAGE


IPv6 prvoit des adresses sur 128 bits, ce qui est gigantesque : on pourrait utiliser plusieurs millions dadresses par m2 sur terre, y compris dans les ocans ! Les types dadresses sont globalement conservs, sauf les adresses de diffusion (broadcast) qui sont remplaces par une gnralisation du multicast (adressage multipoint). On ne parle plus de classes dadresses, et de nombreux nouveaux types, dtermins par un prxe, existent. Le prxe 0000 0000 binaire est utilis pour la compatibilit avec les adresses IP classiques. Ladressage IPv6 rsout non seulement le problme de la saturation des adresses mais il offre, en plus, de nouvelles possibilits comme la hirarchisation plusieurs niveaux ou lencapsulation dadresses dj existantes, ce qui facilite leur rsolution.

160

Architecture des rseaux

Chapitre

5.2 NOUVEAU

FORMAT ET QUALIT DE SERVICE

IPv6 utilise un format de datagramme incompatible avec IP classique. Il se caractrise par un en-tte de base de taille xe et plusieurs en-ttes dextension optionnels suivis des donnes. Ce format garantit une souplesse dutilisation et une simplicit de len-tte de base. Seize niveaux de priorit sont dnis et respects par les routeurs : le traitement des applications interactives et des transferts de chiers vido peuvent alors tre diffrents. Un identicateur de ot relie les datagrammes dune mme connexion applicative an de leur garantir la mme qualit de service2. Lutilisation combine de la priorit et de lidenticateur de ot permet dajuster la qualit de service offerte par le routage aux besoins de lapplication. Elle rpond donc la demande des nouvelles applications (temps rel, multimdia). Le nombre de routeurs que peut traverser le datagramme avant dtre dtruit remplace le champ Dure de vie dIPv4. Sa gestion est plus simple. La fragmentation est dsormais traite de bout en bout : lalgorithme PMTU (Path Maximum Transfer Unit) dtermine la taille maximale des datagrammes sur le chemin prvu. Les paquets sont ensuite fragments par la source et rassembls par le destinataire. Grce lutilisation den-ttes optionnels, le routeur na qu extraire len-tte de base ainsi que len-tte optionnel hop by hop (littralement saut par saut) qui suit len-tte de base et qui contient des options devant tre traites dans les nuds intermdiaires. Avec le dveloppement des portables, il est intressant de pouvoir rediriger les messages adresss la station xe habituelle vers sa localisation actuelle en cas de dplacement. Cela se fait dsormais au niveau du protocole IPv6 (et non au niveau des protocoles de couches suprieures, comme cest le cas avec la redirection des courriers lectroniques, par exemple). Un redirecteur, plac lentre du rseau, connat ladresse IPv6 de la personne en dplacement. Il encapsule le datagramme dans un nouveau datagramme IPv6 et lexpdie la nouvelle adresse. Le destinataire peut ainsi connatre lidentit de lmetteur. Lorsquil existe des contraintes de dlai et de dbit (temps rel), les routeurs mettent galement en uvre un mcanisme de rservation de ressources adapt aux exigences stipules dans les champs priorit et identicateur de ot des datagrammes. Enn, IPv6 implmente des lments dauthentication et de condentialit, thmes qui ntaient pas abords dans IP, mais seulement dans la version IPSec utilise pour crer des rseaux privs virtuels.

Rsum
Le protocole IP (Internet Protocol) est implment dans toutes les machines htes dInternet ainsi que dans tous les routeurs. Il assure un service de remise non able sans connexion. Il comprend la dnition du plan dadressage, la structure de lunit de donnes transfre (le datagramme IP) et des rgles de routage. Les datagrammes sont transmis travers linterconnexion, au coup par coup, indpendamment les uns des autres. IP inclut un protocole ICMP de gnration de messages derreur en cas de destruction de datagrammes, de problmes dacheminement ou de remise. La saturation du plan dadressage, labsence de qualit de service et de scurit ont conduit de nombreuses tudes dont est issu IPv6, la nouvelle version du protocole IP.

2. Mais IPv6 reste un protocole sans connexion !

Le protocole IP (Internet Protocol) 161

Problmes et exercices
EXERCICE 1 PRINCIPES
GNRAUX DE LADRESSAGE
Quel est lavantage de la sparation de ladressage en deux parties dans ladressage Internet ? Pourquoi ladresse IP ne peut-elle pas tre affecte un priphrique rseau par son fabricant ? Le fait de sparer ladresse en deux parties permet de rduire la taille mmoire des routeurs, qui ne conservent que ladresse des (sous-)rseaux et celles des stations des (sous-) rseaux directement rattaches. En effet, la sparation entre ladresse du rseau et celle de la station attache au rseau permet un routage effectif dans les routeurs uniquement daprs ladresse du rseau. Ladresse complte nest utilise quune fois le paquet arriv dans le routeur connect au rseau destinataire. Ladresse IP doit non seulement tre unique mais elle doit aussi reter la structure de linterconnexion. La partie rseau de ladresse dpend donc du rseau auquel est connecte la station : toutes les machines connectes au mme rseau physique ont le mme prxe rseau.

EXERCICE 2

CLASSES DADRESSE
Ladresse de ma machine est 193.48.200.49. Puis-je en dduire si le rseau est de classe A, B ou C ?
193 scrit en binaire 11000001 et commence donc par 110: cest une adresse de classe C.

EXERCICE 3

INFORMATIONS

DE CONFIGURATION

A et B sont deux utilisateurs de la mme entreprise. Lutilisateur A a pour adresse 143.27.102.101 et lit dans le chier de conguration de son poste (commande ipcong ou ifcong, par exemple) : masque de sous-rseau : 255.255.192.0 et adresse routeur par dfaut : 143.27.105.1. Quelle est ladresse du sous-rseau auquel appartient A ? Quelle est ladresse de diffusion sur ce sous-rseau ? Lutilisateur B a pour adresse 143.27.172.101 et lit de mme : masque de sous-rseau : 255.255.192.0. B est-il sur le mme sous-rseau que A ? Peut-il utiliser la mme adresse de routeur par dfaut que A ? A est dans le rseau 143.27.0.0, dans le sous-rseau 143.27.64.0 (on obtient 64 en faisant le ET entre les nombres 102 et 192 crits sur 8 bits soit 01100110 ET 11000000. Le rsultat donne : 01000000= 64). Il y a donc 2 bits pour dnir les sous-rseaux. Ladresse de diffusion dans ce sous-rseau est 143.27.127.255 (on obtient 127.255 en remplaant les 14 bits prvus pour lidentiant de machine par des 1).

162

Architecture des rseaux

Chapitre

Lutilisateur B est dans le rseau 143.27.0.0 mais pas dans le mme sous-rseau (il est dans le sous-rseau 143.27.128.0). Il ne peut donc pas utiliser la mme adresse de routeur par dfaut (le routeur par dfaut est obligatoirement dans le sous-rseau de lutilisateur).

Remarque
Dans ce rseau, il ny a quun routeur possdant deux interfaces internes et une interface vers le monde extrieur. Les deux utilisateurs A et B utilisent le mme routeur pour transmettre des messages entre eux ou vers lextrieur. Chaque utilisateur dsigne le routeur par ladresse IP de linterface rseau quil connat. On voit donc bien que ladresse IP ne dnit pas une machine mais une interface rseau.

EXERCICE 4

ADRESSE MAC

ET ADRESSE

IP

Soit une entreprise disposant dun rseau Ethernet reli Internet. Elle dispose dune adresse IP de classe B. Son identiant rseau est gal 29C2 (en hexadcimal). Sur le rseau, il y a dj deux cents ordinateurs dont ladresse IP a t choisie dans lordre croissant en commenant par 1. Vous branchez un nouvel ordinateur disposant dune carte Ethernet dadresse MAC 3E:98:4A:51:49:76. Proposez une adresse IP pour lordinateur et reprsentez-la sous forme dcimale pointe. Lordinateur est dplac vers le rseau Ethernet dune autre entreprise, ce rseau tant galement connect Internet. Est-il ncessaire de changer ladresse de la carte Ethernet ? De changer ladresse IP de lordinateur ? Ladresse IP est de classe B donc commence par 10. Lidentiant rseau scrit sur 14 bits : 29C2 soit 10 1001 1100 0010 en binaire. Donc la partie rseau vaut : 1010 1001 1100 0010 cest--dire 169.194 en dcimal. Lidentit de la machine pourrait valoir 201 (en dcimal). Son adresse IP serait alors 169.194.0.201. Ladresse de la carte Ethernet est gre dans la sous-couche MAC, comme son nom lindique. Il nest pas ncessaire den vrier lunicit. Celle-ci est garantie par le constructeur. Au niveau international, chaque constructeur a son prxe et numrote ensuite chacune de ses cartes dans labsolu. Par dnition de ladressage Ethernet, la carte conserve son adresse mme quand lordinateur change de rseau. Par contre, il faut lui donner une nouvelle adresse IP correspondant au nouvel identiant rseau et, ventuellement, une nouvelle identit de machine dans ce rseau (si une machine du nouveau rseau la possde dj).

EXERCICE 5

CORRESPONDANCE

ADRESSE

MAC/ADRESSE IP

Considrons deux machines, 1 et 2, relies au mme rseau local. Chaque machine a une adresse IP, respectivement notes IP1 et IP2, et une adresse MAC, respectivement notes PH1 et PH2. Comment la machine 1 dsirant envoyer un datagramme IP vers la machine 2, dont elle ne connat que ladresse IP2, peut-elle mettre en correspondance ladresse IP2 avec ladresse physique PH2 ? La machine 2 se trouve sur un rseau local distant totalement diffrent du prcdent ; il est accessible travers Internet. Comment le datagramme est-il transmis dans le rseau local de la machine 1 ? Quelles adresses portent la trame qui le transporte ? Do viennent-elles ?

Le protocole IP (Internet Protocol) 163

Exercices

La machine 1 doit rechercher ladresse MAC de la machine 2 quelle connat travers IP2. Elle consulte sa table ARP. Si celle-ci contient linformation, le problme est rsolu. Si elle ne contient pas linformation, la machine 1 doit utiliser le protocole ARP en diffusant dans le rseau local une trame qui contient la requte ARP suivante : Je cherche ladresse MAC de la machine dont je connais ladresse IP2. La trame tant diffuse, tous les quipements du rseau local la reoivent. Seul lquipement concern par lchange, cest-dire ici la machine 2, rpond par une trame contenant la rponse ARP suivante : Je suis la machine IP2, mon adresse physique est PH2. En recevant cette rponse, la machine 1 met jour sa table ARP en lui ajoutant une nouvelle ligne o IP2 correspond PH2. Si la machine 2 est sur un autre rseau local, elle possde une adresse IP2 qui nappartient pas au mme rseau que IP1 (la machine 1 le sait en utilisant le masque de sous-rseau). Le datagramme doit tre achemin lextrieur du rseau ; il est envoy localement lquipement qui assure ce service, cest--dire au routeur. Ladresse IPR du routeur est prsente dans le chier de conguration de la machine 1. Dans le cas o la machine 1 ignore ladresse physique PHR du routeur, il lui faut rechercher cette adresse au moyen dune requte ARP comme la question a. Ensuite, la machine 1 met dans le rseau local une trame dont les adresses physiques sont destinataire = PHR et metteur = PH1. Cette trame encapsule un datagramme IP dont les adresses logiques sont metteur = IP1 et destinataire = IP2.

EXERCICE 6

SOUS-RSEAUX
Compltez le tableau :

Adresse IP 124.23.12.71 Masque de sous-rseau 255.0.0.0 Classe Adresse du rseau auquel appartient la machine Adresse de diffusion dans le rseau Adresse du sous-rseau auquel appartient la machine Adresse de diffusion dans le sous-rseau de la machine

124.12.23.71 255.255.255.0

194.12.23.71 255.255.255.240

Adresse IP Masque de sous-rseau Classe

124.23.12.71 255.0.0.0

124.12.23.71 255.255.255.0

194.12.23.71 255.255.255.240

A
124.0.0.0 124.255.255.255 124.12.23.0 124.12.23.255

C
194.12.23.0 194.12.23.255 194.12.23.64 194.12.23.79

Adresse du rseau auquel 124.0.0.0 appartient la machine Adresse de diffusion dans le 124.255.255.255 rseau Adresse du sous-rseau auquel pas de sous-rseau appartient la machine Adresse de diffusion dans le sous-rseau de la machine

164

Architecture des rseaux

Chapitre

EXERCICE 7

PLAN DADRESSAGE

GNRAL

Un site local est compos de deux sous-rseaux physiques relis au reste du monde par le mme routeur. Ce site possde une adresse IP de classe B. Proposez un mode dadressage des diffrentes stations sur le site pour que le routeur nait pas diffuser systmatiquement tous les messages reus du reste du monde dans les deux sous-rseaux. Adresse de classe B : x.y.0.0 avec x compris entre 128 et 191. En absence dhypothse prcise sur le nombre de machines dans chaque sous-rseau et sur lvolution future du rseau, on considre quil suft de crer deux sous-rseaux (ce qui ncessite 2 bits si on veut viter les sous-rseaux plein 0 et plein 1 ), donc un masque 255.255.192.0. Dans les adresses IP des stations, les 16 premiers bits reprsentent le rseau (x.y.), les deux bits suivants les sous-rseaux (01 et 10). Les 14 bits restants dsignent la machine elle-mme. Le sous-rseau 01 a pour adresse de sous-rseau x.y.64.0; les adresses des machines vont de x.y.64.1 x.y.127.254; ladresse de diffusion dans ce sous-rseau est x.y.127.255. Tout message parvenant au routeur avec une adresse IP dans lintervalle cidessus est diffus exclusivement dans ce sous-rseau. Le sous-rseau 10 a pour adresse de sous-rseau x.y.128.0; les adresses des machines vont de x.y.128.1 x.y.191.254; ladresse de diffusion dans ce sous-rseau est x.y.191.255. Tout message parvenant au routeur avec une adresse IP dans lintervalle cidessus est diffus exclusivement dans ce sous-rseau.

EXERCICE 8

PLAN DADRESSAGE

PARTICULIER

Une socit veut se raccorder Internet. Pour cela, elle demande une adresse rseau de classe B an de contrler ses 2 853 machines installes en France. Une adresse rseau de classe B sera-t-elle sufsante ? Lorganisme charg de laffectation des adresses rseau lui alloue plusieurs adresses de classe C conscutives au lieu dune adresse de classe B. Combien dadresses de classe C faut-il allouer cette socit pour quelle puisse grer tous ses terminaux installs ? Finalement, la socit a pu obtenir une adresse rseau de classe B. Ladministrateur du rseau choisit de dcouper le rseau pour reter la structure de la socit, cest--dire quil cre autant de sous-rseaux que la socit compte de services diffrents. Ladministrateur a donc prvu 12 sous-rseaux, numrots de 1 12. Proposez le masque de sous-rseau utilis dans lun des services de la socit. Combien reste-t-il de bits pour identier les machines de chaque service ? Combien de machines peut-on identier dans chaque service ?

Dans le sous-rseau choisi, donnez ladresse IP complte de la machine ayant comme identiant de machine 7.48. Donnez les adresses rseau et les adresses de diffusion du sous-rseau no 12.

Le protocole IP (Internet Protocol) 165

Exercices

Ladresse rseau de la socit est : 139.47.0.0. Indiquez ladresse rseau du sous-rseau no 9.

Oui, car une adresse de classe B permet dadresser 216 2 (65 534 machines), soit largement plus que le nombre de machines installes. Une adresse de classe C permet dadresser 254 machines. Il faut 12 adresses de classe C pour adresser tous les terminaux. Il faut 4 bits pour identier 12 sous-rseaux. Le masque vaut donc : 255.255.240.0. Il reste 12 bits, cest--dire quon peut adresser 212 2 machines soit 4 094 machines par sous-rseau. Le sous-rseau no 1 a pour adresse 139.47.16.0 (les 4 bits de sous-rseau valent 0001 soit 1 en dcimal) donc le sous-rseau no 9 aura pour adresse rseau : 139.47.144.0 (les 4 bits de sous-rseau valent 1001 soit 9 en dcimal) La machine 7.48 du sous-rseau 139.47.144.0 a pour adresse IP 139.47.151.48. Adresse rseau du sous-rseau no 12 : 139.47.192.0; son adresse de diffusion vaut : 139.47.207.255.

EXERCICE 9

PLAN DADRESSAGE

AVEC SOUS-RSEAUX

Dans un rseau local Ethernet 100 Mbit/s, on dispose de 50 machines dutilisateurs, rparties en 5 groupes de 10 machines et de 7 serveurs, raison dun serveur spcique dans chaque groupe et de 2 serveurs communs lensemble des utilisateurs. Dans chacun des 5 groupes, les machines des utilisateurs sont relies un concentrateur 12 ports. Lentreprise possde ladresse IP 193.22.172.0. Peut-on rpartir les adresses en faisant apparatre les 5 groupes ? Si oui, comment ? Proposez un plan dadressage. Soit un routeur dentreprise qui relie 4 sous-rseaux RL1, RL2, RL3 et RL4 et offre laccs Internet. Lentreprise a une adresse IP de classe C, didentit rseau gale 195.52.100.0. Dans le sous-rseau RL1, il y a 15 postes de travail, dans RL2 20 postes, RL3 25 postes, RL4 30 postes. Peut-on imaginer un plan dadressage avec 4 sousrseaux distincts ? Quel sera alors le masque de sous-rseau ? Lentreprise dispose de 50 + 7 = 57 machines : une adresse de classe C lui suft. Pour faire apparatre 6 sous-rseaux (un par groupe et un pour les deux serveurs communs), il faut au moins 3 bits. Il reste alors 5 bits soit 32 2 = 30 adresses disponibles, ce qui convient parfaitement puisquil y a au maximum 11 postes par groupe. Le masque de sous-rseau sera 255.255.255.224. Les 5 groupes dutilisateurs correspondent aux sous-rseaux 193.22.172.32, 193.22.172.64, 193.22.172.96, 193.22.172.128 et 193.22.172.160. Les 2 serveurs seront dans le dernier sous-rseau 193.22.172.192. Dans cet exemple, il faut faire 4 sous-rseaux ; on prendra 3 bits pour identier les sous-rseaux. Les groupes sont de tailles diffrentes mais tous comptent au plus 30 postes. 5 bits pour identier une machine sont sufsants. On pourra utiliser le mme masque.

Remarque
Avec CIDR, on pourrait trs bien se contenter de 2 bits pour identier les 4 sous-rseaux, qui seraient alors numrots de 0 3 (on aurait un masque /26). Dans ce cas, le rseau global et le sous-rseau 3 auraient la mme adresse de diffusion : 193.22.172.255.

166

Architecture des rseaux

Chapitre

EXERCICE 10 CIDR
Une entreprise cherche obtenir une adresse publique alors quelle dispose dun parc de 800 machines. Elle prvoit de possder de 850 900 machines dans les annes venir. Elle obtient comme adresse rseau : 193.33.32.0/22. Cette adresse lui convientelle ? Quel est le masque de sous-rseau par dfaut ? Lindication /22 signie que les 22 premiers bits sont dvolus ladresse rseau et que lentreprise est libre dutiliser les 10 bits restants pour identier ses machines. Elle dispose donc dun millier dadresses, ce qui lui convient parfaitement. Le masque de sous-rseau par dfaut est alors, en dcoupant les octets : 11111111
11111111 11111100 00000000, soit en dcimal : 255.255.252.0.

EXERCICE 11 FRAGMENTATION

DES DATAGRAMMES

Un datagramme IP peut tre segment en plusieurs fragments. De quelles informations dispose-t-on pour savoir quun datagramme contient un fragment ? Comment reconstitue-t-on un datagramme larrive ? Un routeur peut-il confondre deux fragments qui ont les mmes lments suivants : source, destination et numro de fragment ? Le bit MF (More Fragments) est 1 dans tous les fragments sauf le dernier ; le champ Dplacement nest pas nul, sauf dans le premier fragment, alors quun datagramme non fragment possde un bit MF 0 et un champ Dplacement 0. Tous les fragments portent le mme identicateur (celui du datagramme initial). On utilise alors le champ Dplacement pour reconstituer le datagramme. Le bit MF est 0 dans le dernier fragment, 1 dans tous les autres. Un routeur ne peut pas confondre deux fragments qui auraient les mmes lments source, destination et place de fragment, car le champ Identiant du datagramme est forcment diffrent !

EXERCICE 12 INTERCONNEXION
Deux socits S1 et S2 situes 100 km lune de lautre fusionnent et dsirent mettre en commun leurs moyens informatiques. La socit S1 possde un rseau Ethernet E1 100 Mbit/s. Les transferts de donnes utilisent TCP/IP, avec une adresse IP de classe C. La socit S2 possde un rseau Ethernet E2 100 Mbit/s sous TCP/IP, avec une adresse IP de classe B. Quelle est la structure de lquipement dinterconnexion pour passer de E1 E2 ? Quels sont les problmes potentiels dus linterconnexion ?

Le protocole IP (Internet Protocol) 167

Exercices

Les deux socits tant loignes, elles peuvent tre relies soit par une liaison spcialise directe entre les deux sites soit par leur fournisseur daccs Internet. Dans les deux cas, il faut un routeur sur chaque site. Les problmes principaux sont dus au fait que le rseau intermdiaire (la liaison spcialise ou Internet) aura, selon toute vraisemblance, un dbit infrieur celui des deux rseaux Ethernet. Il faut donc quil ny ait quun trac limit entre les deux sites. La diffrence de classe des adresses na aucun impact sur les performances. Toutefois, le parc de lensemble des deux socits doit tre sufsant pour que seule ladresse de classe B soit utilise. Il doit tre possible de prvoir un plan dadressage avec plusieurs sous-rseaux, dont un pour la socit S1.

Remarque
Lidal serait dobtenir du fournisseur daccs Internet un service de rseau priv virtuel (voir complments pdagogiques, sur le site www.pearsoneducation.fr) qui procure lentreprise lillusion quelle dispose dun rseau unique et scuris sur Internet.

EXERCICE 13 RPTEUR,

PONT ET ROUTEUR

tablissez un tableau comparatif entre les quipements dinterconnexion (rpteur, pont et routeur) en abordant les aspects suivants : niveau dinterconnexion, ltrage dadresses, ltrage des collisions, ltrage du trac de diffusion, gnration de trac de gestion, dpendance vis--vis des protocoles de communication, volutivit, performances, impact sur la scurit du rseau, reconguration, cot, temps de traitement interne, simplicit dinstallation et de maintenance

lments de comparaison

Rpteur

Pont

Routeur

Simplicit dinstallation et de conguration Niveau dinterconnexion Filtrage Trac de service Suppression des collisions Protocoles traits Temps de traitement interne volutivit Filtrage du trac de diffusion Gestion de la scurit du rseau

Oui 1 Non Non Non Aucun Nul Aucune Non non

Oui 2 Sur les adresses MAC non sauf Spanning Tree Algorithm Oui Indpendant des protocoles Faible Faible Non Non

Non 3 Sur les adresses IP Important Routing Information Protocol

Une version de logiciel par protocole trait Important Grande Oui Oui

168

Architecture des rseaux

Chapitre

EXERCICE 14 UTILITAIRE

PING

Vous avez tap dans une fentre de commande : ping c1 193.93.28.7 alors que la machine cible est dans votre rseau. Vous obtenez en rponse (par exemple) :
64 bytes from 192.93.28.7. icmp_seq=0 ttl=255 time =0.7 ms 1 packet transmitted, 1 packet received, 0% packet loss round-trip (ms) min/avg/max=0.7/0.7/0.7

La machine dadresse IP 193.93.28.7 est-elle oprationnelle ? Que pensez-vous du dlai de traverse du rseau ? Que signie icmp seq? Le message que vous avez envoy a-t-il travers un routeur ? La machine dadresse IP 193.93.28.7 est oprationnelle puisquelle a rpondu la requte dcho. Cest l le rle initial de lutilitaire ping : tester si un quipement fonctionne en lui envoyant un message quil doit immdiatement renvoyer. Le dlai de traverse est trs bref, puisquon est lintrieur dun rseau local. Lutilitaire ping envoie des messages du protocole ICMP (Echo Request) qui sont numrots. Ici, il ny en a quun, donc son numro de squence est icmp seq= 0. Le message na travers aucun routeur puisque le champ TTL est 255, ce qui reprsente sa valeur maximale.

EXERCICE 15 COMMANDE

TRACEROUTE

Vous avez lanc une commande traceroute (tracert sous Windows). Cette commande permet de connatre le chemin suivi par un datagramme entre votre machine et une machine de destination spcie dans la commande. Vous avez obtenu le rsultat suivant (voir tableau 6.4) :
Tableau 6.4 Commande traceroute

1 2 3 4 5 6 7 8 9 10 11 12

193.51.91.1 2.0.0.1 11.6.1.1 11.6.13.1 189.52.80.1 193.48.58.41 193.48.53.49 193.220.180.9 195.48.58.43 195.48.58.50 194.206.207.18 194.207.206.5

1 ms 23 ms 105 ms 37 ms 37 ms 51 ms 39 ms 44 ms 48 ms 145 ms 61 ms 166 ms

1 ms 23 ms 35 ms 35 ms 60 ms 39 ms 47 ms * 38 ms 170 ms 146 ms 261 ms

1 ms 23 ms 35 ms 34 ms 36 ms 46 ms 44 ms * 44 ms 64 ms 44 ms 189 ms

Que peuvent signier les toiles ? Comment expliquez-vous que pour la mme destination les dlais varient ? Combien de rseaux diffrents ont t traverss ? Peut-on connatre les protocoles utiliss ?

Le protocole IP (Internet Protocol) 169

Exercices

Pourquoi le dlai est-il au plus gal 1 milliseconde pour la premire ligne ?

La premire ligne correspond au rseau local dans lequel se trouve lutilisateur, le premier datagramme avec une dure de vie 1 a t dtruit par le routeur de sortie du rseau. Il est donc normal que le dlai soit trs faible. Les toiles correspondent des datagrammes qui se sont perdus, laller ou au retour : au-del dun certain dlai, on les considre comme manquants. Les dlais varient car rien nest garanti dans linterconnexion de rseaux : il peut y avoir des embouteillages momentans et/ou des pannes qui provoquent des changements de route. Pour connatre le nombre de rseaux traverss, il suft de calculer ladresse rseau de chaque routeur et de compter le nombre de rseaux diffrents. Il y en a 10, comme le montre le tableau 6.5.
Tableau 6.5 Les rseaux traverss

193.51.91.1 2.0.0.1 11.6.1.1 11.6.13.1 189.52.80.1 193.48.58.41 193.48.53.49 193.220.180.9 195.48.58.43 195.48.58.50 194.206.207.18 194.207.206.5

193.51.91.0 (rseau 1) 2.0.0.0 (rseau 2) 11.0.0.0 (rseau 3) 11.0.0.0 (rseau 3) 189.52.0.0 (rseau 4) 193.48.58.0 (rseau 5) 193.48.53.0 (rseau 6) 193.220.180.0 (rseau 7) 195.48.58.0 (rseau 8) 195.48.58.0 (rseau 8) 194.206.207.0 (rseau 9) 194.207.206.5 (rseau 10)

On ne peut pas connatre les protocoles utiliss au-del de IP.

EXERCICE 16 DCODAGE

DE DATAGRAMME

Dcoder le datagramme IPv4 suivant (en hexadcimal3) et en extraire toutes les informations possibles.
45 08 11 25 00 00 12 26 00 00 13 27 50 1C 14 28 20 01 15 29 61 02 16 2A 00 03 17 2B 00 04 18 2C 80 05 19 2D 01 06 1A 2E C5 07 1B 2F 64 08 1C 30 C7 09 1D 31 F5 0A 1E 32 B4 0B 1F 33 0A 0C 20 34 C7 0D 21 35 F5 0E 22 36 B4 0F 23 37 09 10 24 38

3. La numration hexadcimale, qui a l'intrt d'tre compacte, est une reprsentation courante pour les donnes binaires : 4 bits sont reprsents par un seul chiffre hexadcimal, dont les valeurs vont de 0 F.

170

Architecture des rseaux

Chapitre
45

4 = protocole IP version 4 ; 5 = longueur de len-tte du datagramme = 5*4 = 20 octets = longueur par dfaut dun en-tte sans option.

00 Type Of Service = 0 = pas de service particulier (en fait avec IPv4, il ny a pas de service particulier. Ce champ est donc toujours nul !). 00 50 longueur totale = 0*4096 + 0*256 + 5*16 + 0*1 = 80 octets donc la longueur du

contenu du champ de donnes est de 80 20 = 60 octets.


20 61 identicateur du datagramme (ne sera utile que sil est fragment). 00 00 drapeaux et dplacement = tout zro = datagramme non fragment. 80 dure de vie = 80 = 8*16 + 0*1 = 128 routeurs que le datagramme pourrait encore

traverser.
01 protocole transport dans le datagramme : 1 = code du protocole ICMP. C5 64 Bloc de contrle derreur de len-tte. C7 F5 B4 0A adresse IP metteur = 199.245.180.10. C7 F5 B4 09 adresse IP destinataire = 199.245.180.9.

Les deux machines sont dans le mme rseau de classe C, le rseau 199.245.180.0. -------Fin de len-tte IP--------------------Pour dcoder le contenu du datagramme, il faut connatre le format dun message ICMP.
08 type : 8 00 code : 0

Lensemble type = 8 et code = 0 signie demande dcho (couramment appele ping).


00 1C bloc de contrle derreur sur len-tte du message ICMP.

-----Fin de len-tte ICMP-------------Contenu quelconque destin tre renvoy par le destinataire sil rpond cette demande dcho : 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37 38 Longueur du contenu ICMP = 56 octets. ---------Fin du contenu ICMP-------------- Fin du contenu IP-------------

Bilan
Le datagramme est au format IPv4. Il a t mis par la machine dadresse IP 199.245.180.10 vers la machine dadresse IP 199.245.180.9. Ces deux machines sont dans le mme rseau de classe C, le rseau 199.245.180.0. Le datagramme possde une longueur totale de 60 octets. Il transporte une requte ICMP de demande dcho dont la longueur du contenu est de 56 octets : lmetteur envoie un ping au rcepteur pour connatre son tat.

Le protocole IP (Internet Protocol) 171

Exercices

EXERCICE 17 DCODAGE

DE TRAME

ETHERNET

Dcoder la trame Ethernet suivante (hexadcimal) et en extraire toutes les informations possibles.
AA 00 03 1B 33 AA 50 04 1C 34 AA 20 05 1D 35 AA 61 06 1E 36 AA 00 07 1F 37 AA 00 08 20 38 AA 80 09 21 5F AB 01 0A 22 A6 08 00 C5 64 0B 0C 23 24 8C 04 02 C7 0D 25 4B F5 0E 26 01 B4 0F 27 C3 0A 10 28 08 C7 11 29 00 F5 12 2A 02 B4 13 2B 4B 09 14 2C 02 08 15 2D D6 00 16 2E 08 00 17 2F 00 1C 18 30 45 01 19 31 00 02 1A 32

---------------------------- Dbut dune trame Ethernet ------------------------------------AA AA AA AA AA AA AA AB Synchronisation. 08 00 02 4B 01 C3 @MAC destinataire (constructeur = 080002 = 3Com). 08 00 02 4B 02 D6 @MAC metteur (mme constructeur). 08 00 Type (ici IP). Si < 1500 cest une longueur.

[ici 08 00= 2048, cette valeur ne peut donc pas tre la longueur des donnes de la trame]. ---------------------------- 46 <= contenu (ici datagramme IP) <= 1500 ------------------Le contenu de cette trame est le ping de lexercice prcdent. -------------------------------------Fin du contenu-------------------------------------------5F A6 8C 04 Bloc de contrle derreur Ethernet.

Bilan
Cette trame Ethernet a t capture dans le rseau de classe C 199.245.180.0. Deux machines sont concernes par cet change : la machine X dadresse MAC 08 00 02 4B 02 D6 et dadresse IP 199.245.180.10 qui a envoy une requte dcho (ping) la machine Y dadresse MAC 08 00 02 4B 01 C3 et dadresse IP 199.245.180.9, situe sur le mme rseau local. Les cartes Ethernet sont du mme constructeur. Les protocoles utiliss sont IP et ICMP.

EXERCICE 18 AUTRE

DCODAGE DE TRAME

ETHERNET

Dcodez la trame Ethernet suivante (en hexadcimal), dpourvue de son prambule de synchronisation et de son bloc de contrle derreur. Extrayez-en toutes les informations possibles.
FF 08 00 00 FF 00 00 00 FF 06 00 00 FF 04 00 00 FF 00 00 00 FF 01 00 00 00 00 89 00 04 04 C2 00 80 80 A2 00 5F 5F F3 00 68 68 00 00 00 08 06 00 01 00 89 C2 A2 03 00 00 00 00 00 00

172

Architecture des rseaux

Chapitre

---------------------------- Dbut dune trame Ethernet ------------------------------------FF FF FF FF FF FF Adresse MAC destinataire (diffusion). 00 04 80 5F 68 00 Adresse MAC metteur. 08 06 Type (ici ARP). Un nombre < 1500 donne la longueur des donnes de la trame (ici : 08 06= 2054, ce ne peut donc pas tre une longueur).

---------------------------- 46 Contenu (ici message ARP) 1500 ------------------------Pour interprter le contenu de cette trame, il faut disposer du format dun message ARP.
00 01 Type de matriel : 1 = Ethernet. 08 00 Type de protocole : IP. 06 Longueur de ladresse physique : 6 octets (pour Ethernet). 04 Longueur de ladresse logique : 4 octets (pour IP). 00 01 Code opration : 1 = Requte ARP. 00 04 80 5F 68 00 Adresse MAC source. 89 C2 A2 03 Adresse IP source : 137.194.162.3. 00 00 00 00 00 00 Adresse MAC destination (vide car cest ladresse quon cherche). 89 C2 A2 F3 Adresse IP destination : 137.194.162.243.

---------------------------- Fin du contenu rel----------------------------------------------00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

bourrage (le contenu de la trame est trop court). ---------------------------- Fin du contenu (46 octets)----------------------------------------

Bilan
Dans un rseau de classe B 137.194.0.0, deux machines sont concernes par cette trame : les machines dadresse IP 137.194.162.3 et 137.194.162.243. La machine 137.194.162.3 envoie une requte ARP en diffusion pour demander ladresse physique de la machine dadresse IP 137.194.162.243. La requte ARP est un message court (trop court pour une trame Ethernet) : elle est donc complte avec 18 octets de bourrage.

Remarque
Le travail de dcodage peut tre fait par un quipement particulier appel analyseur de protocole. Congur avec les types de protocoles utiliss, lanalyseur fournit les informations brutes, dcoupes champ par champ. Le bilan, quant lui, est le rsultat de la rexion humaine !

Le protocole IP (Internet Protocol) 173

Exercices

Chapitre

Les protocoles de transport


1. Notions utilises dans les protocoles de transport .......................... 176 2. Protocole TCP ....................... 177 3. Protocole UDP ...................... 188

Le service fourni par IP ntant pas fiable, il faut implanter par-dessus un protocole supplmentaire, en fonction de la qualit de service dont les applications ont besoin. Pour les changes de donnes exigeant une grande fiabilit, le protocole de transport TCP (Transmission Control Protocol ) est utilis. Pour ceux qui ne ncessitent pas une telle fiabilit, un protocole de transport plus simple, appel UDP (User Datagram Protocol) fournit un service de bout en bout en mode sans connexion. Avant de dcrire les protocoles TCP et UDP, nous allons voir les notions qui leur sont communes. Le protocole de transport, greff au-dessus dIP, est choisi en fonction de la qualit de service souhaite par lapplication. Celle-ci choisira lun des deux protocoles disponibles : TCP, si elle souhaite une grande fiabilit de lchange des donnes, ou UDP si elle ne souhaite pas tre ralentie par la gestion des services assurant lintgrit des donnes. Les deux diffrent par bien des aspects mais utilisent des concepts communs, notamment les notions de ports, de sockets et de total de contrle.
175

Problmes et exercices 1. Principes et intrt de TCP ...... 190 2. Identification dune connexion TCP ...................................... 191 3. Identification de plusieurs connexions TCP ..................... 191 4. tat dune connexion TCP ....... 191 5. Traitement dun segment TCP .. 192 6. Statistiques de connexions TCP 192 7. Statistiques dtailles de connexions TCP ................ 193 8. Dcodage de segment TCP ..... 195 9. Dcodage complet dune trame .......................... 196

Notions utilises dans les protocoles de transport


Un protocole de transport offre aux applications situes sur la machine de lutilisateur une interface leur permettant dutiliser les services offerts par le ou les rseaux physiques sousjacents. Comme plusieurs applications sont susceptibles daccder au rseau, il faut les identier sans ambigut ; on utilise pour cela la notion de port. Par ailleurs, les extrmits qui changent des donnes sont repres grce la notion de socket. Un protocole de transport souhaite en outre sassurer que len-tte contenant les informations ncessaires la gestion du protocole na pas t altr au cours de la transmission. Il emploie cette n des techniques de redondance appeles total de contrle (ou checksum).

1.1 NOTION

DE PORT

Les identiants dapplication sont indispensables, car plusieurs applications diffrentes peuvent sexcuter simultanment sur la mme machine. Un protocole de transport doit donc savoir pour qui il travaille ! Lidentiant dapplication est appel numro de port ou port (ce qui na rien voir avec les ports dun commutateur). Selon les systmes dexploitation, le numro de port peut correspondre au PID (Process Identier), lidentiant du processus qui sexcute sur la machine. Il existe des milliers de ports utilisables, puisque le numro de port tient sur 16 bits. Une affectation ofcielle des ports a t dnie par lIANA (Internet Assigned Numbers Authority), an daider la conguration des rseaux. Parmi ceux-ci, les ports 0 1023 sont les ports bien connus ou rservs (well known ports), affects aux processus systme ou aux programmes excuts par les serveurs. Les systmes dexploitation diffrent dans leur affectation pour les identicateurs des autres processus. Ils choisissent a priori les grands numros. Le tableau 7.1 cite quelques numros de port bien connus.
Tableau 7.1 Quelques ports bien connus

Port

Service

Port

Service

20 et 21 22 23 25 53 80 110 143 161 179 520

FTP SSH Telnet SMTP DNS Web POP3 IMAP SNMP BGP RIP

989 et 990

FTPS

443 995 993

HTTPS POP3S IMAPS

176

Architecture des rseaux

Chapitre

1.2 INTERFACE

ENTRE LE PROTOCOLE DE TRANSPORT ET LAPPLICATION

Les applications ayant le choix du protocole de transport (TCP ou UDP), le systme dexploitation doit utiliser un systme de nommage qui affecte un identiant unique, appel socket1, tout processus local utilisant les services dun protocole de transport. Le socket est constitu de la paire : < adresse IP locale, numro de port local >. Pour identier de manire unique lchange de donnes avec le processus applicatif distant, le protocole de transport utilise un ensemble de cinq paramtres form par le nom du protocole utilis, le socket local et le socket distant : < protocole, adresse IP locale, numro de port local ; adresse IP distante, numro de port distant >.

1.3 TOTAL

DE CONTRLE OU CHECKSUM
Un total de contrle est une information de redondance permettant de contrler lintgrit dun bloc dinformations dni. Le calcul effectu est en gnral plus simple que celui dcrit au chapitre 2 ; il sagit, le plus souvent, dune simple addition sans report des bits du bloc (un OU exclusif), suivie ventuellement dune complmentation bit bit du rsultat prcdent. Dans TCP ou dans UDP, le total de contrle est un champ de 16 bits incorpor dans len-tte. Sa position dpend du protocole de transport utilis.

Protocole TCP (Transmission Control Protocol)


TCP comble les carences dIP lorsque les applications requirent une grande abilit. Ce protocole de transport, lourd et complexe, met en uvre la dtection et la correction derreurs, gre le contrle de ux et ngocie les conditions du transfert des donnes entre les deux extrmits de la connexion. Lentit gre par le protocole TCP sappelle le segment. Une fois le segment fabriqu, le module TCP sollicite le module IP pour le service de transmission, par lintermdiaire de la primitive que nous avons vue au chapitre prcdent : Requte_mission (segment, adresse IP distante), dans laquelle les deux paramtres fournis sont le segment mettre et ladresse IP de destination. (Dans la pratique, plusieurs autres paramtres sont galement fournis, mais nous nous intressons ici au principe de fonctionnement.) linverse, lorsque le module IP reoit un datagramme destin la machine concerne et que celui-ci transporte un segment TCP, le module IP extrait le segment du datagramme et en signale larrive au module TCP par la primitive : Indication_rception (segment reu, adresse IP source). Linterface entre la couche TCP et la couche IP est trs simple, celle entre la couche TCP et lapplication utilisatrice est beaucoup plus complexe. Nous la dtaillerons plus loin, aprs avoir vu le format du segment TCP et la vie dune connexion.

1. Nous avons conserv ce terme anglais car aucun quivalent franais n'est utilis.

Les protocoles de transport 177

2.1 DIALOGUE

DE BOUT EN BOUT

la demande des applications qui ont besoin dchanger des donnes de manire able, TCP ouvre une connexion et gre un dialogue. TCP nest implant que sur les machines des utilisateurs, cest--dire quil nest pas gr par les systmes intermdiaires (ponts, commutateurs et autres routeurs du rseau). Il est dni dans la RFC 793 et soccupe de grer et de abiliser les changes, alors quIP est responsable de la traverse des diffrents rseaux. TCP permet deux utilisateurs davoir une vision de bout en bout de leurs changes, quels que soient linterconnexion de rseaux sous-jacente et le chemin par lequel IP a fait passer les donnes. Pour apporter la abilit dont les utilisateurs ont besoin, TCP gre un contexte de lchange (lensemble des paramtres choisis et ngocis par les deux utilisateurs pour leur dialogue, ainsi que lensemble des paramtres temporels lis ltat du dialogue). Le contexte est mmoris dans le module TCP des deux interlocuteurs. Ce protocole fonctionnant en mode connect, les deux modules TCP doivent tre oprationnels simultanment. En outre, il faut que lune des extrmits ait sollicit lautre et que cette dernire ait rpondu positivement. On parle de la vie de la connexion pour dcrire tous les vnements qui sy produisent.

2.2 FONCTIONNALITS

DE

TCP

TCP est capable de dtecter les datagrammes perdus ou dupliqus et de les remettre dans lordre o ils ont t mis. Ce service repose sur la numrotation et lacquittement des donnes et utilise une fentre danticipation. Remarquons ds prsent que la numrotation des donnes dans TCP seffectue octet par octet, alors que les protocoles dnis dans le modle OSI numrotent les units de donnes du niveau concern. TCP considre les donnes transportes comme un ot non structur doctets. Une connexion tant a priori bidirectionnelle, les deux ots de donnes sont traits indpendamment lun de lautre. Le ot gr par chaque module concerne les octets de donnes compris dans une zone dlimite nomme fentre, dont la taille est dnie par un entier de 16 bits, ce qui la limite a priori 65 535 octets. Chaque module TCP annonce la taille de son tampon de rception louverture de la connexion. Il est convenu que lmetteur nenvoie pas plus de donnes que le rcepteur ne peut en accepter. La taille de la fentre varie en fonction de la nature du rseau et surtout de la bande passante estime partir des mesures de performances qui sont effectues rgulirement (voir section 2.4). Grce aux mesures effectues, diffrents temporisateurs dattente maximale dacquittement de bout en bout sont dimensionns de manire dynamique, partir de la connaissance acquise sur le fonctionnement du rseau. En effet, le dlai de traverse du rseau change dune connexion lautre ; il peut mme changer pendant la vie dune connexion puisque IP ne garantit rien, pas mme lordre dans lequel arrivent les donnes. Par ailleurs, TCP gre un ot de donnes urgentes, non soumises au contrle de ux.

178

Architecture des rseaux

Chapitre

Remarque
Par bien des aspects, le protocole de transport TCP ressemble au protocole de liaison de donnes du modle OSI, puisque tous les deux grent le squencement des donnes, le contrle de ux, la dtection et la rcupration des erreurs. Il existe toutefois des diffrences importantes : tout dabord, les entits de liaison communiquent directement sur le support physique, alors que les entits de transport communiquent travers un ou plusieurs rseaux interconnects. De ce fait, lentit de transport doit spcier ladresse du destinataire. En outre, une entit de transport peut grer un nombre important et variable de connexions, alors que lentit de liaison nen gre le plus souvent quune seule. Enn, les donnes transmises dans linterconnexion de rseaux peuvent tourner en rond ou disparatre pour rapparatre un peu plus tard. Elles peuvent donc tre reues dans un ordre qui ntait pas celui de leur mission, ce qui ne peut pas se produire sur un support physique unique.

2.3 FORMAT

DU SEGMENT

TCP

Il faut remarquer quil ny a quun seul format de segment TCP, illustr la gure 7.1, bien que le protocole soit complexe. Le segment contient un en-tte de 20 octets (sauf options) et un champ de donnes. Figure 7.1
Format du segment TCP (en-tte sans option).
Port source 32 bits Port destination

Numro de squence (mission) Numro de squence (rception) Lg Rser v Drapeaux Fentre Pointeur d'urgence

Total de contrle

Signication des diffrents champs


Port Source (16 bits). Numro du port utilis par lapplication en cours sur la machine source. Port Destination (16 bits). Numro du port relatif lapplication en cours sur la machine de destination. Numro dordre (32 bits). La signication de ce numro est interprter selon la valeur du drapeau SYN (Synchronize). Lorsque le bit SYN est 0, le numro dordre est celui du premier octet de donnes du segment en cours (par rapport tous les octets du ot de donnes transportes). Lorsquil est 1, le numro dordre est le numro initial, celui du premier octet du ux de donnes qui sera transmis (Initial Sequence Number). Celui-ci est tir au sort, plutt que de commencer systmatiquement 02. Numro daccus de rception (32 bits). Numro dordre du dernier octet reu par le rcepteur (par rapport tous les octets du ot de donnes reues). Longueur en-tte (4 bits). Il permet de reprer le dbut des donnes dans le segment. Ce dcalage est essentiel, car il est possible que len-tte contienne un champ doptions

2. Le numro de squence initial est gr par une horloge interne, propre la machine. Par exemple, si cette horloge est 200 MHz, les numros changent toutes les cinq microsecondes. Comme ce numro est cod sur 32 bits, il y 4 milliards de numros. Un mme numro ressort toutes les cinq heures et demie environ !

Les protocoles de transport 179

de taille variable. Un en-tte sans option contient 20 octets, donc le champ longueur contient la valeur 5, lunit tant le mot de 32 bits (soit 4 octets). Rserv (6 bits). Champ inutilis (comme dans tous les formats normaliss, il reste une petite place, prvue en cas dvolutions venir ou en cas de bogue corriger, par exemple). Drapeaux ou ags (6 bits). Ces bits sont considrer individuellement : URG (Urgent). Si ce drapeau est 1, le segment transporte des donnes urgentes dont la place est indique par le champ Pointeur durgence (voir ci-aprs).
ACK (Acknowledgement). Si ce drapeau est 1, le segment transporte un accus de

rception.
PSH (Push). Si ce drapeau est 1, le module TCP rcepteur ne doit pas attendre que

son tampon de rception soit plein pour dlivrer les donnes lapplication. Au contraire, il doit dlivrer le segment immdiatement, quel que soit ltat de son tampon (mthode Push).
RST (Reset). Si ce drapeau est 1, la connexion est interrompue. SYN (Synchronize). Si ce drapeau est 1, les numros dordre sont synchroniss (il

sagit de louverture de connexion).


FIN (Final). Si ce drapeau est 1, la connexion se termine normalement.

Fentre (16 bits). Champ permettant de connatre le nombre doctets que le rcepteur est capable de recevoir sans accus de rception. Total de contrle ou checksum (16 bits). Le total de contrle est ralis en faisant la somme des champs de donnes et de len-tte. Il est calcul par le module TCP metteur et permet au module TCP rcepteur de vrier lintgrit du segment reu. Pointeur durgence (16 bits). Indique le rang partir duquel linformation est une donne urgente. Options (taille variable). Options diverses, les plus frquentes tant : MSS (Maximum Segment Size). Elle sert dterminer la taille maximale du segment que le module TCP accepte de recevoir. Au moment de ltablissement dune connexion, le module metteur annonce sa taille de MSS. Pour une application qui sexcute sur un rseau Ethernet dans un environnement TCP/ IP, le paramtre MSS pourra tre 1 460 octets, soit 1 500 taille maximale du champ de donnes dune trame Ethernet moins 40 octets, cest--dire deux en-ttes de 20 octets (la taille normale de len-tte du datagramme IP sans option et de celle du segment TCP). Timestamp (estampille temporelle). Sert calculer la dure dun aller et retour (RTT, Round Trip Time).
Wscale (Window Scale ou facteur dchelle). Sert augmenter la taille de la fentre

Exemple

au-del des 16 bits du champ Fentre normal. Si la valeur propose est n, alors la taille maximale de la fentre est de 65 535*2n. Remplissage. Les options utilisent un nombre quelconque doctets, or les segments TCP sont toujours aligns sur une taille multiple entier de 4 octets. Si len-tte sans option compte 5 mots de 32 bits, les options peuvent avoir une taille quelconque. Si besoin, on remplit lespace qui suit les options avec des zros pour aligner la taille du segment une longueur multiple de 32 bits. Donnes. Ce champ transporte les donnes normales et ventuellement les donnes urgentes du segment.

180

Architecture des rseaux

Chapitre

2.4 CONNEXION TCP


TCP est un protocole qui fonctionne en mode client/serveur : lun des utilisateurs est le serveur offrant des services, lautre est le client qui utilise les services proposs par le serveur.

Ouverture de la connexion TCP


Le serveur doit tre initialis le premier ; on dit quil excute une ouverture passive. Ds quil est oprationnel, il attend les demandes des clients, qui peuvent alors faire une ouverture active. Pour ouvrir une connexion, les clients doivent connatre le numro de port de lapplication distante. En gnral, les serveurs utilisent des numros de ports bien connus, mais il est possible dimplanter une application sur un numro de port quelconque. Il faut alors prvenir les clients pour quils sachent le numro de port utiliser. Le client ouvre la connexion en envoyant un premier segment, parfois appel squence de synchronisation. Ce segment contient en particulier le numro de squence initial (le numro du premier octet mis) et le drapeau SYN est mis 1. Le serveur rpond par un acquittement comprenant le numro du premier octet attendu (celui quil a reu + 1) et son propre numro de squence initial (pour rfrencer les octets de donnes du serveur vers le client). Dans ce segment de rponse, le serveur a positionn les drapeaux SYN et ACK 1. Enn, le client acquitte la rponse du serveur en envoyant un numro dacquittement gal au numro de squence envoy par le serveur + 1. Dans ce troisime message, seul le drapeau ACK est mis 1. Lensemble des trois segments correspond louverture de la connexion, illustre la gure 7.2. Ce mcanisme douverture est appel three-way-handshake (tablissement en trois phases). Aprs la dernire phase, le transfert des donnes peut commencer. Figure 7.2
Ouverture dune connexion TCP.
SYN, nseqE = x, n seqR =0
+1

eqE CK, ns SYN, A

= y, nse

qR = x

ACK, n

seqE

= x+1

, nseq

R = y+

Fermeture de la connexion TCP


Une connexion TCP tant bidirectionnelle, les ots de donnes circulent dans les deux sens et chaque sens est gr par une extrmit. Les ots doivent donc tre arrts indpendamment lun de lautre. De ce fait, si trois segments sont changs pour tablir une connexion, il en faut quatre pour quelle sachve correctement, comme le montre la gure 7.3. Pour indiquer quil a termin lenvoi des donnes, un des modules TCP envoie un segment avec le drapeau FIN mis 1. Ce segment doit tre acquitt par le module distant. La connexion nest vraiment ferme que lorsque les deux modules ont procd cet change. La fermeture dnitive nintervient quaprs expiration dun temporisateur.

Les protocoles de transport 181

Remarquons quune connexion peut tre brutalement ferme la suite dun incident (par exemple lorsque lutilisateur ferme inopinment son application). Le module TCP qui arrte brutalement la connexion met un segment avec le drapeau RST mis 1. Ce segment contient ventuellement les derniers octets en attente et aucun acquittement nen est attendu. Le module TCP distant qui reoit un segment avec le bit RST 1 transmet les ventuelles dernires donnes lapplication et lui signale la n anormale de la connexion. Figure 7.3
Fermeture dune connexion TCP.
FIN

ACK donne s

ACK
FIN

ACK

Automate de gestion dune connexion TCP


On voit que louverture et la fermeture dune connexion dpendent de nombreux vnements et peuvent conduire beaucoup de situations diffrentes. Une reprsentation commode des tapes de ltablissement et de la libration dune connexion TCP se fait en utilisant un automate dtats nis onze tats (voir tableau 7.2). Dans chaque tat, seuls certains vnements sont autoriss et une action prcise est entreprise. Dans le cas o lvnement nest pas autoris, on renvoie un signal derreur. La gure 7.4 donne les transitions dtats de lautomate dune connexion TCP. Tableau 7.2
Les tats dune connexion TCP

tat

Description

CLOSED / FERM LISTEN / COUTE SYN RCVD / SYN RECU SYN SENT / SYN ENVOY ESTABLISHED / TABLIE FIN WAIT1 / FIN ATTENTE 1 FIN WAIT2 / FIN ATTENTE 2 TIME WAIT /TEMPORISATION CLOSING / FERMETURE CLOSE WAIT / ATTENTE DE FERMETURE LASTACK / DERNIER ACK

Aucune connexion active ou en attente Attente dappel entrant par le serveur Attente dACK aprs larrive de requte de connexion Ouverture de connexion dj commence par lapplication tat normal de transfert de donnes Lapplication a termin Lautre extrmit est daccord pour librer la connexion Attente de la n dmission des segments Tentative de fermeture de connexion Lautre extrmit a initialis une fermeture de connexion Attente de la n dmission des segments

182

Architecture des rseaux

Chapitre

Figure 7.4
Diagramme de transitions dtats dans TCP.
SYN/SYN + ACK LISTEN CLOSED

CONNECT/SYN CLOSE/ LISTEN/ CLOSE/

SYN RCVD

SEND/SYN SYN/SYN + ACK

SYN SENT

(tat de transfert des donnes) ACK/ CLOSE/FIN CLOSE/FIN FIN/ACK ESTHABLISHED SYN + ACK/ACK

FIN/ACK FIN WAIT-1 ACK/ FIN + ACK/ACK FIN WAIT-2 TIME WAIT FIN/ACK LAST ACK CLOSING ACK/ CLOSE WAIT CLOSE/FIN

ACK/ CLOSED

Exemple

Pour obtenir des informations, en particulier sur les connexions TCP gres par une machine, il faut taper la commande : netstat s p tcp. Le tableau 7.3 montre les diffrents tats des connexions TCP de la machine.

Tableau 7.3 Connexions TCP et leurs tats

Protocole

Adresse locale

Adresse distante

tat

TCP TCP TCP TCP TCP

ma_machine:1039 ma_machine:1040 ma_machine:1026 ma_machine:1051 ma_machine:1055

Pluton : netbios Uranus : 993 207.46.19.30 : http 193.51.224.15 : http Mercure : https

ESTABLISHED CLOSE-WAIT ESTABLISHED ESTABLISHED TIME-WAIT

Transfert des donnes


Un des concepts les plus importants et les plus complexes de TCP est li sa faon de grer les temporisations et les retransmissions. Comme dautres protocoles ables, TCP suppose

Les protocoles de transport 183

que le destinataire met des accuss de rception chaque fois quil reoit de nouvelles donnes valides. Il arme une temporisation chaque fois quil met un segment, puis il attend de recevoir laccus de rception correspondant. Si le dlai dattente dacquittement est atteint avant que les donnes du segment ne soient acquittes (on dit que la temporisation expire), TCP suppose que ce segment a t dtruit ou perdu et le retransmet. TCP est destin tre utilis dans un rseau quelconque, un petit rseau local ou dans Internet. Un segment qui transite dun ordinateur lautre peut traverser un seul rseau faible temps de transit ou traverser un ensemble de rseaux et de routeurs intermdiaires. Il est impossible, a priori, de connatre la rapidit avec laquelle les accuss de rception seront reus par la source. De plus, le dlai dpend du trac ; il peut ainsi subir des variations considrables dun moment lautre. Le temps daller et retour ou RTT (Round Trip Time) mesure le temps mis pour traverser le rseau. TCP doit donc prendre en compte la fois les variations des dlais de retransmission pour les diffrentes destinations et la grande dispersion des dlais pour une destination donne.

Exemple

Lutilitaire ping permet de savoir si une machine est oprationnelle et fournit une estimation du dlai aller et retour. Dans lexemple qui suit, la premire machine est dans le mme rseau local que celle de lmetteur (adresse prive), la seconde est en Australie !
ping 192.168.0.2 dlai approximatif des boucles en millisecondes minimum=3ms, maximum=11ms, moyenne=6ms ping 203.50.4.178 dlai approximatif des boucles en millisecondes minimum=355ms, maximum=361ms, moyenne=358ms

Algorithme de Jacobson Le module TCP surveille le comportement de chaque connexion et en dduit des valeurs de temporisation raisonnables. Il sadapte aux variations de dlais en modiant les valeurs de temporisation. Le choix de la dure dune temporisation est difcile, car la mesure du temps aller et retour dans le rseau est complexe. En outre, mme si cette valeur est connue, il est difcile de xer une temporisation : trop courte, elle provoque dinutiles retransmissions ; trop longue, elle fait chuter les performances. Lalgorithme de Jacobson est un algorithme dynamique qui ajuste la valeur de cette temporisation en fonction de mesures prises intervalles rguliers dans le rseau. On recueille des informations comme la date laquelle un segment TCP est mis et celle laquelle laccus de rception correspondant lui parvient pour calculer le RTT, qui est actualis chaque transmission. Le module TCP retient une estimation pondre de RTT qui sappuie la fois sur le prsent (Nouveau_RTT) et le pass (RTT_estim). Le calcul de cette estimation tient compte dun facteur de pondration a compris entre 0 et 1, donn par la formule : RTT_estim = a*RTT_estim + (1 a)*Nouveau_RTT. Le choix dune valeur de a proche de 1 rend la valeur estime de RTT insensible aux variations brves, contrairement au choix dune valeur de a proche de 0. Le plus souvent, on prend a = 7/8. TCP calcule nalement une valeur de temporisation partir de la valeur RTT_estim : Temporisation = b*RTT_estim (avec b > 1). La valeur de temporisation doit tre proche de la valeur RTT_estim pour dtecter les pertes de segment aussi vite que possible : si b vaut 1, tout retard provoque des retransmissions inutiles ; la valeur b = 2 nest pas optimale lorsque la variance change. Jacobson proposa un algorithme qui rend b variable, par un calcul de probabilit donnant la valeur du dlai de retour dun accus de rception : plus la variance crot et plus b est lev et rciproquement. Lalgorithme demande de conserver la trace dune autre variable,

184

Architecture des rseaux

Chapitre

lcart D. Chaque fois quun accus de rception arrive, on calcule la valeur absolue de lcart entre la valeur estime et la valeur observe : |RTT_estim Nouveau_RTT| et D est alors donn par la formule : D = (1 a)*|RTT_estim Nouveau_RTT|. Dans cette formule, a peut avoir la mme valeur que celle utilise pour pondrer RTT car la valeur de D qui en rsulte est sufsamment proche du rsultat donn par le calcul de probabilit. On peut ainsi utiliser des oprations simples pour calculer D, an dobtenir rapidement le rsultat du calcul. La plupart des implantations utilisent cet algorithme et prennent comme valeur de temporisation : Temporisation = RTT_estim + 4*D. Algorithme de Karn Un autre problme a t identi avec le mode dacquittement de TCP : lambigut des accuss de rception. En effet, TCP utilise une technique dacquittement cumulatif des octets reus, dans laquelle laccus de rception concerne les donnes elles-mmes et non pas le segment qui a servi les acheminer. Lexemple donn ci-aprs illustre ce phnomne. Lalgorithme de Karn lve lambigut des accuss de rception. Lors du calcul de la valeur estime du RTT, on ignore les mesures qui correspondent des segments retransmis, mais on utilise une stratgie daugmentation des temporisations (timer back off strategy). On conserve la valeur de temporisation obtenue, tant quune nouvelle mesure na pas t faite. Cela revient donc calculer une valeur de temporisation initiale laide de la formule prcdente. chaque expiration de la temporisation, TCP augmente la valeur de la temporisation (celle-ci est toutefois borne pour viter quelle devienne trop longue). Nouvelle temporisation = g*Temporisation (gnralement avec g = 2).

Exemple dambigut des acquittements de TCP


TCP fabrique un segment, le donne IP qui lencapsule dans un datagramme puis lenvoie dans le rseau. Si la temporisation expire, TCP retransmet le mme segment qui sera donc encapsul dans un autre datagramme. Comme les deux segments transportent exactement les mmes donnes, le module TCP metteur na aucun moyen de savoir, rception dun acquittement, si celuici correspond au segment initial ou celui qui a t retransmis : les accuss de TCP sont donc ambigus. En effet, associer laccus de rception la transmission initiale peut provoquer une forte augmentation du RTT en cas de perte de datagrammes IP : si un accus de rception arrive aprs une ou plusieurs retransmissions et que TCP se contente de mesurer le RTT partir du segment initial, il calcule un nouveau RTT partir dun chantillon particulirement grand, donc il va augmenter sensiblement la temporisation du segment suivant. Si un accus de rception arrive aprs une ou plusieurs retransmissions, le RTT suivant sera encore plus grand et ainsi de suite !

Autres temporisateurs TCP utilise trois autres temporisateurs : de persistance, de limitation dattente et de fermeture de connexion. Le premier permet dviter la situation de blocage mutuel suivante : le rcepteur envoie un accus de rception avec une fentre nulle pour demander lmetteur de patienter. Un peu plus tard, le rcepteur met la fentre jour mais le segment est perdu : metteur et rcepteur sattendent mutuellement. Quand le temporisateur de persistance expire, lmetteur envoie un message sonde (probe) au rcepteur. La rponse ce message donne la taille de la fentre actuelle. Si elle est toujours nulle, lmetteur rarme son temporisateur de persistance ; sinon, il peut envoyer des donnes.

Les protocoles de transport 185

Quand une connexion est inactive depuis un certain temps, le temporisateur de limitation dattente expire et permet une extrmit de vrier si lautre est toujours prsente. On ferme la connexion sil ny a pas de rponse. Ce mcanisme nest pas implant partout car il augmente la charge du rseau et peut conduire fermer une connexion active cause dune coupure passagre. Dun autre ct, il peut tre intressant de fermer une connexion inactive pour rcuprer des ressources : pour toute connexion gre, le module TCP en mmorise tous les paramtres et donc monopolise des ressources pour la gestion de cette connexion. Le dernier temporisateur gre ltat TIME WAIT pendant la fermeture de connexion. Il vaut deux fois la dure de vie maximale dun segment, ce qui assure que tous les segments dune connexion ont disparu quand on la ferme. Algorithmes de Clark et Nagle Un autre mode de fonctionnement, appel syndrome de la fentre stupide (silly window syndrom), peut contribuer faire seffondrer les performances de TCP. Ce cas se rencontre lorsque lapplication donne de grands blocs de donnes lentit TCP mettrice, alors que lentit rceptrice traite les donnes octet par octet (une application interactive par exemple). Au dpart, le tampon mmoire du rcepteur est plein et lmetteur le sait car il a reu une indication de fentre de taille 0. Lapplication lit un caractre du ux ; le module TCP du rcepteur envoie une indication dactualisation de fentre pour quon lui envoie loctet suivant. Lmetteur se croit oblig denvoyer un octet et le tampon est nouveau plein. Le rcepteur acquitte le segment dun octet mais positionne la fentre 0 et ainsi de suite La solution de Clark consiste empcher le rcepteur denvoyer une indication dactualisation de fentre pour un seul octet. On oblige le rcepteur attendre quil y ait sufsamment despace disponible avant de lannoncer. En pratique, il nenverra pas dindication dactualisation de fentre tant quil na pas atteint la taille maximale du segment. Le rcepteur a obtenu cette valeur ltablissement de la connexion, ou lorsque son tampon mmoire est moiti vide (on prend gnralement le minimum de ces deux valeurs). Lmetteur peut aider en nenvoyant pas de petits segments. Pour cela, il sappuie sur les estimations quil tablit partir des indications dactualisation de fentre dj reues. Lalgorithme de Nagle propose denvoyer le premier octet seul et daccumuler les autres octets dans un tampon, tant que le premier octet nest pas acquitt, puis denvoyer dans un seul segment toutes les donnes accumules et ainsi de suite. Cet algorithme est largement employ dans les implantations TCP mais dans certains cas, il est prfrable de le dsactiver. Les algorithmes de Clark et de Nagle sont complmentaires et utilisables simultanment. Lobjectif est que lmetteur nenvoie pas de petits segments et que le rcepteur nen rclame pas en mettant des indications dactualisation de fentre avec des valeurs trop faibles. En effet, le TCP rcepteur, tout comme le TCP metteur, peut accumuler les donnes. Pour cela, il bloque les primitives de lecture de lapplication, tant quil na pas de donnes en nombre sufsant fournir. Cette faon doprer diminue le nombre dappels TCP et diminue la surcharge globale (elle augmente lgrement le temps de rponse mais ce nest pas trs gnant pour les applications interactives). Contrle de congestion par TCP TCP manipule dynamiquement la taille de la fentre, pour ne pas injecter de nouveau segment tant quil en reste un ancien dans le rseau. On part de lhypothse que lexpiration dun temporisateur sur Internet ne peut provenir que de la congestion dune partie du rseau, la perte due une erreur de transmission tant considre comme un vnement rare. TCP surveille donc en permanence les temporisateurs pour dtecter toute congestion potentielle. Les capacits dmission et de rception constituent deux sources possibles de problmes et doivent tre traites sparment. Pour

186

Architecture des rseaux

Chapitre

cela, chaque metteur gre deux fentres : celle qui est accorde par le rcepteur et la fentre de congestion. Le nombre doctets envoys est gal au minimum des deux fentres ; celle qui est rellement utilise correspond au minimum de ce qui convient lmetteur et au rcepteur. linitialisation de la connexion, lmetteur prend une fentre de congestion correspondant la taille maximale du segment utilis et envoie un segment de taille maximale. Si le segment est acquitt avant expiration dune temporisation, il augmente la taille de la fentre de congestion (la nouvelle fentre est de taille double par rapport la prcdente), puis lmetteur envoie deux segments. chaque accus de rception de segment, il augmente la fentre de congestion en incrmentant dune unit la taille maximale du segment. Quand la fentre de congestion atteint n segments et si tous les segments ont t acquitts dans les temps impartis, lmetteur augmente la taille de la fentre de congestion du nombre doctets correspondant aux n segments. Ainsi, pour chaque mission couronne de succs, la taille de la fentre de congestion va-t-elle doubler : elle crot exponentiellement, jusqu expiration de la temporisation ou si on atteint la taille maximale de la fentre de rception.

Exemple

Si on a envoy des segments de 1 024, 2 048, 4 096 octets correctement mais quun segment de 8 192 octets provoque une expiration de temporisation, on vitera la congestion en dimensionnant la fentre 4 096 octets et on nenverra pas de segments de taille suprieure cette valeur, quelle que soit la taille de la fentre de rception. Cet algorithme est appel algorithme de dmarrage lent (qui nest en fait pas lent du tout puisquil a une croissance exponentielle !). Un troisime paramtre, le seuil dvitement de congestion (threshold), a pour valeur initiale 64 Ko. expiration de la temporisation, le seuil est pris gal la moiti de la fentre de congestion courante, et TCP rinitialise la fentre de congestion la taille maximale de segment. Le dmarrage lent est utilis pour tester les possibilits dabsorption du rcepteur ; on arrte la croissance exponentielle lorsque le seuil dvitement de congestion est atteint. En cas de transmission avec succs, on augmente linairement la taille de la fentre de congestion (cest--dire quon augmente dun segment la taille de la fentre au lieu dun segment par segment acquitt), comme le montre la gure 7.5.

Figure 7.5
volution de la fentre de congestion.

44 Temporisation 40 36 32 Fentre de congestion 28 24 20 16 12 8 4 0 0 2 4 6 8 10 12 14 16 18 20 22 24 Seuil Seuil

Les protocoles de transport 187

2.5 INTERFACE

ENTRE

TCP

ET LAPPLICATION

Les processus applicatifs communiquent en utilisant des sockets TCP. La programmation dune application client/serveur se fait donc en manipulant les sockets. Ct serveur, il faut dabord crer le socket et le paramtrer (primitive Bind), en lui associant le numro de port correspondant. Il faut ensuite le placer dans un tat dattente du client (primitive Listen). Ct client, il faut crer le socket et tablir la connexion (primitive Connect) qui sera accepte par le serveur (primitive Accept). Le transfert des donnes pourra commencer, en utilisant des primitives Read et Write (ou Sendto et Receivefrom). La fermeture est lie lutilisation de la primitive Close ct client (fermeture active) ou ct serveur (fermeture passive).

Protocole UDP (User Datagram Protocol)


UDP est un protocole de transport sans connexion qui permet lmission de messages sans ltablissement pralable dune connexion. Cest un protocole non able, beaucoup plus simple que TCP, car il najoute aucune valeur ajoute par rapport aux services offerts par IP. Lutilisateur nest donc pas assur de larrive des donnes dans lordre o il les a mises, pas plus quil ne peut tre sr que certaines donnes ne seront ni perdues, ni dupliques, puisquUDP ne dispose pas des mcanismes de contrle pour vrier tout cela. De ce fait, il nintroduit pas de dlais supplmentaires dans la transmission des donnes entre lmetteur et le rcepteur. Cest la raison pour laquelle il est utilis par les applications qui ne recherchent pas une grande abilit des donnes ou qui ne veulent pas assumer la lourdeur de gestion des mcanismes mis en jeu dans le mode connect.

3.1 SERVICE

MINIMAL
UDP est efcace pour le transfert des serveurs vers les clients avec des dbits levs, en dlivrant les donnes sous forme de datagrammes de petite taille et sans accus de rception. Ce type de service est utile pour les applications en temps rel, telles que les missions en ux continu dinformations audio et vido. En effet, pour celles-ci, la perte dune partie des donnes na pas grande importance. Les jeux en rseau, le streaming (procd permettant de lire des chiers audio ou vido avant mme que celui-ci soit totalement tlcharg, grce une mise en mmoire tampon) utilisent aussi UDP. Dautres applications de type questions-rponses, comptant de petites quantits de donnes, peuvent galement utiliser UDP. De ce fait, lerreur ou la perte dun datagramme sont gres directement par lapplication elle-mme, le plus souvent laide dun mcanisme de temporisation. Au-dessus dUDP, on trouve en particulier : le service dannuaire DNS (Domain Name System), la transmission des informations de gestion de rseaux SNMP (Simple Network Management Protocol) ou dinformations de routage RIP (Routing Information Protocol). Notons que nous avons dj vu (chapitre 6, exercice 15), un exemple utilisant le protocole UDP avec la commande traceroute sous Unix : celle-ci gnre des datagrammes UDP, placs dans des datagrammes IP avec des dures de vie dlibrment trop courtes.

188

Architecture des rseaux

Chapitre

3.2 FORMAT

DU DATAGRAMME

UDP

Les messages UDP sont gnralement appels datagrammes UDP. Ils contiennent deux parties, un en-tte et des donnes encapsules dans les datagrammes IP, comme les segments TCP. Le format est illustr dans la gure 7.6. Figure 7.6
Format du datagramme UDP.
Port source Longueur 32 bits Port destination Total de contrle

Len-tte trs simple compte quatre champs : Port source (16 bits). Il sagit du numro de port correspondant lapplication mettrice du paquet. Ce champ reprsente une adresse de rponse pour le destinataire. Port destination (16 bits). Contient le port correspondant lapplication de la machine laquelle on sadresse. Les ports source et destination ont videmment la mme signication que pour TCP. Longueur (16 bits). Prcise la longueur totale du datagramme UDP, exprime en octets. La longueur maximale des donnes transportes dans le datagramme UDP est de : 216 4*16, soit 65 472 octets. Total de contrle ou checksum (16 bits). Bloc de contrle derreur destin contrler lintgrit de len-tte du datagramme UDP, comme dans TCP.

3.3 INTERFACE

ENTRE

UDP

ET LAPPLICATION

Les processus applicatifs utilisent des sockets UDP. Leur manipulation est trs simple puisque le protocole nest pas en mode connect : il ny a pas de procdure de connexion et donc pas de fermeture non plus. Comme pour TCP, du ct du serveur, il faut dabord crer le socket et le paramtrer par la primitive Bind, en lui associant le numro de port correspondant. Puis il faut le placer dans un tat dattente des donnes du client (primitive Listen). Ct client, il faut crer le socket. Le transfert des donnes peut commencer directement en utilisant des primitives Read et Write (ou Sendto et Receivefrom).

Rsum
Deux protocoles de transport sont utiliss dans larchitecture TCP/IP. Le premier, TCP, est un protocole complet, destin pallier toutes les dfaillances de linterconnexion de rseaux. Cest un protocole en mode connect qui met en uvre une dtection et une correction derreurs, un contrle de squence, de ux et de congestion. Il est de ce fait complexe et lourd grer. TCP est indispensable pour toutes les applications qui transfrent de grandes quantits dinformations et qui ont besoin de abilit dans les changes de donnes. UDP, lui, utilise le protocole IP pour acheminer un message dun ordinateur un autre, sans aucune valeur ajoute (pas de connexion, pas de contrle derreur, de contrle de ux ni de contrle de squence) par rapport aux services rendus par IP. Il convient aux applications de type requte/rponse simples ou ayant des contraintes temporelles fortes.

Les protocoles de transport 189

Problmes et exercices
EXERCICE 1 PRINCIPES
ET INTRT DE

TCP

Sachant quun segment TCP contient 20 octets den-tte, quil est transport dans un datagramme IP contenant lui aussi 20 octets den-tte, dterminez le dbit utile maximal dune application utilisant TCP/IP sur un rseau Ethernet 10 Mbit/s. Quel intrt y a-t-il pour un protocole comme TCP ne possder quun seul format den-tte ? Quel est lintrt du fonctionnement en mode connect pour le protocole TCP ? La fragmentation et le rassemblage tant pris en charge par IP, pourquoi TCP se proccupe-t-il de lordre darrive des datagrammes ? Un module TCP peut-il grer plusieurs connexions simultanment ? Si oui, quel en serait lintrt ? Comment pourrait-on distinguer ces connexions ? Nous avons vu que le dbit maximal sur Ethernet tait 9,82 Mbit/s si le dbit rel tait de 10 Mbit/s (exercice 7 du chapitre 5). Le calcul tait fait en supposant que les 1 500 octets de la trame taient des octets utiles. Si le champ de donnes de la trame Ethernet transporte un datagramme IP avec un segment TCP encapsul, il y a (sauf options) 20 + 20 = 40 octets den-tte donc seulement, soit 1 460 octets de donnes utiles. Le dbit maximal est donc 10*(1460/1528) = 9,55 Mbit/s. Tous les segments TCP ont le mme format, quil sagisse de la demande douverture de connexion, dun segment de transfert de donnes ou dune fermeture de connexion : le traitement est donc toujours le mme, il peut tre optimis pour une meilleure efcacit. Lintrt est de disposer dun contexte, mmoris chez lmetteur comme chez le destinataire (protocole de bout en bout), dans lequel sont conservs tous les paramtres xes et variables de la connexion : cela permet de suivre lvolution de la connexion et dadapter au mieux les dlais pour la mise en uvre des fonctions de contrle derreur, de contrle de ux, de squencement et de congestion. TCP reoit les donnes extraites des datagrammes IP et les rordonne (seulement dans le cas o tous les fragments sont arrivs), lordre des datagrammes IP ntant pas gr par IP (les datagrammes nont pas de numro de squence). Cest pourquoi TCP doit assurer ce service en numrotant les octets du ot de donnes quil a mis dans le segment. Oui, bien sr ! Et mme plusieurs centaines simultanment Par exemple, une application simple comme la navigation sur le Net ouvre (sans que lutilisateur le sache) des dizaines de connexions : chaque objet multimdia dans la page consulte correspond une connexion ; chaque clic de souris fait ouvrir une nouvelle connexion Une connexion est identie par deux sockets (numro de port local, adresse IP locale ; numro de port distant, adresse IP distante). Mme si ladresse IP locale est la mme, le numro de port change : il correspond au processus que cre le systme dexploitation de la machine local et les numros distants peuvent varier. Il ne peut donc jamais y avoir confusion entre deux connexions, mme si les adresses IP sont les mmes, puisque les processus ont des identicateurs diffrents.

190

Architecture des rseaux

Chapitre

EXERCICE 2

IDENTIFICATION DUNE

CONNEXION

TCP

Soit une connexion TCP identie par son quadruplet : < adresse IP 123.45.67.89, port 12006, adresse IP 12.34.56.78, port 80 >. quoi correspond cette connexion ? Traverse-t-elle un ou plusieurs routeurs ? La machine qui a ouvert la connexion est un client (grand numro de port) qui sest connect un serveur Web (port 80). Les deux machines ont des adresses IP de classe A et appartiennent des rseaux diffrents. La connexion traverse donc au moins un routeur.

EXERCICE 3

IDENTIFICATION

DE PLUSIEURS CONNEXIONS

TCP

Soit deux rseaux (nots 1 et 2) distants lun de lautre et interconnects par Internet, possdant chacun un routeur (R1 et R2). Larchitecture de protocoles utilise est TCP/ IP. Le poste PC1 du premier rseau communique avec le poste PC2 du second rseau qui est un serveur offrant deux services : Web et FTP. Le logiciel TCP est-il implment au niveau du routeur R1 ? Du routeur R2 ? Des deux routeurs ? PC1 a dj une connexion TCP tablie avec PC2 pour le service Web. Peut-il tablir une seconde connexion pour le service FTP ? Si oui, comment TCP diffrencie-t-il les deux connexions ? PC1 a termin le tlchargement et ferm sa connexion avec le service FTP. La connexion avec le service Web est brutalement interrompue et PC1 en dmarre une nouvelle (toujours avec le mme serveur PC2). Est-il possible que des segments de la premire connexion interfrent avec ceux de la seconde ? Le logiciel TCP nexiste que dans les postes des utilisateurs (clients ou serveurs). Les routeurs ont la couche IP comme couche de niveau suprieur. TCP a la capacit de grer plusieurs connexions simultanment. PC1 peut donc avoir plusieurs connexions avec PC2. Ces connexions diffrent par le numro de port local et par le numro de port distant, donc pas de confusion possible. Les deux sockets valent respectivement : < adresse IP-PC1, port x, adresse IP-PC2, port 80 > et < adresse IP-PC1, port y, adresse IPPC2, port 21 > La nouvelle connexion avec le service Web utilise des numros de squence pour les octets du ot de donnes changes qui sont diffrents de la connexion prcdente, puisque le numro de squence initial est tir au sort pour la nouvelle connexion. Il ny a donc aucun risque que des segments interfrent.

EXERCICE 4

TAT DUNE

CONNEXION

TCP

En utilisant la commande netstat, vous constatez que vous avez une connexion TCP ouverte avec la machine 213.33.44.55, port 1863 dans ltat ESTABLISHED. Vous envoyez un ping cette machine et celle-ci ne rpond pas. Vous pensez donc que la machine est tombe en panne. Pourtant, vous constatez, aprs vrication, que votre application est toujours oprationnelle. Expliquez la situation.

Les protocoles de transport 191

Exercices

Lapplication est toujours oprationnelle (il sagit ici de MSN). La machine qui lhberge ou un routeur intermdiaire situ devant cette machine a ltr votre requte ICMP Echo Request pour des raisons de scurit.

Remarque
Le ltrage pour raison de scurit est vital pour un serveur. Il est dommage que, de ce fait, la commande ping nait plus de sens ! Une machine qui ne rpond pas nest pas obligatoirement hors service.

EXERCICE 5

TRAITEMENT DUN

SEGMENT

TCP

On suppose quune connexion TCP est ouverte entre deux utilisateurs A et B. Comment sont traits les segments dans les deux cas suivants : Lmetteur et le rcepteur sont connects au mme rseau de type TCP/IP ? Lmetteur et le rcepteur appartiennent deux rseaux distincts utilisant TCP/IP, interconnects grce un routeur IP ? Lapplication mettrice (par exemple sur la machine A, port x) demande TCP louverture dune connexion avec lapplication de la machine B, port y. TCP fabrique donc un segment douverture de connexion avec (port x, port y, SYN = 1), plac dans un datagramme IP avec A comme adresse IP metteur et B comme adresse IP destinataire. Que les deux machines soient dans le mme rseau ou non ne change rien au fonctionnement de TCP. Seul le traitement fait linterface entre IP et les couches infrieures change. Dans le premier cas, le datagramme est encapsul dans une trame du rseau local avec A comme adresse MAC metteur et B comme adresse MAC destinataire. Dans le deuxime cas, le datagramme est encapsul une premire fois dans une trame du rseau local de A avec A comme adresse MAC metteur et RA (routeur ct A, cest--dire le routeur qui gre la sortie du rseau) comme adresse MAC destinataire. Il est encapsul une seconde fois dans une trame du rseau local de B avec RB (routeur ct B, qui gre lentre dans le rseau) comme adresse MAC metteur et B comme adresse MAC destinataire. Lorsque la machine B reoit le datagramme (quelle que soit la trame qui la encapsul), elle en extrait le segment et avertit le module TCP de larrive dinformations correspondant un change provenant dune machine dadresse IP A. Le module TCP analyse le segment et prvient lapplication identie par le port y de la demande douverture de connexion.

EXERCICE 6

STATISTIQUES

DE CONNEXIONS

TCP

En utilisant la commande netstat, on peut obtenir des statistiques sur lactivit TCP dune machine. Commentez lafchage obtenu.
Ouvertures actives= 4038 Ouvertures passives= 1645 Tentatives de connexion non russies= 5 Connexions rinitialises= 166 Connexions courantes= 7 Segments reus = 112432 Segments envoys= 107838 Segments retransmis= 102

192

Architecture des rseaux

Chapitre

La machine dispose de 7 connexions TCP actives. Sur lensemble des connexions gres, le trac est peu prs symtrique (autant de segments reus que de segments mis), sous rserve que la taille des donnes soit quivalente. La qualit de la transmission est bonne puisquil y a 102 retransmissions pour 107 736 segments envoys (107 838 = 107 736 + 102) ; le taux derreur sur les segments est de 9,5*10-4. Si lon est dans un rseau Ethernet avec des segments de 1 460 octets utiles pour des trames de 1 500 octets, cela fait un taux derreur denviron 2*10-8.

EXERCICE 7

STATISTIQUES

DTAILLES DE CONNEXIONS

TCP

Voici un autre afchage, plus dtaill, des statistiques dutilisation de TCP sur une deuxime machine :
369091 packets sent 352383 data packets (489293303 bytes) 8 data packets (49 bytes) retransmitted 15876 ack only packets (15016 delayed) 3 URG only packets 13 window probe packets 5 window update packets 803 control packets 224123 packets received 204197 acks (for 487292645 bytes) 315 duplicate acks 0 acks for unsent data 17100 packets (2306201 bytes) received in sequence 5 completely duplicate packets (17 bytes) 2 packets with some duplicated data (8 bytes) 203 out of order packets 0 packets of data after window 0 window probe 1555 window update packets 85 packets received after close 0 discarded for bad checksums 0 discarded for bad header offset fields 0 discarded because packet too short 356 connections requests 92 connections accepts 5 embryonic connections dropped 176379 segments updated rtt (of 176768 attempts) 21 retransmit timeouts 0 connections dropped by retransmit timeout 3 persist timeouts 3132 keepalive timeouts 0 keepalive probes sent 0 connections dropped by keepalive

(suite)

Commentez les lignes ci-dessus, en rpondant aux questions suivantes :

Quelle est la cause la plus vraisemblable des pertes ? quoi servent les paquets window probe et window update?

Les protocoles de transport 193

Exercices

Quelle est la taille moyenne des segments TCP envoys ? Quelle est la proportion dacquittements ?

Que contiennent les paquets de contrle?

(suite)

Quelle proportion de paquets transporte des acquittements ? Combien doctets mis sont acquitts en moyenne par ACK reu ? Comment expliquez-vous la diffrence entre 204197 ACK (for 487292645 bytes) et 17100 packets (2306201 bytes) received in sequence ? Quelle est la taille moyenne des segments de donnes reus ? Comparez avec la taille des segments mis. Que peut-on penser de la machine sur laquelle ces statistiques sont faites ? Combien de tentatives de connexion ont chou ? Quel est le volume moyen de donnes mises et reues par connexion ? Le paramtre RTT varie-t-il souvent ? Combien de fois le temporisateur a-t-il expir parce que lacquittement narrivait pas ? Keepalive est un temporisateur qui surveille le bon fonctionnement de la connexion en absence de trac. Que pensez-vous de lactivit sur les connexions tablies ? 352 383 segments (appels ici paquets !) ont transport 489 293 303 octets. Donc, la taille moyenne dun segment est 489 293 303/352 383 = 1 388 octets (ou 1,355 Ko). La cause la plus vraisemblable des pertes est la non-abilit du ou des rseaux traverss : TCP attend les acquittements un certain temps et dcide que les segments sont perdus quand lacquittement nest pas arriv. Les paquets window probe et window update sont destins modier la taille de la fentre pour un meilleur contrle de ux et de congestion. Les paquets de contrle sont ceux qui correspondent louverture et la fermeture des connexions ainsi que les acquittements de ces ouvertures et fermetures. Sur les 224 123 segments reus, 204197 contiennent des acquittements. Donc la proportion est de : 204 197/224 123 = 91 %. Chaque acquittement reu valide la rception par lautre extrmit dun certain nombre doctets. Les 204 197 acquittements ont valid globalement 487 292 645 octets soit 487 292 645/204 197 = 2 386 octets (ou 2,33 Ko). Les 17 100 segments reus en squence correspondent aux donnes que la machine a reues correctement. On constate ici que le trac est dissymtrique puisque la machine reoit peu de donnes et normment dacquittement. La taille moyenne des segments de donnes reus est de 2 306 201/17 100 = 135 octets. La taille des segments mis est de 1,355 Ko soit 10 fois plus. On peut penser de la machine sur laquelle ces statistiques sont faites est un serveur, qui reoit de la part de ses nombreux clients des requtes simples et courtes et met en rponse des messages longs. Ce pourrait tre un serveur Web ou un serveur FTP, par exemple. La machine a reu 356 demandes douverture de connexion et en a accept seulement 92. Il y a donc (356-92)/356 = 75 % tentatives de connexion qui ont chou. Cela pourrait accrditer lhypothse quil sagit dun serveur FTP pour lequel il faut un login et un mot de passe pour pouvoir ouvrir une connexion. Le volume moyen de donnes mis par connexion est de 489 293 303/ 92 = 5 318 405 octets, soit 5 Mo. Le volume moyen de donnes reu par connexion est de 2 306 201/92 = 24 Ko. Cela conrme bien le trac dissymtrique de la machine.

194

Architecture des rseaux

Chapitre

Il y a eu 176 379 mises jour du paramtre RTT sur les 204 197 acquittements reus. On voit que 86,3 % des acquittements correspondent des acquittements normaux. Le temporisateur a expir 21 fois parce que lacquittement narrivait pas. Cela signie que le RTT est bien adapt aux diffrentes connexions. Dautre part, ce nest que parce que le segment a t effectivement perdu que son acquittement na pas t envoy. Il ny a eu aucune fermeture de connexion grce au mcanisme Keepalive qui surveille le bon fonctionnement de la connexion en absence de trac. On peut donc juger que lactivit sur les connexions tablies est satisfaisante.

EXERCICE 8

DCODAGE

DE SEGMENT

TCP

Dcodez le segment TCP ci-aprs, donn en hexadcimal :


00 15 0F 87 9C CB 7E 01 27 E3 EA 01 50 12 10 00 DF 3D 00 00 00 15 port source, ici 21 donc serveur FTP. 0F 87 port destination 3975, port quelconque du client. 9C CB 7E 01 Numro de squence (numro du 1er octet mis). 27 E3 EA 01 Numro de squence (numro du 1er octet attendu en rception). 5 Longueur de len-tte du segment (20 octets) : on peut en dduire que ce segment ne

contient pas de donnes.


0 12= 000000 01 0010

Drapeaux. FIN (clture de la connexion) = 0. SYN (ouverture ou rponse douverture de connexion) = 1. RST (rinitialisation de la connexion) = 0. PSH (Livraison immdiate) = 0. ACK (accus de rception) =1, le segment transporte un accus de rception. URG (urgent) = 0. 6 bits rservs.

Les drapeaux SYN et ACK sont mis 1.


10 00 Taille de la fentre, ici a priori 4 096 octets.

Cest la quantit de donnes que lmetteur est autoris envoyer sans accus de rception.
DF 3D Bloc de contrle derreur sur le segment entier. 00 00 Pointeur vers les donnes urgentes (nul ici puisquil ny a

pas de donnes urgentes, bit URG = 0). Fin du segment TCP (sans donnes).

Les protocoles de transport 195

Exercices

Bilan
Ce segment contient deux drapeaux mis 1, les drapeaux SYN et ACK. Il sagit donc de la rponse positive une demande douverture de connexion. Les numros de squence initiaux viennent dtre choisis et le serveur, qui accepte la demande douverture de connexion du client, xe la taille de la fentre 4 Ko. Il sagit dun serveur FTP, identi par lutilisation de son port bien connu 21. lanalyse du segment seul, on ne peut pas savoir quelles sont les machines concernes par lchange. On sait juste quil sagit de linitialisation dun transfert de chier FTP entre un client et un serveur.

EXERCICE 9

DCODAGE

COMPLET DUNE TRAME

Dcodez la trame Ethernet suivante (en hexadcimal) et en extraire toutes les informations possibles.
AA 00 9C 52 AA 00 CB 46 AA AA AA AA AA AB 08 00 20 0A 70 66 08 00 20 0A AC 96 08 00 45 28 A6 F5 00 00 1A 06 75 94 C0 5D 02 01 84 E3 3D 05 00 15 0F 87 7E 01 27 E3 EA 01 50 12 10 00 DF 3D 00 00 20 20 20 20 20 20 9B 43

-----------------------Dbut dune trame Ethernet ------------------------------------------AA AA AA AA AA AA AA AB Synchronisation (prambule et dbut de trame). 08 00 20 0A 70 66 adresse MAC destinataire (constructeur = 080020). 08 00 20 0A AC 96 adresse MAC metteur (carte de mme constructeur). 08 00 Type (ici IP) [si ce champ a une valeur infrieure 1500, il sagit dune longueur]. ------Dbut du contenu de la trame de longueur = 1 500 octets (ici datagramme IP) -----4 Version du protocole IP (IPv4). 5 Longueur de len-tte (5*32 bits = 160 bits ou 5*4 octets = 20 octets). 00 00 28 A6 F5 0000 1A 06 75 94 C0 5D 02 01 84 E3 3D 05 en tte IP. @ IP destinataire 132.227.61.5. @ IP metteur 192.92.2.1. Bloc de contrle derreur (sur len tte du datagramme seulement). Protocole (ici TCP). TTL (ici 1A = 1*16 + 10 = 26 routeurs ou secondes). Drapeau + Dplacement (0=inutl, 0=DF [fragmentation autorise]) 0=MF (pas de fragments suivre, donc dernier fragment). 0000000000000 = dplacement, cest--dire position du 1er octet du fragment par rapport au 1er octet du datagramme initial. Ce fragment est le premier et le dernier du datagramme : il sagit donc dun datagramme non fragment. ID du datagramme (numro quelconque, ne sert que si le datagramme est amen tre fragment). Longueur totale (ici 00 28 en hexadcimal, soit : 2*16 + 8 en dcimal donc 40 octets). pas de qualit de service (ToS).

196

Architecture des rseaux

Chapitre

------ Contenu du datagramme = segment TCP dune longueur de 20 octets (40-20) -----Le segment est celui de lexercice prcdent. -------------------------- Fin du segment TCP (sans donnes) -------------------------------------------------------- Fin des donnes du datagramme IP -------------------------------20 20 20 20 20 20 6 octets de bourrage pour amener la trame Ethernet la longueur

minimale (64 octets en tout).


9B 52 46 43 Bloc de contrle derreur de la trame Ethernet.

-------------------------- Fin de la trame Ethernet -------------------------------------------

Bilan
Cette trame Ethernet a t capture dans un rseau que nous ne connaissons pas forcment. Trois possibilits sont envisager : Dans le rseau de lmetteur de la trame (rseau de classe C 192.92.2.0). Dans cette hypothse, trois machines sont concernes par cet change : la machine X dadresse MAC 08 00 20 0A AC 96 et dadresse IP 192.92.2.1. Cest un serveur FTP qui envoie une rponse positive la demande douverture de connexion que lui a faite la machine Y, client FTP dadresse IP 132.227.61.5, se trouvant dans un autre rseau dont nous ne connaissons pas la technologie. La machine Z dadresse MAC 08 00 20 0A 70 66 est donc le routeur de sortie du rseau 192.92.2.0. Elle est explicitement dsigne comme destinataire de la trame Ethernet, puisque le datagramme IP que celle-ci contient doit sortir du rseau ! [Nous navons pas connatre ladresse IP du routeur]. La gure 7.7 illustre ce cas de gure.

Figure 7.7 Machines concernes par lchange dans lhypothse a.


Serveur FTP 192.92.2.1 08:00:20:0A:AC:96

Routeur 08:00:20:0A:70:66

Client FTP 132.227.61.5

X
Ethernet 192.92.2.0

Les protocoles de transport 197

Exercices

Dans le rseau du destinataire (rseau de classe B 132.227.0.0). De manire similaire, trois machines sont concernes par cet change : la machine X dadresse MAC 08 00 20 0A AC 96, qui est le routeur dentre du rseau en question. Ce routeur expdie une trame Ethernet la machine Y, client FTP dadresse MAC 08 00 20 0A 70 66 et dadresse IP 132.227.61.5 se trouvant dans le rseau. La trame transporte laccus de rception la demande de connexion quavait faite la machine Y (contenue dans une trame prcdente que nous ignorons). La machine Z dadresse IP 192.92.2.1 est le serveur FTP situ lextrieur du rseau, ce qui justie que le datagramme soit relay par le routeur dentre. La gure 7.8 illustre cette hypothse.

Bilan
Figure 7.8 Machines concernes par lchange dans lhypothse b.
Serveur FTP 192.92.2.1 Client FTP Routeur 132.227.61.5 08:00:20:0A:AC:96 08:00:20:0A:70:66

Ethernet 132.227.0.0

Dans un rseau de transit, entre les deux rseaux concerns. La capture a galement pu tre faite dans un rseau intermdiaire qui ne contient ni lmetteur, ni le destinataire du datagramme. Les adresses MAC sont alors celles de deux routeurs intermdiaires, connus uniquement par leurs adresses MAC. Il y a donc quatre machines concernes par cet change : la machine X, la machine Y et les routeurs dentre et de sortie du rseau de transit. La gure 7.9 montre les machines et les routeurs concerns dans lhypothse c.

Figure 7.9 Machines concernes par lchange dans lhypothse c.

Serveur FTP 192.92.2.1

Client FTP Routeur 132.227.61.5 08:00:20:0A:AC:96 08:00:20:0A:70:66

Ethernet 132.227.0.0

198

Architecture des rseaux

Chapitre

Le routage

1. Objectifs du routage .............. 200 2. Principaux protocoles de routage ............................ 201 3. Routage et volution des rseaux............................ 206

Nous avons vu au cours des chapitres prcdents que lacheminement des messages travers un ou plusieurs rseaux ncessitait des connaissances sur le rseau et ltat de ses liaisons. Les quipements spcifiques, les routeurs, organisent cet acheminement. Ils utilisent pour cela des algorithmes classiques de recherche du meilleur chemin dans un graphe. Nous verrons que pour la mise en uvre dans un grand rseau, il faut prvoir dchanger entre ces routeurs des informations de contrle dont le but est de construire pour chacun une table de routage. Cette table donne, pour chaque destination, la route emprunter ainsi que son cot. Nous abordons les deux grandes familles dalgorithmes de routage et les protocoles associs pour vhiculer les informations entre les routeurs.

Problmes et exercices 1. Table de routage ................... 209 2. Routage avec RIP .................. 210 3. Routage avec OSPF ............... 213

199

Objectifs du routage
Le but dun protocole de routage est trs simple : fournir linformation ncessaire pour effectuer un routage, cest--dire la dtermination dun chemin travers le rseau entre une machine mettrice et une machine rceptrice, toutes deux identies par leur adresse. Les protocoles de routage tablissent des rgles dchange entre routeurs pour mettre jour leurs tables selon des critres de cot comme, par exemple, la distance, ltat de la liaison, le dbit. Ils amliorent ainsi lefcacit du routage. La diversit des rseaux et de leurs services fait du routage un lment cl de leur bon fonctionnement. Il y a de trs nombreux problmes rsoudre. Lun des problmes fondamentaux viter rside dans les boucles de routage (le message peut tourner en rond dans le rseau et ne jamais atteindre son destinataire). Lautre apparat lorsquil y a une panne dans le rseau et quil faut optimiser le calcul des nouvelles routes : une fois la panne dtecte, il faut transmettre linformation sur lvnement le plus rapidement possible pour que les diffrents routeurs recalculent par o faire passer leurs messages en contournant la liaison en panne. Le premier protocole de routage sur Internet fut RIP (Routing Information Protocol). On lui prfre aujourdhui une version plus labore, OSPF (Open Shortest Path First). Le premier sappuie sur un algorithme de la famille vecteurs de distance. Le second utilise un algorithmes de la famille tat des liens. Dans les deux cas, les algorithmes de base sont issus de la thorie des graphes (Bellman1-Ford, pour RIP, et Dijkstra2, pour OSPF). La difcult est de les mettre en uvre dans des environnements rels avec efcacit, tout en minimisant la consommation des ressources rseau. Les tables de routage saccroissent au fur et mesure de la taille du rseau. Cela augmente lespace mmoire ncessaire dans les routeurs et les ressources processeur. Dautre part, cela contribue diminuer les performances du rseau, puisque celui-ci doit propager un important trac entre les routeurs eux-mmes. On dcoupe alors le rseau en sousensembles rgionaux. lintrieur dune rgion, les tables de routage contiennent une entre par routeur (voir gure 8.1). De cette faon, linterconnexion de rseaux diffrents est aise. Une hirarchisation plusieurs niveaux peut senvisager pour les trs gros rseaux, mme si la distance parcourue entre rgions nest pas globalement optimale.

Figure 8.1
Un routeur A et sa table de routage.
Interface1

Interface2

Rseau Y Rseau X A

Rseau Z

Pour aller X Y Z

Passer par _ _ B

Interface 1 2 2

Le rseau Internet est ainsi organis comme une collection de systmes autonomes , et une seule autorit administre en gnral chacun dentre eux. On appelle systme autonome, ou SA, un ensemble de rseaux interconnects partageant la mme
1. Richard Bellman (1920-1984), mathmaticien amricain, connu pour la programmation dynamique. 2. Edsger Dijkstra (1930-2002), chercheur hollandais, l'un des plus influents dans le domaine de l'informatique, rcompens par le prix ACM Turing.

200

Architecture des rseaux

Chapitre

stratgie de routage : tous les routeurs internes un systme autonome respectent le mme protocole de routage rgi par une autorit administrative (un dpartement responsable spcique comme un fournisseur daccs ou toute autre organisation) [voir gure 8.2]. On dsigne comme protocole interne aux routeurs, le protocole de routage ou IGP (Interior Gateway Protocol) utilis lintrieur dun systme autonome. Par opposition, un protocole externe appel EGP (Exterior Gateway Protocol) transfre les informations de routage entre les diffrents systmes autonomes. Figure 8.2
Systmes autonomes et protocoles de routage internes et externes.
Sytme autonome

Sytme autonome

Sytme autonome

Routeur interne

Routeur externe

Principaux protocoles de routage


Nous dcrivons succinctement dans cette section les protocoles de routage internes RIP et OSPF puis le protocole externe BGP.

2.1 RIP (ROUTING INFORMATION PROTOCOL)


On a conu RIP (Routing Information Protocol) pour fonctionner en tant que protocole interne dans des systmes autonomes de taille modre. Sa premire version fut standardise en 1988 (RFC 1058). La RFC 1723 propose des amliorations depuis 1994. RIP recherche le plus court chemin selon un critre de cot simple : le nombre de routeurs traverss. Cela revient affecter un cot unitaire la traverse de chaque routeur. RIP appartient la famille des protocoles vecteurs de distance, puisquil calcule la distance, en nombre de routeurs traverss, entre origine et destination.

Le routage 201

Principe de fonctionnement
Le protocole est limit aux rseaux dont le plus long chemin (quon appelle couramment le diamtre du rseau) implique quinze routeurs au maximum. Il est mal adapt au traitement des boucles dans les chemins et utilise des mesures du cot des chemins (ou mtriques) xes pour comparer les routes alternatives. Les situations o les routes doivent tre choisies en fonction de paramtres mesurs en temps rel comme un dlai, une abilit ou une charge, se prtent mal ce type de traitement. Un routeur RIP calcule des chemins pour diffrentes destinations, lesquelles sont spcies par leurs adresses IP, cest--dire quune entre dans la table peut reprsenter soit un rseau, soit un sous-rseau ou encore un nud isol. RIP ne spcie pas le type de ladresse : les routeurs dcouvrent la nature du destinataire en analysant les adresses transmises. Les routeurs RIP sont actifs ou passifs. Actifs, ils transmettent et reoivent les routes : ils diffusent leurs informations aux autres routeurs. Passifs, ils ne font quattendre la rception des informations. En fonction de celles-ci, ils calculent leurs tables de routage mais ne partagent pas les rsultats de leurs calculs avec dautres routeurs. Le routeur RIP actif permet aux autres routeurs de mettre jour leurs tables de routage toutes les 30 secondes. Si un routeur ne reoit aucune mise jour dun autre routeur dans un dlai de 180 secondes, il marque les routes desservies par ce dernier comme inutilisables. Sil ny a aucune mise jour aprs 240 secondes, le protocole RIP supprime toutes les entres correspondant au routeur qui ne rpond pas. Chaque diffusion RIP contient des paires adresses IP/nombre de routeurs traverser (ou nombre de sauts). Comme le nombre de sauts est la seule mesure utilise par le protocole, RIP ne garantit pas que le chemin slectionn soit le plus rapide : un chemin court mais embouteill peut tre un mauvais choix par rapport un chemin plus long mais totalement dgag. Lorsquun vnement dans le rseau provoque un changement dans la table de routage dun routeur actif, celui-ci envoie un message de mise jour ses voisins. Si cet vnement a un impact sur les voisins, ceux-ci propagent linformation. On utilise une temporisation an de stabiliser ltat du rseau et garantir que tous les messages de mise jour ont t pris en compte avant de renvoyer une nouvelle mise jour.

Variantes et amliorations
Des variantes procurent des amliorations au fonctionnement du protocole. Au lieu de diffuser le mme message sur toutes les liaisons qui les relient, les routeurs composent des versions diffrentes de leurs informations, pour tenir compte des destinations atteintes via chaque liaison. Par exemple, si un routeur A envoie, via B, les messages destination de X, cest inutile pour B dessayer datteindre X via A. Deux variantes sont possibles : Les routeurs ne donnent pas les informations sur les destinations atteintes travers la liaison. Cette stratgie, dite horizon partag (Split-Horizon), est la plus simple implanter. Les routeurs indiquent dans leurs messages toutes les destinations possibles mais ils affectent une distance innie pour celles situes en aval de ce nud. Cette variante, dite horizon partag avec retour empoisonn (Split-Horizon with Poison-Reverse), limine immdiatement toute boucle de longueur 2. Malgr ces amliorations, on ne supprime pas entirement les risques de boucles.

Exemple

Soit un ensemble de trois routeurs A, B, C, illustrs la gure 8.3, avec les tables de routage suivantes : routage(A) = [(A, 0, ) ; (B, 1, B) ; (C, 2, B)]. routage(B) = [(A, 1, A) ; (B, 0, ) ; (C, 1, C)]. routage(C) = [(A, 2, B) ; (B, 1, B) ; (C, 0, )].

202

Architecture des rseaux

Chapitre

Le triplet (X, distance, Y) signie pour aller X, passer par Y, le chemin est de longueur distance . Si la liaison entre B et C tombe en panne, la table de B devient routage(B) = [(A, 1, A) ; (B, 0, ) ; (C, 16, C)]. En effet, 16 est considr comme une destination inaccessible puisque le plus long chemin est de longueur 15. Quand A envoie sa table B, celui-ci constate que A connat une route de longueur 2 pour aller C. Il met jour sa propre table qui devient : (B) = [(A, 1, A) ; (B, 0, ) ; (C, 3, A)]. Cela cre une boucle puisque, pour aller C, le routeur A envoie les messages vers B et le routeur B les renvoie vers A Figure 8.3
Trois routeurs et une boucle potentielle.

La nouvelle version RIPv2 fonctionne sur le mme principe. Ce protocole vhicule simplement des informations supplmentaires, comme une tiquette qui fait la distinction entre les routes internes apprises nativement par RIP et les routes externes apprises par un autre protocole de routage. Il transporte de mme le masque de sous-rseau qui permet dafner les routes avec la connaissance des sous-rseaux ou de lagrgation des adresses3. Ces informations allgent la taille des tables de routage et participent une meilleure efcacit du routage.

Remarque
Du point de vue de larchitecture en couches, le routage RIP est une application ; il utilise UDP comme protocole de transport avec le numro de port 520. Un routeur RIP est donc une machine avec une architecture complte de protocoles, y compris Transport et Application.

Dautres fonctionnalits ont t proposes pour amliorer le fonctionnement du routage. On a cherch, par exemple, des moyens de rompre la synchronisation (les routeurs se mettent tous diffuser leurs informations au mme moment, et provoquent une rafale de trac qui peut tre insupportable). Puisque RIP utilise le protocole de transport UDP, on a imagin des moyens dacquitter de manire sre la mise jour, mais aussi de supporter plusieurs mtriques, de rompre les boucles Finalement, on a retenu une autre solution dans Internet : celle dutiliser les protocoles tat des liens comme OSPF, considrs comme suprieurs aux protocoles vecteurs de distance et que nous prsentons la section suivante.

2.2 OSPF (OPEN SHORTEST PATH FIRST)


Lalgorithme SPF (Shortest Path First) calcule le plus court chemin vers toutes les destinations de la zone ou du systme autonome, en partant du routeur o seffectue le calcul ( partir de sa base de donnes topologiques). Il utilise un algorithme conu par Dijkstra et calcule le plus court chemin, selon un critre de cot o interviennent de multiples paramtres : ltat des liens, lencombrement du rseau et des mmoires des routeurs intermdiaires.
3. Cette expression dsigne le regroupement du plus grand nombre de bits communs deux ou plusieurs adresses IP. Par exemple, les adresses rseau : 195.67.65.0 et 195.67.127.0 ont leurs 17 premiers bits en commun. Pour un routeur donn, si le chemin pour atteindre les deux rseaux passe par le mme routeur suivant, sa table de routage ne contiendra qu'une seule entre pour les deux rseaux.

Le routage 203

Principe de fonctionnement
Le calcul du plus court chemin est effectu de manire indpendante par tous les routeurs internes dun systme autonome SA. Grce cet algorithme, un routeur peut connatre le prochain routeur qui transmettra le message : il trouve les plus courts chemins (en termes de cot) dun point un autre, pour que le message arrive de manire optimale son destinataire, puis il effectue la mise jour de sa table de routage. Chaque mise jour de la base de donnes entrane celle de la table de routage. Il y a, comme prcdemment, communication entre les routeurs. Celle-ci est rgie par le protocole OSPF. Ce protocole dnit les rgles et les formats de messages entre routeurs OSPF internes un systme autonome. Il a la particularit de sappuyer directement sur IP (et non sur UDP comme le protocole RIP). Cest une nette amlioration, car le routage devient un traitement interne la couche rseau et nest plus considr comme une application. De plus, le fonctionnement dOSPF est optimis si le SA est dcoup en zones ; OSPF prvoit un dcoupage avec une hirarchie deux niveaux de zones. La zone de niveau le plus lev est lpine dorsale (ou backbone zone). Elle interconnecte les routeurs de bordure (edge routers). lintrieur de chaque zone du second niveau, les routeurs ne connaissent et ne diffusent que des informations internes leur zone. Un routeur de bordure dans chaque zone assure le lien avec lpine dorsale, comme le montre la gure 8.4. Figure 8.4
Hirarchie dorganisation des zones OSPF.
Routeur de bordure (protocole BGP par exemple) Zone OSPF pine dorsale

Systme autonome

Zone OSPF de niveau infrieur

Messages du protocole OSPF


On distingue cinq messages OSPF : hello, description de base de donnes, requte dtat de lien, mise jour dtat de lien, acquittement dtat de lien. Ils transportent des informations sur ltat des liaisons du SA et servent dterminer une fonction de cot plus efcace que dans RIP. Un routeur OSPF met des messages hello intervalles rguliers (environ toutes les dix secondes), sur chacune de ses interfaces. Ces messages tablissent les relations dadjacence4 avec les routeurs directement lis lmetteur de ces messages. Les routeurs qui les ont reus vrient que les chemins restent disponibles. Sur un rseau possdant au moins deux routeurs, on lit un routeur dsign, cest--dire le responsable qui change avec les routeurs des rseaux voisins. Il soccupe de la distribution des messages de mise jour dtat de lien. Son choix se fait sur la base de la plus petite
4. Dans la thorie des graphes, deux nuds sont adjacents s'ils sont directement relis. Ici, la notion d'adjacence est lgrement diffrente, puisqu'elle ajoute une rgle supplmentaire : le routeur dsign est adjacent tous les autres. C'est l'efficacit qui prvaut : dans un rseau local, il est inutile que tous les routeurs participent au routage. Seul l'un entre eux est le routeur dsign, tous les autres lui sont adjacents.

204

Architecture des rseaux

Chapitre

adresse IP parmi les routeurs susceptibles dassumer ce rle. Deux routeurs R1 et R2 tablissent une relation dadjacence si et seulement sils sont relis par un lien direct ou si lun dentre eux est routeur dsign. Lorsquune nouvelle adjacence stablit entre deux routeurs, ils synchronisent leurs bases de donnes dtat des liens par le message description de base de donnes. Il est trs important de protger la base de donnes contre des erreurs (accidentelles ou dues la malveillance), pour garantir la cohrence des calculs de chemins. Pour cela, on a prvu plusieurs prcautions : acquittement, transmission scurise et temporisation des messages sur chaque liaison. Le message acquittement dtat de lien accuse rception dune mise jour : le routeur qui a envoy ses indications de cot vers ses voisins sait que le message est bien parvenu. La transmission des messages de description de base de donnes est scurise : chaque enregistrement est protg par un total de contrle et tous les messages sont authentis. Cela vite dventuels messages qui contiendraient des informations errones (ventuellement malveillantes, an de dtourner le trac dans le rseau, par exemple). Enn, on associe une temporisation tout enregistrement : linformation contenue dans lentre de la table de routage sera supprime si elle na pas t rafrachie rcemment : on prfre navoir aucune information momentanment plutt quune information ancienne et inutilisable. Quand un routeur constate quune ou plusieurs des entres de sa base de donnes sont primes, il envoie une requte dtat de lien aux routeurs voisins pour faire la mise jour des donnes. OSPF est aujourdhui le protocole interne le plus utilis dans Internet. La qualit des informations transportes et la scurit associe sont ses principaux atouts. Le fait que le routage reste interne la couche rseau est un lment defcacit supplmentaire.

2.3 BGP (BORDER GATEWAY PROTOCOL)


BGP est le protocole de routage interdomaine utilis actuellement partout dans le monde. Conu pour changer des informations de routage entre systmes autonomes, il est dni dans les RFC 1771 et 1774. Pour BGP, les diffrents rseaux sont organiss en SA, relis par une ou plusieurs liaisons. Au sein dun SA, le routage est calcul avec lun des protocoles prcdents (RIP ou OSPF). BGP intervient lorsque la route doit emprunter plusieurs SA. Dans un systme autonome, il y a un ou plusieurs routeurs de bordure qui dialoguent avec le ou les routeurs de bordure des SA voisins. Lorsquil ny a quun seul routeur de bordure, le SA est vu comme un cul-de-sac : il ne peut pas tre un SA de transit pour des messages sur linterconnexion. Il est alors ignor de BGP. Quand il y en a plusieurs, le SA est un SA de transit : des messages sur linterconnexion peuvent y entrer par lun des routeurs de bordure et ressortir par lautre. Il faut toutefois ajouter que certains SA interdisent le transit interne (pour des raisons politiques ou commerciales, par exemple). Ils sont encore ignors de BGP. BGP ne prend donc en compte que les SA o le transit est autoris (rseaux fdrateurs dInternet, par exemple, ou rseaux doprateurs, moyennant des accords nanciers). Les routeurs de bordure de ces SA sont appels routeurs BGP. Ils calculent des routes avec un algorithme vecteurs de distance. la diffrence de RIP, ils mmorisent la totalit du chemin et non seulement le premier routeur du chemin. Ils changent donc des informations compltes, ce qui est possible car le graphe BGP est de petite taille. Les routeurs BGP communiquent par change de messages transports par des connexions TCP permanentes sur le port 179. Un routeur BGP est une machine dote dune architecture de communication complte, car le routage entre SA est considr comme une application exigeant une grande abilit de communication.

Le routage 205

2.4 VECTEURS

DE DISTANCE OU TAT DES LIENS

Nous avons vu quil y avait deux familles dalgorithmes ( vecteurs de distance et tat des liens). La premire calcule le meilleur chemin selon sa longueur (gnralement exprime en nombre de routeurs traverss). La seconde calcule le meilleur chemin selon une fonction de cot (le meilleur dlai de traverse par exemple). tudions quelques lments danalyse et de comparaison de ces deux familles : rapidit de convergence de lalgorithme, possibilits de mtriques diffrentes, choix dun chemin parmi plusieurs quivalents, utilisation de routes externes. On considre gnralement quun protocole tat des liens offre plusieurs avantages par rapport un protocole vecteurs de distance. Convergence rapide et sans boucle de lalgorithme. Dans un algorithme vecteurs de distance, le nombre ditrations est proportionnel au nombre de routeurs. Dans le pire cas, il est gal au nombre de routeurs moins 1. Dans un algorithme tat des liens, la convergence stablit en deux phases : transmission rapide des nouvelles informations puis calcul local du chemin. De plus, cette mthode vite les boucles, puisque tous les chemins calculs sont sains. Mtriques multiples. Alors quil est difcile dutiliser des mtriques trop nes dans les algorithmes vecteurs de distance, on peut supporter plusieurs mtriques en parallle, sans ralentir la convergence, dans les protocoles tat des liens. Cela provient du fait que la topologie est compltement connue pendant le calcul des chemins. On peut donc choisir la meilleure route en fonction de critres diffrents, en appliquant des mtriques diffrentes. Les algorithmes tat des liens sont les premiers offrir un routage en fonction de la qualit de service requise par lutilisateur. Chemins multiples. Dans un protocole vecteurs de distance, le choix dun chemin parmi plusieurs se fait au hasard de la chronologie des changes de messages. De plus, il nest prvu quun seul routeur suivant dans la table de routage. Moyennant une lgre modication de lalgorithme, les protocoles tat des liens peuvent tolrer des chemins multiples. On peut ainsi rpartir le trac entre plusieurs chemins quivalents en termes de cots. Lquilibrage du trac dans le rseau est une valeur ajoute considrable, car elle contribue la uidit de la circulation des donnes et permet un rel contrle de congestion. Routes externes. Les problmes de routage que nous avons voqus ne concernent que lacheminement des donnes dans un rseau (considr comme un ensemble homogne de stations et de routeurs). Une route externe est une route qui passe par dautres zones ou dautres rseaux que celui dans lequel on se trouve. Dans les grands rseaux et plus encore dans Internet , la connectivit se ralise travers plusieurs points daccs diffrents rseaux de transit. Les lments du choix des routes deviendraient trop complexes dans un protocole vecteurs de distance : il faudrait prendre en compte plusieurs points daccs, plusieurs prestataires de services, utiliser une route par dfaut Avec la possibilit dutiliser des mtriques multiples, les calculs de chemins intgrant des routes externes se font plus naturellement dans les protocoles tat des liens.

Routage et volution des rseaux


Les services offerts dans les rseaux voluent. La diffusion partielle ou totale des messages et certaines architectures comme les rseaux peer-to-peer posent des problmes spciques. En outre, la prsence dutilisateurs mobiles est un nouveau d pour le routage.

206

Architecture des rseaux

Chapitre

3.1 DIFFUSION
La diffusion gnrale (broadcast) suppose que le message est destin toutes les stations du rseau. La diffusion restreinte (multicast) suppose que le message est transmettre une liste de destinataires ou un groupe dutilisateurs, identis par une seule adresse dite adresse de groupe. On peut envisager plusieurs mthodes pour diffuser un mme message plusieurs destinataires : envoyer autant de messages que de destinataires, inonder le rseau avec des copies du message, calculer et grer un arbre couvrant pour atteindre tous les destinataires. Envoyer autant de messages que de destinataires. Cette solution simpliste entrane un gaspillage des ressources dans le rseau et ncessite le maintien dune liste complte de tous les destinataires. Inondation (envoi dune copie du message sur chaque route). Le nombre de messages et les ressources consommes sont excessifs Il ny a pas besoin de contrler la liste des destinataires mais larrt de linondation nest pas un problme simple ! Routage multidestination. Ds quun message arrive dans un routeur, ce dernier examine toutes les destinations pour dterminer les interfaces de sortie requises. Il gnre autant de copies que ncessaire, en explicitant les destinataires concerns sur chaque interface. Aprs la traverse dun certain nombre de routeurs, on se retrouve avec des messages qui nont plus quune seule destination. Calcul dun arbre couvrant par le premier routeur. Cette mthode consiste utiliser une variante de lalgorithme de Spanning Tree que nous avons vu lors du fonctionnement des ponts, au chapitre 5. Si le routeur connat sur lensemble de ses liaisons celles qui font partie de larbre couvrant, il copie le message sur toutes les liaisons concernes (sauf celle do provient le message). Ce mcanisme est efcace mais il ncessite la connaissance de larbre couvrant. Utilisation de lalgorithme RFP (Reverse Forwarding Path). Lorsquun message arrive sur un routeur, ce dernier dtermine si le message a suivi le chemin que lui-mme utilise pour joindre lmetteur. Si cest le cas, il est vraisemblable que ce message a emprunt le plus court chemin depuis lmetteur et quil sagit du paquet dorigine. Le routeur envoie alors une copie du message sur toutes ses interfaces (sauf sur celle do provient le message). Dans le cas contraire, il considre le message comme un doublon et le rejette. Pour les communications de groupe, il faut adapter les mthodes prcdentes et faire vivre le groupe : un utilisateur nouveau peut se joindre un groupe ou il peut en partir. Cela suppose lutilisation dun systme de gestion de groupes qui cre ou supprime des groupes, autorise un utilisateur rejoindre ou quitter un groupe, etc. Ces tches de gestion des groupes sont transparentes pour lalgorithme de routage. Elles sont prises en compte par un protocole comme IGMP (Internet Group Management Protocol, RFC 2236). En revanche, les routeurs doivent savoir quels groupes appartiennent les utilisateurs. Ils sont soit directement informs par les htes, soit les processus IGMP sont interrogs priodiquement. Les informations de routage sont alors communiques aux voisins du routeur et se propagent ainsi travers le rseau.

3.2 UTILISATEURS

MOBILES

Les utilisateurs dordinateurs portables souhaitent lire leur courrier ou accder au systme de chiers traditionnel, mme quand ils sont en dplacement. Avant de router un message vers eux, il faut dabord les localiser. Par dnition, les quipements xes ne se dplacent jamais. Ils sont connects au rseau par des liaisons laires (cbles en cuivre ou bres optiques) ; les quipements migrateurs changent de site de temps autre et nutilisent le rseau que lorsquils y sont physiquement raccords. Enn, les quipements itinrants se dplacent et
Le routage 207

accdent en permanence ou de faon intermittente au rseau. On peut mme envisager des rseaux o tous les quipements sont mobiles ! On considre gnralement les quipements migrateurs et les quipements itinrants comme des quipements mobiles. Tous les quipements mobiles disposent dun site de domiciliation permanente qui ne change jamais. Ils possdent une adresse permanente qui ne suft plus pour les localiser. Lenvoi de messages pour des utilisateurs mobiles suppose un routage qui fonctionne daprs leurs adresses permanentes, quel que soit le lieu o ils se trouvent. On dcoupe gnralement lespace de dplacement en petites units appeles zones (une cellule radio, par exemple). Chaque zone possde un ou plusieurs agents extrieurs (foreign agents) qui assurent le suivi des quipements mobiles se trouvant momentanment dans la zone. Une zone dispose en outre dun agent de domiciliation (home agent) qui gre les quipements domicilis dans la zone mais actuellement prsents dans une autre zone. Pour chaque mobile, un dialogue sinstaure entre son agent de domiciliation et les agents extrieurs des diffrentes zones quil visite. Ce dialogue dpend du parcours du mobile et de sa vitesse de dplacement. Les routeurs obtiennent, grce ce dialogue, les informations qui localisent le mobile dans la zone o il se trouve. Ils peuvent ainsi calculer la route pour latteindre.

3.3 RSEAUX

PEER-TO-PEER
Un grand nombre de personnes possdant des connexions Internet permanentes souhaitent communiquer pour partager directement leurs ressources au moyen de rseaux peerto-peer. Cette technologie est utilise dans de nombreuses applications intressantes et lgales. Elle est souvent associe lide de copies illgales de chiers audio ou vido. Il existe deux types principaux de rseaux peer-to-peer : les architectures totalement distribues et les architectures hybrides. Dans la premire, tous les quipements sont symtriques (on ne parle plus de client ni de serveur, puisque tout quipement est la fois client et serveur). Il ny a pas de contrle central, ni de rapports hirarchiques entre quipements. Il faut donc localiser un quipement en absence dannuaire centralis, car personne ne souhaite hberger et maintenir la base de donnes des ressources et de tous les quipements concerns. Cela suppose lutilisation dalgorithmes particuliers, puisquil faut dabord connatre lquipement qui offre la ressource recherche puis trouver le chemin pour latteindre. Dans la seconde, une station gre la base de donnes qui permet la localisation des ressources et des quipements et facilite donc le routage au sein du rseau.

Rsum
Lacheminement des messages travers un ou plusieurs rseau(x) ncessite des connaissances sur le rseau et ltat de ses liaisons. Les routeurs organisent cet acheminement. Ils utilisent pour cela des algorithmes classiques de recherche du meilleur chemin dans un graphe. Il y a deux grandes familles dalgorithmes de routage : ceux vecteurs de distance calculent le plus court chemin au sens du nombre de routeurs traverss ; ceux tat des liens estiment le cot des diffrents tronons du rseau. Leur mise en uvre dans un grand rseau nest pas simple. Les routeurs changent entre eux des informations de contrle dont le but est la construction dune table de routage pour chacun. Cette table donne, pour chaque destination, la route emprunter ainsi que son cot. Pour faciliter les oprations de routage, les rseaux sont dcoups en systmes autonomes et le problme est dabord rsolu lintrieur dun systme puis entre deux systmes, ventuellement avec des protocoles diffrents pour transporter les informations de routage.

208

Architecture des rseaux

8 Problmes et exercices
Chapitre

EXERCICE 1

TABLE

DE ROUTAGE

tablissez la table de routage du nud E de ce rseau, en minimisant le cot des liaisons. Vous supposerez que la topologie entire du rseau est connue. Vous utilisez un algorithme vecteurs de distance. Vous utilisez un algorithme tat des liens qui sappuie sur la mtrique indique la gure 8.5. Figure 8.5
Topologie et mtrique du rseau.
7 3 2 3 4

C E
7 5

D F
3

La table de routage du nud E peut tre, par exemple : routage(E) = [(A, B) ; (B, B) ; (C, B) ; (D, D) ; (E, ) ; (F, F)] o le couple (A, B) signie : pour aller A, il faut passer par B. Il y a deux chemins de longueur 2 pour aller de E A, celui qui passe par B et celui qui passe par F. Nous avons retenu celui qui correspondant la plus petite lettre dans lordre alphabtique. De mme pour le chemin de E C. Avec un algorithme tat des liens, il faut comparer les diffrents chemins. Le chemin E-B-A est de cot 7 + 2 = 9 alors que E-F-A est de cot 3 + 4 = 7. Ce dernier est meilleur. Remarquons quun chemin long comme E-F-D est meilleur que le chemin direct E-D puisque 3 + 3 = 6 est meilleur que 7. Lalgorithme de Dijkstra doit donc explorer tous les chemins. On procde par tapes. Cherchons les chemins de longueur 1. On trouve E-B = 2, E-D = 7, E-F = 3. Cherchons maintenant les chemins plus longs partir du lien le plus prometteur, cest--dire E-B. On trouve E-B-A = 2 + 7 = 9 et E-B-C = 2 + 5 = 7. Cherchons ensuite les chemins plus longs partir du lien prometteur suivant cest--dire E-F. On trouve E-FA = 3 + 4 = 7, meilleur que linformation prcdemment calcule : cette dernire est efface, on ne conserve que le meilleur chemin. De mme E-F-D = 3 + 3 = 6 est meilleur que E-D prcdemment calcul 7. On continue ainsi en explorant les chemins partir du lien prometteur suivant, ici E-C, etc. La table de routage de E est nalement : routage(E) = [(A, F) ; (B, B) ; (C, B) ; (D, F) ; (E, ) ; (F, F)].

Le routage 209

EXERCICE 2

ROUTAGE

AVEC

RIP

On considre le systme autonome illustr la gure 8.6, constitu de 6 routeurs nomms A, B, C D, E et F. On utilise le protocole RIP comme protocole de routage interne pour ce systme autonome avec une priodicit denvoi de messages de 30 secondes. Le cot de chaque saut est toujours 1. Une table de routage sera note comme un ensemble dentres (X, distance, Y) dans lequel X est la destination quon cherche atteindre, distance est la distance actuellement connue en passant par Y qui est donc le routeur suivant sur le chemin. Pour le routeur X, lentre correspondant la destination X sera note (X, 0, ) soit une distance nulle sans routeur intermdiaire. Figure 8.6
Systme autonome 6 routeurs.
A E F B C D

tablissez les tables de routage de chacun des 6 routeurs. Lordre dans lequel circulent les messages du protocole RIP a-t-il de limportance ? Combien de temps faut-il pour que lalgorithme converge ? La liaison entre B et C tombe en panne. Le routeur B dtecte cette rupture et met jour sa table en supposant que C se trouve maintenant une distance 16 ; de mme pour le routeur C. Montrez comment linformation se propage aux autres routeurs. Combien de temps faut-il pour que tous les routeurs aient recalcul leur table de routage ? ltat initial, chaque routeur ne connat que ses voisins directs. La table de routage de A est donc : routage(A) = [(A, 0, ) ; (B, 1, B) ; (E, 1, E)]. De mme les tables de routage des autres routeurs sont : routage(B) = [(A, 1, A) ; (B, 0, ) ; (C, 1, C) ; (E, 1, E)]. routage(C) = [(B, 1, B) ; (C, 0, ) ; (D, 1, D) ; (E, 1, E) ; (F, 1, F)]. routage(D) = [(C, 1, C) ; (D, 0, ) ; (F, 1, F)]. routage(E) = [(A, 1, A) ; (B, 1, B) ; (C, 1, C) ; (E, 0, ) ; (F, 1, F)]. routage(F) = [(C, 1, C) ; (D, 1, D) ; (E, 1, E) ; (F, 0, )]. la date T = 30 secondes, chaque routeur envoie sa table ses voisins. Nous traiterons les vnements dans lordre alphabtique. Quand A envoie routage(A) = [(A, 0, ) ; (B, 1, B) ; (E, 1, E)] B, celui-ci constate quil ny a aucune nouvelle entre et que pour celles quil a dj, les informations envoyes par A ne sont pas plus intressantes que les siennes. De mme pour E quand il reoit routage(A) = [(A, 0, ) ; (B, 1, B) ; (E, 1, E)]. Maintenant traitons lenvoi par B de routage(B) = [(A, 1, A) ; (B, 0, -) ; (C, 1, C) ; (E, 1, E)] ses voisins A, C et E.

210

Architecture des rseaux

Chapitre

A apprend que B connat une route de distance 1 pour atteindre C, il ajoute donc dans sa table une nouvelle entre (C, 2, B) : C est une distance 1 de B ou B est une distance 1 de A donc C est globalement une distance 1 + 1 = 2 en passant par B. Les autres informations envoyes par B ne changent rien, la nouvelle table de A est maintenant : routage(A) = [(A, 0, ) ; (B, 1, B) ; (C, 2, B); (E, 1, E)]. C apprend que B connat une route de distance 1 pour atteindre A, il ajoute donc dans sa table une nouvelle entre (A, 2, B) : A est une distance 1 de B ou B est une distance 1 de C donc A est globalement une distance 1 + 1 = 2 en passant par B. Les autres informations envoyes par B ne changent rien, la nouvelle table de C est maintenant : routage(C) = [(A, 2, B); (B, 1, B) ; (C, 0, ) ; (D, 1, D) ; (E, 1, E) ; (F, 1, F)]. Pour E, lenvoi de B napporte rien, sa table reste inchange. Maintenant traitons lenvoi par C de routage(C) = [(B, 1, B) ; (C, 0, ) ; (D, 1, D) ; (E, 1, E) ; (F, 1, F)] ses voisins B, D, E et F. (Remarque : il sagit bien de la table initiale de C et non de celle qui a t mise jour ci-dessus ; par contre les mises jour se font sur les tables dj modies.) B apprend que C connat une route de distance 1 pour atteindre D et F, il ajoute donc dans sa table deux nouvelles entres (D, 2, C) et (F, 2, C). Les autres informations envoyes par C ne changent rien, la nouvelle table de B est maintenant : routage(B) = [(A, 1, A) ; (B, 0, ) ; (C, 1, C) ; (D, 2, C); (E, 1, E) ; (F, 2, C)]. La nouvelle table de D devient : routage(D) = [(B, 2, C); (C, 1, C) ; (D, 0, ) ; (E, 2, C); (F, 1, F)]. et de mme pour E et F : routage(E) = [(A, 1, A) ; (B, 1, B) ; (C, 1, C) ; (D, 2, C); (E, 0, ) ; (F, 1, F)]. routage(F) = [(B, 2, C); (C, 1, C) ; (D, 1, D) ; (E, 1, E) ; (F, 0, )]. Lenvoi par D de sa table routage(D) = [(C, 1, C) ; (D, 0, ) ; (F, 1, F)] napporte rien C ni F. Lenvoi par E de sa table routage(E) = [(A, 1, A) ; (B, 1, B) ; (C, 1, C) ; (E, 0, ) ; (F, 1, F)] provoque lapparition de lentre F dans la table de A et de lentre A dans la table de F. routage(A) = [(A, 0, ) ; (B, 1, B) ; (C, 2, B) ; (E, 1, E) ; (F, 2, E)] routage(F) = [(F, 2, E); (B, 2, C) ; (C, 1, C) ; (D, 1, D) ; (E, 1, E) ; (F, 0, )]. Enn, lenvoi par F de sa table routage(F) = [(C, 1, C) ; (D, 1, D) ; (E, 1, E) ; (F, 0, )] ne change rien. la n de cette tape, les tables de routage sont donc les suivantes : routage(A) = [(A, 0, ) ; (B, 1, B) ; (C, 2, B); (E, 1, E)]. routage(B) = [(A, 1, A) ; (B, 0, ) ; (C, 1, C) ; (D, 2, C); (E, 1, E) ; (F, 2, C)]. routage(C) = [(A, 2, B); (B, 1, B) ; (C, 0, ) ; (D, 1, D) ; (E, 1, E) ; (F, 1, F)]. routage(E) = [(A, 1, A) ; (B, 1, B) ; (C, 1, C) ; (D, 2, C); (E, 0, ) ; (F, 1, F)]. routage(F) = [(F, 2, E); (B, 2, C); (C, 1, C) ; (D, 1, D) ; (E, 1, E) ; (F, 0, )]. On constate que les chemins de longueur 2 sont maintenant connus. routage(D) = [(B, 2, C); (C, 1, C) ; (D, 0, ) ; (E, 2, C); (F, 1, F)].

Le routage 211

Exercices

la date T = 1 minute, chaque routeur envoie nouveau sa table ses voisins. Sans reprendre le dtail des oprations, il est ais de voir que les tables seront mises jour avec les chemins de longueur 3. Si on traite les oprations comme prcdemment dans lordre alphabtique, les tables sont : routage(A) = [(A, 0, ) ; (B, 1, B) ; (C, 2, B) ; (D, 3, B); (E, 1, E) ; (F, 3, B)]. routage(B) = [(A, 1, A) ; (B, 0, ) ; (C, 1, C) ; (D, 2, C) ; (E, 1, E) ; (F, 2, C)]. routage(C) = [(A, 2, B) ; (B, 1, B) ; (C, 0, ) ; (D, 1, D) ; (E, 1, E) ; (F, 1, F)]. routage(D) = [(A, 3, C); (B, 2, C) ; (C, 1, C) ; (D, 0, ) ; (E, 2, C) ; (F, 1, F)]. routage(E) = [(A, 1, A) ; (B, 1, B) ; (C, 1, C) ; (D, 2, C) ; (E, 0, ) ; (F, 1, F)]. routage(F) = [(A, 2, E) ; (B, 2, C) ; (C, 1, C) ; (D, 1, D) ; (E, 1, E) ; (F, 0, )]. la date T = 1,5 minute, chaque routeur envoie nouveau sa table ses voisins et il ny a aucune mise jour : lalgorithme a converg.

Remarque
La connaissance quont les diffrents routeurs se borne leurs voisins immdiats. Ainsi pour A les destinations B, C, D et F sont accessibles en passant par B et la destination E en passant par E.

La liaison CE tombe en panne, on se trouve avec les tables suivantes : routage(A) = [(A, 0, ) ; (B, 1, B) ; (C, 2, B) ; (D, 3, B) ; (E, 1, E) ; (F, 3, B)]. routage(B) = [(A, 1, A) ; (B, 0, ) ; (C, 16, C); (D, 16, C); (E, 1, E) ; (F, 16, C)]. routage(C) = [(A, 16, B); (B, 16, B); (C, 0, ) ; (D, 1, D) ; (E, 1, E) ; (F, 1, F)]. routage(D) = [(A, 3, C) ; (B, 2, C) ; (C, 1, C) ; (D, 0, ) ; (E, 2, C) ;(F, 1, F)]. routage(E) = [(A, 1, A) ; (B, 1, B) ; (C, 1, C) ; (D, 2, C) ; (E, 0, ) ; (F, 1, F)]. routage(F) = [(A, 2, E) ; (B, 2, C) ; (C, 1, C) ; (D, 1, D) ; (E, 1, E) ; (F, 0, )]. B et C signalent leurs voisins les destinations injoignables. Et donc ceux-ci modient leurs tables de routage : routage(A) = [(A, 0, ) ; (B, 1, B) ; (C, 16, B); (D, 16, B); (E, 1, E) ; (F, 16, B)]. routage(D) = [(A, 16, C); (B, 16, C); (C, 1, C) ; (D, 0, ) ; (E, 2, C) ;(F, 1, F)]. routage(E) = [(A, 1, A) ; (B, 1, B) ; (C, 1, C) ; (D, 2, C) ; (E, 0, ) ; (F, 1, F)]. routage(F) = [(A, 2, E) ; (B, 16, C); (C, 1, C) ; (D, 1, D) ; (E, 1, E) ; (F, 0, )]. On constate que le routeur E nest pas concern. la prochaine chance de mise jour rgulire (intervalle de 30 secondes), la diffusion des nouvelles tables va donner lieu de multiples mises jour. En particulier, quand E transmet sa table, les autres routeurs apprennent lexistence des chemins EB et EC qui vont se substituer au chemin BC dfaillant. routage(A) = [(A, 0, ) ; (B, 1, B) ; (C, 2, E); (D, 3, E); (E, 1, E) ; (F, 2, E)]. routage(B) = [(A, 1, A) ; (B, 0, ) ; (C, 2, E); (D, 3, C); (E, 1, E) ; (F, 2, E)]. routage(C) = [(A, 2, E); (B, 2, E); (C, 0, ) ; (D, 1, D) ; (E, 1, E) ; (F, 1, F)]. routage(D) = [(A, 16, C) ; (B, 16, C) ; (C, 1, C) ; (D, 0, ) ; (E, 2, C) ; (F, 1, F)].

212

Architecture des rseaux

Chapitre

routage(E) = [(A, 1, A) ; (B, 1, B) ; (C, 1, C) ; (D, 2, C) ; (E, 0, ) ; (F, 1, F)]. routage(F) = [(A, 2, E) ; (B, 2, E); (C, 1, C) ; (D, 1, D) ; (E, 1, E) ; (F, 0, )]. lchance suivante, linformation parvient D et les tables sont alors : routage(A) = [(A, 0, ) ; (B, 1, B) ; (C, 2, E) ; (D, 3, E) ; (E, 1, E) ; (F, 2, E)]. routage(B) = [(A, 1, A) ; (B, 0, ) ; (C, 2, E) ; (D, 3, C) ; (E, 1, E) ; (F, 2, E)]. routage(C) = [(A, 2, E) ; (B, 2, E) ; (C, 0, ) ; (D, 1, D) ; (E, 1, E) ; (F, 1, F)]. routage(D) = [(A, 3, C); (B, 3, C); (C, 1, C) ; (D, 0, ) ; (E, 2, C) ; (F, 1, F)]. routage(E) = [(A, 1, A) ; (B, 1, B) ; (C, 1, C) ; (D, 2, C) ; (E, 0, ) ; (F, 1, F)]. routage(F) = [(A, 2, E) ; (B, 2, E) ; (C, 1, C) ; (D, 1, D) ; (E, 1, E) ; (F, 0, )]. lchance suivante, il ny a plus de changement, lalgorithme a nouveau converg.

EXERCICE 3

ROUTAGE

AVEC

OSPF

On considre le mme systme que dans lexercice 1 et on applique cette fois-ci lalgorithme OSPF, sachant que les cots de liaison ont t mesurs et sont illustrs la gure 8.7. AB = 3, AE = 5, BC = 4, BE = 1, CD = 5, CE = 2, CF =2, DF = 1, EF = 5. Figure 8.7
Systme autonome avec mesure de ltat des liens.
3 A 5 E 5 F 1 4 2

C 2

5 D 1

tablissez la table de routage du nud A, considr comme routeur dsign du systme. Le lien entre C et E tombe en panne. Les routeurs C et E diffusent linformation dans le systme. Montrez comment A met jour sa table de routage.

Ltat initial est le suivant : tats(A) = [(B, 3, B) ; (E, 5, E)]. tats(B) = [(A, 3, A) ; (C, 4, C) ; (E, 1, E)]. tats(C) = [(B, 4, B) ; (D, 5, D) ; (E, 2, E) ; (F, 2, F)]. tats(D) = [(C, 5, C) ; (F, 1, F)]. tats(E) = [(A, 5, A) ; (B, 1, B) ; (C, 2, C) ; (F, 5, F)]. tats(F) = [(C, 2, C) ; (D, 1, D) ; (E, 5, E) ].

Le routage 213

Exercices

Les routeurs du systme autonome effectuent une diffusion (contrle) de leurs informations lintrieur du systme autonome et chacun peut reconstituer la cartographie du systme (voir tableau 8.1).
Tableau 8.1 Matrice des tats des liens du systme autonome

tat

A B C D E F

0 3 x x 5 x

3 0 4 x 1 x

x 4 0 5 2 2

x x 5 0 x 1

5 1 2 x 0 5

x x 2 1 5 0

Dans cette matrice symtrique, il y a des zros sur la diagonale (cot nul) et des x pour les liaisons qui nexistent pas. Calculons la table de routage du routeur A. A connat deux routes AB de cot 3 en passant par B directement et AE de cot 5 en passant par E directement. Il place la route AE en attente (5 est moins bon que 3) et valide la route AB partir de laquelle il explore les chemins passant par B. A
AB,3,B x x

AE, 5, E

La route BC est de cot 4 donc AC sera de cot 3 + 4 = 7 en passant par B. La destination C ntait pas encore connue, la route est ajoute dans la table. La route BE est de cot 1 donc AE sera de cot 3 + 1 = 4 en passant par B ce qui est meilleur que la route actuellement connue, la table est mise jour. A
AB,3,B

AC, 7, B

AE,4,B

Le routeur A place la route AC en attente (7 est moins bon que 4) et valide maintenant la route AE partir de laquelle il explore les chemins passant par E(*). Les routes EA et EB napportent rien, ni nouvelle destination, ni route meilleure que celles dj connues. La route EC est de cot 2 donc AC sera de cot 4 + 2 = 6 en passant par B ce qui est meilleur que la route actuellement connue, la table est mise jour. La route EF est de cot 5 donc AF sera de cot 4 + 5 = 9 en passant par E. La destination F ntait pas encore connue, la route est ajoute dans la table. A
AB,3,B AC,6,E x AE,4,B

AF, 9, E

Le routeur A place la route AF en attente (9 est moins bon que 6) et valide maintenant la route AC partir de laquelle il explore les chemins passant par C. Les routes CB et CE napportent rien, ni nouvelle destination, ni route meilleure que celles dj connues. La route CD est de cot 5 donc AD sera de cot 6 + 5 = 11 en passant par C. La destination D ntait pas encore connue, la route est ajoute dans la table.

214

Architecture des rseaux

Chapitre

La route CF est de cot 2 donc AF sera de cot 6 + 2 = 8 en passant par C ce qui est meilleur que la route actuellement connue, la table est mise jour. A
AB,3,B AC,6,E

AD, 11, C

AE,4,B

AF,8,C

Le routeur A place la route AD en attente (11 est moins bon que 8) et valide maintenant la route AF partir de laquelle il explore les chemins passant par F. Les routes FC et FE napportent rien. La route FD est de cot 1 donc AD sera de cot 8 + 1 = 9 en passant par F ce qui est meilleur que la route actuellement connue, la table est mise jour. A
AB,3,B AC,6,E

AD, 9, F

AE,4,B

AF,8,C

La route AD est valide son tour et les routes DC et DE napportent rien. Lalgorithme est termin. La table de routage de A est alors la suivante : routage(A) = [(A, 0, ) ; (B, 3, B) ; (C, 6, B) ; (D, 9, B) ; (E, 4, B) ; (F, 8, B)]. Toutes les routes passent par le routeur B comme lillustre la gure 8.8. Figure 8.8
Systme autonome avec les meilleures routes en gras.
3 A 5 E 5 F 1 B 4 X 2 1 C 5 D

Le lien entre C et E tombe en panne. Les routeurs C et E diffusent linformation dans le systme. La matrice du systme est maintenant illustre au tableau 8.2.
Tableau 8.2 Matrice des tats des liens du systme autonome aprs la panne E-C

tat

A B C D E F

0 3 x x 5 x

3 0 4 x 1 x

x 4 0 5 x 2

x x 5 0 x 1

5 1 x x 0 5

x x 2 1 5 0

Lapplication de lalgorithme par le routeur A est la mme que prcdemment jusqu ltape marque (*) dans la correction de la question a et que nous reprenons ci-aprs. A
AB,3,B

AC, 7, B

AE,4,B

Le routeur A place la route AC en attente (7 est moins bon que 4) et valide maintenant la route AE partir de laquelle il explore les chemins passant par E(*).

Le routage 215

Exercices

Les routes EA et EB napportent rien. La route EF est de cot 5 donc AF sera de cot 4 + 5 = 9 en passant par E. La destination F est ajoute. A
AB,3,B

AC, 7, B

AE,4,B

AF, 9, E

Le routeur A place la route AF en attente et valide la route AC partir de laquelle il explore les chemins passant par C. On obtient : A et enn : A
AB,3,B AC,7,B AD,10,F AE,4,B AF,9,E AB,3,B AC,7,B

AD, 12, C

AE,4,B

AF, 9, E

La nouvelle table de routage de A est maintenant : routage(A) = [(A, 0, ) ; (B, 3, B) ; (C, 7, B) ; (D, 10, E) ; (E, 4, B) ; (F, 9, E)]. Les routes retenues sont illustres la gure 8.9. Figure 8.9
Routes recalcules aprs la panne.
3 A 5 E 5 F 1 B 2 4 C 2 1

5 D

216

Architecture des rseaux

Chapitre

Les applications

1. Service de configuration dynamique DHCP .................. 218 2. Service dannuaire ................. 219 3. Transfert de fichiers ............... 226 4. La messagerie lectronique ..... 228 5. Navigation sur le Web ........... 230

De nombreux applicatifs largement rpandus utilisent TCP/IP. Nous en aborderons quelques-uns dans ce chapitre : le service de configuration dynamique des machines, le service de noms de domaine, le courrier lectronique, le transfert de fichiers, sans oublier lincontournable navigation sur le Web. Les deux premires applications sont, en fait, des applications internes, utiles au bon fonctionnement des rseaux. Elles rendent des services indispensables comme la distribution des adresses IP et la correspondance entre les noms symboliques des machines et leurs adresses IP. Les autres concernent directement les utilisateurs et leurs besoins de communication travers les rseaux. Le courrier lectronique (ou messagerie lectronique) est lune des premires applications dveloppes dans Internet. La navigation sur le Web est lorigine de lengouement populaire pour Internet.
217

Problmes et exercices 1. Utilisation de DHCP ............... 235 2. Redondance de serveurs DHCP 235 3. Rle dun serveur DNS et trafic interne ...................... 236 4. Serveur DHCP et serveur DNS 239 5. Enregistrements sur un serveur DNS ..................... 241 6. Serveur DNS et cache ............ 242 7. Protocoles de consultation de bote aux lettres ................ 242 8. Analyse de len-tte dun courrier lectronique .............. 243 9. Mise disposition dun logiciel par un serveur FTP ................. 244 10. Serveur Web sur un autre port 244

Service de conguration dynamique DHCP (Dynamic Host Conguration Protocol)


Le service de conguration dynamique DHCP fournit un cadre pour transmettre des informations de conguration des machines dun rseau TCP/IP : il leur communique leurs paramtres de conguration, en particulier leurs adresses IP. Cest un service rseau dont nous donnerons un bref aperu du principe de fonctionnement.

1.1 PRINCIPE

DE FONCTIONNEMENT
La RFC 2131 dcrit le service de conguration dynamique. Celui-ci est construit sur un modle client/serveur et utilise les ports 67 et 68. Il comprend une mthode dattribution dadresse IP la machine cliente et utilise un protocole DHCP pour transmettre lensemble des paramtres de conguration. Aprs obtention des paramtres fournis par un serveur DHCP, le client est capable de communiquer avec nimporte quel autre utilisateur dInternet. Le service DHCP garantit lunicit dune adresse IP dans le rseau. Cest une aide prcieuse pour ladministrateur du rseau puisquil permet de supprimer la conguration manuelle des machines du rseau (celle-ci reste toujours possible et doit tre compatible avec lallocation dynamique). En outre, il vite les erreurs lies cette conguration manuelle. Il sera trs utile pour le dploiement dun grand parc de machines qui possdent les mmes caractristiques et dont la seule diffrence est la conguration rseau. Le serveur DHCP dispose dune plage dadresses IP attribuer. Quand un client en demande une pour la premire fois, le serveur lui en fournit une quil na pas encore utilise. Sil a dj distribu toutes ses adresses IP, il rutilise celle dun client qui nest plus connect au rseau. Quand un client a dj obtenu dynamiquement une adresse IP lors dune connexion antrieure, le serveur lui fournit a priori la mme adresse, si cest possible. La rattribution dune adresse ne savre ncessaire quen cas de pnurie. En effet, DHCP peut sutiliser avec un nombre de clients suprieur au nombre dadresses IP disponibles. Cette mthode ne convient pas pour dnir ladressage des machines ayant un rle de serveurs, qui doivent avoir une adresse xe. On utilise donc galement lattribution xe dune adresse IP pour les machines qui en ont besoin. Dans ce cas, ladresse MAC qui identie la machine est mise en correspondance avec une adresse IP xe. Par ailleurs, lattribution xe est une faon de lutter contre les intrusions dans le rseau ! Il peut y avoir plusieurs serveurs DHCP actifs simultanment dans le rseau (pour assurer une redondance du service et optimiser les performances daccs). linverse, il nest pas indispensable den avoir un pour chaque sous-rseau. DHCP peut fonctionner travers des routeurs, en utilisant des relais. Cest un protocole construit comme une extension de BOOTP (Bootstrap Protocol), protocole de dmarrage des stations sans disque. Il apporte en complment la gestion dynamique des adresses IP et contient un grand nombre doptions. De plus, la machine est directement oprationnelle aprs avoir reu ses paramtres de conguration et na pas besoin de redmarrer.

1.2 CHANGES DHCP


Les messages du protocole DHCP utilisent UDP au niveau transport. Ce dernier est sufsant pour des changes simples sur le rseau local : le protocole DHCP fonctionne en mode non connect puisque les interlocuteurs ne se connaissent pas lavance.

218

Architecture des rseaux

Chapitre

Le protocole contient plusieurs messages : DHCPDiscover, DHCPOffer, DHCPRequest, DHCPAck, DHCPDecline et DHCPRelease. Par dnition, une machine client qui cherche obtenir une adresse IP na aucune information de conguration rseau. Elle sait seulement quelle doit utiliser DHCP (a priori, elle ne connat mme pas ladresse du serveur DHCP utiliser). Elle diffuse un message baptis DHCPDiscover, encapsul dans un datagramme UDP, sur le rseau local o elle se trouve. Dans le cas dun rseau utilisant des VLAN, le commutateur assure la diffusion au VLAN auquel le client est rattach. Il est possible que dautres machines du mme VLAN soient accessibles au-del du routeur. Un agent relais est alors ncessaire pour assurer la transmission au serveur DHCP du rseau. Le serveur rpond avec un message DHCPOffer qui contient ladresse IP propose au client. Celui-ci peut recevoir autant de messages DHCPOffer que de serveurs DHCP actifs. Au bout dun certain temps, le client renouvelle sa requte DHCPDiscover sil ne reoit pas au moins une rponse. Sil a reu plusieurs rponses, il en choisit une et diffuse un message DHCPRequest qui indique le serveur choisi et ladresse IP propose. Les serveurs non slectionns invalident leur proposition. Le serveur choisi vrie la disponibilit de ladresse propose (en utilisant ICMP Echo Request ou ping). Sil nobtient pas de rponse son ping, ladresse est a priori disponible. Il envoie alors la conguration complte au client dans un message DHCPAck. Le client effectue lui aussi un dernier test (avec le protocole ARP). Il cherche, avec une requte ARP, ladresse MAC de celui qui possde ladresse IP propose. Il ne doit obtenir aucune rponse puisque ladresse IP nest pas encore distribue. En cas de problme, il peut refuser la conguration (message DHCPDecline) et recommencer le processus. Enn, un client quittant le rseau abandonne son adresse par un message DHCPRelease. Les contrles du serveur puis du client servent garantir lunicit de ladresse IP dans le rseau. La prsence de plusieurs serveurs DHCP susceptibles de rpondre complique la tche. On peut aussi imaginer une machine qui usurperait le rle de serveur DHCP avec des intentions malveillantes Pour des raisons doptimisation des ressources rseau, les serveurs DHCP ne dlivrent les adresses IP que pour une dure limite appele bail. Un client dont le bail arrive terme peut en demander le renouvellement par le message DHCPRequest. De mme, lorsque le serveur voit un bail arriver terme, il propose au client de prolonger son bail, avec la mme adresse IP. Sil ne reoit pas de rponse valide dans un dlai x, il rcupre ladresse IP concerne. Quand les utilisateurs teignent et rallument trs souvent leurs machines, il est intressant de travailler avec des baux de courte dure.

Service dannuaire
Dans les annes 1970, il ny avait que quelques machines interconnectes. Lintgration dune nouvelle machine sur le rseau ncessitait la mise jour dun chier de conguration qui contenait une table de correspondance entre noms de machines (gres par les humains) et adresses IP (utilises dans le rseau). Ce procd est devenu rapidement obsolte pour Internet. Il faut toujours connatre ladresse IP de la destination. Ltre humain ne connat la destination que par son nom symbolique, par exemple machine.societe.pays ou pour la messagerie prenom.nom@fournisseur.organisme. Ce nom symbolique est facile comprendre et retenir.

Les applications 219

Le systme mis en place, pour rpondre au problme pos, est le DNS (Domain Name System). Les premires RFC (882 et 883) dnissant ce service datent de 1984. Un service dannuaire fait la correspondance entre le nom symbolique et ladresse IP. Notons quun nom symbolique peut correspondre plusieurs adresses IP diffrentes (pour faire de lquilibrage de charge par exemple) et rciproquement plusieurs noms symboliques peuvent correspondre une seule adresse IP (une machine qui hberge plusieurs applications). Le fonctionnement automatique du service dannuaire, la diffrence du service dannuaire tlphonique, simplie grandement laccs aux ressources rseau. Il a, en partie, provoqu le grand succs du Web. En effet, lapplication cliente met automatiquement la requte dinterrogation de lannuaire ds quelle doit faire la correspondance entre un nom symbolique et une adresse IP. Elle attend la rponse. Une fois quelle la obtenue, elle est capable denvoyer des messages au destinataire, dsormais connu par son adresse IP. Le temps pass cette requte/rponse est tellement bref que lutilisateur ne saperoit de rien. Comme dans tous les systmes distribus, le serveur DNS interrog peut ne pas connatre la rponse la requte reue. En revanche, il connat ladresse dun autre serveur qui sait rpondre. Les serveurs DNS sont ainsi organiss en un ensemble collaboratif rparti lchelle de la plante. Ils collaborent de deux faons : soit le serveur renvoie au client la rfrence du serveur qui sait rpondre (mode itratif), soit il poursuit lui-mme la recherche auprs de ce serveur et fournit au client la rponse attendue (mode rcursif). Le mode itratif est obligatoire, le mode rcursif est une option.

2.1 ESPACE

DES NOMS

Arbre de nommage
Lespace des noms symboliques (ou noms canoniques) dnit un ensemble de rgles de nommage et les donnes associes. Lensemble est organis sous la forme dun arbre, dont chaque nud et chaque feuille contiennent un certain nombre dinformations (voir gure 9.1). Les requtes dinterrogation servent obtenir ces diffrentes informations. Ainsi, pour accder une information donne, on prcise dans la requte le nom de domaine concern et le type dinformation dsire. Figure 9.1
Arbre de nommage.
int com edu gov it fr

univ-paris5

upmc

pharmacie

math-info

la racine de larbre se trouve un point. Le premier niveau (top level domain) correspond aux sufxes bien connus trois lettres : com, net, int et aux diffrents pays qui nont quun sufxe deux lettres : fr pour France, it pour Italie, de pour Allemagne (norme ISO 3166). Les domaines com et net taient initialement dvolus aux entreprises commerciales ou

220

Architecture des rseaux

Chapitre

concernes par les rseaux. Ils sont maintenant accessibles tout un chacun, y compris aux particuliers. Aux tats-Unis, edu correspond aux tablissements scolaires ; gov aux organismes gouvernementaux. En France, un dcoupage similaire existe avec le sousdomaine gouv.fr pour les institutions relevant de ltat.

Dlgation
Ladministration des noms de domaine possde plusieurs niveaux hirarchiques : lICANN (Internet Corporation for Assigned Names and Numbers) aux tats-Unis est responsable de la coordination mondiale. Cet organisme a dlgu RIPE-NCC (Rseaux IP Europens1 Network Coordination Center) la gestion des noms de domaine en Europe (et dautres organismes similaires dans les autres continents). Le domaine reprsente la sous-arborescence partir dun nud donn, cest--dire lensemble des informations de tous les nuds qui ont celui-ci comme racine. La dnition rcursive des arbres fait quun sous-domaine est un domaine2. RIPE-NCC a dlgu lAFNIC (Association franaise pour le nommage Internet en coopration) la gestion des noms de domaine en France. LAFNIC enregistre tous les noms de sousdomaine du domaine .fr avec un grant pour chaque domaine (par exemple univ-paris5.fr est gr par luniversit Ren Descartes, galement appele Paris 5). Le grant du domaine domaine.fr est responsable de la dlgation des noms de domaine de la forme sousdomaine.domaine.fr et de la dsignation dun administrateur de chaque sous-domaine.

Nom absolu, nom relatif et alias


Chaque machine porte un nom unique, mais on peut utiliser des noms plus gnriques qui sont des alias. Le nom complet dune machine sur Internet se compose du nom de la machine dans le rseau local suivi du nom de la zone laquelle elle appartient. On parle du FQDN de la machine (Fully Qualied Domain Name). Au sein du rseau local, on se contente dun adressage relatif en nutilisant que le nom de la machine. Dans ce cas, les logiciels de communication utiliss (et correctement congurs) rajoutent automatiquement le nom de zone pour construire le FQDN.

Exemple

La machine toutatis hberge un serveur Web et un serveur de messagerie. Son nom symbolique est toutatis.societe.pays. Mais ladministrateur a dni deux alias pour cette machine : www.societe.pays et mailhost.societe.pays. Vu de lextrieur de la socit, il y a un serveur Web et un serveur de messagerie, peu importe la machine relle qui les hberge. De plus, le changement de cette machine relle (la messagerie passe sur une nouvelle machine dnomme en interne blnos) na pas dimpact sur la conguration des clients de messagerie.

2.2 SERVEURS

DE NOMS

Les serveurs de noms, ou serveurs DNS, sont des machines qui assurent la traduction des noms en adresses IP et rciproquement. On parle de rsolution dun nom ou dune adresse. Pour cela, ils possdent des informations sur larchitecture de larbre et sur les donnes associes. A priori, un serveur de nom peut mmoriser des informations concernant nimporte quelle partie de larbre. En gnral, il contient des informations compltes sur un sous-arbre, ainsi que des rfrences dautres serveurs susceptibles de fournir des informations sur le reste de larbre. Lorsquun serveur a la connaissance complte dun
1. Remarquez l'un des rares acronymes en franais ! 2. Un arbre possde une racine et plusieurs branches avec des nuds d'o partent de nouvelles branches et ainsi de suite. Si on coupe une branche la hauteur d'un nud, l'ensemble coup est un nouvel arbre dont le nud de la coupure est la racine.

Les applications 221

sous-arbre (ou zone), on dit quil est le serveur ofciel de cette zone. Pour des raisons defcacit, un serveur peut utiliser un mcanisme de cache pour stocker des informations relatives dautres zones pour lesquelles il nest pas le serveur ofciel. Une zone est accessible par lintermdiaire dun ou plusieurs serveurs DNS. La prsence de plusieurs serveurs garantit la continuit du service, mme en cas de panne de lun deux. En fait, il existe trois types de serveurs de noms : primaires, secondaires et cache. Les serveurs primaires grent la mise jour des correspondances entre nom symbolique et adresse IP. Les serveurs secondaires rcuprent une copie des enregistrements dun serveur primaire (pour dcharger ce dernier ou le suppler en cas darrt). Les serveurs cache ne disposent daucune base mais conservent les rponses des requtes rsolues par des serveurs primaires ou secondaires. Dans sa zone, un serveur DNS ofciel connat les adresses des serveurs de ses sous-domaines (sil y a dlgation) et celles des serveurs de la zone suprieure. Ainsi, un serveur interrog sur la rsolution dun nom portant sur un sous-domaine quil gre peut rpondre directement sil a linformation, soit fournir la liste des serveurs de noms susceptibles de rpondre. Sil est interrog sur la rsolution dun nom dun domaine quil ne gre pas, il contacte le serveur de noms de sa zone suprieure. Un tel systme est efcace car les serveurs intermdiaires conservent en cache les requtes dj rsolues. La zone suprieure racine connat les serveurs DNS racine (root-servers). Il sagit de treize machines dont dix sont aux tatsUnis (cinq sur la cte est, cinq sur la cte ouest), deux en Europe et une au Japon. Les informations stockes par le serveur constituent un chier appel db et dont les enregistrements sont nomms RR (ressource records). Le chier db est facile lire. Il contient non seulement ladresse IP (enregistrement A pour IPv4 et AAAA pour IPv6), le nom canonique (enregistrement CNAME) et les alias, mais aussi de multiples informations comme : le serveur de messagerie associ au domaine (enregistrement MX, Mail eXchange server) ; le pointeur entre ladresse IP et le nom canonique (enregistrement PTR, pointer), qui sert la rsolution inverse ; le statut ofciel (enregistrement SOA, Start of Authority), qui dtermine le serveur DNS ofciel primaire de la zone avec lensemble de ses paramtres ; les autres serveurs de noms associs au domaine (enregistrements NS, Name Server). Lenregistrement SOA contient plusieurs temporisateurs (exprims en secondes) et dnissant les temps de rafrachissement, dattente, dchance et de vie : Le temps de rafrachissement (Refresh) est lintervalle de temps entre deux vrications dun serveur secondaire sur le serveur primaire pour savoir sil y a eu des modications et si une mise jour est ncessaire. Le temps dattente (Retry) dun serveur secondaire avant de renouveler sa mise jour si la prcdente a chou. Le temps dchance (Expire) au bout duquel le serveur efface les informations qui nont pas pu tre mises jour. Le temps de vie (Time To Live ou Minimum) est la dure pendant laquelle un serveur DNS peut conserver en cache un enregistrement du chier de la base de donnes. Ces diffrents temporisateurs sont congurs pour optimiser le trac entre les serveurs : la mise en cache rduit les dlais dobtention dune information. Encore faut-il que celle-ci soit correcte, do le besoin de rafrachir rgulirement les donnes. Le bon fonctionnement du service DNS est vital pour tous les rseaux. Les coupures de courant, les ruptures de connexion pourraient tre prjudiciables au service. Quand un

222

Architecture des rseaux

Chapitre

rseau est coup du reste du monde, ses serveurs de noms peuvent se trouver dans des situations dlicates : ils nont plus accs aux serveurs du domaine parent ni aux serveurs racine. Cest pourquoi on utilise des serveurs multiples et redondants, des retransmissions de requtes et des tentatives rptes de chargement des informations de zone, en exploitant les diffrents temporisateurs prvus cet effet.

2.3 CLIENTS

DU SERVICE DE NOMS DE DOMAINES

LES SOLVEURS

Les solveurs de noms (resolvers) sont les programmes qui, la suite dune demande provenant dune application, obtiennent linformation recherche auprs des serveurs de noms en les interrogeant. Ils utilisent linformation reue pour rpondre lapplication. Le solveur est donc un processus client, directement accessible par les programmes utilisateur. La gure 9.2 illustre le rle de chacun. Figure 9.2
changes DNS. 2 3 4 5 1 8
Solveur de noms Serveur DNS google.com Client DNS
1 Envoi de la requte sur le ser veur de nom local. 2 Si le ser veur local ne sait pas rpondre, il interroge le ser veur de noms racine. 3 Envoi de l'adresse IP du ser veur qui gre la zone.com. 4 Interrogation du ser veur ayant autorit sur la zone.com. 5 Envoi de l'adresse IP du ser veur DNS de google.com. 6 Interrogation du ser veur DNS google.com. 7 Envoi de l'adresse IP de www .google.com . 8 Le serveur de nom local envoie l'adresse IP son client DN S. Fonctionnement du DNS

Ser veur racine

Ser veur de nom local

Google.com

7 6

Lapplication cliente sollicite le solveur de nom qui rpond immdiatement (informations mises en cache dans le chier /etc/hosts, par exemple) ou sadresse au serveur de noms quil connat (information de conguration de la machine) pour lui soumettre la requte

Les applications 223

de lutilisateur. Le solveur est un client vis--vis du serveur de noms. Utiliser un solveur dcharge le programme sur lequel travaille lutilisateur et minimise le trac sur le rseau.

Remarque
Lutilisation de la commande ipconfig /all pour les postes sous Windows fournit (entre autres) linformation sur les serveurs DNS. Ci-aprs la rponse pour un poste connect en ADSL chez Wanadoo :
serveurs DNS 80.10.246.1 80.10.246.132

Le solveur de la machine interroge en priorit le premier serveur DNS 80.10.246.1 et, si celui-ci ne rpond pas, le second 80.10.246.132. Ces deux adresses ont t fournies par le fournisseur daccs Internet. La commande nslookup permet de vrier le rle des deux serveurs. Elle afche :
serveur par dfautdns-adsl-gpe1-a.wanadoo.fr address 80.10.246.1.

2.4 DIALOGUE

AVEC LE SERVEUR

DNS

Les requtes envoyes aux serveurs de noms en vue de consulter les donnes stockes utilisent UDP au niveau transport, sufsant pour un dialogue requte/rponse. Le port 53 est rserv au dialogue avec le serveur DNS, dont la raction peut tre de trois types : elle rpond la question pose, renvoie vers un autre serveur ou signale une erreur. Un protocole standardis dnit le format des requtes et des rponses DNS. Celles-ci possdent un en-tte contenant des champs xes toujours prsents et quatre sections dcrivant la demande et les rponses obtenues. Parmi les champs xes, on trouve 4 bits appels code dopration. Le code dopration donne des informations sur la nature du message (requte, rponse). Les quatre sections sont Question, Answer, Authority, Additional. La section Question contient la question (nom dhte ou de domaine sur lequel on cherche des renseignements et type de renseignements recherchs). La section Answer contient les enregistrements qui rpondent la question. Authority indique les serveurs ofciels, ceux qui ont une connaissance complte de la zone considre. Enn Additional contient des enregistrements supplmentaires pour exploiter les informations contenues dans les autres sections.

2.5 RSOLUTION

DE NOMS INVERSE

Le domaine in addr.arpa sert la rsolution inverse : il retrouve le nom dune machine partir de son adresse IP. Les nuds de ce domaine correspondent aux diffrents numros (de 0 255) de ladresse IP, pris dans le sens inverse de la lecture classique. Ainsi ladresse IP 123.45.67.89 correspond une machine appele mon_ordi.mon_domaine.mon_pays. La branche de larbre correspondant part de la racine puis va sur le nud arpa puis i-n-addr puis 123 puis 45 puis 67 et enn 89. Linformation place cet endroit, soit 89.67.45.123.in-addr.arpa, renvoie vers le nom quali mon_ordi.mon_domaine.mon_pays, comme le montre la gure 9.3. On comprend mieux pourquoi les adresses IP sont exploites lenvers : le domaine 123.in-addr.arpa peut tre dlgu aux administrateurs du rseau 123.0.0.0.

224

Architecture des rseaux

Chapitre

Figure 9.3
Rsolution inverse.
1 2 3 123 ...... 255

45

......

255

67

......

255

89

......

255

mon_ordi.mon_domaine.mon_pays

2.6 ANNUAIRES

LECTRONIQUES DENTREPRISE

Les annuaires lectroniques sont des bases de donnes spcialises, qui stockent des informations de manire hirarchique et permettent ensuite de les rechercher rapidement pour les exploiter. Les annuaires contiennent, outre lenregistrement de lensemble des utilisateurs (avec des donnes correspondant leurs fonctions dans lentreprise), celui des machines et des applications. Lobjectif principal dun annuaire est dassurer lauthentication3 des utilisateurs grce un mot de passe et de dnir leurs droits vis--vis des diffrentes applications dployes dans lentreprise. On interroge trs souvent un annuaire, on met plus rarement ses donnes jour. Il est donc important de loptimiser pour la recherche dinformations. Sa structure est hirarchique, linstar de la structure de nommage vue prcdemment. Dans les trs grandes entreprises, il peut y avoir plusieurs serveurs dannuaire, du fait de la grande masse dinformations stocker. Ces diffrents serveurs doivent se synchroniser rgulirement pour fournir une information cohrente. La norme ISO X.500 a dni la notion de service dannuaire. Elle accepte, la diffrence du service DNS, plusieurs types de recherche, y compris des correspondances ou des informations incompltes ; elle a, comme toute norme internationale, une vocation trs gnrale. Elle repose sur une authentication des utilisateurs et plusieurs types de chiffrement des donnes. Les promoteurs dInternet lont simplie et rebaptise LDAP (Lightweight Directory Access Protocol). Sa version 3 (RFC 2251) tend aujourdhui devenir le standard daccs aux annuaires. Pour organiser les donnes dans un annuaire LDAP, quatre modles de base existent : information, nommage, fonctionnel et scurit. Le modle dinformation dnit le type des informations contenues dans lannuaire (pays, organisation, nom, prnom). Le modle de nommage dnit les rgles de dnomination des informations partir dun arbre. Le modle fonctionnel dnit laccs et la mise jour des informations. Enn, le modle de scurit dnit comment protger les donnes et les accs. La technologie SSO (Single Sign On) sappuie sur lannuaire et permet aux utilisateurs du rseau de lentreprise daccder en toute transparence lensemble des ressources autorises, grce une authentication unique effectue laccs initial dans le rseau. Avec un seul mot de passe, lutilisateur accde aux applications auxquelles il a droit : lannuaire
3. Ne pas confondre authentification (vrification de l'identit de l'utilisateur) et autorisation (vrification de ses droits d'accs) [voir les complments pdagogiques, sur le site www.pearsoneducation.fr].

Les applications 225

envoie directement une application donne le mot de passe ncessaire, sans que lutilisateur soit oblig dintervenir. Cette technologie amliore la fois lergonomie daccs aux applications et la scurit du systme dinformation, tout en limitant la circulation des mots de passe.

Transfert de chiers
Le transfert de chiers est lchange de longs documents entre ordinateurs (par opposition au courrier lectronique, qui est plutt destin aux messages courts). FTP (File Transfer Protocol) et TFTP (Trivial File Transfer Protocol) sont deux protocoles de transfert de chiers. Leur mode de fonctionnement est de type client/serveur. TFTP, comme son nom lindique, possde des fonctionnalits rduites mais plus simples grer par rapport FTP.

3.1 SERVEURS

ET CLIENTS

FTP (FILE TRANSFER PROTOCOL)

Des milliers de serveurs sont connects Internet et proposent au public toutes sortes de logiciels tlcharger sur leurs propres machines. Mais les utilisateurs peuvent aussi, parfois, dposer leurs propres chiers sur les serveurs. En anglais, on utilise les termes download pour le tlchargement de chier dans le sens serveur vers client et upload pour le dpt de chier dans le sens client vers serveur. Nous utiliserons ici tlcharger et dposer . Pour les utilisateurs, plusieurs logiciels clients existent. Les premiers proposs sur le march employaient une interface rudimentaire par ligne de commandes. Actuellement, une interface graphique simplie les tches. Cependant, mme avec celle-ci, les logiciels clients sont souvent limits la lecture et lcriture de chiers, alors que les fonctionnalits de FTP autorisent la manipulation des chiers distance (lecture, criture, mais aussi effacement, renommage). Le transfert de chiers assur par FTP utilise les services de TCP. En effet, FTP est un protocole complexe qui ncessite une identication et une authentication de lutilisateur par login et mot de passe. Un compte personnel sur un serveur permet dy dposer des chiers (des pages Web, par exemple). En pratique, tous les serveurs offrent un accs anonyme. Dans ce cas, le login de lutilisateur est anonymous. La Netiquette recommande quon mette son adresse lectronique comme mot de passe. Laccs anonyme ne permet que la lecture de chiers appartenant des rpertoires dits publics . Tous les serveurs compressent les chiers tlcharger pour limiter lespace de stockage ncessaire et optimiser les temps de transfert vers lutilisateur. Ce dernier doit alors disposer des utilitaires adapts pour effectuer la dcompression des chiers imports sur sa machine.

3.2 PROTOCOLE FTP


Le protocole FTP utilise deux numros de ports distincts pour le serveur. Il gre deux connexions TCP par session dchange. Le port 21 sert la connexion TCP qui supporte le dialogue dtablissement de connexion et dauthentication. Un serveur FTP peut travailler en mode actif ou en mode passif. En mode actif, le port 20 est utilis pour la connexion TCP grant le transfert des donnes du chier. En mode passif, le serveur utilise un numro de port quelconque, pour la connexion TCP grant le transfert des donnes du chier. Lorsque le serveur FTP est en mode actif, il initie lui-mme la deuxime connexion TCP avec le port 20. Si le client tlcharge plusieurs chiers, il y aura autant de connexions TCP sur le port 20 que de chiers transfrer. Le numro de port ct client progressant

226

Architecture des rseaux

Chapitre

dune connexion lautre, il faut que le client apprenne au serveur le numro du processus associ chaque transfert de chier. Le client FTP est dans ce cas serveur pour TCP : il fait une ouverture passive, dans lattente de louverture de connexion de la part du serveur. On comprend dans ce cas pourquoi on peut trouver des ouvertures passives de connexions TCP sur une machine qui, du point de vue de lutilisateur, nest quune machine cliente

Remarque
Il faut comprendre que le rle de client ou celui de serveur est indpendant du niveau dans larchitecture des protocoles. Ainsi une machine cliente pour FTP se retrouve tre serveur pour TCP.

Si le client souhaite que le serveur travaille en mode passif, une commande FTP lui permet de faire la requte correspondante au serveur. Le serveur indique alors au client le numro de port qui supportera la connexion TCP de transfert des donnes. Cette connexion de donnes reste linitiative du client.

Remarque
Linitiateur de la connexion TCP (cest--dire celui qui envoie le premier message avec drapeau SYN 1) est un paramtre important : on verra sur le site www.pearsoneducation.fr que la requte TCP de connexion avec drapeau SYN 1 provenant de lextrieur est souvent suspecte (tentative dintrusion dans le rseau, par exemple) et de ce fait rejete par lquipement baptis pare-feu qui protge le rseau de lentreprise.

Dans les deux cas, FTP dispose dun grand nombre de commandes permettant lutilisateur de naviguer dans larborescence des chiers du serveur. Enn, FTP transfre deux types de chiers : ceux au format ASCII et ceux qui sont considrs comme de simples suites de donnes binaires. Le client doit congurer son application en indiquant le type de chier, moins que celle-ci ne sache reconnatre automatiquement son type (un chier .txt est a priori cod en ASCII). Un serveur FTP contient trois rpertoires de base : le rpertoire dinstallation de lapplication, le rpertoire et tous les sous-rpertoires ncessaires au stockage des donnes. Enn, il utilise un rpertoire pour les informations didentication des usagers. De nombreuses failles de scurit ont t constates lors de lchange de chiers par FTP, sans parler des problmes lis aux dbordements de mmoire tampon. Nous abordons les problmes de scurit dans les complments pdagogiques, sur le site www.pearsoneducation.fr.

3.3 LE

PROTOCOLE

TFTP (TRIVIAL FILE TRANSFER PROTOCOL)

TFTP utilise pour sa part les services dUDP. Il est limit au seul transfert de chiers, sans authentication de lutilisateur. De ce fait, un serveur TFTP noffre que des possibilits daccs un nombre restreint de chiers bien spciques. Il sagit gnralement des chiers de dmarrage de stations sans disque, et on lassocie dans ce cas au protocole BOOTP. Les messages du protocole TFTP se limitent une requte, un message de donnes, un accus de rception et un message derreur. La requte spcie le nom du chier ; les messages de donnes contiennent chacun un bloc numrot de donnes appartenant au chier dsign ; un accus de rception spcie le numro du bloc acquitt ; et un message derreur signale un problme ce qui met n au transfert. Le protocole sous-jacent tant UDP, la seule politique utilisable pour la gestion des messages de donnes est de type Stop-and-Wait.

Les applications 227

La messagerie lectronique
Lusage de la messagerie lectronique varie selon quelle sert diffuser de linformation (envoi unidirectionnel) ou changer des messages entre deux personnes ou plus (envoi multidirectionnel). Dans lentreprise, la diffusion possde un aspect relativement formel et contrl. Elle comprend des messages pour information . La diffusion sappuie sur des listes dadresses qui regroupent les personnes ayant un intrt commun pour un type dinformation donn. Pour viter lengorgement du rseau par la diffusion de messages volumineux vers un grand nombre de destinataires, on envoie par exemple un message rduit faisant mention dun nouveau document accessible dans lintranet par les destinataires du message. Les changes multidirectionnels de messagerie sont plutt informels et concernent principalement la communication entre deux personnes avec ventuellement copie quelques autres destinataires. Dans le cas dun groupe, et si tout le monde a intrt connatre les rponses aux diffrentes questions poses, il est intressant de constituer un forum et de stocker tous les changes dans une base de donnes. Dans le cadre des systmes informatiques de messageries, on met en correspondance le nom dune personne avec le nom de sa bote aux lettres. Cette association seffectue avec lannuaire des personnes. Il faut ensuite localiser le systme informatique de traitement charg dhberger la bote aux lettres : cette relation est maintenue dans lannuaire des machines. La prparation dun message demande lutilisation dun traitement de texte. Trs souvent, les produits de messagerie incorporent des traitements de texte simplis pour composer les messages. La forme la plus acheve de messagerie consiste grer les documents composites incluant de la voix, du texte et de limage, et dappeler dynamiquement, lors de la rception, les outils de bureautique capables de traiter les contenus du message. Labsence de normalisation du format des donnes traites par les outils de bureautique impose de disposer dune large varit doutils de visualisation de ces diffrents formats. La richesse dun systme de messagerie pour le client peut se juger au nombre des outils de visualisation quil contient.

Remarque
Moins connue, car non accessible directement par un utilisateur sur son poste de travail, la messagerie entre applications est une composante des systmes de messagerie. Elle permet une application de construire des messages qui seront repris ultrieurement par une autre pour tre traits. Enn, il peut y avoir des changes entre applications et personnes. Cest le cas dapplications qui mettent automatiquement des alarmes destination doprateurs qui devront intervenir au reu de ces messages.

Remarque
La rfrence MIME (MultiPurpose Mail Extension, RFC 822) dnit les rgles de codage pour les textes (ASCII 7 ou 8 bits) et pour les autres documents (jpeg, mpeg). Historiquement, cest lors de la dnition de la messagerie lectronique normalise (normes X.400 de lISO) quon sest proccup pour la premire fois du codage des informations transportes. En effet, il et t dommage davoir conu toute une architecture de protocoles avec abilisation des changes si les donnes transportes navaient plus aucune signication pour le destinataire. Il ny a pas de norme ou de standard de reprsentation interne des informations dans les processeurs. Les constructeurs font leur propre choix (taille des mots, place du bit de poids fort). Si les reprsentations internes diffrent, il est impossible de transfrer bit bit les donnes. Lide propose dans X.400 et reprise plus tard dans les autres messageries est de dcrire les rgles de codage de linformation et dadjoindre la rfrence ces rgles aux donnes elles-mmes.

228

Architecture des rseaux

Chapitre

Dans cette section, nous dcrivons les trois grands protocoles utiliss dans la messagerie lectronique sur Internet : SMTP (Simple Mail Transfer Protocol) pour les changes entre serveurs de messagerie, POP (Post Ofce Protocol) et IMAP (Internet Message Access Protocol) pour la communication entre lutilisateur et le serveur de messagerie qui lui est associ.

4.1 SYSTME

DE MESSAGERIE

SMTP (SIMPLE MAIL TRANSFER PROTOCOL)

Les messageries SMTP sappuient sur les fonctions de transport et de rseau de TCP/IP. On les utilise beaucoup dans le cadre dInternet et elles tendent se gnraliser aussi dans les intranets. La premire version oprationnelle de SMTP remonte 1982 (RFC 821). Les protocoles dchange ont pour objectif la mise disposition des messages dans les botes aux lettres des destinataires. Trois modes de fonctionnement des botes aux lettres existent : en ligne, hors ligne et dconnect. Mode en ligne. Une connexion est tablie entre lapplication cliente et le serveur qui contient la bote aux lettres. Mode hors ligne. Lapplication cliente tlcharge les messages vers sa bote aux lettres, et peut ensuite les manipuler localement tandis que les messages sont effacs du serveur. Mode dconnect. Lapplication cliente rapatrie tout ou partie de ses messages sans les supprimer du serveur, pour les lire localement et conserver cohrente sa bote aux lettres sa prochaine connexion. La norme SMTP prvoyait lorigine un mode de fonctionnement en ligne ; une premire adjonction connue sous le nom de POP a dni un mode hors ligne. Enn, une extension plus rcente IMAP permet les trois modes de fonctionnement. Nous dcrivons brivement les caractristiques des trois protocoles SMTP, POP3 et IMAP4.

Protocole SMTP
Les changes SMTP sappuient sur un rseau TCP/IP et les serveurs de messagerie SMTP utilisent le port 25. Ce protocole prvoit une ouverture du dialogue entre les systmes SMTP client et serveur, avec identication de lmetteur et des destinataires du message. Ces services de base sont mis en uvre travers un jeu de commandes simples : La commande HELO permet lmetteur de sidentier et douvrir le dialogue. Les commandes MAIL, RCPT et DATA lui permettent de donner ladresse de sa bote aux lettres au systme destinataire, de vrier lexistence des botes aux lettres des destinataires et denvoyer les donnes du message. La commande QUIT termine le dialogue.

Protocole POP3 (Post Ofce Protocol)


Le protocole POP3 (version 3 de POP, RFC 1939) sappuie sur un rseau TCP/IP ; un serveur POP3 utilise le port 110. POP3 sert lutilisateur client pour rapatrier des messages. La relation entre le client et le serveur prend alors trois tats : autorisation, transaction et mise jour. Autorisation. Le client ouvre une connexion TCP et sauthentie. Transaction. Le client manipule les messages de la bote aux lettres. Mise jour. La connexion TCP est close si le client a demand de quitter (commande QUIT) ; les messages rapatris par le client sont alors supprims de la bote aux lettres du serveur.

Protocole IMAP4 (Internet Message Access Protocol)


Plus volu que le protocole POP3, IMAP4 (version 4 dIMAP, RFC 1733 et 2060) standardise les fonctions de manipulations de la bote aux lettres en rception. Il sappuie sur un rseau TCP/IP ; un serveur IMAP utilise le port 143.
Les applications 229

Le protocole IMAP est un vritable protocole client/serveur qui fournit au client un grand nombre de fonctions de rception de courrier ou dadministration des botes aux lettres. Il se rapproche ainsi des fonctions quon trouvait dans lenvironnement X.400, application de messagerie normalise de lISO. La norme prvoit quune session IMAP passe par une succession dtats qui dlimitent les jeux de commandes autorises : authentication, authenti, slection et fermeture en cours. Authentication. Ncessite louverture de la connexion TCP et permet une commande dauthentication. Authenti. Ltape prcdente a t franchie, le protocole passe dans ltat authenti : le client slectionne ou administre une bote aux lettres. Slection. Correspond la manipulation du contenu de la bote aux lettres que lutilisateur client a choisie. Fermeture en cours. tat atteint ds que le client demande quitter lapplication. Enn, les messages dans la bote peuvent tre tiquets : message lu au moins une fois par lutilisateur ; message auquel lutilisateur a rpondu ; message marqu pour attirer lattention ; message supprim logiquement ; message ltat de brouillon ; message nouveau (qui ntait pas dans la bote aux lettres lors dune connexion antrieure). Ces diffrentes tiquettes du message sont bien utiles pour le client et font le succs des divers produits de messagerie pour le client.

Remarque
On appelle serveur Webmail un serveur qui permet aux utilisateurs daccder leurs botes aux lettres travers nimporte quel navigateur. On encapsule alors le trac de consultation et de manipulation des messages de la bote dans le protocole HTTP (ou HTTPS si la connexion est scurise ; voir les complments pdagogiques, sur le site www.pearsoneducation.fr).

4.2 LES

LISTES DE DIFFUSION
Il est possible de crer des groupes dusagers avec une seule adresse de messagerie. Un message envoy par un usager du groupe est reu par tous les membres du groupe. Un usager peut sinscrire (et se dsinscrire) dans une liste dite ouverte ou solliciter son inscription auprs de ladministrateur dune liste contrle. Dans les cas o la scurit est le critre primordial, une liste peut tre ferme, cest--dire cre et gre par son propritaire exclusivement. Selon les cas, la liste peut tre modre, sil y a un utilisateur particulier, le modrateur. Celui-ci ltre les messages avant leur diffusion pour veiller au respect de la politesse, des bons usages La gestion matrielle de la liste est cone au serveur de messagerie du domaine concern. Un utilisateur peut participer de nombreuses listes de diffusion pour se tenir au courant de lactualit des divers groupes. Il a alors intrt structurer sa bote aux lettres en sous-dossiers et y mettre frquemment de lordre, sinon lespace utilis par la bote aux lettres devient rapidement gigantesque.

Navigation sur le Web


Le Web est lapplication qui a fait limmense succs dInternet. En effet, Internet tait initialement consacr des changes de donnes entre scientiques et possdait deux applications : le transfert de chiers, avec FTP, et la messagerie, avec SMTP et des outils rudimentaires de recherche dinformation comme Gopher.

230

Architecture des rseaux

Chapitre

Tim Berners-Lee a invent le Web en 1989 quand il a propos un moyen simple de mettre disposition des chiers sur le rseau informatique de son entreprise (le CERN, Centre dtudes et de recherche nuclaires4). Ses travaux dbouchrent sur le standard de prsentation des pages appel HTML (HyperText Markup Language) et le protocole de transfert des pages HTTP (HyperText Transfer Protocol). Lapparition en 1993 de Mosac, le premier navigateur, fut llment dclenchant. Le Web sert afcher des pages de texte mis en forme partir de commandes simples et provenant de nimporte quelle machine du rseau. Ce standard permet lhypertexte (concept n avec le logiciel Hypercard dApple), cest--dire laccs, partir dune page, dautres pages, au gr du client, indpendamment de lorganisation des pages elles-mmes. Chaque page, appele page Web, est un chier repr par une adresse spcique appele URL (Uniform Resource Locator). Le concepteur dune page place dans un chier le texte avec sa mise en forme. Il peut associer tout mot du texte un pointeur dadresse URL quelconque, galement stock dans le chier. Avec cette association, le mot devient en quelque sorte un mot cl. La consultation dune page Web consiste transfrer le chier associ (cela est possible partir de la connaissance de ladresse URL) contenant le texte et des pointeurs dadresse URL. Les mots cls sont alors afchs de faon particulire lcran (en bleu et soulign au dbut du Web, puis, maintenant, grce un simple changement de forme du curseur de la souris quand il atteint le mot en question, par exemple). Il suft pour lusager de cliquer sur un mot cl pour provoquer le rapatriement de la page associe (ladresse URL tant connue, lopration ne pose aucun problme). Un pointeur dadresse URL peut indiquer non seulement un chier texte mais aussi des chiers combins avec des processus standard de codage dimage (par exemple JPEG) ou de son (loi de codage du son 64 kbit/s). Le Web permet donc le multimdia. La rfrence MIME (comme pour la messagerie lectronique) indiquera dans len-tte de la page Web si celle-ci contient du texte, de laudio, de la vido ou un autre format.

Exemple

LURL http://www.linux.org/news/2005/index.htm reprsente le lien vers un chier dun serveur Web. http dsigne le nom du protocole de transfert des donnes ; www.linux.org est le nom symbolique de la machine contacte, news est un rpertoire de cette machine, 2005 est un sous-rpertoire du rpertoire news. Enn, index.htm est le nom du chier crit en langage html. Autrement dit, le chier recherch est situ dans le sous-rpertoire 2005 du rpertoire news de la machine www.linux.org. Une URL peut contenir des informations complmentaires comme des mots de passe ou des numros de port, lorsque les serveurs utilisent des techniques didentication des clients ou des numros de ports particuliers. Un pointeur dadresse URL peut dsigner des pages Web stockes sur dautres sites. Comme Internet offre un service sans connexion, le passage dune page stocke sur un ordinateur dune universit franaise une page dun ordinateur dune entreprise en Australie peut se faire trs rapidement. Il est donc possible de naviguer ou de surfer sur le rseau et de voyager virtuellement travers le monde. Les utilisateurs ont rapidement dtourn lapplication Web de sa mission initiale, quand la publicit, les changes commerciaux et nanciers sont apparus et les problmes de scurit. Nombre dentreprises poussent mme leurs clients consulter des informations sur Internet, y raliser des achats et des paiements lectroniques. Le Web est devenu le premier support dinformation aujourdhui et les rseaux des entreprises en ont copi la convivialit : un intranet nest autre quun rseau dentreprise qui utilise les technologies du Web, de mme un extranet est un intranet ouvert aux clients et fournisseurs de lentreprise.

4. Le plus grand laboratoire de physique des particules au monde.

Les applications 231

5.1 ARCHITECTURE

DU

WEB

Le Web repose sur une architecture client/serveur. Le serveur met des informations disposition. Le client, avec son navigateur, se connecte pour demander recevoir ces informations qui safchent sur son cran. Le protocole de transport sous-jacent est TCP. Dans la version initiale de HTTP, la connexion tait rompue aprs chaque change dinformation : une page Web qui contient trois images est transfre en quatre connexions TCP ce qui reprsente un grand nombre de requtes/rponses pour le serveur. La version HTTP1.1 regroupe le transfert de tous les lments dune page dans une seule connexion. Le serveur Web reoit une demande douverture de connexion sur le port 80 (par dfaut), puis une fois la connexion tablie, une requte GET qui demande un document particulier. Le serveur recherche dans son environnement de stockage le document en question et cre le ux de donnes correspondant au contenu du document dcrit en HTML et, enn, la connexion avec le client est rompue. La gure 9.4 illustre les changes entre client et serveur. Figure 9.4
changes HTTP.
Ouverture de connexion TCP

Get

Donnes de la page

Client

Serveur

Fermeture de connexion TCP

Le premier produit serveur sur le march est indniablement Apache, un produit sous licence GNU quon peut tlcharger gratuitement. Pour le client, le navigateur regroupe les fonctions de base dune application avec son paramtrage, une barre doutils pour naviguer dans les pages dj reues (revenir une page dj vue, imprimer une page) et une barre dadresse o le client entre lURL du document recherch. Le navigateur interprte les donnes reues et les afche selon ses capacits graphiques. De nombreux navigateurs sont proposs sur le march pour les clients.

5.2 AUTOUR

DU

WEB

Pages dynamiques et animation des pages Web


Certaines pages Web sont cres spcialement en rponse la requte dun utilisateur (ou dun client). Elles possdent alors une forme et un contenu variables, adapts ses besoins. On parle de pages dynamiques. Elles utilisent le plus souvent le langage JavaScript (qui na rien voir avec Java). JavaScript repose sur une programmation vnements et ncessite donc que le navigateur du client supporte lexcution de code associe des vnements. Une image qui change au moment o la souris passe dessus est un exemple simple dexcution de code associ un vnement.

232

Architecture des rseaux

Chapitre

Les navigateurs sont maintenant prsents sur toutes les machines des clients. Nanmoins, ils ne sont pas tous capables dinterprter les mmes formats de donnes. Certains fournisseurs de logiciels ont propos lide de plug-in, composants logiciels supplmentaires, tlchargeables et excutables par le navigateur pour en amliorer les capacits (par exemple, un plug-in Acrobate Reader pour afcher correctement des chiers .pdf, un plug-in RealPlayer pour visualiser et couter des ux vido dans une page Web). Ces ajouts sont malheureusement souvent des solutions propritaires . Microsoft, qui a inclus son navigateur phare dans son systme dexploitation Windows, a de mme propos des composants logiciels baptiss ActiveX tlchargeables, automatiquement installs dans le systme dexploitation et rfrencs dans la base de registres Windows. La solution la plus frquente pour animer les pages Web consiste utiliser de petites applications crites en langage Java (les applets Java), qui en exploitent les capacits danimation et de rendu graphique. Elles sont contenues dans la page Web. On les tlcharge dynamiquement en mme temps que la page qui les rfrence. Le navigateur contrle ensuite leur excution. Le tlchargement se fait en mmoire vive chaque visite de la page. Rien nest install sur le poste client. Cela procure de moindres performances par rapport aux ActiveX mais protge mieux le client de toute installation indsirable sur son systme. Lensemble des technologies de programmation des serveurs Web, depuis les premiers CGI (Common Gateway Interface), qui permettaient la cration de formulaire o lutilisateur peut remplir les diffrents champs et dclencher des actions en fonction des informations saisies, jusquaux ASP (Active Server Pages de Microsoft) ou JSP (Java Server Pages), dborde du cadre de cet ouvrage. Citons simplement, en marge des produits commerciaux, le succs des solutions construites autour de produits gratuits dexcellente qualit PHP et MySQL qui sexcutent ct serveur, interfacent les pages Web avec des bases de donnes et construisent dynamiquement les pages afches lutilisateur.

Cookies et mulation de connexion


Pour les sites commerciaux, il est normal que tous les produits proposs ne soient pas sur la mme page Web. Le fonctionnement non connect dHTTP qui referme la connexion TCP aprs le chargement de chaque page obligerait le client fournir son identit et ses rfrences bancaires chaque fois quil change de page : le serveur oublie le client une fois quil a trait sa requte ! On utilise alors des techniques dmulation de connexion, qui consistent associer un client un identiant unique (improprement appel cl de session). Le navigateur du client transmet cet identiant chaque requte vers le serveur. Lune des solutions consiste utiliser des cookies. Ce sont des petits chiers de texte engendrs par le serveur ds quun client visite le site. Ils sont stocks sur les machines des utilisateurs, leur insu. Le serveur les exploite lors du changement de pages et lors des connexions suivantes des clients. Certains sites marchands vont jusqu conserver un prol de chaque client en reprant ses habitudes de navigation et dachats. Les cookies permettent donc de grer un contexte vis--vis du client, sorte de session virtuelle, dans laquelle le client est heureux de retrouver les pages du serveur avec les paramtres de prsentation quil peut avoir choisis lui-mme. Lavantage des cookies par rapport aux autres solutions (comme les URL longues ou les trames caches) est quils durent au-del de la visite du site par le client : lutilisateur les stocke lui-mme sur son disque. Ils disposent dune date de premption. Lutilisateur peut videmment effacer les cookies, dautant plus quune utilisation parfois abusive par certains sites commerciaux leur a donn la rputation dinstruments dintrusion dans la vie prive du client. De plus, lensemble des cookies nit la longue par encombrer le disque et peut ralentir le fonctionnement du navigateur.

Les applications 233

Si un utilisateur surfe sur Internet en utilisant plusieurs ordinateurs diffrents, il doit sidentier sur chaque ordinateur. Il a intrt ne pas accepter les cookies permanents et effacer tous les chiers temporaires car un autre utilisateur sur le mme ordinateur pourrait ensuite se faire passer pour lui.

Sites particuliers
Les moteurs de recherche (Google, Yahoo!, Voila, AltaVista) sont des serveurs spcialiss dans la recherche dinformations partir de mots cls. Ils contiennent des banques de donnes textuelles alimentes en permanence par des programmes automatiques dindexation. Ces programmes explorent tous les sites et regroupent par thmes les informations recueillies. Ces outils de recherche ont une puissance impressionnante : ils peuvent trouver des milliers de pages avec les mots cls dune recherche en moins dune seconde. Le problme pour lutilisateur est alors de bien cibler sa recherche, en prcisant ses mots cls. Des mtamoteurs (Copernic) ont t proposs, ils offrent lintrt de rechercher directement sur plusieurs moteurs de recherche, de comparer lensemble des rsultats et dliminer les rfrences en double. Un blogue (en anglais blog, contraction de weblog), est un site Web personnel, volutif et souvent non conformiste, prsentant des rexions de toutes sortes, gnralement sous forme de courts messages. Lauteur met jour son blogue aussi souvent quil le veut, ses lecteurs peuvent y apporter leurs commentaires. la diffrence dun blogue, qui exprime la pense dun individu, le wiki est un site Web collaboratif, matrialisant les ides dun groupe qui partage des intrts communs. Le nom wiki provient de ladjectif hawaiien wikiwiki, qui signie rapide. Ward Cunningham a invent ce systme en 1995, son premier site utilisant ce principe tait WikiWikiWeb. An quun site Web puisse offrir ces services, un moteur wiki personnalisable doit tre install. Pour modier les informations du site, il suft en gnral de cliquer sur un lien modier , chacun apporte ainsi sa contribution. Pour ldition des pages, une syntaxe trs simplie hrite de HTML traite la mise en page et lactivation des liens. Le site est amen grossir sans quun webmestre le dcide, mais simplement parce que les utilisateurs lont souhait. Il faut toutefois quun utilisateur procde de temps autre un nettoyage, pour viter le dsordre : suppression de pages obsoltes, de contenus redondants, etc. Les wikis ont un trs grand succs auprs du public et des communauts comme les tudiants ou les employs dune entreprise en crent trs souvent. titre dexemple, lencyclopdie Wikipedia, qui existe dans une trentaine de langues, compte plus de 350 000 pages, correspondant plus de 180 000 articles.

Rsum
Nous avons prsent au cours de ce chapitre quelques applicatifs utilisant TCP/IP parmi les plus rpandus. Le service de conguration dynamique des machines et le service de noms de domaine sont des applications internes, utiles au bon fonctionnement des rseaux. Ils fournissent aux machines toutes les informations indispensables pour pouvoir communiquer dans leur rseau et sur Internet. Le premier fournit ladresse IP et les informations minimales de conguration (masque de sous-rseau, adresse du routeur pour sortir du rseau, adresse du serveur de noms). Le second est indispensable pour exploiter toute la richesse des informations sur Internet. Il permet la conversion automatique des noms de machines en adresses IP, ncessaires pour toutes les communications travers le rseau. Les applications concernant directement les utilisateurs et leurs besoins de communication travers les rseaux sont la messagerie lectronique, le transfert de chiers et enn la navigation sur le Web. Nous avons prsent succinctement les protocoles associs chacune de ces applications ainsi que leurs caractristiques principales, sans aborder les problmes de scurit ou dintgration des postes mobiles qui seront vus au chapitre suivant. 234
Architecture des rseaux

9 Problmes et exercices
Chapitre

EXERCICE 1

UTILISATION

DE

DHCP

Sur un rseau Ethernet, une machine client se connecte pour la premire fois et diffuse un message DHCPDiscover pour trouver un serveur DHCP. Quels sont les numros de port utiliss dans le datagramme UDP transportant ce message ? Quelles sont les adresses IP metteur et destinataire dans le datagramme IP ? Quelles sont les adresses MAC utilises dans la trame Ethernet qui encapsule le datagramme IP ? Les numros de port sont 68 pour le client et 67 pour le serveur. La machine nayant pas dadresse IP, elle laisse plein 0 le champ adresse IP source et comme elle ne connat pas non plus ladresse du destinataire, elle utilise ladresse de diffusion plein 1 . Nous avons donc : adresse IP source = 0.0.0.0, port source 68 ; adresse IP destination = 255.255.255.255, port destination 67.

Le datagramme IP est encapsul dans une trame Ethernet dont ladresse MAC de destination est FF:FF:FF:FF:FF:FF puisquil sagit dune diffusion. Ladresse MAC source est le numro de srie de la carte rseau de la machine en question.

EXERCICE 2

REDONDANCE

DE SERVEURS

DHCP

On considre un rseau constitu de trois sous-rseaux interconnects par le mme routeur. Un serveur DHCP est install dans le premier sous-rseau et un second dans le deuxime sous-rseau. Une machine du troisime sous-rseau peut-elle obtenir une adresse IP en utilisant DHCP ? Si oui comment ? Sinon, pourquoi ? Pourquoi avoir install plusieurs serveurs DHCP ? Une machine du troisime sous-rseau peut obtenir une adresse IP en utilisant DHCP condition que le routeur implmente un agent relais qui transfre le message en diffusion (255.255.255.255) au-del du routeur. Les deux serveurs DHCP reoivent alors la requte DHCPDiscover. Deux serveurs DHCP ont t installs pour une meilleure abilit : si lun est en panne, lautre est oprationnel.

Les applications 235

EXERCICE 3

RLE DUN

SERVEUR

DNS

ET TRAFIC INTERNE

On considre un rseau compos de trois ordinateurs (un PC, un serveur DNS et un serveur Web), un routeur et deux rseaux locaux de type Ethernet comme le montre la gure 9.5. Larchitecture de protocoles utilise est TCP/IP. Donnez les diffrentes trames changes sur les deux rseaux Ethernet lorsque la machine A (pc.soc.pays) cherche tablir une session www sur le serveur W (www.soc.pays). On supposera que les trois machines et le routeur sont correctement congurs. Ils viennent dtre installs (tous les caches sont vides) et sont allums lorsque le client commence sa requte. On supposera galement que la machine X (ns.soc.pays) se trouvant sur le mme rseau que le client dispose de linformation permettant de rsoudre directement le nom www.soc.pays en une adresse IP. La rponse se prsentera dans lordre chronologique. On indiquera pour chaque trame le rseau sur lequel elle a t mise (1 pour le rseau 25.0.1.0 et 2 pour le rseau 25.0.2.0), les adresses physiques de la source et de la destination de la trame, les adresses IP de la source et de la destination (si ncessaire) et un bref commentaire sur le contenu ou la fonction de cette trame ou de son contenu. La dernire trame indiquer est celle contenant larrive de la conrmation dtablissement de la connexion TCP utilise entre A et W. Figure 9.5
Conguration des diffrentes machines (notez que chaque machine ne connat que son propre chier de conguration).
Fichier de configuration du routeur ct 1 Routeur IP 25.0.1.1 Masque 255.255.255.0 Eth1 08:00:02:54:E2:A2 Fichier de configuration du routeur ct 2 Routeur IP 25.0.2.1 Masque 255.255.255.0 Eth2 08:00:02:54:E2:A3

Routeur

Rseau Ethernet 25.0.1.0

Rseau Ethernet 25.0.2.0

A
Votre poste client pc.soc.pays IP 25.0.1.129 DNS 25.0.1.33 Routeur 25.0.1.1 Masque 255.255.255.0 Eth 08:00:02:54:E2:A Fichier de configuration de la machine A

X
Serveur DNS ns.soc.pays IP 25.0.1.33 Routeur 25.0.1.1 Masque 255.255.255.0 Eth 08:00:02:54:E2:A0 Fichier de configuration de la machine X

W
Serveur Web www.soc.pays IP 25.0.2.55 DNS 25.0.1.33 Routeur 25.0.2.1 Masque 255.255.255.0 Eth 08:00:02:54:E2:7F Fichier de configuration de la machine W

La machine A doit en premier lieu obtenir du serveur DNS la conversion du nom symbolique www.soc.pays en adresse IP. Son chier de conguration lui fournit ladresse IP du serveur DNS interroger, il faut donc tout dabord mettre une requte ARP pour obtenir son adresse MAC.

236

Architecture des rseaux

Chapitre

Trame 1 sur rseau 1 = trame Ethernet diffuse par A (@MAC A vers @MAC FF:FF:FF:FF:FF:FF). Cette trame contient une requte ARP (champ protocole = 0805) pour connatre ladresse MAC du serveur DNS que A connat seulement par son adresse IP. Le serveur DNS qui a reu cette trame et reconnu son adresse IP rpond. Trame 2 sur rseau 1 = trame Ethernet (@MAC X vers @MAC A) contenant la rponse ARP fournissant ladresse MAC du serveur DNS. A inscrit dans sa table ARP la correspondance @IP 25.0.1.33= @MAC 08:00:02:54:E2:A0, et maintenant que A connat ladresse MAC de X, elle peut lui envoyer une trame Ethernet. Trame 3 sur rseau 1 = trame Ethernet (@MAC A vers @MAC X). Cette trame contient un datagramme IP (@IP A vers @IP X). Le datagramme contient un message UDP (port distant 53) contenant la requte au DNS ( je recherche ladresse IP de www.soc.pays ). Trame 4 sur rseau 1 = trame Ethernet (@MAC X vers @MAC A). Cette trame contient un datagramme IP (@IP X vers @IP A). Le datagramme contient un message UDP (port local 53) portant la rponse du DNS (www.soc.pays = @IP 25.0.2.55). A connat maintenant ladresse IP de son correspondant, en loccurrence le serveur Web. En utilisant le masque de sous-rseau qui est prsent dans son chier de conguration, A constate que le serveur Web nest pas dans le mme (sous-)rseau que lui. Il faudra donc passer par le routeur pour sortir du (sous-)rseau. Or le routeur nest connu (chier de conguration de A) que par son adresse IP que nous noterons @IP R1 : il faut procder une nouvelle requte ARP pour obtenir son adresse MAC.

Remarque
On pourrait se demander pourquoi le chier de conguration contient ladresse IP du routeur alors que cest ladresse MAC du routeur qui sert, celui-ci tant sollicit localement pour chaque message qui doit sortir du rseau. Fournir ladresse IP est une solution souple qui permet de changer lquipement matriel du routeur sans avoir recongurer toutes les machines Nous avons vu au chapitre 5 quon utilise aujourdhui la notion dadresse IP virtuelle de routeur qui apporte une souplesse supplmentaire.

Trame 5 sur rseau 1 = trame Ethernet diffuse par A (@MAC A vers @MAC FF:FF:FF:FF:FF:FF). Cette trame contient une requte ARP pour connatre ladresse MAC du routeur connu par @IP R1. Trame 6 sur rseau 1 = trame Ethernet (@MAC R1 vers @MAC A). Cette trame contient la rponse ARP fournissant ladresse MAC du routeur (ct sous-rseau 1). A inscrit dans sa table ARP la correspondance @IP 25.0.1.1= @MAC 08:00:02:54:E2:A2 et maintenant que A connat ladresse MAC du routeur (note @MAC R1), elle peut lui envoyer une trame Ethernet. Trame 7 sur rseau 1 = trame Ethernet (@MAC A vers @MAC R1). Cette trame contient un datagramme IP (@IP A vers @IP W) qui contient un segment TCP de demande douverture de connexion (drapeau SYN) pour HTTP (port 80).

Trame 8 sur rseau 2 = trame Ethernet diffuse par le routeur (@MAC R2 vers @MAC FF:FF:FF:FF:FF:FF). Cette trame contient une requte ARP pour connatre ladresse MAC de W dont le routeur ne connat que @IP W.

Les applications 237

Exercices

Le routeur a reu la trame 7 puisquelle lui tait adresse. Il en a dcapsul le datagramme IP et, aprs consultation de sa table de routage, a constat que le rseau de W tait joignable directement sur sa deuxime interface. Nous faisons ici lhypothse que ladresse MAC de W ne gure pas dans la table ARP du routeur.

Trame 9 sur rseau 2 = trame Ethernet (@MAC W vers @MAC R2). Cette trame contient la rponse ARP fournissant ladresse MAC de W. Le routeur inscrit dans sa table ARP la correspondance @IP 25.0.2.55= @MAC 08:00:02:54:E2:7F et maintenant quil connat ladresse MAC de W, il peut lui envoyer une trame Ethernet. Trame 10 sur rseau 2 = trame Ethernet (@MAC R2 vers @MAC W). Cette trame contient le datagramme IP (@IP A vers @IP W), qui renferme le segment TCP de demande douverture de connexion pour HTTP (port 80). Ce datagramme est celui qui tait dans la trame 7, la seule diffrence est le champ TTL que le routeur a rduit de 1 et donc le bloc de contrle derreur sur len-tte qui a t de ce fait recalcul. Trame 11 sur rseau 2 = trame Ethernet diffuse par W (@MAC W vers @MAC FF:FF:FF:FF:FF:FF) contenant une requte ARP pour connatre ladresse MAC du routeur (A est dans un autre sous-rseau). Trame 12 sur rseau 2 = trame Ethernet (@MAC R2 vers @MAC W). Cette trame contient la rponse ARP fournissant ladresse MAC du routeur (ct sous-rseau 2). Trame 13 sur rseau 2 = trame Ethernet (@MAC W vers@MAC R2). Cette trame contient un datagramme IP (@IP W vers @IP A), qui possde un segment TCP de rponse positive la demande douverture de connexion (drapeaux SYN et ACK) pour http. Trame 14 sur rseau 1 = trame Ethernet diffuse par R1 (@MAC R1 vers @MAC FF:FF:FF:FF:FF:FF). Cette trame contient la requte ARP pour connatre ladresse MAC de A. Trame 15 sur rseau 1 = trame Ethernet (@MAC A vers@MAC R1). Cette trame contient la rponse ARP fournissant ladresse MAC de A. Trame 16 sur rseau 1 = trame Ethernet (@MAC R1 vers @MAC A). Cette trame contient un datagramme IP (@IP W vers @IP A), qui renferme le segment TCP de rponse positive la demande douverture de connexion pour HTTP. Ce datagramme est celui qui a t transport dans le rseau 2 encapsul dans la trame 13, aux champs TTL et bloc de contrle derreur prs. Trame 17 sur rseau 1 = trame Ethernet (@MAC A vers @MAC R1). Cette trame contient un datagramme IP (@IP A vers @IP W), lequel recle un segment TCP de conrmation douverture de connexion (drapeau ACK) pour HTTP (port 80). Trame 18 sur rseau 2 = trame Ethernet (@MAC R2 vers @MAC W). Cette trame contient le datagramme IP (@IP A vers @IP W), qui contient le segment TCP de conrmation douverture de connexion (drapeau ACK) pour HTTP (port 80).

Remarque
Cet exercice est volontairement dtaill. Lobjectif tait de montrer lensemble du trac gnr par la recherche des adresses MAC et par lutilisation du serveur DNS. Dautre part, il illustre la notion dencapsulation en insistant sur le fait que les requtes HTTP ou DNS sont transmises dans des messages de la couche 4 (TCP ou UDP), lesquels sont vhiculs par les datagrammes IP. Ciaprs, vous trouverez une version simplie dans laquelle on suppose que tous les caches ARP contiennent les correspondances ncessaires : on enlve tout le trac ARP.

Il ne reste que deux phases dchange, linterrogation de lannuaire et louverture de la connexion TCP avec le serveur Web.

238

Architecture des rseaux

Chapitre

a. Interrogation de lannuaire : Trame 3 sur rseau 1 = trame Ethernet (de A vers X) contenant un datagramme IP (de A vers X) contenant un message UDP contenant la requte au DNS (recherche adresse IP de W ?). Trame 4 sur rseau 1 = trame Ethernet (de X vers A) contenant un datagramme IP (de X vers A) contenant un message UDP contenant la rponse du DNS (avec adresse IP de W). b. Ouverture de connexion TCP en trois temps avec le serveur Web :

Trame 7 sur rseau 1 = trame Ethernet (de A vers R1) contenant un datagramme IP (de A vers W) contenant un message TCP de demande douverture de connexion (drapeau SYN) pour HTTP (port 80). On traverse le routeur. Trame 10 sur rseau 2 = trame Ethernet (de R2 vers W) contenant le datagramme IP (de A vers W) contenant un message TCP de demande douverture de connexion (drapeau SYN) pour HTTP (port 80). Trame 13 sur rseau 2 = trame Ethernet (de W vers R2) contenant un datagramme IP (de W vers A) contenant un message TCP de rponse positive la demande douverture de connexion (drapeaux SYN et ACK) pour HTTP. On traverse nouveau le routeur. Trame 16 sur rseau 1 = trame Ethernet (de R1 vers A) contenant un datagramme IP (de W vers A) contenant un message TCP de rponse positive la demande douverture de connexion (drapeaux SYN et ACK) pour HTTP. Trame 17 sur rseau 1 = trame Ethernet (de A vers R1) contenant un datagramme IP (de A W) contenant un segment TCP de conrmation douverture de connexion (drapeau ACK) pour HTTP. On traverse encore le routeur. Trame 18 sur rseau 2 = trame Ethernet (de R2 vers W) contenant le datagramme IP (de A W) contenant le segment TCP de conrmation douverture de connexion (drapeau ACK) pour HTTP (port 80). Enn, si on ne donne que la vision applicative, il y a deux changes. a. Interrogation de lannuaire : requte de A au DNS (recherche adresse IP de W) et rponse du DNS (avec adresse IP de W). b. Ouverture de connexion TCP en trois temps avec le serveur Web : demande douverture de connexion de A (drapeau SYN) pour W (port 80) ; rponse positive la demande douverture de connexion de W (drapeaux SYN et ACK) pour A ; conrmation douverture de connexion de A (drapeau ACK) pour W.

EXERCICE 4

SERVEUR DHCP

ET SERVEUR

DNS

Les applications 239

Exercices

Cet exercice est le mme que le prcdent mais on suppose que ladresse utilise dans le rseau est 172.25.0.0 avec un masque 255.255.192.0: le rseau est dcoup en deux sous-rseaux et la machine Y est un serveur DHCP, situ dans le premier sous-rseau (voir gure 9.6). Le serveur DNS, le serveur Web et le routeur possdent des adresses xes, respectivement 172.25.64.33, 172.25.128.55, 172.25.64.1 et 172.25.128.1, les deux dernires tant les deux adresses du routeur. Le serveur DHCP distribue dynamiquement les adresses dans la plage 172.25.64.64 172.25.64.191 sur le rseau 1. La premire adresse disponible est 172.25.64.75.

(suite)

Figure 9.6
Conguration tudie.

Fichier de configuration du routeur ct 1 Routeur IP 172.25.64.1 Masque 255.255.192.0 Eth1 08:00:02:54:E2:A2 Rseau 172.25.64.0

Fichier de configuration du routeur ct 2 Routeur IP 172.25.128.1 Masque 255.255.192.0 Eth2 08:00:02:54:E2:A3 Rseau 172.25.128.0

Routeur

W
Serveur Web

dhcp.soc.pays IP 172.25.64.34 Routeur 172.25.64.1 Masque 255.255.192.0 Eth 08:00:02:54:E2:80 Fichier de configuration de la machine Y ns.soc.pays IP 172.25.64.33 Routeur 172.25.64.1 Masque 255.255.192.0 Eth 08:00:02:54:E2:10 Fichier de configuration de la machine X Utiliser DHCP Eth 08:00:02:54:E2:A1 Fichier de configuration de la machine A

www.soc.pays IP 172.25.128.55 DNS 172.25.64.33 Routeur 25.0.2.1 Masque 255.255.192.0 Eth 08:00:02:54:E2:7F Fichier de configuration de la machine W

La machine A connat son adresse MAC et sait quil faut utiliser DHCP. Dcrivez le trac supplmentaire par rapport lexercice 3 pour que la machine A obtienne son adresse IP avant de dmarrer le scnario prcdent.

Par rapport lexercice prcdent, il faut ajouter le trac li la recherche dun serveur DHCP et le dialogue avec celui-ci. Trame I sur rseau 1 = trame Ethernet diffuse par A (@MAC A vers @MAC FF:FF:FF:FF:FF:FF). Cette trame contient un datagramme IP (@IP 0.0.0.0 vers @IP 255.255.255.255), qui encapsule un message UDP (port 67) contenant le message DHCPDiscover.

240

Architecture des rseaux

Chapitre

Trame II sur rseau 1 = trame Ethernet diffuse par Y (@MAC Y vers @MAC FF:FF:FF:FF:FF:FF ). Cette trame contient un datagramme IP (@IP Y vers @IP 172.25.64.75 ), qui encapsule un message ICMP (Echo Request). Le serveur DHCP teste si ladresse IP quil veut proposer A est disponible en envoyant un ping sur cette adresse. Si ladresse est disponible, la requte ping nobtient pas de rponse. Trame III sur rseau 1 = trame Ethernet (@MAC Y vers @MAC A). Cette trame contient un datagramme IP (@IP Y vers @IP 255.255.255.255), qui encapsule un message UDP (port 68) contenant le message DHCPOffer avec @IP 172.25.64.75. Trame IV sur rseau 1 = trame Ethernet diffuse par A (@MAC A vers @MAC FF:FF:FF:FF:FF:FF). Cette trame contient un datagramme IP (@IP 0.0.0.0 vers @IP 255.255.255.255), qui encapsule un message UDP (port 67) contenant le message DHCPRequest : Jai choisi le serveur DHCP Y avec son offre @IP 172.25.64.75. Trame V sur rseau 1 = trame Ethernet (@MAC Y vers @MAC A). Cette trame contient un datagramme IP (@IP Y vers @IP 172.25.64.75), qui encapsule un message UDP (port 68) contenant le message DHCPAck : Voici les autres informations de conguration : masque de sous-rseau, adresse IP routeur par dfaut, adresse IP serveur DNS Trame VI sur rseau 1 = trame Ethernet diffuse par A (@MAC A vers @MAC FF:FF:FF:FF:FF:FF). Cette trame contient une requte ARP : Je cherche ladresse MAC de la machine dadresse IP 172.25.64.75. A priori, si tout sest bien pass (ladresse IP propose ntait pas dj attribue une autre machine du rseau), la trame VI na pas de rponse puisque ladresse recherche est justement celle qui est propose la station A. Les trames I VI sont changes avant les trames 1 18 de lexercice prcdent.

EXERCICE 5

ENREGISTREMENTS

SUR UN SERVEUR

DNS

Le paramtrage dun serveur DNS contient les temporisateurs suivants :


21600; Refresh 3600; Retry 604800; Expire 172800; Minimum

quoi correspondent ces diffrentes dures ? Les temporisateurs sont exprims en secondes : 3600 reprsente une heure ; 21600 = six heures ; 172800 = deux jours et 604800 = une semaine. Refresh est lintervalle de temps (ici six heures) entre deux vrications dun serveur secondaire sur le serveur ofciel primaire pour savoir sil y a eu des modications et si une mise jour est ncessaire ; Retry est le temps dattente (ici une heure) dun serveur secondaire avant de renouveler sa mise jour si la prcdente a chou ; Expire est le temps (ici une semaine) au bout duquel les informations sont jetes si elles nont pas pu tre mises jour ; Minimum est la dure (ici deux jours) pendant laquelle un serveur DNS peut conserver en cache un enregistrement du chier de la base de donnes.

Les applications 241

Exercices

EXERCICE 6

SERVEUR DNS

ET CACHE

Soit un serveur DNS qui a pour nom toutatis.sous_domaine.mon_domaine.mon_pays qui est serveur primaire de la zone sous_domaine.mon_domaine.mon_pays et dont le cache est encore vide. Un utilisateur sollicite ce serveur pour obtenir ladresse IP de ftp.mon_domaine.mon_pays. Quel serveur interroge toutatis pour rpondre ? Le mme utilisateur cherche maintenant www.mon_domaine.mon_pays. Mme question ! Mme question maintenant pour www.autre_domaine.mon_pays puis pour ftp.sous_domaine. autre_domaine.mon_pays. Le serveur DNS interroge un serveur racine pour savoir qui gre .mon_pays. Avec la rponse, il interroge le serveur DNS qui gre mon_pays pour savoir qui gre mon_domaine.mon_pays. Avec la rponse, il interroge enn le serveur DNS qui gre mon_domaine pour rcuprer ladresse IP de ftp.mon_domaine.mon_pays. Il met jour son cache avec les informations rcoltes. Cette fois-ci, les informations du cache sont utiles. Il suft dinterroger un serveur DNS qui gre mon_domaine.mon_pays pour connatre ladresse du serveur Web www.mon_domaine.mon_pays. Le serveur DNS met nouveau jour son cache avec les informations rcoltes. Le serveur DNS sadresse au serveur DNS qui gre mon_pays (et quil connat dj) pour savoir qui gre autre_domaine.mon_pays puis il interroge ce dernier pour savoir ladresse du serveur www.autre_domaine.mon_pays. Il met encore jour son cache avec les informations rcoltes. Ces informations seront utiles pour la requte suivante. Il sufra dinterroger le serveur DNS connu qui gre autre_domaine.mon_pays pour connatre ladresse du serveur DNS qui gre sous_domaine.autre_domaine.mon_pays et demander ce dernier ladresse du serveur ftp ftp.sous_domaine. autre_domaine.mon_pays . Une dernire fois, il met jour son cache avec les informations rcoltes.

EXERCICE 7

PROTOCOLES

DE CONSULTATION DE BOTE AUX LETTRES

tablissez un tableau comparatif des deux protocoles POP et IMAP quun usager peut utiliser pour consulter sa bote aux lettres selon les critres suivants : lieu de stockage des messages, espace mmoire ncessaire sur le serveur, possibilit de cration de dossiers de courrier, dinterroger sa bote aux lettres depuis nimporte o, dutiliser Webmail

POP

IMAP

Lieu de stockage des messages Espace mmoire sur le serveur Dossiers de courrier Interrogation de la bote aux lettres de nimporte o Possibilit dutiliser Webmail

Chez le client ds quils Les messages sont sont transfrs conservs sur le serveur Faible Chez le client Non Non concern Grand Sur le serveur Oui Non concern

242

Architecture des rseaux

Chapitre

Remarque
Un fournisseur daccs peut avoir intrt proposer ses clients de messagerie lutilisation dIMAP mme si cela engendre des cots de stockage importants sur le serveur : il peut proposer de facturer le stockage au-del de quelques Mo, gnrant ainsi du chiffre daffaires.

EXERCICE 8

ANALYSE

DE LEN-TTE DUN COURRIER LECTRONIQUE

Votre outil de messagerie permet dafcher len-tte complet dun courrier lectronique reu. Commentez lexemple ci-aprs en explicitant le chemin par lequel est pass le message.
Return-Path: <nom.prenom@free.fr> Received: from mel-rti17.wanadoo.fr (192.168.156.136) by ms9.wanadoo.fr; 2 May 2006 08:36:38 +0200 Received: from postfix11.free.fr (213.228.0.2) by mel-rti17.wanadoo.fr id 3CD0C9B00000BEB5; Thu, 2 May 2006 08:36:33 +0200 Received: from postfix12.free.fr (postfix12.free.fr [213.228.0.130]) by postfix11.free.fr (Postfix) with ESMTP id E16611027EB; Thu, 2 May 2002 08:36:31 +0200 (CEST) Received: from oemcomputer (montpellier1-a76214781 254.dial.proxad.net [62.147.81.254]) by postfix12.free.fr (Postfix) with SMTP id BA1C1AB595; Thu, 2 May 2006 08:34:32 +0200 (CEST) Message-ID: <001701c1f1a3$0d1c3440$fe51933e@oemcomputer> From: "moi" <nom.prenom@free.fr> To: Subject: Date: Thu, 2 May 2006 08:27:35 +0200 MIME-Version: 1.0 Content-Type: multipart/related; type="multipart/alternative"; boundary="----=_NextPart_000_0010_01C1F1B3.369BBA60" X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000

Le message a t mis le 2 mai 2006 8 h 27 min 35 s (+ deux heures par rapport lheure GMT, ce qui correspond lheure dt en France). Il a t compos avec loutil de messagerie de Microsoft Outlook Express 6 avec une priorit normale et il a t relay par plusieurs serveurs de messagerie. Il faut lire la succession des relais de messagerie lenvers : len-tte contenant linformation sous la forme reu de la part de w par x ; reu de la part de x par y ; reu de la part de y par z , le chemin emprunt est, dans lordre chronologique, z y x w. Les trois premiers relais sont des serveurs du fournisseur daccs Free (avec les adresses IP 62.147.81.254, 213.228.0.130 et 213.228.0.2), les deux derniers des serveurs du fournisseur Wanadoo : mel-rti17.wanadoo.fr et ms9.wanadoo.fr (dont on na pas ladresse IP publique).

Les applications 243

Exercices

Remarque
Le protocole ESMTP qui apparat dans cet en-tte est une extension de SMTP (Extended SMTP). La RFC 1651 dnit une commande nouvelle, EHLO (les lettres E et H inverses), qui introduit un dialogue ESMTP si les deux parties le reconnaissent. Si le serveur distant ne le reconnat pas, la commande est ignore et le dialogue continue en SMTP classique. Si le serveur distant reconnat EHLO, il envoie la liste des extensions quil supporte et le client peut alors utiliser celles quil souhaite.

EXERCICE 9

MISE

DISPOSITION DUN LOGICIEL PAR UN SERVEUR

FTP

La socit soc souhaite proposer un logiciel gratuit tlcharger sur son serveur Web (www.soc.pays) et place le programme correspondant logiciel.prog dans un rpertoire FTP public ftp/pub/freeware/. Quelle sera lURL pour atteindre ce produit ? LURL sera ftp://www.soc.pays /ftp/pub/freeware/ logiciel.prog.

Remarque
Sur les navigateurs modernes, le fait que le nom symbolique commence par www induit lutilisation du protocole HTTP. Un serveur Web peut bien videmment proposer des documents transfrer par dautres protocoles que HTTP, il faut alors explicitement prciser le protocole utilis, ici FTP.

EXERCICE 10 SERVEUR WEB

SUR UN AUTRE PORT

Pour des raisons de scurit, on peut tre amen dvelopper un serveur Web sur un autre port que le port 80. Quelles seront les consquences pour les clients ? Le serveur Web nest accessible que si les clients connaissent le numro de port actif. Il faut donc publier celui-ci par exemple avec lURL http://www.domaine.pays:8080, dans laquelle 8080 est le port utilis.

Remarque
La RFC 1738 standardise cette criture.

244

Architecture des rseaux

Index
A
ACL (Access Control List) 126 Administration des rseaux 73 Adressage 59 Adresse 59 agrgation des 203 classes d 148 de boucle locale (loopback address) 149 de diffusion (broadcast address) 107, 149 de groupe 207 IP 148 IP prive 151 IP publique 151 logique 67 MAC 107, 133 multicast 149 nom canonique 220 physique 67 rsolution 221 sans classe 152 symbolique 68 ADSL 13, 24 AFNIC (Association franaise pour le nommage Internet en coopration) 221 Agent de domiciliation (home agent) 208 Agents extrieurs (foreign agents) 208 Algorithme de Clark et Nagle 186 de Jacobson 184 de Karn 185 Alias 221 Annuaire lectronique 225 Applets Java 233 Arbre couvrant 122, 144, 207 MSTP (Multiple Spanning Tree) 125 RSTP (Rapid Spanning Tree Protocol) 123 STP (Spanning Tree Protocol) 122 Architecture TCP/IP, pile TCP/ IP 95, 149 ARP (Address Resolution Protocol) 153 ASP (Active Server Pages) 233 ATM (Asynchronous Transfer Mode) 64 Champ 26 Checksum 158, 176, 177, 180, 189 Chemin virtuel 65 CIDR (Classless Inter Domain Routing) 152, 167 Circuit 59, 61 de donnes 7, 11 virtuel 69 Classes dadresses 148 A 148 B 149 C 149 D 149, 152 Codec 7 Collisions 108 Commutateurs 59, 124 commutateurs-routeurs 125 Commutation de cellules 64 de circuits 61 de messages 62 de paquets 62 Concentrateur 116 Contrle derreurs Voir contrle de validit 27 de congestion 73, 186 de flux 31 Contrle de validit bit de parit 28 code cyclique 29 contrle polynomial 44, 46 CRC (Cyclic Redundancy Check) 29 erreurs rsiduelles 28 FCS (Frame Control Sequence) 38 LRC (Longitudinal Redundancy Check) 28, 43

B
Backbone 204 Bail 219 Bases, bornes, points daccs 129 BGP (Border Gateway Protocol) 205 Blog 234 Bluetooth 128 BNC 115 Bote aux lettres 228 BOOTP (Bootstrap Protocol) 218, 227 Boucle locale 2 BPDU de configuration (Bridge Protocol Data Unit) 123 Bridges 122 BSS (Basic Service Set) 129 By-pass 117

C
Cble coaxial 2 CGI (Common Gateway Interface) 233

Index 245

Contrle de validit (suite) parit longitudinale 28 verticale 28 polynme gnrateur 29 polynomial 29 redondance 27 total de contrle (checksum) 176 VRC (Vertical Redundancy Check) 28, 43 Cookie 233 Couche 90, 92 CSMA/CA (CSMA with Collision Avoidance) 130 CSMA/CD (CSMA with Collision Detection) 111, 113 Cut through 120

Foreign agents 208 Format de la trame Ethernet 114 HDLC 38 Token Ring 117 du datagramme IP 156 UDP 189 du segment TCP 179 Forum 228 FQDN (Fully Qualified Domain Name) 221 Fragmentation 62, 158 FTP (File Transfer Protocol) 226

Interface srie 12 jonction V24 12 port USB (Universal Serial Bus) 13 RS232C 12 Intervalle de temps IT 66 IP (Internet Protocol) 147 IPv6 (IP version 6) 160 ISO 7 ITU (International Telecommunications Union) 7

J
JSP (Java Server Pages) 233

G
Gateways 127 GGP (Gateway to Gateway Protocol) 156 Gigabit Ethernet 120 duplex intgral 120 extension de trame 120 mode rafale 120 semi-duplex 120 Groupe primaire ou canal_E1 66

L
LAN (Local Area Network) 59 LDAP (Lightweight Directory Access Protocol) 225 Liaison de donnes 26 lalternat 30 contention 30 duplex intgral (full-duplex) 30 semi-duplex (half-duplex) 30 simplex 30 Listes de contrle daccs, ACL (Access Control List) 126 de diffusion 230 LLC (Logical Link Control) 94, 106, 110

D
Datagramme 69, 154 DHCP (Dynamic Host Configuration Protocol) 152, 218 Diffusion (broadcast) 59, 207 DMT (Discrete MultiTone) 14 DNS (Domain Name System) 188, 220 Domaine de collision 113 Dure de vie, TTL (Time To Live) 157

E
Echo Reply 160 Echo Request 160 Edge routers 204 EGP (Exterior Gateway Protocol) 156, 201 mulation de connexion 233 Encapsulation 63, 91, 155 Entit 90, 91 pine dorsale (backbone zone) 204 quipements terminaux 58 tat des liens 206 ETCD (quipement de terminaison du circuit de donnes) 7, 58 Ethernet 113 10 Base 2 115 10 Base 5 115 10 Base F 116 10 Base T 116 format de la trame 114 tiquetage de VLAN 121 ETTD (quipement terminal de traitement de donnes) 7, 58

H
HDLC (High level Data Link Control) 38 bit P/F 39 champ Address 38 champ Control 38 champ FCS 38, 41 champ Information 38 format dune trame 38 trames I 39 trames S 39 trames U 40 Home agent 208 HTML (HyperText Markup Language) 231 HTTP (HyperText Transfer Protocol) 231 Hub 116

M
MAC (Medium Access Control) 94, 106 MAN (Metropolitan Area Network) 106 Masque de sous-rseau (subnet mask) 150 Messagerie lectronique 228 Mthode daccs au support, niveau MAC 108 Mtrique, cot d'un chemin 202 MIME (MultiPurpose Mail Extension) 228, 231 Modle de rfrence 90 IEEE 94 OSI 90, 92 pour les rseaux locaux 94 Modem 7 Moteur de recherche 234 MTU (Maximum Transfer Unit) 156, 158 Multicast 149, 207 Multiplexage 11 AMRF (accs multiple rpartion en frquence) 65 AMRT (accs multiple rpartition dans le temps) 66 de circuits virtuels 78

I
IANA (Internet Assigned Numbers Authority) 176 ICANN (Internet Corporation for Assigned Names and Numbers) 148 ICMP (Internet Control Message Protocol) 156, 159 IGMP (Internet Group Management Protocol) 207 IGP (Interior Gateway Protocol) 201 IMAP (Internet Message Access Protocol) 229

F
Faisceaux (trunks) 61 Fast Ethernet 120 Fentre danticipation 178 Fentre de congestion 187 Fibre optique 3

246

Architecture des rseaux

FDMA (Frequency Division Multiple Access) 65 frquentiel ou spatial 65 hirarchie de 66 TDMA (Time Division Multiple Access), 66 temporel 66 trame multiplex 66 MySQL 233

IP 95, 147 POP3 229 PPP 41 SMTP 229 TCP 177 TFTP 227 UDP 188

patate chaude (hot potatoe) 72 rparti 72 RIP 126 Routers voir Routeurs 127 Routeurs (routers) 127 de bordure (edge routers) 204 RTT (Round Trip Time) 184

R
RARP (Reverse Address Resolution Protocol) 153 Rassemblage 63 Rpteurs 113, 122 Rseau commutation 59 infrastructure 129 ad hoc 129 de communication 58 de transport 58 local virtuel 121, 141 peer-to-peer 206, 208 Rseaux sans fil 128 infrastructure 129 ad hoc 129 Rsolution dadresses 153, 221 Resolvers 223 RFC (Request For Comments) 97 1058 201 1723 201 1733 229 1771 205 1774 205 1918 151 1939 229 2060 229 2131 218 2236 207 2338 126 3022 151 793 178 821 229 822 228 826 153 RFP (Reverse Forwarding Path) 207 RIP (Routing Information Protocol) 156, 188, 201 RIPE-NCC (Rseaux_IP Europens Network Coordination Center) 221 RJ45 116 Routage 59, 72, 200 tat des liens 206 vecteurs de distance 206 adaptatif 72 BGP 126 centralis 72 interVLAN 125 local 72 mtrique 202 OSPF 126 par inondation 72

N
NAT (Network Address Translation) 151 Navigation, Web 230 Nud daccs, ETCD 58 Normalisation 96 Notation dcimale pointe 148 Numro de port 176 Numro de voie logique 70, 76

S
SA (systme autonome) 204 SAP(i) 91 SDU(i + 1) 91 Segment 177 Segmentation dun rseau local 124 Serveur DHCP 219 DNS 222 cache 222 primaire 222 secondaire 222 Service 90 orient connexion, mode connect 68 sans connexion 68 Service Access Point(i) 91 SMTP (Simple Mail Transfer Protocol) 229 SNMP (Simple Network Management Protocol) 188 Socket 176 Solveurs de noms (resolvers) 223 Spanning Tree 122, 207 SPF (Shortest Path First) 203 SSO (Single Sign On) 225 Standards IEEE 802.1 106 802.11 128 802.11a 129 802.11b 129 802.11g 128 802.15 128, 129 802.1d 122 802.1Q 121, 125, 142 802.1w 123 802.2 106, 110 802.3 111 802.3z 120 802.5 116 Stop-and-Wait 227 Store and forward 62, 120 STP (Shielded Twisted Pair) 2 Subnet mask 150 Supervision de la liaison anticipation 34 DISC (DISConnect) 40 DM (Disconnect Mode) 40 fentre 34, 36 FRMR (FRaMe Reject) 40 Go-back-N 36

O
OSPF (Open Shortest Path First) 156, 203

P
Paire torsade 2 Passerelles 127 Priode de vulnrabilit 111, 132 PHP 233 Piggy-backing 37 Ping 160, 169, 219 Plan de cblage 115, 119 Plug-in 233 PMD (Physical Media Dependent sublayer) 107 PMI (Physical Media Independent sublayer) 107 PMTU (Path Maximum Transfer Unit) 161 Point daccs des services (i) 91 Pont (bridge) 122 dsign 123 racine 123 POP (Post Office Protocol) 229 Port 176 racine 123 Postcblage 110 PPP (Point to Point Protocol) 41 Prcblage 110 Primitive 90 PDU(i) 90 Protocole 26, 90 de liaison de donnes ou de communication 26 DHCP 218 FTP 226 HDLC 38 IMAP4 229

Index 247

Supervision de la liaison (suite) modulo 33 N(R) 35, 39 N(S) 33 numrotation 33 piggy-backing 37 SABM (Set Asynchronous Balanced Mode) 40 Stop-and-Wait 38 trame REJ (Reject) 36, 53 RNR (Receiver Not Ready) 31 RR (Receiver Ready) 31 SREJ (Selective Reject) 39, 53 de supervision 31 S 39 U 40 UA (Unnumbered Acknowledgement) 40 V(R) 35 V(S) 34 XOFF 32 XON 32 Support de transmission bande passante 4 bruit 5 cble coaxial 2 capacit dun support de transmission 6 critre de Nyquist 11 dbit binaire 11 dcibel 5, 15 dlai de propagation 11 distorsion 5 fibre optique 3 paire torsade 2 rapidit de modulation 11 taux derreurs 11 Switches 120

T
Table de routage 155, 200 Tag (tiquette de VLAN) 121 TCP (Transmission Control Protocol) 96, 175 Techniques daccs au support accs alatoire 111 accs dterministe 111 CSMA/CA (CSMA with Collision Avoidance) 130

CSMA/CD (CSMA with Collision Detection) 111 jeton 111 adress 112 non adress 112 Techniques de transmission code Manchester 9 diffrentiel 117 en bande de base 8 modulation damplitude 9 de frquence 10 de phase 10 par modulation 9 techniques talement de spectre (spread spectrum) 129 valence 10 Temporisateur, temporisation 32, 34, 184, 185 TFTP (Trivial File Transfer Protocol) 226 Thorme de Shannon 6, 129 Token Ring 116 AC (Access Control) 117 ARI (Address Recognized Indicator) 118 AWC (Active Wire ring Concentrator) 119 bit M 117 by-pass 119 ED (End Delimitor) 117 FCI (Frame Copied Indicator) 118 format de la trame 117 FS (Frame Status) 117 gestion de lanneau 118 latence de lanneau 117, 138 moniteur 117 moniteurs dormants (Standby Monitor) 118 NAUN (Nearest Active Upstream Neighbour) 118 trame AMP (Active Monitor Present) 118 trame Claim Token 118 trame SMP (Standby Monitor Present) 118 Topologie anneau 108, 117 bus 108 compltement maille 60 en arbre 60

en toile 60, 108 logique 108, 109 maille 60 physique 108 Traceroute 160, 169, 188 Trame 26 UI (Unnumbered Information) 41 Transmission sans fil faisceaux hertziens 3 ondes radio 4 Transparence 26, 42 bit stuffing 27 fanion, flag 26 Trunks 61, 124

U
UDP (User Datagram Protocol) 96, 175 URL (Uniform Resource Locator) 231 UTP (Unshielded Twisted Pair) 2

V
Vecteur de distance 206 VLAN (Virtual LAN) 121, 125 VPN (Virtual Private Network) 128 VRRP (Virtual Router Redundancy Protocol) 126, 145

W
WAN (Wide Area Network) 59 Web 230 Weblog 234 Wi-Fi 128 Wiki 234 WLAN (Wireless LAN) 106, 128 WPAN (Wireless Personal Area Network) 128

X
X.25 68, 77 X.400 228 X.500 225

Z
Zone OSPF 204

248

Architecture des rseaux

Informatique

Synthse de cours

Architecture des rseaux & exercices


corrigs
Cet ouvrage analyse les diffrents lments qui composent un rseau, leur architecture ainsi que les protocoles de communication. Il explique tout dabord comment les informations sont codes et envoyes sur les supports de transmission, avant de dcrire les mcanismes de base dun protocole de liaison de donnes. Les concepts gnraux des rseaux et de leur architecture sont illustrs par de nombreux exemples. Les principaux protocoles TCP/IP, le routage et les applicatifs compltent lexpos des caractristiques des rseaux. Les exercices, qui occupent la moiti du livre, sont intgralement corrigs et permettent au lecteur dapprhender de faon progressive les diffrentes notions : adressage, routage, commutation, protocole et service, encapsulation, etc. Ce livre sadresse aux tudiants de licence, dIUT et de BTS, ainsi quaux lves ingnieurs : il se veut un cadre pratique dapprentissage de larchitecture des rseaux informatiques ainsi quun prcieux outil de rvision. Progressif dans son approche des concepts, il constitue louvrage dinitiation idal au domaine des rseaux.

Les auteurs :
Danile Dromard est matre de confrences luniversit Pierre et Marie Curie (Paris 6). Son domaine denseignement et de recherche concerne les architectures informatiques et les rseaux. Elle est responsable de lunit denseignement introduction aux rseaux en troisime anne de licence dinformatique. Elle a publi plusieurs ouvrages sur les rseaux. Dominique Seret, professeur luniversit Ren Descartes (Paris 5), est directrice de lUnit de Formation et de Recherche en mathmatiques et informatique. Elle enseigne lintroduction aux rseaux en licence dinformatique ainsi que la scurit des rseaux en master MIAGE. Son domaine de recherche porte sur les rseaux, lvaluation de leurs performances et leur scurit. Elle a publi plusieurs ouvrages sur ces sujets.

Dans la mme collection :


Le langage C, J.-M. Lry Le langage C++, M. Vasiliu Java 5, R. Chevallier UML 2, B. Charroux, A. Osmani et Y. Thierry-Mieg Cration de bases de donnes, N. Larrousse SQL, F. Brouard, C. Soutou LateX, J.-C. Charpentier, D. Bitouz Algorithmique, Applications en C, J.-M. Lry Algorithmique en C++, J.-M. Lry Algorithmique en Java 5, J.-M. Lry Mathmatiques discrtes appliques linformatique, R. Haggarty Architecture de lordinateur, E. Lazard Systmes dexploitation, B. Lamiroy, L. Najman, H. Talbot Linux, J.-M. Lry

La collection Synthex informatique propose de (re)-dcouvrir les fondements thoriques et les applications pratiques des principales disciplines de science informatique. partir dune synthse de cours rigoureuse et dexercices aux corrigs dtaills, le lecteur, tudiant ou professionnel, est conduit au cur de la discipline, et acquiert une comprhension rapide et un raisonnement solide.

Pearson Education France 47 bis, rue des Vinaigriers 75010 Paris Tl. : 01 72 74 90 00 Fax : 01 42 05 22 17 www.pearson.fr

ISBN : 978-2-7440-7385-4

Vous aimerez peut-être aussi