SlideShare une entreprise Scribd logo
1  sur  87
Télécharger pour lire hors ligne
Cours de r seaux
Ma trise d'informatique
Universit d'Angers
Pascal Nicolas
U.F.R. Sciences de l'Universit d'Angers
E-Mail: pascal.nicolas@univ-angers.fr
Web: www.info.univ-angers.fr/pub/pn
Pr face
Ceci est le support du cours de r seaux de la ma trise d'informatique de l'Universit d'Angers
(ann e 1999/2000). Le chapitre 1 traite des transmissions de donn es et des r seaux en g n ral sous
l'angle de l'architecture des syst mes ouverts (mod le OSI). Le chapitre 2 traite du r seau Internet
et des protocoles qui lui sont associ s. Les chapitres 3 et 4 sont plus orient s vers des applications
pratiques visant la mise en place de services sur les r seaux. Ils ne sont pas d taill s dans ce document
car ils sont plus particuli rement tudi s en TD et TP.
Les principales r f rences bibliographiques en fran ais sont:
Guy Pujolle - Les r seaux. - Eyrolles.
Patrice Rolin, et al. - Les r seaux, principes fondamentaux. - Herm s.
Douglas Comer - TCP/IP, architectures, protocoles et applications. - Inter ditions.
W. Richard Stevens - TCP/IP illustr - Vol 1,2,3. - International Thomson Publishing, France.
Tous mes remerciements mes coll gues enseignants ou ing nieurs de l'Universit d'Angers: Serge
Tah , Jacques Allo et St phane Vincendeau, pour leur aide la mise en place de ce cours.
Table des mati res
1 Principe des r seaux num riques. 1
1.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Le mod le de r f rence OSI de l'ISO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 La couche physique. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.1 Transmission en bande de base. . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3.2 Transmission modul e. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3.3 Multiplexage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3.4 Les supports de transmission. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3.5 Exemple de l'ADSL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4 La couche liaison. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.4.1 D tection et correction d'erreurs. . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.4.2 Protocoles de liaison de donn es. . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.5 La couche r seau. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.5.1 Le contr le de ux. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.5.2 Le probl me de la congestion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.5.3 Le routage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.5.4 La norme X25, niveau r seau. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.6 La couche transport. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.6.1 Qualit de service. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.6.2 Primitives du service transport. . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.6.3 Le protocole de transport ISO en mode connect (ISO 8073 ou X.224) . . . . . 27
1.7 Les couches hautes: session, pr sentation et application. . . . . . . . . . . . . . . . . . 29
1.7.1 La couche session. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
1.7.2 La couche pr sentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
1.7.3 La couche application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2 Le r seau Internet et les protocoles TCP/IP. 32
2.1 Historique et organisation d'Internet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.2 Architecture des protocoles TCP/IP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.3 Adressage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.4 La couche liaison d'Internet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.4.1 Le r seau Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.4.2 La liaison SLIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.4.3 La liaison PPP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.4.4 Les protocoles ARP et RARP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.5 Le protocole IP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.5.1 Le datagramme IP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.5.2 La fragmentation des datagrammes IP. . . . . . . . . . . . . . . . . . . . . . . . 49
2.5.3 Le routage IP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
2.5.4 La gestion des erreurs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
2.6 Les protocoles TCP et UDP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2.6.1 Le protocole UDP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
2.6.2 Le protocole TCP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
2.7 Les applications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.7.1 Protocole de d marrage: BOOTP. . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.7.2 Connexion distance: Telnet et Rlogin. . . . . . . . . . . . . . . . . . . . . . . 65
2.7.3 Syst me de chiers en r seau: NFS. . . . . . . . . . . . . . . . . . . . . . . . . 66
2.7.4 Transfert de chier: TFTP et FTP. . . . . . . . . . . . . . . . . . . . . . . . . . 66
2.7.5 Courrier lectronique: smtp. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
2.7.6 News: nntp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
2.7.7 World Wide Web: http.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
2.8 Outils communs d'utilisation d'un r seau sous Unix. . . . . . . . . . . . . . . . . . . . 75
2.8.1 Fichiers de con guration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
2.8.2 Quelques commandes utiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
3 Applets Java. 82
4 Installation d'un intranet 83
Chapitre 1
Principe des r seaux num riques.
Dans ce chapitre nous aborderons les grands principes r gissant les quipements mat riels et lo-
giciels permettant d' changer des donn es mises sous forme num rique et qui forment les r seaux
informatiques.
1.1 Introduction.
Les r seaux informatiques qui permettaient leur origine de relier des terminaux passifs de gros
ordinateurs centraux autorisent l'heure actuelle l'interconnexion de tous types, d'ordinateurs que
ce soit de gros serveurs, des stations de travail, des ordinateurs personnels ou de simples terminaux
graphiques. Les services qu'ils o rent font partie de la vie courante des entreprises et administrations
(banques, gestion, commerce, bases de donn es, recherche, etc...) et des particuliers (messagerie, loisirs,
services d'informations par minitel et Internet ...).
1 m 10 m 100 m 1 km 10 km 100 km
bus
d’interconnexion
structure
LAN
réseaux locaux
MAN
réseaux
métropolitains
réseaux
étendus
WAN
Fig. 1.1 - Classi cation des r seaux informatiques selon leur taille.
On peut faire une premi re classi cation des r seaux l'aide de leur taille comme on peut le voir
dans la gure 1.1.
Les bus que l'on trouve dans un ordinateur pour relier ses di rents composants (m moires, p -
riph riques d'entr e-sortie, processeurs, ...) peuvent tre consid r s comme des r seaux d di s des
t ches tr s sp ci ques.
Les structures d'interconnexion sont des r seaux de tr s haut d bits, mais de faible tendue, et
regroupent les pr et post-processeurs des ordinateurs vectoriels par exemple. En e et l'usage d'un
super-calculateur (Cray notamment) n cessite un ordinateur, dit frontal, qui lui pr pare les donn es
et recueille les r sultats.
Un r seau local (Local Area Network) peut s' tendre de quelques m tres quelques kilom tres
et correspond au r seau d'une entreprise. Il peut se d velopper sur plusieurs b timents et permet de
satisfaire tous les besoins internes de cette entreprise.
1
Un r seau m tropolitain (Metropolitan Area Network) interconnecte plusieurs lieux situ s dans une
m me vile, par exemple les di rents sites d'une universit ou d'une administration, chacun poss dant
son propre r seau local.
Un r seau tendu (Wide Area Network) permet de communiquer l' chelle d'un pays, ou de la
plan te enti re, les infrastructures physiques pouvant tre terrestres ou spatiales l'aide de satellites
de t l communications.
maillage irrégulier
réseaux en mode point à point
maillage régulier
satellitebus anneau
étoile boucle doubleboucle simple
réseaux en mode de diffusion
Fig. 1.2 - Topologie des r seaux informatiques.
On peut galement di rencier les r seaux selon leur structure ou plus pr cis ment leur topologie
comme illustr dans la gure 1.2. On y distingue ainsi deux classes de r seaux:
ceux en mode de di usion
ceux en mode point point
Le premier mode de fonctionnement consiste partager un seul support de transmission. Chaque
message1
envoy par un quipement sur le r seau est re u par tous les autres. C'est l'adresse sp ci que
plac e dans le message qui permettra chaque quipement de d terminer si le message lui est adress
ou non. tout moment un seul quipement le droit d'envoyer un message sur le support, il faut
donc qu'il coute au pr alable si la voie est libre si ce n'est pas le cas il attend selon un protocole
sp ci que chaque architecture. Les r seaux locaux adoptent pour la plupart le mode di usion sur
une architecture en bus ou en anneau et les r seaux satellitaires ou radio suivent galement ce mode
de communication. Dans une telle con guration la rupture du support provoque l'arr t du r seau, par
contre la panne d'un des l ments ne provoque pas (en g n ral) la panne globale du r seau.
Dans le mode di usion point point le support physique (le c ble) relie une paire d' quipements
seulement. Quand deux l ments non directement connect s entre eux veulent communiquer ils le font
par l'interm diaire des autres n uds du r seau.
Dans le cas de l' toile le site central re oit et envoie tous les messages, le fonctionnement est simple,
mais la panne du n ud central paralyse tout le r seau
Dans une boucle simple, chaque n ud recevant un message de son voisin en amont le r exp die son
voisin en aval. Pour que les messages ne tournent pas ind niment le n ud metteur retire le message
1: Terme laiss vague pour l'instant.
2
lorsqu'il lui revient. Si l'un des l ments du r seau tombe en panne, alors tout s'arr te. Ce probl me
est partiellement r solu par la double boucle dont chacune des boucles fait tourner les messages dans
un sens oppos . En cas de panne d'un quipement, on reconstitue une boucle simple avec les l ments
actifs des deux boucles, mais dans ce cas tout message passera deux fois par chaque n ud. Il en r sulte
alors une gestion tr s complexe.
Dans le maillage r gulier l'interconnexion est totale ce qui assure une abilit optimale du r seau,
par contre c'est une solution co teuse en c blage physique. Si l'on all ge le plan de c blage, le maillage
devient irr gulier et la abilit peut rester lev e mais elle n cessite un routage des messages selon
des algorithmes parfois complexes. Dans cette architecture il devient presque impossible de pr voir le
temps de transfert d'un n ud un autre.
Quelle que soit l'architecture physique d'un r seau on trouve deux modes de fonctionnement di -
rents:
avec connexion
sans connexion
Dans le mode avec connexion, toute communication entre deux quipements suit le processus suivant:
1. l' metteur demande l' tablissement d'une connexion par l'envoi d'un bloc de donn es sp cial
2. si le r cepteur (ou le gestionnaire de service) refuse cette connexion la communication n'a pas
lieu
3. si la connexion est accept e, elle est tablie par mise en place d'un circuit virtuel dans le r seau
reliant l' metteur au r cepteur
4. les donn es sont ensuite transf r es d'un point l'autre
5. la connexion est lib r e
C'est le fonctionnement bien connu du r seau t l phonique classique. Les avantages du mode avec
connexion sont la s curisation du transport par identi cation claire de l' metteur et du r cepteur,
la possibilit d' tablir l'avance des param tres de qualit de service qui seront respect s lors de
l' change des donn es. Les d fauts sont la lourdeur de la mise en place de la connexion qui peut se
r v ler beaucoup trop on reuse si l'on ne veut changer que quelques octets ainsi que la di cult
tablir des communications multipoint.
Dans le mode sans connexion les blocs de donn es, appel s datagrammes, sont mis sans v ri er
l'avance si l' quipement atteindre, ainsi que les n uds interm diaires ventuels, sont bien actifs.
C'est alors aux quipements g rant le r seau d'acheminer le message tape par tape et en assurant
ventuellement sa temporisation jusqu' ce que le destinataire soit actif. Ce service est celui du courrier
postal classique et suit les principes g n raux suivants:
- le client poste une lettre dans une bo te aux lettres
- chaque lettre porte le nom et l'adresse du destinataire
- chaque client a une adresse propre et une bo te aux lettres
- le contenu de l'information reste inconnu du prestataire de service
- les supports du transport sont inconnus de l'utilisateur du service
D'autre part il existe plusieurs types de commutation dont les principaux sont:
la commutation de circuits : c'est historiquement la premi re avoir t utilis e, par exemple
dans le r seau t l phonique l'aide des auto-commutateurs. Elle consiste cr er dans le r seau
3
un circuit particulier entre l' metteur et le r cepteur avant que ceux-ci ne commencent changer
des informations. Ce circuit sera propre aux deux entit s communiquant et il sera lib r lorsque
l'un des deux coupera sa communication. Par contre, si pendant un certain temps les deux entit s
ne s' changent rien le circuit leur reste quand m me attribu . C'est pourquoi, un m me circuit
(ou portion de circuit) pourra tre attribu plusieurs communications en m me temps. Cela
am liore le fonctionnement global du r seau mais pose des probl mes de gestion ( les d'attente,
m morisation,...)
la commutation de messages : elle consiste envoyer un message2
de l' metteur jusqu'au r cepteur
en passant de n ud de commutation en n ud de commutation. Chaque n ud attend d'avoir re u
compl tement le message avant de le r exp dier au n ud suivant. Cette technique n cessite de
pr voir de grandes zones tampon dans chaque n ud du r seau, mais comme ces zones ne sont
pas illimit es il faut aussi pr voir un contr le de ux des messages pour viter la saturation du
r seau. Dans cette approche il devient tr s di cile de transmettre de longs messages. En e et,
comme un message doit tre re u enti rement chaque tape si la ligne a un taux d'erreur de
10;5
par bit (1 bit sur 105
est erron ) alors un message de 100000 octets n'a qu'une probabilit
de 0,0003 d' tre transmis sans erreur.
la commutation de paquets : elle est apparue au d but des ann es 70 pour r soudre les probl mes
d'erreur de la commutation de messages. Un message mis est d coup en paquets3
et par la suite
chaque paquet est commut travers le r seau comme dans le cas des messages. Les paquets sont
envoy s ind pendamment les uns des autres et sur une m me liaison on pourra trouver les uns
derri re les autres des paquets appartenant di rents messages. Chaque n ud redirige chaque
paquet vers la bonne liaison gr ce une table de routage. La reprise sur erreur est donc ici plus
simple que dans la commutation de messages, par contre le r cepteur nal doit tre capable de
reconstituer le message mis en r assemblant les paquets. Ceci n cessitera un protocole particulier
car les paquets peuvent ne pas arriver dans l'ordre initial, soit parce qu'ils ont emprunt des routes
di rentes, soit parce que l'un d'eux a du tre r mis suite une erreur de transmission.
la commutation de cellules : une cellule est un paquet particulier dont la taille est toujours x e
53 octets (5 octets d'en-t te et 48 octets de donn es). C'est la technique de base des r seaux
hauts d bits ATM (Asynchronous Transfert Mode) qui op rent en mode connect o avant toute
mission de cellules, un chemin virtuel est tabli par lequel passeront toutes les cellules. Cette
technique mixe donc la commutation de circuits et la commutation de paquets de taille xe
permettant ainsi de simpli er le travail des commutateurs pour atteindre des d bits plus lev s.
1.2 Le mod le de r f rence OSI de l'ISO.
Au d but des ann es 70, chaque constructeur a d velopp sa propre solution r seau autour d'ar-
chitecture et de protocoles priv s (SNA d'IBM, DECnet de DEC, DSA de Bull, TCP/IP du DoD,...)
et il s'est vite av r qu'il serait impossible d'interconnecter ces di rents r seaux propri taires si une
norme internationale n' tait pas tablie. Cette norme tablie par l'International Standard Organiza-
tion4
(ISO) est la norme Open System Interconnection (OSI, interconnexion de syst mes ouverts). Un
syst me ouvert est un ordinateur, un terminal, un r seau, n'importe quel quipement respectant cette
norme et donc apte changer des informations avec d'autres quipements h t rog nes et issus de
constructeurs di rents.
2: Un message est une suite d'informations formant un tout, par exemple un chier ou une ligne de commande tap e
au clavier d'un ordinateur.
3: Un paquet est une suite d'octets, dont le contenu n'a pas forc ment une signi cation et ne pouvant pas d passer
une taille x e par avance.
4: L'ITU-T, International Telecommunication Union, Telecommunication Sector, anciennement CCITT est gale-
ment un organisme de normalisation des t l communications. Il d pend de l'ONU et est bas Gen ve. Information
http://www.itu.int
4
7 Application
6 Pr sentation
5 Session
4 Transport
3 R seau
2 Liaison
1 Physique
Fig. 1.3 - Les sept couches du mod le de r f rence OSI de l'ISO.
Le premier objectif de la norme OSI a t de d nir un mod le de toute architecture de r seau
bas sur un d coupage en sept couches (cf gure 1.3), chacune de ces couches correspondant une
fonctionnalit particuli re d'un r seau. Les couches 1, 2, 3 et 4 sont dites basses et les couches 5, 6 et
7 sont dites hautes.
couche 1 couche 1
couche 2 couche 2
couche 3 couche 3
couche 4 couche 4
couche 5 couche 5
couche 6 couche 6
couche 7 couche 7
-protocole de couche 1
-protocole de couche 2
-protocole de couche 3
-protocole de couche 4
-protocole de couche 5
-protocole de couche 6
-protocole de couche 7
6?
6?
6?
6?
6?
6?
6?
6?
6?
6?
6?
6?
6?
6?
support physique
Fig. 1.4 - Communication entre couches.
Chaque couche est constitu e d' l ments mat riels et logiciels et o re un service la couche situ e
imm diatement au-dessus d'elle en lui pargnant les d tails d'impl mentation n cessaires. Comme
illustr dans la gure 1.4, chaque couche n d'une machine g re la communication avec la couche n d'une
autre machine en suivant un protocole de niveau n qui est un ensemble de r gles de communication
pour le service de niveau n.
En fait, aucune donn e n'est transf r e directement d'une couche n vers une autre couche n, mais
elle l'est par tapes successives. Supposons un message transmettre de l' metteur A vers le r cepteur
B. Ce message, g n r par une application de la machine A va franchir les couches successives de
A via les interfaces qui existent entre chaque couche pour nalement atteindre le support physique.
L , il va transiter via di rents n uds du r seau, chacun de ces n uds traitant le message via ses
couches basses. Puis, quand il arrive destination, le message remonte les couches du r cepteur B via
les di rentes interfaces et atteint l'application charg e de traiter le message re u. Ce processus de
communication est illustr dans la gure 1.5.
Nous allons maintenant d tailler les caract ristiques de chacune de ces couches en pr cisant d'abord
que les fonctions et services d nis dans les couches du mod le OSI peuvent se retrouver dans d'autres
couches dans les syst mes op rationnels disponibles sur le march . Il se peut galement qu'une fonc-
tionnalit localis e dans une seule couche dans le mod le OSI se retrouve r partie sur plusieurs couches.
Mais cela illustre simplement la distance qui existe entre un mod le th orique et des implantations
5
metteur A r cepteur B
sous-r seaux
physique physique
liaison liaison
r seau r seau
transport transport
session session
pr sentation pr sentation
application application
physique physique
liaison liaison
r seau r seau
- --
- --
- --
-
-
-
-
6? 6? 6?
6? 6? 6?
6? 6? 6?
6?
6?
6?
6?
6?
6?
6?
6?
6?
6?
6?
support physique support physique
Fig. 1.5 - Communication entre couches.
pratiques essayant de suivre ce mod le.
1.3 La couche physique.
D nition 1.3.1 La couche physique fournit les moyens m caniques, lectriques, fonctionnels et pro-
c duraux n cessaires l'activation, au maintien et la d sactivation des connexions physiques destin es
la transmission de bits entre deux entit s de liaison de donn es.
Ici, on s'occupe donc de transmission des bits de fa on brute, l'important est que l'on soit s r
que si l' metteur envoie un bit 1 alors le r cepteur re oit un bit 1. Les normes et standards de la
couche physique d nissent le type de signaux mis (modulation, puissance, port e...), la nature et les
caract ristiques des supports (c ble, bre optique...), les sens de transmission...
Tout d'abord une liaison entre 2 quipements A et B peut tre simplex (unidirectionnelle), dans
ce cas A est toujours l' metteur et B le r cepteur. C'est ce que l'on trouve par exemple entre un
banc de mesure et un ordinateur recueillant les donn es mesur es. La communication est half-duplex
(bidirectionnelle l'alternat) quand le r le de A et B peut changer, la communication change de sens
tour de r le (comme avec des talkies-walkies). Elle est full-duplex (bidirectionnelle simultan e) quand
A et B peuvent mettre et recevoir en m me temps (comme dans le cas du t l phone).
La transmission de plusieurs bits peut s'e ectuer en s rie ou en parall le. En s rie, les bits sont
envoy s les uns derri re les autres de mani re synchrone ou asynchrone. Dans le mode synchrone
l' metteur et le r cepteur se mettent d'accord sur une base de temps (un top d'horloge) qui se r -
p te r guli rement durant tout l' change. chaque top d'horloge (ou k tops d'horloge k entier x
d nitivement) un bit est envoy et le r cepteur saura ainsi quand lui arrive les bits. Dans le mode
asynchrone, il n'y a pas de n gociation pr alable mais chaque caract re envoy est pr c d d'un bit
de start et imm diatement suivi d'un bit de stop. Ces deux bits sp ciaux servent caler l'horloge du
r cepteur pour qu'il chantillonne le signal qu'il re oit a n d'y d coder les bits qu'il transmet. En pa-
rall le, les bits d'un m me caract re sont envoy s en m me temps chacun sur un l distinct, mais cela
pose des probl mes de synchronisation et n'est utilis que sur de courtes distances (bus par exemple).
Quel que soit le mode de transmission retenu, l' mission est toujours cadenc e par une horloge dont
la vitesse donne le d bit de la ligne en bauds, c'est- -dire le nombre de tops d'horloge en une seconde.
Ainsi, une ligne d'un d bit de 100 bauds autorise 100 missions par seconde. Si chaque top d'horloge
un signal repr sentant 0 ou 1 est mis, alors dans ce cas le d bit en bit=s est quivalent au d bit en
baud. Cependant, on peut imaginer que le signal mis puisse prendre 4 valeurs distinctes (0, 1, 2, 3)
6
dans ce cas le signal a une valence de 2 et le d bit en bit=s est double de celui en baud. D'une mani re
g n rale, si le signal peut prendre 2n
valeurs distinctes on dit alors que sa valence est de n, ainsi
chaque top n bits peuvent tre transmis simultan ment et si le d bit de la ligne est de x bauds il est
en fait de n.x bit/s.
1.3.1 Transmission en bande de base.
La transmission en bande de base consiste envoyer directement les suite de bits sur le support
l'aide de signaux carr s constitu s par un courant lectrique pouvant prendre 2 valeurs (5 Volts ou
0 par exemple). On d taillera ci-apr s les di rents codages des bits possibles, mais dans tous les cas
l' metteur envoie sur la ligne un signal carr du type de celui de la gure 1.6 pour la s quence de bits
1010 par exemple.
-
6
1
1000
T = 1
500
1
Fig. 1.6 - Signal carr de la s quence de bits 1010.
En consid rant ce signal g(t) comme p riodique (il su t de r p ter une fois sur T::2T] le signal
donn sur 0::T] pour obtenir un signal p riodique sur 0::2T]) on peut le d composer en une s rie de
Fourier de la forme
g(t) = c=2 +
1X
n=1
ansin(2 nft) +
1X
n=1
bncos(2 nft)
o
f = 1=T la fr quence fondamentale du signal
c = 2=T
Z T
0
g(t)dt
an = 2=T
Z T
0
g(t)sin(2 nft)dt
bn = 2=T
Z T
0
g(t)cos(2 nft)dt
On dit que le signal carr est d compos en une somme in nie d'harmoniques, la premi re tant
d nomm e fondamentale, et cette approximation math matique permet de savoir quel signal lectrique
sera r ellement re u au bout du c ble.
Cependant, le c ble sur lequel est mis le signal poss de une bande passante qui est l'intervalle des
fr quences possibles sur ce support, donc la r ception on ne retrouve pas toute la richesse du signal
initial et dans la plupart des cas le signal carr sera tr s d form . Par exemple, le c ble t l phonique a
une bande passante de 300 3400 Hz, donc tous les signaux de fr quence inf rieure 300 ou sup rieure
3400 seront limin es.
Dans notre exemple nous obtenons
g(t) = 1
2 + 2sin(2000 t) + 2
3 sin(6000 t) + 2
5 sin(10000 t) + :::
Dans la gure 1.7 nous trouvons gauche les 3 premi res harmoniques et on remarque que plus la
fr quence augmente plus l'amplitude diminue. droite nous avons le signal r ellement per u par le
r cepteur si l'on consid re que le c ble ne laisse passer que ces 3 harmoniques-ci. Dans ce cas le signal
re u reste assez proche du carr mis et le r cepteur n'aura pas trop de mal le d coder.
7
-0.2
0
0.2
0.4
0.6
0.8
1
1.2
0 0.001 0.002
-0.2
0
0.2
0.4
0.6
0.8
1
1.2
0 0.001 0.002
Fig. 1.7 - Harmoniques et transform e de Fourrier de la s quence de bits 1010.
Sans entrer dans des d tails relevant de la th orie du signal, nous indiquerons simplement que sur
une ligne t l phonique dont la bande passante est de 3100Hz et pour un rapport signal/bruit5
de 10dB
on peut atteindre une capacit de 10Kbits/s.
code tout ou rien
code NRZ
code bipolaire
code RZ (retour z ro)
code biphase (ou Manchester)
code Miller (delay modulation)
0 1 1 0 0 1 0
0 1 1 0 0 1 0
Fig. 1.8 - Di rents codages en bande de base de la s quence 0110010.
Dans la gure 1.8 nous trouvons quelques exemple de codage de l'information pour une transmission
en bande de base.
le code tout ou rien : c'est le plus simple, un courant nul code le 0 et un courant positif indique
le 1
le code NRZ (non retour z ro): pour viter la di cult obtenir un courant nul, on code le 1
par un courant positif et le 0 par un courant n gatif.
5: Rapport de l' nergie du signal mis sur l' nergie du bruit de la ligne. Le bruit tant d'un point de vue math matique
une fonction al atoire repr sentant les perturbations (ondes lectromagn tiques, d fauts dans les composants qui relaient
le signal...) que subit la transmission.
8
le code bipolaire : c'est aussi un code tout ou rien dans lequel le 0 est repr sent par un courant
nul, mais ici le 1 est repr sent par un courant alternativement positif ou n gatif pour viter de
maintenir des courants continus.
le code RZ : le 0 est cod par un courant nul et le 1 par un courant positif qui est annul au
milieu de l'intervalle de temps pr vu pour la transmission d'un bit.
le code Manchester : ici aussi le signal change au milieu de l'intervalle de temps associ chaque
bit. Pour coder un 0 le courant sera n gatif sur la premi re moiti de l'intervalle et positif sur la
deuxi me moiti , pour coder un 1, c'est l'inverse. Autrement dit, au milieu de l'intervalle il y a
une transition de bas en haut pour un 0 et de haut en bas pour un 1.
le code Miller : on diminue le nombre de transitions en e ectuant une transition (de haut en bas
ou l'inverse) au milieu de l'intervalle pour coder un 1 et en n'e ectuant pas de transition pour
un 0 suivi d'un 1. Une transition est e ectu e en n d'intervalle pour un 0 suivi d'un autre 0.
1.3.2 Transmission modul e.
Le principal probl me de la transmission en bande de base est la d gradation du signal tr s rapide en
fonction de la distance parcourue, c'est pourquoi elle n'est utilis e qu'en r seau local (<5km). Il serait
en e et trop co teux de pr voir des r p teurs pour r g n rer r guli rement le signal. C'est pourquoi sur
les longues distance on met un signal sinuso dal qui, m me s'il est a aibli, sera facilement d codable
par le r cepteur. Ce signal sinuso dal est obtenu gr ce un modem (modulateur-d modulateur)qui est
un quipement lectronique capable de prendre en entr e un signal en bande de base pour en faire
un signal sinuso dal (modulation) et l'inverse savoir restituer un signal carr partir d'un signal
sinuso dal (d modulation). Autrement dit il permet de passer de signaux num riques discrets (0 ou 1)
des signaux analogiques continus.
Il existe trois types de modulation d crits dans la gure 1.9
la modulation d'amplitude envoie un signal d'amplitude di rente suivant qu'il faut transmettre
un 0 ou un 1. Cette technique est e cace si la bande passante et la fr quence sont bien ajust es.
Par contre, il existe des possibilit s de perturbation (orage, lignes lectriques...), car si un signal
de grande amplitude (repr sentant un 1) est momentan ment a aibli le r cepteur l'interpr tera
tort en un 0.
la modulation de fr quence envoie un signal de fr quence plus lev e pour transmettre un 1.
Comme l'amplitude importe peu, c'est un signal tr s r sistant aux perturbations (la radio FM
est de meilleure qualit que la radio AM) et c'est assez facile d tecter.
la modulation de phase change la phase du signal (ici de 180 ) suivant qu'il s'agit d'un 0 (phase
montante) ou d'un 1 (phase descendante).
Dans les exemples donn s ci-dessus on a seulement 2 niveaux possibles chaque fois, donc on a
uniquement la possibilit de coder 2 valeurs di rentes chaque instant, dans ce cas 1 baud = 1bit/s.
De mani re plus sophistiqu e il existe des modems capables de moduler un signal suivant plusieurs
niveaux, par exemple 4 fr quences di rentes que le modem r cepteur saura lui aussi distinguer. Dans
ce cas, chaque signal envoy code 2 bits donc 1 baud = 2bit/s. Il est m me possible de transmettre des
signaux m lant les di rentes modulations pr sent es comme dans le cas de la norme V29 qui module
la fois l'amplitude du signal sur 2 niveaux et la phase sur 8 niveaux (0 ,45 ,...,315 ). En combinant
les 2 modulations, on obtient ainsi 16 signaux di rents possibles chaque instant, permettant de
transmettre simultan ment 4 bits chaque top d'horloge (1 baud = 4 bit/s).
9
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
0 1 1 0 0 1 0
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
0 1 1 0 0 1 0
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
0 1 1 0 0 1 0
Fig. 1.9 - Modulations d'amplitude, de fr quence et de phase de la s quence de bits 0110010.
1.3.3 Multiplexage.
Le multiplexage consiste faire transiter sur une seule et m me ligne de liaison, dite voie haute
vitesse, des communications appartenant plusieurs paires d' quipements metteurs et r cepteurs
comme repr sent dans la gure 1.10. Chaque metteur (resp. r cepteur) est raccord un multiplexeur
(resp. d multiplexeur) par une liaison dit voie basse vitesse.
Plusieurs techniques sont possibles:
le multiplexage fr quentiel consiste a ecter chaque voie basse vitesse une bande passante
particuli re sur la voie haute vitesse en s'assurant qu'aucune bande passante de voie basse vitesse
ne se chevauche. Le multiplexeur prend chaque signal de voie basse vitesse et le r emet sur la
voie haute vitesse dans la plage de fr quences pr vues. Ainsi plusieurs transmissions peuvent
tre faites simultan ment, chacune sur une bande de fr quences particuli res, et l'arriv e le
d multiplexeur6
est capable de discriminer chaque signal de la voie haute vitesse pour l'aiguiller
sur la bonne voie basse vitesse.
le multiplexage temporel partage dans le temps l'utilisation de la voie haute vitesse en l'attribuant
successivement aux di rentes voies basse vitesse m me si celles-ci n'ont rien mettre. Suivant
les techniques chaque intervalle de temps attribu une voie lui permettra de transmettre 1 ou
plusieurs bits.
le multiplexage statistique am liore le multiplexage temporel en n'attribuant la voie haute vitesse
qu'aux voies basse vitesse qui ont e ectivement quelque chose transmettre. En ne transmettant
pas les silences des voies basses cette technique implant e dans des concentrateurs am liore
6: Le m me quipement joue la fois le r le de multiplexeur et d multiplexeur.
10
MUX DEMUX
...
...
voie HV
voies BV voies BV
-
0 N kHzfr quences de la voie HV
6
vbv 1 vbv 2 vbv 3 vbv 4 vbv 5
-
0 N secutilisation de la voie HV
vbv 1 vbv 2 vbv 3 vbv 4 vbv 5
Fig. 1.10 - Multiplexages d'une ligne.
grandement le d bit global des transmissions mais elle fait appel des protocoles de plus haut
niveau et est bas e sur des moyennes statistiques des d bits de chaque ligne basse vitesse.
1.3.4 Les supports de transmission.
L'objectif de la couche 1 du mod le OSI est aussi de xer les caract ristiques des mat riels utilis s
pour relier physiquement les quipements d'un r seau. Nous d crivons succinctement quelques uns des
supports de transmission les plus usit s.
la paire torsad e est un c ble t l phonique constitu l'origine de deux ls de cuivre isol s et
enroul s l'un sur l'autre (d'o le nom). Actuellement on utilise plut t des c bles constitu s de 2 ou
4 paires torsad es. Elle est tr s r pandue, de connexion facile et d'un faible co t mais elle poss de
une faible immunit aux bruits. Pour am liorer les performances on utilise la paire torsad e
blind e plus r sistante aux perturbations lectromagn tiques et qui autorise un d bit pouvant
aller jusqu' 16 Mbits/s. D'une mani re g n rale les performances (et les co ts) de ce support
d pendent de la qualit des mat riaux employ s et des d tails de r alisation. On recommande
actuellement d'utiliser de la 4 paires non blind es de cat gorie 5 avec une imp dance de 100 ohm
(la cat gorie 3 est inf rieure en qualit , et l'imp dance 120 ohm est une particularit fran aise).
Utilis e en ligne de t l phone classique leur d bit est au maximum de 56 Kbit/s avec les modems
les plus r cents, mais les progr s de cette technologie autorisent, sur de courtes distances, des
d bits de l'ordre de 10 Mbit/s voire 100 Mbit/s. On la rencontre tr s souvent comme support
des r seaux 10 Base T 7
, chaque extr mit d'un tel c ble tant muni d'une prise RJ45. Son
int r t principal est que cette m me paire torsad e peut servir au r seau t l phonique, au r seau
informatique et vid o d'une m me entreprise et de plus elle pourra tre utilis e ult rieurement
pour voluer vers des r seaux 100 Base T et m me Gigabits . Dans ce type de r seaux locaux
chaque poste est reli un hub, par une liaison point point, formant physiquement une toile
(dont le centre est un hub) ou un arbre, mais dont le fonctionnement est en mode de di usion de
type bus. Cependant l'orientation actuelle est de remplacer les hubs par des commutateurs qui
eux r alisent de la di usion en mode point point.
le c ble coaxial est un c ble utilis galement en t l phonie et en t l vision, il est constitu
d'un c ur qui est un l de cuivre. Ce c ur est dans une gaine isolante elle-m me entour e
par une tresse de cuivre, le tout est recouvert d'une gaine isolante. Certains coaxiaux large
bande peuvent atteindre un d bit maximal de 150 Mhz mais son encombrement est nettement
sup rieur celui de la paire torsad e et ses performances n'atteignant pas celle de la bre optique
il a tendance dispara tre des nouveaux plans de c blage.
7: T pour twisted (torsad e), 10 pour 10 Mbits/s et 100 Base T pour 100 Mbit/s.
11
On le rencontre dans sa version 10 Base2 (ou Ethernet n 10 Mbit/s sur 200 m maximum) ou 10
Base5 (ou Ethernet pais 10 Mbit/s sur 500 m maximum) pour la r alisation de r seaux locaux
topologie en bus. Les connexions de chaque poste sur le bus se font l'aide de connecteur en T
et la connexion du c ble sur le poste se fait l'aide de connecteur AUI pour l'Ethernet pais et
BNC pour l'Ethernet n8
. Il est actuellement beaucoup utilis pour relier entre eux deux l ments
actifs (hub, routeur,...)
la bre optique est un support d'apparition plus r cente mais son utilisation prend de l'ampleur de
jour en jour car elle permet(tra) des d bits de plusieurs Gbit/s sur de tr s longues distances. Elle
est particuli rement adapt e l'interconnexion de r seaux par exemple entre plusieurs b timent
d'un m me site. En plus de ses capacit s de transmission, ses grands avantages sont son immu-
nit aux interf rences lectromagn tiques et sa plus grande di cult d' coute, contrairement aux
supports lectriques, ce qui la rend galement attrayante dans les contextes o la con dentialit
est requise. D'un point de vue technique une bre optique est constitu e d'un c ur et d'une
gaine en silice de quelques m recouvert d'un isolant. une extr mit une diode lectrolumi-
nescente (LED) ou une diode laser met un signal lumineux et l'autre une photodiode ou un
phototransistor est capable de reconna tre ce signal.
:XXXXXXXXXXXXz
:1PPPPPPPPPq
1source
lumineuse
Fig. 1.11 - R exion interne.
Les di rents rayons lumineux issus de la source sont guid s par le l de verre en suivant un
principe de r exion interne qui se produit au niveau de la fronti re entre le c ur et la gaine
comme illustr dans la gure 1.11. Si la r exion ne laisse subsister qu'un seul rayon, car le
diam tre du l est tr s r duit, alors on parle de bre monomode sinon, lorsqu'il existe plusieurs
rayons simultan ment on parle de bre multimode. En n, la bande passante d'une bre optique
tant tr s large (plusieurs MHz) il est ais de faire du multiplexage fr quentiel pour faire transiter
simultan ment plusieurs communications.
les liaisons sans l sont possibles gr ce des liaisons infrarouges ou laser sur de courtes distances
et gr ce aux faisceaux hertziens pour les liaisons satellitaires. Les d bits sont tr s lev s mais les
transmissions sont sensibles aux perturbations et les possibilit s d' coute sont nombreuses.
1.3.5 Exemple de l'ADSL.
La technique de l'ADSL (Asymetric bit rate Digital Subscriber Line ou ligne num rique d'abonn s
d bits asym triques) est une technique r cente qui permet d'utiliser, sur de courtes distances, les lignes
t l phoniques classiques mais avec un d bit tr s sup rieur celui des normes plus classiques (V34 ou
V90). Par exemple, dans sa version Lite, elle permet de connecter Internet un particulier en utilisant
simplement sa ligne t l phonique habituelle comme illustr dans la gure 1.12.
De mani re th orique, cette technologie o re un d bit maximal descendant (d'Internet vers l'abonn )
de 8,2 M bit/sec et un d bit maximal montant (de l'abonn vers Internet) de 640 K bit/sec. Cepen-
dant, ces performances ne sont pas possibles sur une grande distance (plus de 5 km) et les solutions
commerciales grand public propos es en France actuellement ( n 1999) xent par exemple le d bit
entrant 512 Kbit/sec et le d bit sortant 128 Kbit/sec.
8: Le fonctionnement d'un r seau Ethernet sera approfondi dans la section 2.4.1.
12
PC
téléphone
modem
ADSL
modem
ADSL
filtre
routeur
voix
INTERNET
RTC
Fig. 1.12 - Connexion Internet via ADSL Lite.
D'un point de vue technique ADSL fonctionne en full duplex gr ce un multiplexage fr quentiel,
permettant de faire transiter simultan ment les signaux montant et descendant accompagn s galement
des signaux portant la voix t l phonique. La gure 1.13 illustre ce multiplexage dans le cas o les
RTC
0 4kHz 25kHz 200kHz 1,1 MHz
canal montant canal descendant
Fig. 1.13 - Multiplexage fr quentiel utilis par ADSL ( chelle des fr quences non r elles).
fr quences pour les voies montantes et descendantes ont t clairement s par es. Pour gagner encore
en largeur de bande, et donc en d bit, on peut envisager de rapprocher les deux espaces de fr quences
mais il faut alors annuler les perturbations (ph nom ne d' cho) que subissent les signaux montant et
descendant mis simultan ment.
Les di rents signaux sont transmis selon la technologie DMT (Discrete MultiTone) qui divise
la totalit de la bande passante en 256 sous-canaux d'une largeur de 4,3 kHz. Ainsi, le 1er canal est
r serv la t l phonie. Les canaux 2 6 servent s parer la voix des donn es num riques. Le ux
montant occupe les 32 canaux suivants et le ux descendant tous les canaux restant, dans le cas o
aucune zone de fr quence ne s pare les deux sens de communication et que l'annulation d' cho est en
place. Le fait que la largeur de bande montante soit plus faible que la descendante explique le terme
asym trique dans la d nomination ADSL. De plus, certains sous-canaux sont utilis s pour la gestion
de la transmission
Chacun des sous-canaux est modul ind pendamment en utilisant la technique du QAM (Quadra-
ture amplitude modulation), qui est une m thode de modulation d'amplitude de deux porteuses en
quadrature (4 niveaux d'amplitude). Avant tout transfert de donn es, une proc dure de n gociation
(handshake) est mise en place pour mesurer la qualit de la transmission et l'adapter en fonction de la
ligne. On appelle cette technique rate adaptative, car elle est capable de diminuer le d bit si la qualit
de la transmission se d grade.
1.4 La couche liaison.
D nition 1.4.1 La couche liaison de donn es fournit les moyens fonctionnels et proc duraux n -
cessaires l' tablissement, au maintien et la lib ration des connexions de liaison de donn es entre
entit s du r seau. Elle d tecte et corrige, si possible, les erreurs d es au support physique et signale la
13
couche r seau les erreurs irr cup rables. Elle supervise le fonctionnement de la transmission et d nit
la structure syntaxique des messages, la mani re d'enchainer les changes selon un protocole normalis
ou non.
Une connexion de liaison de donn es est r alis e l'aide d'une ou plusieurs liaisons physiques entre
deux machines adjacentes dans le r seau donc sans n uds interm diaires entre elles.
Nous commen ons par examiner les di rentes techniques de d tection et correction d'erreur (chan-
gement de 1 par 0 ou vice-versa), puis nous tudierons deux familles de protocoles de liaison de donn es.
1.4.1 D tection et correction d'erreurs.
Le taux d'erreurs de transmission est de l'ordre de 10;5
sur une ligne t l phonique, de 10;7
10;8
sur un coaxial et de 10;10
10;12
sur une bre optique. ce niveau-l il ne s'agit pas d'assurer la
correction globale d'un change, mais de d tecter et d' ventuellement corriger des erreurs de transmis-
sions dans un bloc de bits achemin par le support physique. En e et, puisque la couche 2 ne conna t
pas le propri taire des paquets qu'elle manipule, elle ne peut pas se substituer aux couches de niveau
sup rieur.
Les techniques employ es ici reposent sur l'utilisation de codes correcteurs ou codes d tecteurs
d'erreurs qui chacun transforme la suite de bits envoyer en lui ajoutant de l'information base de
bits de redondance ou bits de contr le. Le r cepteur se sert de cette information ajout e pour d terminer
si une erreur s'est produite et pour la corriger si la technique employ e le permet.
la parit ajoute chaque bloc de i bits (i=7 ou 8) mis un bit de parit de telle sorte que parmi
les i + 1 bits mis le nombre de bits 1 soit toujours pair (ou impair). Par exemple, pour une
parit paire si le bloc initial est de 7 bits et est gal 1000001 le bloc de 8 bits mis est 10000010,
pour envoyer 0110100 le bloc 01101001 est mis. la r ception, le d codeur calcule le nombre
de bits 1 et dans le cas d'une parit paire si ce nombre de bits est pair on suppose qu'il n'y a
pas eu d'erreur. Sinon, on sait alors qu'il y a eu une erreur de transmission mais on ne sait pas
la localiser et il faut alors demander la r mission du bloc. La technique de parit est simple
mettre en uvre cependant elle ne permet pas de d tecter 2n erreurs dans le m me bloc de bits
transmis, car dans ce cas la parit ne sera pas chang e.
les codes redondance cyclique (CRC) ajoutent des bits qui sont des combinaisons lin aires des
bits de l'information transmettre. La suite de bits transmettre u1 u2 ::: uk est consid r e
comme un polyn me M(x) = u1xk;1
+u2xk;2
+:::+uk. Par exemple 1101011011 est repr sent
par x9
+x8
+x6
+x4
+x3
+x+1 . l' mission, on calcule la division du polyn me M multipli
par xr
par le polyn me g n rateur G de degr r. On appelle Q le polyn me quotient et R le
polyn me reste de cette division, on a donc: xr
M(x) = Q(x):G(x) + R(x) .
La suite de bits correspondant au polyn me R constitue le CRC qui est ajout l'information
transmettre, le polyn me total mis est donc E(x) = xr
M(x)+ R(x) Par exemple, l'aide du
polyn me g n rateur G(x) = x4
+ x + 1, la suite 1101011011 sera transmise accompagn e du
CRC 1110 car
x4
M(x) = x13
+ x12
+ x10
+ x8
+ x7
+ x5
+ x4
= (x9
+ x8
+ x3
+ x)(x4
+ x + 1) + x3 + x2 + x
la r ception, on divise le polyn me M0 correspondant la suite totale de bits re us (informa-
tion+CRC) par le polyn me g n rateur. Si le reste calcul est non nul, c'est qu'une erreur s'est
produite dans la transmission. Si le reste est nul, on est peu pr s s r (99,975% avec le polyn me
g n rateur x16
+ x12
+ x5
+ 1 de la norme V41 du ITU-T) que la transmission s'est faite sans
erreur.
14
Pourquoi cela fonctionne-t-il? Il est vident que xr
M(x) ;R(x) est divisible par G(x), mais en
arithm tique modulo 2 addition et soustraction sont quivalentes (ce sont des OU exclusifs en
fait) donc on a galement E(x) = xr
M(x)+R(x) = G(x)Q(x) montrant que E est un polyn me
multiple de G. Si lors de la transmission des erreurs se sont produites, cela se traduit par le fait
que le polyn me re u M0(x) = E(x) + T(x), T tant le polyn me correspondant aux erreurs
(T(x) = xi
si le ie bit a t invers ). la r ception le d codeur calcule le reste de E(x)+T (x)
G(x)
qui est en fait le reste de T (x)
G(x)
puisque E est un multiple de G. Si ce r sultat est non nul, c'est
que T est non nul et que des erreurs se sont produites. videmment, le r sultat est galement
nul si T est un multiple de G ce qui masque des erreurs, mais le choix judicieux de G permet
de minimiser ces erreurs non d tect es. En n, il faut aussi remarquer un inconv nient de cette
m thode qui signale des erreurs de transmission m me si celles-ci ont eu lieu dans le CRC et non
dans l'information transmettre initialement. Dans ce cas il ne devrait pas tre n cessaire de
retransmettre l'information, or c'est ce qui est fait puisque globalement le transfert (info+CRC)
a subi des perturbations.
le code de Hamming est un code correcteur d'erreurs bas sur la notion de distance de Hamming.
Soit un alphabet compos de 4 caract res (00,01,10,11). Si une erreur se produit alors le caract re
mis est transform en un autre caract re et il n'y a pas moyen de retrouver le caract re original.
Par contre, en ajoutant de l'information de telle sorte que les caract res soient tr s di rents les
uns des autres cela devient possible. Par exemple, on peut coder les 4 caract res de la mani re
caract re initial 00 01 10 11
caract re mis 00000 01111 10110 11001
00001 01110 10111 11000
caract res 00010 01101 10100 11011
erron s 00100 01011 10010 11101
possibles 01000 00111 11110 10001
10000 11111 00110 01001
Tab. 1.1 - Codage de Hamming.
illustr e dans la table 1.1. Ainsi si un bit (parmi les 5 mis) est erron on sait quand m me
d terminer quel caract re a t mis, car comme on peut le voir dans la table 1.1 la modi cation
d'un bit ne peut pas faire passer d'un caract re initial l'autre. On a des ensembles d'erreurs
possibles totalement disjoints. Par contre la modi cation de 2 bits dans cet exemple peut amener
des confusions et l'impossibilit de corriger les erreurs.
Soit x et y deux caract res d'un alphabet A et soit N la longueur du codage des mots de cet
alphabet, xi et yi d signent respectivement le ie bit de x et y. On peut alors d nir la distance
d(x y) =
NP
i=1
(xi ;yi) mod 2 qui permet de compter le nombre de bits qui di rent entre x et
y. On d nit alors la distance de Hamming par dH = inf
(x y)2A2 x6=y
d(x y) . Dans l'exemple choisi
ci-dessus, dH = 1 dans le premier codage sur 2 bits et dH = 3 dans le codage sur 5 bits. Chaque
erreur sur un bit d'un caract re x donne un caract re x0 tel que d(x x0) = 1, donc pour pouvoir
d tecter et corriger une seule erreur il faut que dh 3 et pour corriger 2 erreurs il faut que
dh 5. D'une mani re g n rale on d tecte et corrige n erreurs quand la distance de Hamming
est 2n+ 1.
On peut voir ceci dans la gure 1.14 o sont repr sent s x et y (2 caract res parmi les plus
proches de l'alphabet), xi et yi des d formations de x et y apr s une erreur et x0
1 et y0
1 des
d formations apr s deux erreurs. Ainsi, quand on re oit un caract re x (erron ou non on ne
peut pas le savoir l'avance) il su t de chercher le caract re c 2 A le plus proche de x selon la
distance d pour obtenir le caract re mis.
Un exemple de code de Hamming est donn par la technique suivante o l'on veut envoyer des
caract res cod s sur 4 bits de donn es ABCD. Pour cela on va mettre la suite ABCP2DP1P0
15
dH = 3
x
x1
x2
x3
r r
r
r
6
-
@
@R
y
y1 y2
y3
rr r
r
-;;
dH = 5
x
x1
x2
x3
x
0
1r r
r
r
r
6
-
@@R
- y
y1 y2
y3
y
0
1
rr rr
r
-;
;
Fig. 1.14 - Distance de Hamming.
dans laquelle les bits de contr le Pi sont plac s sur les bits de rang 2i
et sont d nis par
8><
>:
P0 = A C D
P1 = A B D
P2 = A B C
Les Pi sont des bits de parit d nis l'aide des bits de donn es de rang k tels que la d composition
de k en somme de puissances de 2 contienne 2i
. Par exemple, A est un bit de donn e de rang
7 = 20
+ 21
+ 22
donc A sert au calcul de P0, P1 et P2. De m me, le rang de D est 3 = 20
+ 21
donc il sert au calcul de P0 et P1.
la r ception on calcule 8
><
>:
P0
0 = P0 A C D
P0
1 = P1 A B D
P0
2 = P2 A B C
si on obtient P02 = P01 = P00 = 0 alors c'est que la transmission s'est pass e sans probl me. Sinon,
la valeur binaire de P02P01P00 donne la place de l'erreur dans les bits re us (en commen ant par la
droite). On corrige alors l'erreur et on recalcule les P0
i
, s'ils sont devenus tous nuls l'erreur a t
corrig e, sinon il y avait eu au moins deux erreurs et on peut rejeter la suite de bits mais pas la
corriger.
Par exemple, si l'on veut envoyer les 4 bits 0010, on va nalement mettre 0011001. Si l'on re oit
0010001, on trouve P02P01P00 = 100 c'est- -dire 4, donc l'erreur tait en 4e place. On corrige, pour
obtenir 0011001 et un nouveau calcul donne P0
2 = P0
1 = P0
0 = 0 assurant que l'on a corrig
l'erreur. On peut remarquer qu'en fait on a corrig une erreur qui n' tait pas sur les donn es
initiales mais sur les bits de parit rajout s.
1.4.2 Protocoles de liaison de donn es.
Le r le d'un protocole de liaison de donn es est videmment de xer comment doivent tre r alis es
les di rentes t ches qui incombent la couche 2 du mod le OSI. Deux grandes familles de telles
proc dures sont employ es. Les proc dures orient es caract res (BSC de chez IBM) sont assez anciennes
et sont utilis es pour des communications l'alternat sur le principe send and wait. Les proc dures
orient es bits (HDLC) sont pr vues pour des transmissions full-duplex et haut d bits.
le protocole BSC (Binary Synchronous Communications) est bas sur la transmission de blocs
de caract res repr sent s principalement en ASCII (7 bits) ou EBCDIC (8 bits de chez IBM)
avec acquittement l'alternat. Il utilise la fois des messages d'information pour transporter les
donn es et des messages de service pour superviser ces changes.
16
XXXXXXXXz
XXXXXXXXz
XXXXXXXXz
9
9
9
metteur r cepteur
Data 1
Data 2
Data 2 bis
ACK
NACK
ACK
erreur
Fig. 1.15 - Dialogue de type send and wait.
Les erreurs sont donc d tect es et corrig es par demande de r p tition comme illustr dans la
gure 1.15. La gestion des changes se fait gr ce l'ensemble de caract res de commandes de la
table 1.2.
SYN synchronous idle utilis pour la synchronisation caract re et mis
en d but de s quence de caract res
ENQ enquiry invite une station mettre ou recevoir
SOH start of heading d but d'en-t te
STX start of text n d'en-t te et d but de texte
ETB end of transmission block n de bloc de donn es
ETX end of text n du texte et d but des caract res de contr le
n cessaires la d tection des erreurs
ACK acknowledgement accus de r ception positif
NACK negative acknowledgement accus de r ception n gatif
DLE data link escape caract re d' chappement de transmission
EOT end of transmission n d'un transfert de donn es
Tab. 1.2 - Caract res de commande BSC.
D'autres caract res sp ci ques ont t ajout s par des constructeurs mais ils ne sont pas d taill s
ici.
Le r le du caract re DLE est primordial car il permet d'obtenir une transmission transparente
au code. En e et, si les donn es peuvent contenir des caract res de commande des confusions
deviennent possibles. Pour viter cela, tous les caract res de commande sont pr c d s de DLE
lorsque l'alphabet est tel que les codes de commande sont susceptibles d'appara tre dans les
donn es transmises. De plus, si l'on doit transmettre dans les donn es le caract re DLE lui-m me,
il sera alors lui-m me pr c d de DLE de mani re ce que le caract re qui le suit ne soit pas pris
tort pour une commande.
Les messages (donn es de taille quelconques ) mis selon le protocole BSC sont mis sous forme
de blocs de taille appropri e aux possibilit s de la ligne. Ainsi un message constitu d'une en-t te
17
et d'un texte de donn es, le tout ne constituant qu'un seul bloc sera mis de la mani re suivante9
SYN SYN SYN SYN SOH ...en-t te... STX ...texte... ETX BCC EOT
BCC (Block Check Character) est en fait un ensemble de caract res de contr le pour d tecter les
erreurs de transmission. Pour l'EBCDIC et l'ASCII en mode transparent le BCC est le polyn me
de la norme V41 pr sent dans la section 1.4.1
le protocole HDLC (High level Data Link control) est un protocole orient bit et d nit un
ensemble de proc dures normalis es par l'ISO pour des communications, aussi bien point point
que multipoint, half ou full-duplex, mais toujours entre une machine primaire et une (ou plusieurs)
machine(s) secondaires. Les di rents modes sont les suivants:
le mode ABM (Asynchronous Balanced Mode) est un mode de r ponse asynchrone quilibr
utilis sur une liaison full-duplex entre 2 machines uniquement (liaison point point) qui
ont chacune le statut de primaire et de secondaire. Le secondaire peut mettre sans avoir
re u de permission du primaire.
le mode NRM (Normal Response Mode) est utilis sur une liaison half duplex et ici le
secondaire ne peut transmettre que sur invitation du primaire.
le mode ARM (Asynchronous Response Mode, connu galement sous le nom LAP) est utilis
sur une liaison half duplex galement, mais le secondaire peut mettre sans que le primaire
l'ait sollicit . Ceci peut alors provoquer des probl mes si primaire et secondaire veulent
simultan ment mettre des donn es.
Les trames chang es ont l'allure suivante
fanion adresse commande ...donn es... contr le
Le fanion est gal 01111110 et pour que la transparence au code soit possible, c'est- -dire pour
que la pr sence d'une suite de 6 bits 1 dans les donn es ne soit pas interpr t e comme un fanion,
l' metteur ins re un 0 apr s chaque suite de 5 1. Le r cepteur supprime ce 0 suppl mentaire apr s
5 1 cons cutifs de mani re restaurer le caract re r ellement mis. Il existe trois types de trame
distingu s par les 2 premiers bits du champ de commande. Les trames d'information contiennent
des donn es en provenance, ou destination, des couches sup rieures. Les trames de supervision
assurent le contr le d'erreur et de ux. Les trames non num rot es servent l'initialisation de la
liaison et aux probl mes de reprise sur erreur non r gl s la couche 2. Le contr le est assur par
la technique du polyn me g n rateur de la norme V41 (cf section 1.4.1).
1.5 La couche r seau.
D nition 1.5.1 La couche r seau assure toutes les fonctionnalit s de relai et d'am lioration de ser-
vices entre entit de r seau, savoir: l'adressage, le routage, le contr le de ux et la d tection et
correction d'erreurs non r gl es par la couche 2.
ce niveau l de l'architecture OSI il s'agit de faire transiter une information compl te (un chier
par exemple) d'une machine une autre travers un r seau de plusieurs ordinateurs. Il existe deux
grandes possibilit s pour tablir un protocole de niveau r seau: le mode avec connexion et le mode sans
connexion d j pr sent s dans 1.1. Le premier cas est celui adopt dans la norme X25.3 (composante
de la norme X25 du CCITT, galement norme ISO 8208 et quasi standard international des ann es
80, utilis dans le r seau fran ais TRANSPAC) et d crit partiellement ci-apr s et le second est celui
du protocole IP du r seau Internet d crit dans la section 2.5.
9: On se place dans le cas o le caract re DLE n'est pas n cessaire et de plus quelques d tails sur la synchronisation
sont omis
18
1.5.1 Le contr le de ux.
Le contr le de ux consiste g rer les paquets pour qu'ils transitent le plus rapidement possible
entre l' metteur et le r cepteur. Il cherche viter les probl mes de congestion du r seau qui surviennent
lorsque trop de messages y circulent. On peut citer les quelques m thodes suivantes:
Dans le contr le par cr dits, seuls N paquets sont autoris s circuler simultan ment sur le r seau,
donc un paquet ne peut entrer dans le r seau qu'apr s avoir acquis un jeton qu'il relache lorsqu'il
arrive destination. Dans la m thode isarythmique tous les jetons sont banalis s et la di cult
r side dans leur distribution correcte aux bonnes portes du r seau pour assurer un fonctionnement
optimal.
Cette technique est am lior e en xant des jetons d di s par n ud d'entr e dans le r seau.
Chaque n ud g re avec ses jetons une le d'attente des paquets qu'il met. Quand un paquet
arrive destination, le r cepteur renvoie l' metteur le jeton correspondant au paquet re u.
Dans le cadre d'un circuit virtuel tabli pour le mode avec connexion des r seaux X25 on utilise
un m canisme de fen tre. Les paquets de donn es sont num rot s modulo 8 et contiennent deux
compteurs: P(S) un compteur de paquets mis et P(R) un compteur de paquets re us. L' metteur
n'est autoris mettre que les paquets inclus dans la fen tre, c'est- -dire les paquets dont le
compteur de paquet mis est tel que
dernierP(R)re u P(S)courant dernierP(R)re u + W
o W est la taille de la fen tre d' mission. De son c t le r cepteur renvoie l' metteur le
compteur de paquets re us P(R) en l'incr mentant du nombre de paquets re us correctement
et en s quence. Le gestionnaire du r seau peut tr s bien ne pas renvoyer imm diatement les
acquittements s'il d sire d charger momentan ment le r seau. Par exemple, si le dernier paquet
P(R) re u est gal 1 et que la fen tre W = 4 cela signi e que le paquet 0 a bien t re u et
que l' metteur peut envoyer les paquets 1, 2, 3 et 4.
&%
'$0
1
2
3
4
5
6
7
Position initiale de la fen tre
&%
'$0
1
2
3
4
5
6
7
HHHHHH
Position nale de la fen tre
Fig. 1.16 - Contr le de ux par fen tre.
Si l' metteur a d j exp di les paquets 1, 2 et 3 et qu'il re oit un compteur de paquets re u
P(R) = 2 il d place sa fen tre d' mission de deux positions comme illustr dans la gure 1.16 et
peut exp dier les paquets suivants.
1.5.2 Le probl me de la congestion.
Malgr tous les e orts pour contr ler le ux d'information dans un r seau celui-ci peut se retrouver
face un probl me de congestion. Il s'agit alors de r soudre le probl me sans l'aggraver. En e et, les
19
probl mes de congestion arrivent lorsque les n uds d'un r seau saturent leurs les d'attente et donc
perdent des paquets. Si ces paquets sont r exp di s ou si des messages de gestion de r seau se mettent
circuler en grand nombre les performances du r seau vont s' crouler tr s vite. On essaye d' viter le
probl me de la congestion en autorisant un paquet ne rester dans le r seau qu'un temps limit par un
temps maximal x par le gestionnaire du r seau. Tout paquet est donc mis avec une date x e par
une horloge commune au r seau, si un n ud s'aper oit que le temps de pr sence dans le r seau d'un
paquet est d pass il le d truit. Cela permet ainsi de d truire les paquets perdus par erreur d'adressage
ou de routage, ainsi que ceux bloqu s dans un n ud. Mais cette m thode bas e sur une horloge est
assez di cile mettre en uvre et on utilise souvent une m thode plus simple consistant m moriser
simplement dans la zone de temps un nombre d cr ment chaque travers e de n ud. Lorsque ce
nombre atteint la valeur 0 il est d truit.
1.5.3 Le routage.
Le routage des paquets dans un r seau maill consiste xer par quelle ligne de sortie chaque
commutateur r exp die les paquets qu'il re oit. Ceci se fait en fonction de la destination nale du
paquet et selon une table de routage qui indique pour chaque destination nale quelles sont les voies
de sortie possible.
Pour l'exemple de la gure 1.17 on pourrait avoir la table de routage suivante:
destination nale voie de sortie
D1 A1, A2
D2 A2
D3 A2, A3
D4 A3
m-
-
-
-
A1
A2
A3
JJ
J
JJ^
-
le d'attente
en entr e
n ud
de
commutation
les d'attente
en sortie voies
de sortie
D1
D2
D3
D4
-
-
-
-
Fig. 1.17 - Routage de paquets.
D'une mani re g n rale le routage est un ensemble de processus algorithmiques devant prendre des
d cisions dispers s dans le temps et dans l'espace. Les di rents algorithmes sont r partis sur chaque
n ud du r seau et l'ensemble peut fonctionner de mani re centralis e ou r partie.
Le routage centralis est g r par un n ud particulier du r seau qui re oit des informations de
chacun des n uds du r seau et leur envoie leur table de routage. Pour xer ces tables on prend
en compte notamment le co t des liaisons, le co t de passage dans un n ud, le d bit demand ,
le nombre de n uds traverser, la s curit de transport de certains paquets, l'occupation des
m moires des n uds de commutation,... Le plus souvent un algorithme de plus court chemin
donne de bons r sultats en xant 1 le co t de franchissement d'un n ud (on peut galement
20
pond rer plus fortement les n uds qui sont les plus occup s). La mise jour des tables de routage
peut se faire de mani re
xe : en fait il n'y a pas de mise jour, la table de routage est x e une fois pour toute en
fonction de la topologie du r seau.
synchrone : toutes les tables sont mises jour au m me moment par le centre de contr le
qui re oit des informations de la part de tous les n uds intervalles r guliers (toutes les 10
sec par exemple).
asynchrone : les tables sont mises jour ind pendamment les unes des autres dans certaines
parties du r seau, chaque n ud envoyant un compte-rendu de son tat au centre de contr le
lorsqu'il observe des changements signi catifs.
Mais le routage centralis dans un r seau grande chelle est peu performant, car un routage est
d'autant meilleur qu'il r agit rapidement aux informations qui lui parviennent. De plus, si une
panne survient dans l'ordinateur qui assure ce contr le, c'est tout le r seau qui tombe en panne.
Le routage d centralis ne poss de pas de centre de contr le et les r gles de passage d'un paquet
(paquet d'appel pour tablissement d'un circuit virtuel) sont:
l'inondation : la r ception d'un paquet celui-ci est renvoy sur toutes les lignes de sortie.
Cette technique simpliste et rapide est e cace dans les r seaux tra c faible et o le
temps r l est n cessaire mais elle est p nalisante en ux de donn es, inadapt e aux r seaux
complexe et au circuit virtuel.
la technique hot patatoes : un paquet re u est renvoy le plus t t possible par la premi re
ligne de sortie vide. On am liore ce principe en a ectant des coe cients chaque ligne
de sortie en fonction de la destination voulue. On tient compte de l' tat des n uds voisins,
sans utiliser de paquet de contr le, mais simplement en comptabilisant le nombre de paquets
re us de chacun d'eux. Ils peuvent galement envoyer de mani re synchrone ou asynchrone
un compte-rendu de leur tat, permettant ainsi de choisir la meilleure ligne un instant
donn . Mais ceci reste local et une panne du r seau localis e au-del du premier n ud voisin
ne pourra pas tre prise en compte.
le routage adaptatif la fois dans l'espace et dans le temps demande, de la part de chaque
n ud, une connaissance compl te du r seau. Les di rents n uds s' changent donc des
messages, mais si chacun envoie des messages tous les autres le tra c va augmenter de
mani re baucoup trop grande. C'est pourquoi un n ud ne transmet un compte-rendu qu'
ses voisins imm diats qui doivent en tenir compte dans leur propre compte-rendu. (voir
exemple)
D'une mani re g n rale, le routage doit viter l'usage d'algorithmes adaptatifs trop complexes et
limiter les dialogues de services entre les n uds sinon l'e et obtenu sera l'oppos de celui recherch .
1.5.4 La norme X25, niveau r seau.
Cette norme a t tablie en 1976 par le CCITT pour les r seaux commutation de paquets sur
proposition de 4 pays qui l'utilisent pour leurs r seaux publics de communication: Transpac pour la
France, EPSS pour la Grande-Bretagne, Datapac pour le Canada et Telenet pour les USA.
Comme illustr dans la gure 1.18 le protocole X25 contient les trois premi res couches du mod le
OSI et d nit l'interface entre un ETTD ( quipement Terminal de Traitement de Donn es) et un
ETCD ( quipement de Terminaison de Circuit de Donn es) pour la transmission de paquets. Elle xe
donc les r gles de fonctionnement entre un quipement informatique connect un r seau et le r seau
lui-m me.
21
ETTD ETCD
couche 3 couche 2 couche 1 couche 3couche 2couche 1modem modem
-X25 niveau r seau
-LAPB: sous-ensemble de HDLC
-par exemple V24
Fig. 1.18 - Niveaux du protocole X25.
X25 d nit les types de paquets et leur format est le suivant (chaque ligne correspond un octet10
)
8 7 6 5 4 3 2 1
identi cateur g n ral de format num ro de groupe de voie logique
num ro de voie logique
identi cateur g n ral de type de paquet
donn es
X25 utilise le mode avec connexion, sachant que la connexion est r alis e l'aide d'un circuit virtuel
dont le fonctionnement se d roule comme illustr dans la gure 1.19.
L' tablissement du circuit virtuel se fait de bout en bout par l'envoi d'un paquet d'appel (call
request). Il existe des circuits virtuels permanents (CVP) ou commut s (CVC). un instant donn ,
plusieurs CVC et CVP peuvent coexister. Chaque circuit virtuel utilise une voie logique rep r e par
un num ro de groupe logique (entre 0 et 16) et un num ro de voie (entre 0 et 255). Ainsi, 4095 (la
voie 0 est r serv e) voies sont utilisables par une entr e. Pour un CVC les deux num ros sont attribu s
pendant la phase d' tablissement de la communication, pour un CVP ils le sont lors de l'abonnement.
Lorsque le paquet d'appel arrive l'ETCD destinataire, celui-ci peut refuser la connexion en envoyant
une demande de lib ration (clear request) ou l'accepter en envoyant un paquet de communication
accept e (call accepted). ce moment-l le circuit virtuel est tabli et les donn es peuvent tre
chang es, celles-ci emprunteront alors toutes le m me chemin marqu travers le r seau par le paquet
d'appel. Pour leur part la demande et la con rmation de lib ration sont trait es localement et la
demande peut tre trait e par n'importe lequel des deux quipements.
1.6 La couche transport.
D nition 1.6.1 La couche transport assure un transfert de donn es transparents entre entit s de
session et en les d chargeant des d tails d'ex cution. Elle a pour r le d'optimiser l'utilisation des services
de r seau disponibles a n d'assurer au moindre co t les performances requises par la couche session.
C'est la premi re couche r sider sur les syst mes d'extr mit . Elle permet aux deux applications de
chaque extr mit de dialoguer directement ind pendamment de la nature des sous-r seaux travers s et
comme si le r seau n'existait pas. Au niveau inf rieur de la couche r seau seule la phase d' tablissement
de la liaison logique s'e ectue de bout en bout, alors que les transferts d'information se font de proche
en proche.
10: Le troisi me octet contient les compteurs P(S) et P(R) d crits dans la section 1.5.1.
22
6
Ouverture
d'un circuit
virtuel
?
6
Transfert
de donn es
?
6Lib ration
?
6 Ouverture
d'un circuit
virtuel?
6
Transfert
de donn es
?6
Lib ration
?
ETTD local ETTD distantETCD local ETCD distant
-Paquet d'appel
-Appel entrant
Communication accept e
Communication tablie
-
-
-
-
Donn es
Donn es
-Demande de lib ration
Con rmation de lib ration
-Indication de lib ration
Con rmation de lib ration
Fig. 1.19 - Vie d'un circuit virtuel.
La couche transport doit assurer, en mode connect ou non connect , un transfert transparent de
donn es entre utilisateurs de service r seau en leur rendant invisible la fa on dont les ressources de
communication sont mises en uvre. Cette notion de transparence implique par exemple de pouvoir
acheminer de bout en bout des TPDU (Transport Protocol Data Unit) dont la taille peut varier de
128 8192 octets. Cette taille est cependant xe une fois que la valeur a t n goci e.
1.6.1 Qualit de service.
Une autre fa on de d nir la couche transport est de la consid rer garante de la qualit de service
(QOS) rendue par la couche r seau. Si cette derni re est sans faille, alors le travail de la couche
transport est minime. Dans le cas contraire elle assure la jonction entre ce que d sire l'utilisateur et
ce que la couche r seau met disposition en terme de qualit . La qualit est valu e sur certains
param tres avec trois types de valeurs possibles: pr f r , acceptable et inacceptable qui sont choisis
lors de l' tablissement d'une connexion (certains param tres sont cependant disponibles pour un mode
sans connexion). La couche transport surveille alors ces param tres pour d terminer si la couche r seau
sous-jacente assure la qualit de service demand e.
Les di rents param tres de la qualit de service sont:
le temps d' tablissement de la connexion transport: c'est la dur e qui s' coule entre le moment
o une demande de connexion est mise et le moment o la con rmation de cet tablissement
est re u et plus ce d lai est court meilleure est la qualit de service.
la probabilit d' chec d' tablissement mesure la chance (ou plut t malchance) qu'une connexion
ne puisse s' tablir dans un d lai maximum d ni. On ne tient pas compte ici du refus de l'entit
23
distante d' tablir cette connexion, mais on consid re plut t les probl mes d'engorgement de
r seau.
le d bit de la liaison mesure le nombre d'octets utiles qui peuvent tre transf r s en une seconde,
ce d bit est valu s par ment dans les deux sens.
le temps de transit mesure le temps coul entre le moment o l'utilisateur du service de transport
envoie un message et celui o l'entit de transport r ceptrice le re oit, ce temps est valu
s par ment dans les deux sens.
le taux d'erreur r siduel est le rapport entre le nombre de messages perdus ou mal transmis et le
nombre total de messages mis au cours d'une p riode consid r e. Ce nombre, en th orie nul, a
une valeur faible.
la probabilit d'incident de transfert mesure le bon fonctionnement du service transport. Lors-
qu'une connexion est tablie, un d bit, un temps de transit, un taux r siduel d'erreurs sont
n goci s. La probabilit d'incident mesure la fraction de temps durant laquelle les valeurs x es
pr c demment n'ont pas t respect es.
le temps de d connexion mesure la dur e s' coulant entre une demande de d connexion mise et
la d connexion e ective du syst me distant.
la probabilit d'erreur de d connexion est le taux de demandes de d connexion non ex cut es
pendant le temps maximum d ni.
la protection est d nie comme la possibilit de se pr munir contre les intrusions passives (inter-
f rences sur une m me ligne) et actives ( coute et modi cation des donn es transmises).
La priorit permet l'utilisateur de privil gier certaines transmissions par rapport d'autres.
La r siliation est la libert laiss e la couche transport de d cider elle-m me de la d connexion
suite un probl me.
En mode non connect , ces param tres indiquent uniquement les souhaits de l'utilisateur en ce
qui concerne le d bit, le d lai de transit, le taux d'erreur r siduel et la priorit d'une transmission.
Ces param tres sont utilis es apr la couche transport pour xer des options de protocoles avant d' tre
soumis la couche r seau.
Lorsqu'une connexion est demand e, tous ces param tres sont transmis par l'utilisateur la couche
transport, les valeurs d sir es et minimales sont sp ci es. Les di rents cas de gure et tapes peuvent
alors se pr senter.
Si la demande semble irr aliste pour certains param tres alors la demande de connexion n'est
m me pas ex cut e et un message d'erreur est renvoy pour expliquer le probl me.
Si la demande ne peut pas tre satisfaite compl tement mais partiellement (par exemple avec
un d bit moindre mais acceptable), alors c'est cette demande avec des objectifs moindres qui est
soumise.
Si l'ordinateur distant ne peut satisfaire compl tement la demande, mais reste au-dessus du
minimum requis, alors il modi e aussi le param tre.
S'il ne peut pas rester au-dessus de ce minimum, il rejette la demande de connexion.
En n, la couche transport avertit son utilisateur de la bonne n (ou non) de la proc dure de
connexion et lui transmet les param tres accept s.
Cette proc dure s'appelle la n gociation des options qui, une fois x es, restent inchang es pendant
toute la connexion. Pour que tous les utilisateurs ne demandent pas une qualit de service optimale,
les prix pratiqu s par les fournisseurs de r seaux croissent avec cette qualit de service.
24
1.6.2 Primitives du service transport.
machine de transport
protocole
de transport machine de transport
entité de sessionentité de session
requète réponse indicationconfirmation
Fig. 1.20 - Dialogue de niveau transport.
Les services qu'o rent la couche transport en mode connect sont rendues par les primitives donn es
ci-dessous. Celles-ci se d composent comme dans tout dialogue entre couches en quatre cat gories
comme illustr dans la gure 1.20.
phase d' tablissement de la connexion
T_CONNECT.request(adresse source, adresse distante, donn es_expr s, qos,
donn es_utilisateur) pour demander une connexion
T_CONNECT.indication(adresse source, adresse distante, donn es_expr s, qos,
donn es_utilisateur) pour indiquer une connexion de transport
T_CONNECT.response(adresse source, adresse distante, donn es_expr s,
donn es_utilisateur) pour r pondre une demande de connexion de transport
T_CONNECT.confirm(adresse source, adresse distante, donn es_expr s, qos,
donn es_utilisateur) pour con rmer l' tablissement d'une connexion de transport
phase de transfert de donn es
T_DATA.request(donn es_utilisateur) pour demander le transfert de donn es
T_DATA.indication(donn es_utilisateur) pour indiquer un transfert de donn es
T_EXPEDITED_DATA.request(donn es_utilisateur) pour demander le transfert de don-
n es expr s
T_EXPEDITED_DATA.indication(donn es_utilisateur)
pour indiquer un transfert de donn es expr s
phase de lib ration de la connexion
T_DISCONNECT.request(donn es utilisateur) pour demander une d connexion de trans-
port
T_DISCONNECT.indication(raison, donn es_utilisateur) pour indiquer une d connexion
de transport
La gure 1.21 d taille les di rents encha nements de primitives possibles. Pour chaque cas, un
utilisateur est plac gauche des lignes doubles et son homologue est droite, la couche transport est
entre les lignes et le temps s' coule de haut en bas.
25
T_CONNECT
request
HHHj T_CONNECT
indicationHHHj
T_CONNECT
response
T_CONNECT
confirm
tablissement
d'une connexion
T_CONNECT
request
HHHj T_CONNECT
indicationHHHj
T_DISCONNECT
request
T_DISCONNECT
indication
rejet par un utilisateur
d'une demande de connexion
T_CONNECT
request
HHHj
T_DISCONNECT
indication
rejet par le fournisseur
d'une demande de connexion
T_DATA
request
HHHj T_DATA
indication
HHHj
transfert de donn es normales
T_EXPEDITED_DATA
request
HHHj T_EXPEDITED_DATA
indicationHHHj
transfert de donn es expr s
T_DISCONNECT
request
HHHj T_DISCONNECT
indicationHHHj
lib ration sur initiative
d'un utilisateur
T_DISCONNECT
request
HHHj
T_DISCONNECT
request
lib ration sur initiative
des deux utilisateurs
T_DISCONNECT
indication
T_DISCONNECT
indicationHHHj
lib ration provoqu e
par le fournisseur
Fig. 1.21 - Encha nements de primitives en mode connect .
Seules les successions de primitives d crites dans l'automate de la gure 1.22 sont autoris s assurant
ainsi qu'une machine r alisant le service de transport ne peut se trouver que dans l'un des quatre tats
repr sent s savoir
veille : aucune connexion n'est tablie, une demande de connexion peut tre mise ou re ue
connexion sortante en attente : la machine a demand une connexion et la r ponse de l'autre
extr mit n'est pas encore arriv e
connexion entrante en attente : la machine a re u une demande de connexion qu'elle n'a pas
encore accept e ou rejet e.
transfert de donn es pr t : une connexion a t tablie, les transferts de donn es peuvent com-
mencer
Pour ce qui est du mode non connect seules les primitives suivantes sont disponibles.
T_UNIDATA.request(appel , appelant, qos, donn es utilisateur)
26
connexion
sortante
en attente
repos
pas de connexion en cours
connexion
entrante
en attente
transfert
de
données
T_CONNECT.confirm
T_DISCONNECT.indication
T_DISCONNECT.indication
T_DISCONNECT.request
T_CONNECT.request
T_DISCONNECT.request
T_DISCONNECT.indication
T_DISCONNECT.request
T_EXPEDITED_DATA.request
T_EXPEDITED_DATA.indication
T_DATA.indication
T_DATA.request
T_CONNECT.indication
T_CONNECT.response
Fig. 1.22 - Diagramme d' tats d'une machine de service de transport.
T_UNIDATA.indication(appel , appelant, qos, donn es utilisateur)
1.6.3 Le protocole de transport ISO en mode connect (ISO 8073 ou X.224)
Les fonctions de la couche transport ISO sont tablies dans le but de combler l' cart existant entre
les services o erts par les couches basses et les services o rir.
Les principales fonctions r alis es pendant l' tablissement de la connexion sont les suivantes.
La s lection d'une connexion r seau appropri e.
La d cision de mettre en place un multiplexage ou un clatement. Le multiplexage a pour but
de regrouper plusieurs connexions de transport sur une m me connexion de r seau, ce qui va
permettre de minimiser les ressources utilis es au niveau r seau, donc de diminuer les co ts
de communication. Ceci est surtout utile si l'on a de nombreuses connexions de faible d bit
tablir. l'inverse, l' clatement consiste r partir une connexion de transport simultan ment
sur plusieurs connexions r seau dans le but d'accro tre le d bit et la abilit (voir la gure 1.23).
la d termination de la taille optimale des TPDU
la mise en relation des adresses transport et r seau
l'identi cation de la connexion
27
A B C 23 1
adressesde réseau
adresses de transport
CV1
CV2
CV3
CV4
multiplexage des connexions
A1 et B2
éclatement
de la connexion C3
Fig. 1.23 - Adressage, multiplexage et clatement de connexions transport.
Lors de la phase de transfert les donn es expr s (interruptions, alarmes de petite taille) ne sont
pas soumises au contr le de ux et sont assur es d' tre d livr es avant toutes donn es normales mises
apr s elle. La fragmentation-r assemblage permet, si n cessaire, de d couper des TSDU (Transport
Service Data Unit) a n de tenir dans un seul TPDU. Ainsi les lettres trop grandes sont d coup es
en fragments de taille xe (sauf ventuellement le dernier), num rot s et exp di s chacun dans un
paquet pour tre r assembl s l'arriv e. La num rotation des paquets permet galement de d tecter
les paquets perdus ou dupliqu s. Les erreurs de transmission tant normalement d tect es par les
couches inf rieures, il n'est pas toujours n cessaire de prot ger chaque TPDU. Cependant, si la qualit
de service r seau est m diocre, on ajoute des m canismes de d tection d'erreur par total de contr le
associ un m canisme de retransmission. Le contr le de ux est fond sur une fen tre coulissante
de taille variable, similaire une notion de cr dit. Le destinataire impose la cadence de transfert en
indiquant l'exp diteur des cr dits d' mission (num ro dans la s quence ne pas d passer) qu'il lui
transmet dans ses acquittements.
En n, la lib ration de la connexion de transport peut tre d cid e et d clench e de mani re incon-
ditionnelle par l'un quelconque des correspondants, ce qui peut provoquer des pertes de donn es. Cette
lib ration est explicite quand il y a changes d'unit s de donn es sp ciales ou implicite quand en fait
c'est la connexion r seau sous-jacente qui est lib r e.
Pour simpli er le choix des fonctions mettre en uvre, l'ISO a d ni 5 classes de protocoles
chacune tant adapt e un type de r seau particulier11
et choisi lors de l' tablissement de la connexion.
L'appelant d clare sa classe pr f r e et des classes de repli, l'appel choisi parmi ces propositions si
aucune classe ne lui convient il refuse la connexion. Succinctement, on trouve
la classe 0 : elle assure une connexion standard pour les r seaux de type A ( tablissement n goci e
de la connexion, lib ration implicite, transfert de donn es normales, segmentation et r assemblage
des donn es.
la classe 1 : pour les r seaux de type B elle ajoute la classe 0 le transport de donn es expr s,
la reprise sur erreurs signal es, la d connexion et la reprise sur r initialisation du r seau.
11: Les r seaux sont r parties en 3 classes:
- type A: peu d'erreurs signal es et non signal es
- type B: peu d'erreurs non signal es, mais trop d'erreurs signal es
- type C: trop d'erreurs des deux types.
28
la classe 2 : pour les r seaux de type A elle ajoute la classe 0 le multiplexage et un contr le de
ux am lior .
la classe 3 : pour les r seaux de type B elle est constitu e des fonctionnalit s des classes 1 et 2.
la classe 4 : pour les r seaux de type C elle correspond la classe 3 laquelle on ajoute la
d tection et la reprise d'erreurs non signal es et l' clatement de connexions de transport.
1.7 Les couches hautes: session, pr sentation et application.
Les couches session, pr sentation et application constituent les couches hautes du mod le OSI et
o rent des services orient s vers les utilisateurs alors que les couches basses sont concern es pas la
communication able de bout en bout. Elles consid rent que la couche transport fournit un canal
able de communication et ajoutent des caract ristiques suppl mentaires pour les applications.
1.7.1 La couche session.
D nition 1.7.1 La couche session fournit aux entit s de la couche pr sentation les moyens d'orga-
niser et synchroniser les dialogues et les changes de donn es.
Une session peut par exemple tre utilis e pour la connexion distance d'un terminal un ordina-
teur ou pour le transfert d'un chier et ceci en mode connect . Bien que tr s similaires la session et la
b) c)a)
session
transport
Fig. 1.24 - Sessions et connexions de transport.
connexion de transport ne sont pas identiques, les trois cas de la gure 1.24 peuvent se pr senter.
a) Il y a correspondance exacte entre une session et une connexion de transport.
b) Plusieurs sessions successives sont tablies sur une seule et m me connexion de transport. Par
exemple, ceci peut tre utilis dans le contexte d'une agence de voyage dans laquelle chaque
employ utilise un terminal reli un ordinateur local. Celui-ci est reli une base de donn es
centrale de la compagnie pour enregistrer les r servations. Chaque fois qu'un employ veut faire
une r servation, une session est ouverte avec l'ordinateur central et elle est ferm e lorsque la
r servation est termin e. Mais il est inutile de lib rer la connexion de transport sous-jacente car
celle-ci sera utilis e quelques instants plus tard par un autre employ .
c) Plusieurs connexions de transport successives sont n cessaires pour une seule et m me session.
Ceci peut arriver lorsqu'une connexion de transport tombe en panne, la couche session tablit
alors une nouvelle connexion de transport de mani re poursuivre la connexion commenc e.
Par contre, il n'est pas possible de multiplexer plusieurs sessions sur une m me connexion de
transport. Celle-ci ne transporte tout instant qu'au plus une session.
Le transfert des donn es est r gi par les trois phases habituelles: tablissement de la session,
transfert des donn es et lib ration de la session. Les primitives fournies par la couche session sont
semblables celles fournies par la couche transport la couche session. L'ouverture d'une session
29
n cessite la n gociation de plusieurs param tres entre les utilisateurs des extr mit s, certains (qos et
existence ou non de donn es expr s) sont identiques ceux de la couche transport qui ils sont pass s
tels quels. Un autre param tre peut permettre de d cider quelle extr mit aura l'initiative du dialogue
dans le cas d'une session bidirectionnelle. Les di rences entre transport et session vont se situer au
niveau de la lib ration de la connexion. Dans le cas du transport, la primitive T_DISCONNECT.request
provoque une lib ration brutale de la connexion avec perte des donn es en cours de transfert. Une
session, elle, sera termin e par la primitive S_RELEASE.request qui op re une lib ration ordonn e de
la connexion, sans perte de donn es, appel e terminaison n goci e. Les di rences entre ces deux modes
T_DATA
request
T_DISCONNECT.
indication
T_DISCONNECT.
request
a)
A B
S_RELEASE.
request
S_DATA
S_RELEASE.
request
S_DATA
indication
S_RELEASE.
indication
response
confirm
S_RELEASE.
b)
A B
Fig. 1.25 - Lib ration brutale a) et ordonn e b).
de lib ration sont illustr es dans la gure 1.25. Dans le premier cas, B ne peut plus recevoir le message
qui est en transit partir du moment o il a mis une demande de d connexion (voir l'automate de la
gure 1.22). Dans le deuxi me cas, B continue d'accepter des donn es apr s avoir mis sa demande de
lib ration jusqu' ce que A con rme positivement cette d connexion. Si A veut refuser la d connexion,
il le signale par l'un des param tres de S_RELEASE.response et il peut ainsi continuer d'envoyer des
donn es, la session se prolonge comme si de rien n' tait.
Les sessions peuvent autoriser le dialogue bidirectionnel ou unidirectionnel ou l'alternat. Ce
dernier cas n'est pas forc ment d des limitations mat rielles mais est souvent inh rent au fonc-
tionnement des applications de plus haut niveau. Par exemple, l'acc s une base de donn es distante
est tabli sur ce mode. Un utilisateur envoie depuis son terminal une requ te un ordinateur central,
puis il attend la r ponse de celui-ci. Lorsque l'ordinateur central a envoy sa r ponse, l'utilisateur peut
envoyer une autre requ te. Ainsi, le mode de fonctionnement l'alternat est naturel. Dans ce cas il
s'agit alors de g rer qui c'est le tour d'envoyer des donn es. Ce service est mis en uvre gr ce un
jeton de donn es (data token). Seule l'extr mit qui poss de le jeton peut envoyer des donn es, l'autre
doit rester silencieuse. La n gociation initiale l' tablissement de la connexion de session xe quelle
extr mit re oit en premier le jeton. Lorsque le possesseur du jeton a ni d'exp dier ses donn es il peut
passer le jeton son correspondant l'aide de la primitive S_TOKEN_GIVE.request. Si l'extr mit qui
ne poss de pas le jeton veut exp dier des donn es il peut le demander, poliment, l'aide de la primitive
S_TOKEN_PLEASE.request. Le possesseur du jeton peut alors le lui envoyer ou lui refuser.
La synchronisation est galement l'un des services de la couche session et consiste placer les entit s
de session dans un tat connu des deux interlocuteurs en cas d'erreur. Il ne s'agit pas ici de r gler des
erreurs qui seraient d es un probl me de transmission de donn es puisque la couche transport doit les
r gler. Mais celle-ci ne peut e ectuer des reprises sur erreurs dues aux couches sup rieures puisqu'elle
30
n'en a pas connaissance. Par exemple, si lors d'un transfert de chiers tr s long une erreur se produit
du c t du r cepteur mais en dehors de la transmission proprement dite (probl me d'acc s un disque
par exemple), il faut que la couche session soit capable de s'en apercevoir et qu'elle vite de relancer
simplement tout le transfert de chiers. C'est pourquoi, gr ce des points de synchronisation dans le
ot d' changes de donn es, elle reprendra les transferts au niveau du dernier point de reprise correct.
Ces points consistent d couper le ot de donn es transmettre en pages et videmment, le m canisme
n cessite que l'utilisateur de la session metteur soit capable de m moriser su samment longtemps les
pages envoy es pour pouvoir en r exp dier certaines si n cessaires.
1.7.2 La couche pr sentation.
D nition 1.7.2 La couche pr sentation s'occupe de la syntaxe et de la s mantique des informations
transport es en se chargeant notamment de la repr sentation des donn es.
Par exemple, sur un ordinateur base d'un processeur de la famille des 68 000 les entiers sont
repr sent s avec les bits de poids fort gauche et ceux de poids faible droite. Or, c'est l'inverse sur
un ordinateur bas sur un processeur de la famille du 80x86. Cette di cult sera prise en compte par
la couche pr sentation qui e ectuera les op rations n cessaires la communication correcte entre ces
deux familles de machines. Pour ce faire l'ISO a d ni une norme appel e syntaxe abstraite num ro
1 (Abstract Syntax Notation 1) permettant de d nir une sorte de langage commun (une syntaxe de
transfert) dans lequel toutes les applications repr sentent leurs donn es avant de les transmettre.
C'est aussi ce niveau de la couche pr sentation que peuvent tre implant es des techniques de
compression (code de Hu man par exemple) et de chi rement de donn es (RSA, DSE, etc...) non
d taill es ici (voir cours correspondants de licence).
1.7.3 La couche application.
D nition 1.7.3 La couche application donne au processus d'application le moyen d'acc der l'envi-
ronnement OSI et fournit tous les services directement utilisables par l'application, savoir:
- le transfert d'informations
- l'allocation de ressources
- l'int grit et la coh rence des donn es acc d es
- la synchronisation des applications coop rantes
En fait, la couche application g re les programmes de l'utilisateur et d nit des standards pour que
les di rents logiciels commercialis s adoptent les m mes principes, comme par exemple:
- Notion de chier virtuel repr sent sous forme d'arbre pour les applications de transfert de chiers,
op rations permises sur un chier, acc s concurrentiels, ...
- D coupage des fonctions d'une application de courrier lectronique qui se compose d'un le contenu
(en-t te et corps) et d'une enveloppe. Une fonctionnalit de l'application g re le contenu et une
autre le transfert en interpr tant l'enveloppe.
31
Chapitre 2
Le r seau Internet et les protocoles
TCP/IP.
Ces 15 derni res ann es ont vu merger de nouvelles techniques rendant possible l'interconnexion
de r seaux di rents (internetworking) en les faisant appara tre comme un unique environnement de
communication homog ne. On d signe ce syst me d'interconnexion sous le nom d'internet, sachant
que r seau Internet et Internet d signent l'ensemble de ces internets dont le point commun est de
fonctionner en suivant les protocoles TCP/IP (Transmission Control Protocol/Internet Protocol). Le
but de ce chapitre est d' tudier comment fonctionne l'ensemble de ces protocoles.
2.1 Historique et organisation d'Internet.
Les travaux de l'ARPA (Advanced Research Project Agency) d but rent au milieu des ann es 70
et avaient pour but de d velopper un r seau commutation de paquets pour relier ses centres de
recherches dans le but de partager des quipements informatiques et changer des donn es et du
courrier. Le but tait de concevoir un r seau r sistant des attaques militaires. Il ne fallait donc pas
qu'il comporte de points n vralgiques dont la destruction aurait entra n l'arr t complet du r seau.
C'est ainsi, que d s le d part le r seau ARPANET fut con u sans n ud particulier le dirigeant, et
de telle sorte que si une voie de communication venait tre d truite, alors le r seau soit capable
d'acheminer les informations par un autre chemin. C'est vers 1980 qu'est apparu le r seau Internet,
tel qu'on le conna t maintenant, lorsque l'ARPA commen a faire voluer les ordinateurs de ses
r seaux de recherche vers les nouveaux protocoles TCP/IP et qu'elle se mit subventionner l'universit
de Berkeley pour qu'elle int gre TCP/IP son syst me d'exploitation Unix (BSD). Ainsi la quasi
totalit des d partements d'informatique des universit s am ricaines put commencer se doter de
r seaux locaux qui en quelques ann es seront interconnect s entre eux sous l'impulsion de la NSF
(National Science Foundation).2 M me si d s son origine Internet comprenait des soci t s priv es,
celles-ci taient plus ou moins li es la recherche et au d veloppement, alors qu' l'heure actuelle les
activit s commerciales s'y sont consid rablement multipli es, et ceci surtout depuis l'arriv e du web en
1993. La gure 2.1 (source ISOC, www.isoc.org) donne un r sum des grandes tapes de l' volution
d'Internet au niveau mondial qui comportait en 1996 plus de 100 000 r seaux di rents permettant
de regrouper presque 10 millions d'ordinateurs dans le monde. Mais les statistiques sont di ciles
tablir et sont parfois fantaisistes ou biais es par des consid rations politiques ou commerciales. Une
bonne source d'information est encore l'ISOC dont sont extraites les donn es de la gure 2.2. Pour
ce qui est de la France, apr s des tentatives avort es de constitution d'un r seau de la recherche, puis
l'apparition du r seau EARN (European Academic and Research Network) bas sur des protocoles et
des ordinateurs IBM, un d but de r seau b ti sur des ordinateurs Unix et TCP/IP apparu sous le
nom de FNET. C'est la n des ann es 80 que les campus universitaires s' quip rent massivement
de r seaux Ethernet et cr rent des r seaux r gionaux bas s sur TCP/IP. L'ouverture l'Internet
32
Fig. 2.1 - Les grandes dates d'Internet.
Fig. 2.2 - volution du nombre de machines connect es Internet
33
mondial ( l' poque presque exclusivement nord-am ricain) eut lieu en 1988 et ensuite la cr ation de
Renater (R seau National de T l communications pour l'Enseignement et la Recherche) en 1994 sont
les grandes dates de l' volution d'Internet en France.
Comme l'ensemble des protocoles TCP/IP n'est pas issu d'un constructeur unique, mais mane
de la collaboration de milliers de personnes travers le monde, une structure de fonctionnement
originale a t imagin e d s le d but. Apr s des volutions successives, c'est maintenant l'IAB (Internet
Architecture Board) qui est le comit charg de coordonner l'architecture, les orientations, la gestion
et le fonctionnement d'Internet. L'IAB comporte deux branches principales:
l'IETF (Internet Engineering Task Force, www.ietf.org) s'occupe des probl mes techniques
court et moyen terme et est divis en 9 zones (applications, s curit , routage et adressage, etc...)
chacune dot e d'un responsable.
l'IRTF (Internet Research Task Force, www.irtf.org) coordonne les activit s de recherche rela-
tives TCP/IP.
Par ailleurs, il existe l'ISOC (The Internet Society ) qui est li e l'IAB et qui aide ceux qui sou-
haitent s'int grer la communaut d'Internet. De nombreux renseignements sur le fonctionnement et
les organismes li s Internet sont disponibles sur le web de l'ISOC www.isoc.org.
Aucun constructeur, ou diteur de logiciel, ne peut s'approprier la technique TCP/IP, les docu-
mentations techniques sont donc mises disposition de tous par l'INTERNIC (Internet Network In-
formation Center partir de son site web ds.internic.net/ds/dspg1intdoc.html). Les documents
relatifs aux travaux sur Internet, les nouvelles propositions de d nition ainsi que les modi cations de
protocoles, tous les standards TCP/IP, y sont publi s sous la forme de RFC (Request For Comments,
appels commentaires). Tous les RFC sont publi s par un membre de l'IAB et sont num rot s s -
quentiellement, une proposition de RFC s'appelle un Internet Draft qui sera discut , modi , et en n
adopt ou rejet par les membres du domaine concern par la note technique.
2.2 Architecture des protocoles TCP/IP.
Les logiciels TCP/IP sont structur s en quatre couches de protocoles qui s'appuient sur une couche
mat rielle comme illustr dans la gure 2.3.
La couche de liens est l'interface avec le r seau et est constitu e d'un driver du syst me d'exploi-
tation et d'une carte d'interface de l'ordinateur avec le r seau.
La couche r seau ou couche IP (Internet Protocol) g re la circulation des paquets travers le
r seau en assurant leur routage. Elle comprend aussi les protocoles ICMP (Internet Control
Message Protocol) et IGMP (Internet Group Management Protocol)
La couche transport assure tout d'abord une communication de bout en bout en faisant abs-
traction des machines interm diaires entre l' metteur et le destinataire. Elle s'occupe de r guler
le ux de donn es et assure un transport able (donn es transmises sans erreur et re ues dans
l'ordre de leur mission) dans le cas de TCP (Transmission Control Protocol) ou non able dans
le cas de UDP (User Datagram Protocol). Pour UDP, il n'est pas garanti qu'un paquet (appel
dans ce cas datagramme) arrive bon port, c'est la couche application de s'en assurer.
La couche application est celle des programmes utilisateurs comme telnet (connexion un ordi-
nateur distant), FTP (File Transfert Protocol), SMTP (Simple Mail Transfert Protocol), etc...
Cette architecture et ces di rents protocoles permettent de faire fonctionner un r seau local,
par exemple sur un bus Ethernet reliant un ordinateur client A qui interroge un serveur FTP B,
comme illustr dans la gure 2.4 Mais, ceci permet surtout de constituer un internet, c'est- -dire
une interconnexion de r seaux ventuellement h t rog nes comme illustr dans la gure 2.5. Ici les
34
correspondantes
couches OSI
logiciels
hors du SE
logiciels
dans le SE
adressage IP
suniquement
adressage
physique
processus
utilisateur
processus
utilisateur
processus
utilisateur
processus
utilisateur
transport
applications
réseau
liens
4
2
1
7
interface
matérielle
IGMPICMP
TCP UDP
ex : ping ex : FTP ex : BOOTP
support matériel
IP
ARP RARP
3
5
6
Fig. 2.3 - Architecture d'une pile TCP/IP
client FTP
TCP
IP
Ethernet
driver
ordinateur A
protocole FTP
protocole TCP
protocole IP
protocole Ethernet
IP
TCP
serveur FTP
driver
ordinateur B
Ethernet
bus Ethernet
Fig. 2.4 - Communication entre deux machines du m me r seau
35
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux
Reseaux

Contenu connexe

Tendances

Rapport de Mémoire Master Recherche
Rapport de Mémoire Master RechercheRapport de Mémoire Master Recherche
Rapport de Mémoire Master RechercheRouâa Ben Hammouda
 
Rapport Stage ingénieur
Rapport Stage ingénieurRapport Stage ingénieur
Rapport Stage ingénieurMhamdi Imed
 
ETUDE ET MISE EN PLACE DE LA SOLUTION VOIP OVER LTE, DIMENSIONNEMENT ET MESUR...
ETUDE ET MISE EN PLACE DE LA SOLUTION VOIP OVER LTE, DIMENSIONNEMENT ET MESUR...ETUDE ET MISE EN PLACE DE LA SOLUTION VOIP OVER LTE, DIMENSIONNEMENT ET MESUR...
ETUDE ET MISE EN PLACE DE LA SOLUTION VOIP OVER LTE, DIMENSIONNEMENT ET MESUR...Sidali Bhs
 
Wifi professionnel la norme 802.11, le déploiement, la sécurité 3ème edition
Wifi professionnel la norme 802.11, le déploiement, la sécurité   3ème editionWifi professionnel la norme 802.11, le déploiement, la sécurité   3ème edition
Wifi professionnel la norme 802.11, le déploiement, la sécurité 3ème editionelpunk
 
Lexique de-commandes-cisco
Lexique de-commandes-ciscoLexique de-commandes-cisco
Lexique de-commandes-ciscoTouré Kunda
 
AD hoc routage ad hocroutage ad hocroutage ad hoc
AD hoc routage ad hocroutage ad hocroutage ad hocAD hoc routage ad hocroutage ad hocroutage ad hoc
AD hoc routage ad hocroutage ad hocroutage ad hocismail eljadidi
 
Cours gratuit.com--id-2614
Cours gratuit.com--id-2614Cours gratuit.com--id-2614
Cours gratuit.com--id-2614SergeCowouvi1
 
Automatisation d'une maison intelligente via une application android
Automatisation d'une maison intelligente via une application androidAutomatisation d'une maison intelligente via une application android
Automatisation d'une maison intelligente via une application androidAbderrahim Bouharaoua
 
Projet réalisé par ameny Khedhira & Arij Mekki
Projet réalisé par  ameny Khedhira & Arij MekkiProjet réalisé par  ameny Khedhira & Arij Mekki
Projet réalisé par ameny Khedhira & Arij MekkiAmeny Khedhira
 
Cours achirecture des ordi 1
Cours achirecture des ordi 1Cours achirecture des ordi 1
Cours achirecture des ordi 1fofanaabou
 
Etude bibliographique sur les algorithmes de compression sans perte
Etude bibliographique sur les algorithmes de compression sans perteEtude bibliographique sur les algorithmes de compression sans perte
Etude bibliographique sur les algorithmes de compression sans perteIbtihejHamdi
 
TelCar : Solution de lecture des informations de bord de véhicule
TelCar : Solution de lecture des informations de bord de véhiculeTelCar : Solution de lecture des informations de bord de véhicule
TelCar : Solution de lecture des informations de bord de véhiculeGhassen Chaieb
 
Relevé De Compte Ccp Par Sms
Relevé De Compte Ccp Par SmsRelevé De Compte Ccp Par Sms
Relevé De Compte Ccp Par SmsLamine.o
 

Tendances (20)

Rapport de Mémoire Master Recherche
Rapport de Mémoire Master RechercheRapport de Mémoire Master Recherche
Rapport de Mémoire Master Recherche
 
Rapport Stage ingénieur
Rapport Stage ingénieurRapport Stage ingénieur
Rapport Stage ingénieur
 
Vlan
VlanVlan
Vlan
 
Memoire
MemoireMemoire
Memoire
 
ETUDE ET MISE EN PLACE DE LA SOLUTION VOIP OVER LTE, DIMENSIONNEMENT ET MESUR...
ETUDE ET MISE EN PLACE DE LA SOLUTION VOIP OVER LTE, DIMENSIONNEMENT ET MESUR...ETUDE ET MISE EN PLACE DE LA SOLUTION VOIP OVER LTE, DIMENSIONNEMENT ET MESUR...
ETUDE ET MISE EN PLACE DE LA SOLUTION VOIP OVER LTE, DIMENSIONNEMENT ET MESUR...
 
Pfe psi gribiss bouchta
Pfe psi gribiss bouchtaPfe psi gribiss bouchta
Pfe psi gribiss bouchta
 
Wifi professionnel la norme 802.11, le déploiement, la sécurité 3ème edition
Wifi professionnel la norme 802.11, le déploiement, la sécurité   3ème editionWifi professionnel la norme 802.11, le déploiement, la sécurité   3ème edition
Wifi professionnel la norme 802.11, le déploiement, la sécurité 3ème edition
 
Lexique de-commandes-cisco
Lexique de-commandes-ciscoLexique de-commandes-cisco
Lexique de-commandes-cisco
 
AD hoc routage ad hocroutage ad hocroutage ad hoc
AD hoc routage ad hocroutage ad hocroutage ad hocAD hoc routage ad hocroutage ad hocroutage ad hoc
AD hoc routage ad hocroutage ad hocroutage ad hoc
 
Cours gratuit.com--id-2614
Cours gratuit.com--id-2614Cours gratuit.com--id-2614
Cours gratuit.com--id-2614
 
Automatisation d'une maison intelligente via une application android
Automatisation d'une maison intelligente via une application androidAutomatisation d'une maison intelligente via une application android
Automatisation d'une maison intelligente via une application android
 
Projet réalisé par ameny Khedhira & Arij Mekki
Projet réalisé par  ameny Khedhira & Arij MekkiProjet réalisé par  ameny Khedhira & Arij Mekki
Projet réalisé par ameny Khedhira & Arij Mekki
 
Memoire_final
Memoire_finalMemoire_final
Memoire_final
 
Cours achirecture des ordi 1
Cours achirecture des ordi 1Cours achirecture des ordi 1
Cours achirecture des ordi 1
 
Etude bibliographique sur les algorithmes de compression sans perte
Etude bibliographique sur les algorithmes de compression sans perteEtude bibliographique sur les algorithmes de compression sans perte
Etude bibliographique sur les algorithmes de compression sans perte
 
Ccna 2
Ccna 2Ccna 2
Ccna 2
 
TelCar : Solution de lecture des informations de bord de véhicule
TelCar : Solution de lecture des informations de bord de véhiculeTelCar : Solution de lecture des informations de bord de véhicule
TelCar : Solution de lecture des informations de bord de véhicule
 
Développement d’un Outil d’Aide À la Planification du Réseau Coeur GSM
Développement d’un Outil d’Aide À la Planification du Réseau Coeur GSMDéveloppement d’un Outil d’Aide À la Planification du Réseau Coeur GSM
Développement d’un Outil d’Aide À la Planification du Réseau Coeur GSM
 
Preparation tpcisco reseaux
Preparation tpcisco reseauxPreparation tpcisco reseaux
Preparation tpcisco reseaux
 
Relevé De Compte Ccp Par Sms
Relevé De Compte Ccp Par SmsRelevé De Compte Ccp Par Sms
Relevé De Compte Ccp Par Sms
 

Similaire à Reseaux

Wifiprofessionnellanorme80211ledeploiementlasecurite
Wifiprofessionnellanorme80211ledeploiementlasecuriteWifiprofessionnellanorme80211ledeploiementlasecurite
Wifiprofessionnellanorme80211ledeploiementlasecuriteRiadh Briki
 
Conception et Développement d'un Network Management System ATM Nortel
Conception et Développement d'un Network Management System ATM NortelConception et Développement d'un Network Management System ATM Nortel
Conception et Développement d'un Network Management System ATM NortelTidiane Sylla
 
Contributions aux environnements de développement de services de télécoms da...
Contributions aux environnements de développement de  services de télécoms da...Contributions aux environnements de développement de  services de télécoms da...
Contributions aux environnements de développement de services de télécoms da...Kokou Gaglo
 
Projet Passerelle sécurisée intelligente pour l'internet des objets
Projet Passerelle sécurisée intelligente pour l'internet des objetsProjet Passerelle sécurisée intelligente pour l'internet des objets
Projet Passerelle sécurisée intelligente pour l'internet des objetsUniversité de Rennes 1
 
Rapport Projet Application Web De Domotique Arduino - Liotard Roulleau
Rapport Projet Application Web De Domotique Arduino - Liotard RoulleauRapport Projet Application Web De Domotique Arduino - Liotard Roulleau
Rapport Projet Application Web De Domotique Arduino - Liotard RoulleauNicolas Roulleau
 
anssi-guide-passerelle_internet_securisee-v3.pdf
anssi-guide-passerelle_internet_securisee-v3.pdfanssi-guide-passerelle_internet_securisee-v3.pdf
anssi-guide-passerelle_internet_securisee-v3.pdfBadr Belhajja
 
Cours reseau ouya
Cours reseau ouyaCours reseau ouya
Cours reseau ouyaYaya Diako
 
rapport de mémoire de mastère : sécurisation du réseau nan au sein des smart ...
rapport de mémoire de mastère : sécurisation du réseau nan au sein des smart ...rapport de mémoire de mastère : sécurisation du réseau nan au sein des smart ...
rapport de mémoire de mastère : sécurisation du réseau nan au sein des smart ...yosra fraiji
 
mise en place d'un système de classes virtuelles utilisant le webRTC + openfi...
mise en place d'un système de classes virtuelles utilisant le webRTC + openfi...mise en place d'un système de classes virtuelles utilisant le webRTC + openfi...
mise en place d'un système de classes virtuelles utilisant le webRTC + openfi...Bassirou Dime
 
These tony ducrocq
These tony ducrocqThese tony ducrocq
These tony ducrocqmrewaabd
 
1 lexique de-commandes-cisco
1 lexique de-commandes-cisco1 lexique de-commandes-cisco
1 lexique de-commandes-ciscoMoctarThiongane
 
hipath_3000_man.pdf
hipath_3000_man.pdfhipath_3000_man.pdf
hipath_3000_man.pdffellahi1
 
Asterisk report
Asterisk reportAsterisk report
Asterisk reporttatbirt
 
0107-formation-ccna-module-3.pdf
0107-formation-ccna-module-3.pdf0107-formation-ccna-module-3.pdf
0107-formation-ccna-module-3.pdfbessem ellili
 
Android VoIP/SIP Softphone
Android VoIP/SIP SoftphoneAndroid VoIP/SIP Softphone
Android VoIP/SIP SoftphoneHamza Lazaar
 

Similaire à Reseaux (20)

these_sample
these_samplethese_sample
these_sample
 
Wifiprofessionnellanorme80211ledeploiementlasecurite
Wifiprofessionnellanorme80211ledeploiementlasecuriteWifiprofessionnellanorme80211ledeploiementlasecurite
Wifiprofessionnellanorme80211ledeploiementlasecurite
 
Wifi pro
Wifi proWifi pro
Wifi pro
 
Conception et Développement d'un Network Management System ATM Nortel
Conception et Développement d'un Network Management System ATM NortelConception et Développement d'un Network Management System ATM Nortel
Conception et Développement d'un Network Management System ATM Nortel
 
Contributions aux environnements de développement de services de télécoms da...
Contributions aux environnements de développement de  services de télécoms da...Contributions aux environnements de développement de  services de télécoms da...
Contributions aux environnements de développement de services de télécoms da...
 
ns.pdf
ns.pdfns.pdf
ns.pdf
 
Projet Passerelle sécurisée intelligente pour l'internet des objets
Projet Passerelle sécurisée intelligente pour l'internet des objetsProjet Passerelle sécurisée intelligente pour l'internet des objets
Projet Passerelle sécurisée intelligente pour l'internet des objets
 
Rapport Projet Application Web De Domotique Arduino - Liotard Roulleau
Rapport Projet Application Web De Domotique Arduino - Liotard RoulleauRapport Projet Application Web De Domotique Arduino - Liotard Roulleau
Rapport Projet Application Web De Domotique Arduino - Liotard Roulleau
 
anssi-guide-passerelle_internet_securisee-v3.pdf
anssi-guide-passerelle_internet_securisee-v3.pdfanssi-guide-passerelle_internet_securisee-v3.pdf
anssi-guide-passerelle_internet_securisee-v3.pdf
 
Cours reseau ouya
Cours reseau ouyaCours reseau ouya
Cours reseau ouya
 
Routage adhoc
Routage adhocRoutage adhoc
Routage adhoc
 
rapport de mémoire de mastère : sécurisation du réseau nan au sein des smart ...
rapport de mémoire de mastère : sécurisation du réseau nan au sein des smart ...rapport de mémoire de mastère : sécurisation du réseau nan au sein des smart ...
rapport de mémoire de mastère : sécurisation du réseau nan au sein des smart ...
 
mise en place d'un système de classes virtuelles utilisant le webRTC + openfi...
mise en place d'un système de classes virtuelles utilisant le webRTC + openfi...mise en place d'un système de classes virtuelles utilisant le webRTC + openfi...
mise en place d'un système de classes virtuelles utilisant le webRTC + openfi...
 
These tony ducrocq
These tony ducrocqThese tony ducrocq
These tony ducrocq
 
1 lexique de-commandes-cisco
1 lexique de-commandes-cisco1 lexique de-commandes-cisco
1 lexique de-commandes-cisco
 
hipath_3000_man.pdf
hipath_3000_man.pdfhipath_3000_man.pdf
hipath_3000_man.pdf
 
Asterisk report
Asterisk reportAsterisk report
Asterisk report
 
Badis these
Badis theseBadis these
Badis these
 
0107-formation-ccna-module-3.pdf
0107-formation-ccna-module-3.pdf0107-formation-ccna-module-3.pdf
0107-formation-ccna-module-3.pdf
 
Android VoIP/SIP Softphone
Android VoIP/SIP SoftphoneAndroid VoIP/SIP Softphone
Android VoIP/SIP Softphone
 

Plus de Riadh Briki

Windows server 2008_-_examen_mcts_70-642
Windows server 2008_-_examen_mcts_70-642Windows server 2008_-_examen_mcts_70-642
Windows server 2008_-_examen_mcts_70-642Riadh Briki
 
Technologiedesordinateursetdesreseaux
TechnologiedesordinateursetdesreseauxTechnologiedesordinateursetdesreseaux
TechnologiedesordinateursetdesreseauxRiadh Briki
 
Reseauxdentrepriseparlapratique
ReseauxdentrepriseparlapratiqueReseauxdentrepriseparlapratique
ReseauxdentrepriseparlapratiqueRiadh Briki
 
Networking in depth
Networking in depthNetworking in depth
Networking in depthRiadh Briki
 
Guideducablageuniversel
GuideducablageuniverselGuideducablageuniversel
GuideducablageuniverselRiadh Briki
 
Elebda3.net 7852
Elebda3.net 7852Elebda3.net 7852
Elebda3.net 7852Riadh Briki
 
Elebda3.net 6730
Elebda3.net 6730Elebda3.net 6730
Elebda3.net 6730Riadh Briki
 
Elebda3.net 4395
Elebda3.net 4395Elebda3.net 4395
Elebda3.net 4395Riadh Briki
 
Elebda3.net 2645
Elebda3.net 2645Elebda3.net 2645
Elebda3.net 2645Riadh Briki
 
Cours reseauepmi eisti
Cours reseauepmi eistiCours reseauepmi eisti
Cours reseauepmi eistiRiadh Briki
 
Construiresonreseaudentreprise
ConstruiresonreseaudentrepriseConstruiresonreseaudentreprise
ConstruiresonreseaudentrepriseRiadh Briki
 
Certification windows 7 partie 02
Certification windows 7 partie 02Certification windows 7 partie 02
Certification windows 7 partie 02Riadh Briki
 
Administration securite-reseaux
Administration securite-reseauxAdministration securite-reseaux
Administration securite-reseauxRiadh Briki
 

Plus de Riadh Briki (20)

Windows server 2008_-_examen_mcts_70-642
Windows server 2008_-_examen_mcts_70-642Windows server 2008_-_examen_mcts_70-642
Windows server 2008_-_examen_mcts_70-642
 
Windows server
Windows serverWindows server
Windows server
 
Vpn
VpnVpn
Vpn
 
Technologiedesordinateursetdesreseaux
TechnologiedesordinateursetdesreseauxTechnologiedesordinateursetdesreseaux
Technologiedesordinateursetdesreseaux
 
Reseauxdentrepriseparlapratique
ReseauxdentrepriseparlapratiqueReseauxdentrepriseparlapratique
Reseauxdentrepriseparlapratique
 
Osi layers
Osi layersOsi layers
Osi layers
 
Networking in depth
Networking in depthNetworking in depth
Networking in depth
 
Mathal a3la
Mathal a3laMathal a3la
Mathal a3la
 
Lecours
LecoursLecours
Lecours
 
Index0
Index0Index0
Index0
 
Guideducablageuniversel
GuideducablageuniverselGuideducablageuniversel
Guideducablageuniversel
 
Elebda3.net 7852
Elebda3.net 7852Elebda3.net 7852
Elebda3.net 7852
 
Elebda3.net 6730
Elebda3.net 6730Elebda3.net 6730
Elebda3.net 6730
 
Elebda3.net 4395
Elebda3.net 4395Elebda3.net 4395
Elebda3.net 4395
 
Elebda3.net 2645
Elebda3.net 2645Elebda3.net 2645
Elebda3.net 2645
 
Cours reseauepmi eisti
Cours reseauepmi eistiCours reseauepmi eisti
Cours reseauepmi eisti
 
Coursreseau 15
Coursreseau 15Coursreseau 15
Coursreseau 15
 
Construiresonreseaudentreprise
ConstruiresonreseaudentrepriseConstruiresonreseaudentreprise
Construiresonreseaudentreprise
 
Certification windows 7 partie 02
Certification windows 7 partie 02Certification windows 7 partie 02
Certification windows 7 partie 02
 
Administration securite-reseaux
Administration securite-reseauxAdministration securite-reseaux
Administration securite-reseaux
 

Reseaux

  • 1. Cours de r seaux Ma trise d'informatique Universit d'Angers Pascal Nicolas U.F.R. Sciences de l'Universit d'Angers E-Mail: pascal.nicolas@univ-angers.fr Web: www.info.univ-angers.fr/pub/pn
  • 2. Pr face Ceci est le support du cours de r seaux de la ma trise d'informatique de l'Universit d'Angers (ann e 1999/2000). Le chapitre 1 traite des transmissions de donn es et des r seaux en g n ral sous l'angle de l'architecture des syst mes ouverts (mod le OSI). Le chapitre 2 traite du r seau Internet et des protocoles qui lui sont associ s. Les chapitres 3 et 4 sont plus orient s vers des applications pratiques visant la mise en place de services sur les r seaux. Ils ne sont pas d taill s dans ce document car ils sont plus particuli rement tudi s en TD et TP. Les principales r f rences bibliographiques en fran ais sont: Guy Pujolle - Les r seaux. - Eyrolles. Patrice Rolin, et al. - Les r seaux, principes fondamentaux. - Herm s. Douglas Comer - TCP/IP, architectures, protocoles et applications. - Inter ditions. W. Richard Stevens - TCP/IP illustr - Vol 1,2,3. - International Thomson Publishing, France. Tous mes remerciements mes coll gues enseignants ou ing nieurs de l'Universit d'Angers: Serge Tah , Jacques Allo et St phane Vincendeau, pour leur aide la mise en place de ce cours.
  • 3. Table des mati res 1 Principe des r seaux num riques. 1 1.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 Le mod le de r f rence OSI de l'ISO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.3 La couche physique. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.3.1 Transmission en bande de base. . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.3.2 Transmission modul e. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.3.3 Multiplexage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.3.4 Les supports de transmission. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 1.3.5 Exemple de l'ADSL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.4 La couche liaison. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.4.1 D tection et correction d'erreurs. . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.4.2 Protocoles de liaison de donn es. . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.5 La couche r seau. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 1.5.1 Le contr le de ux. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.5.2 Le probl me de la congestion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.5.3 Le routage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.5.4 La norme X25, niveau r seau. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 1.6 La couche transport. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 1.6.1 Qualit de service. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 1.6.2 Primitives du service transport. . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 1.6.3 Le protocole de transport ISO en mode connect (ISO 8073 ou X.224) . . . . . 27 1.7 Les couches hautes: session, pr sentation et application. . . . . . . . . . . . . . . . . . 29 1.7.1 La couche session. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 1.7.2 La couche pr sentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 1.7.3 La couche application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 2 Le r seau Internet et les protocoles TCP/IP. 32 2.1 Historique et organisation d'Internet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 2.2 Architecture des protocoles TCP/IP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 2.3 Adressage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 2.4 La couche liaison d'Internet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 2.4.1 Le r seau Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 2.4.2 La liaison SLIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 2.4.3 La liaison PPP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 2.4.4 Les protocoles ARP et RARP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 2.5 Le protocole IP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 2.5.1 Le datagramme IP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 2.5.2 La fragmentation des datagrammes IP. . . . . . . . . . . . . . . . . . . . . . . . 49 2.5.3 Le routage IP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 2.5.4 La gestion des erreurs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 2.6 Les protocoles TCP et UDP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
  • 4. 2.6.1 Le protocole UDP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 2.6.2 Le protocole TCP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 2.7 Les applications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 2.7.1 Protocole de d marrage: BOOTP. . . . . . . . . . . . . . . . . . . . . . . . . . 64 2.7.2 Connexion distance: Telnet et Rlogin. . . . . . . . . . . . . . . . . . . . . . . 65 2.7.3 Syst me de chiers en r seau: NFS. . . . . . . . . . . . . . . . . . . . . . . . . 66 2.7.4 Transfert de chier: TFTP et FTP. . . . . . . . . . . . . . . . . . . . . . . . . . 66 2.7.5 Courrier lectronique: smtp. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 2.7.6 News: nntp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 2.7.7 World Wide Web: http.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 2.8 Outils communs d'utilisation d'un r seau sous Unix. . . . . . . . . . . . . . . . . . . . 75 2.8.1 Fichiers de con guration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 2.8.2 Quelques commandes utiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 3 Applets Java. 82 4 Installation d'un intranet 83
  • 5. Chapitre 1 Principe des r seaux num riques. Dans ce chapitre nous aborderons les grands principes r gissant les quipements mat riels et lo- giciels permettant d' changer des donn es mises sous forme num rique et qui forment les r seaux informatiques. 1.1 Introduction. Les r seaux informatiques qui permettaient leur origine de relier des terminaux passifs de gros ordinateurs centraux autorisent l'heure actuelle l'interconnexion de tous types, d'ordinateurs que ce soit de gros serveurs, des stations de travail, des ordinateurs personnels ou de simples terminaux graphiques. Les services qu'ils o rent font partie de la vie courante des entreprises et administrations (banques, gestion, commerce, bases de donn es, recherche, etc...) et des particuliers (messagerie, loisirs, services d'informations par minitel et Internet ...). 1 m 10 m 100 m 1 km 10 km 100 km bus d’interconnexion structure LAN réseaux locaux MAN réseaux métropolitains réseaux étendus WAN Fig. 1.1 - Classi cation des r seaux informatiques selon leur taille. On peut faire une premi re classi cation des r seaux l'aide de leur taille comme on peut le voir dans la gure 1.1. Les bus que l'on trouve dans un ordinateur pour relier ses di rents composants (m moires, p - riph riques d'entr e-sortie, processeurs, ...) peuvent tre consid r s comme des r seaux d di s des t ches tr s sp ci ques. Les structures d'interconnexion sont des r seaux de tr s haut d bits, mais de faible tendue, et regroupent les pr et post-processeurs des ordinateurs vectoriels par exemple. En e et l'usage d'un super-calculateur (Cray notamment) n cessite un ordinateur, dit frontal, qui lui pr pare les donn es et recueille les r sultats. Un r seau local (Local Area Network) peut s' tendre de quelques m tres quelques kilom tres et correspond au r seau d'une entreprise. Il peut se d velopper sur plusieurs b timents et permet de satisfaire tous les besoins internes de cette entreprise. 1
  • 6. Un r seau m tropolitain (Metropolitan Area Network) interconnecte plusieurs lieux situ s dans une m me vile, par exemple les di rents sites d'une universit ou d'une administration, chacun poss dant son propre r seau local. Un r seau tendu (Wide Area Network) permet de communiquer l' chelle d'un pays, ou de la plan te enti re, les infrastructures physiques pouvant tre terrestres ou spatiales l'aide de satellites de t l communications. maillage irrégulier réseaux en mode point à point maillage régulier satellitebus anneau étoile boucle doubleboucle simple réseaux en mode de diffusion Fig. 1.2 - Topologie des r seaux informatiques. On peut galement di rencier les r seaux selon leur structure ou plus pr cis ment leur topologie comme illustr dans la gure 1.2. On y distingue ainsi deux classes de r seaux: ceux en mode de di usion ceux en mode point point Le premier mode de fonctionnement consiste partager un seul support de transmission. Chaque message1 envoy par un quipement sur le r seau est re u par tous les autres. C'est l'adresse sp ci que plac e dans le message qui permettra chaque quipement de d terminer si le message lui est adress ou non. tout moment un seul quipement le droit d'envoyer un message sur le support, il faut donc qu'il coute au pr alable si la voie est libre si ce n'est pas le cas il attend selon un protocole sp ci que chaque architecture. Les r seaux locaux adoptent pour la plupart le mode di usion sur une architecture en bus ou en anneau et les r seaux satellitaires ou radio suivent galement ce mode de communication. Dans une telle con guration la rupture du support provoque l'arr t du r seau, par contre la panne d'un des l ments ne provoque pas (en g n ral) la panne globale du r seau. Dans le mode di usion point point le support physique (le c ble) relie une paire d' quipements seulement. Quand deux l ments non directement connect s entre eux veulent communiquer ils le font par l'interm diaire des autres n uds du r seau. Dans le cas de l' toile le site central re oit et envoie tous les messages, le fonctionnement est simple, mais la panne du n ud central paralyse tout le r seau Dans une boucle simple, chaque n ud recevant un message de son voisin en amont le r exp die son voisin en aval. Pour que les messages ne tournent pas ind niment le n ud metteur retire le message 1: Terme laiss vague pour l'instant. 2
  • 7. lorsqu'il lui revient. Si l'un des l ments du r seau tombe en panne, alors tout s'arr te. Ce probl me est partiellement r solu par la double boucle dont chacune des boucles fait tourner les messages dans un sens oppos . En cas de panne d'un quipement, on reconstitue une boucle simple avec les l ments actifs des deux boucles, mais dans ce cas tout message passera deux fois par chaque n ud. Il en r sulte alors une gestion tr s complexe. Dans le maillage r gulier l'interconnexion est totale ce qui assure une abilit optimale du r seau, par contre c'est une solution co teuse en c blage physique. Si l'on all ge le plan de c blage, le maillage devient irr gulier et la abilit peut rester lev e mais elle n cessite un routage des messages selon des algorithmes parfois complexes. Dans cette architecture il devient presque impossible de pr voir le temps de transfert d'un n ud un autre. Quelle que soit l'architecture physique d'un r seau on trouve deux modes de fonctionnement di - rents: avec connexion sans connexion Dans le mode avec connexion, toute communication entre deux quipements suit le processus suivant: 1. l' metteur demande l' tablissement d'une connexion par l'envoi d'un bloc de donn es sp cial 2. si le r cepteur (ou le gestionnaire de service) refuse cette connexion la communication n'a pas lieu 3. si la connexion est accept e, elle est tablie par mise en place d'un circuit virtuel dans le r seau reliant l' metteur au r cepteur 4. les donn es sont ensuite transf r es d'un point l'autre 5. la connexion est lib r e C'est le fonctionnement bien connu du r seau t l phonique classique. Les avantages du mode avec connexion sont la s curisation du transport par identi cation claire de l' metteur et du r cepteur, la possibilit d' tablir l'avance des param tres de qualit de service qui seront respect s lors de l' change des donn es. Les d fauts sont la lourdeur de la mise en place de la connexion qui peut se r v ler beaucoup trop on reuse si l'on ne veut changer que quelques octets ainsi que la di cult tablir des communications multipoint. Dans le mode sans connexion les blocs de donn es, appel s datagrammes, sont mis sans v ri er l'avance si l' quipement atteindre, ainsi que les n uds interm diaires ventuels, sont bien actifs. C'est alors aux quipements g rant le r seau d'acheminer le message tape par tape et en assurant ventuellement sa temporisation jusqu' ce que le destinataire soit actif. Ce service est celui du courrier postal classique et suit les principes g n raux suivants: - le client poste une lettre dans une bo te aux lettres - chaque lettre porte le nom et l'adresse du destinataire - chaque client a une adresse propre et une bo te aux lettres - le contenu de l'information reste inconnu du prestataire de service - les supports du transport sont inconnus de l'utilisateur du service D'autre part il existe plusieurs types de commutation dont les principaux sont: la commutation de circuits : c'est historiquement la premi re avoir t utilis e, par exemple dans le r seau t l phonique l'aide des auto-commutateurs. Elle consiste cr er dans le r seau 3
  • 8. un circuit particulier entre l' metteur et le r cepteur avant que ceux-ci ne commencent changer des informations. Ce circuit sera propre aux deux entit s communiquant et il sera lib r lorsque l'un des deux coupera sa communication. Par contre, si pendant un certain temps les deux entit s ne s' changent rien le circuit leur reste quand m me attribu . C'est pourquoi, un m me circuit (ou portion de circuit) pourra tre attribu plusieurs communications en m me temps. Cela am liore le fonctionnement global du r seau mais pose des probl mes de gestion ( les d'attente, m morisation,...) la commutation de messages : elle consiste envoyer un message2 de l' metteur jusqu'au r cepteur en passant de n ud de commutation en n ud de commutation. Chaque n ud attend d'avoir re u compl tement le message avant de le r exp dier au n ud suivant. Cette technique n cessite de pr voir de grandes zones tampon dans chaque n ud du r seau, mais comme ces zones ne sont pas illimit es il faut aussi pr voir un contr le de ux des messages pour viter la saturation du r seau. Dans cette approche il devient tr s di cile de transmettre de longs messages. En e et, comme un message doit tre re u enti rement chaque tape si la ligne a un taux d'erreur de 10;5 par bit (1 bit sur 105 est erron ) alors un message de 100000 octets n'a qu'une probabilit de 0,0003 d' tre transmis sans erreur. la commutation de paquets : elle est apparue au d but des ann es 70 pour r soudre les probl mes d'erreur de la commutation de messages. Un message mis est d coup en paquets3 et par la suite chaque paquet est commut travers le r seau comme dans le cas des messages. Les paquets sont envoy s ind pendamment les uns des autres et sur une m me liaison on pourra trouver les uns derri re les autres des paquets appartenant di rents messages. Chaque n ud redirige chaque paquet vers la bonne liaison gr ce une table de routage. La reprise sur erreur est donc ici plus simple que dans la commutation de messages, par contre le r cepteur nal doit tre capable de reconstituer le message mis en r assemblant les paquets. Ceci n cessitera un protocole particulier car les paquets peuvent ne pas arriver dans l'ordre initial, soit parce qu'ils ont emprunt des routes di rentes, soit parce que l'un d'eux a du tre r mis suite une erreur de transmission. la commutation de cellules : une cellule est un paquet particulier dont la taille est toujours x e 53 octets (5 octets d'en-t te et 48 octets de donn es). C'est la technique de base des r seaux hauts d bits ATM (Asynchronous Transfert Mode) qui op rent en mode connect o avant toute mission de cellules, un chemin virtuel est tabli par lequel passeront toutes les cellules. Cette technique mixe donc la commutation de circuits et la commutation de paquets de taille xe permettant ainsi de simpli er le travail des commutateurs pour atteindre des d bits plus lev s. 1.2 Le mod le de r f rence OSI de l'ISO. Au d but des ann es 70, chaque constructeur a d velopp sa propre solution r seau autour d'ar- chitecture et de protocoles priv s (SNA d'IBM, DECnet de DEC, DSA de Bull, TCP/IP du DoD,...) et il s'est vite av r qu'il serait impossible d'interconnecter ces di rents r seaux propri taires si une norme internationale n' tait pas tablie. Cette norme tablie par l'International Standard Organiza- tion4 (ISO) est la norme Open System Interconnection (OSI, interconnexion de syst mes ouverts). Un syst me ouvert est un ordinateur, un terminal, un r seau, n'importe quel quipement respectant cette norme et donc apte changer des informations avec d'autres quipements h t rog nes et issus de constructeurs di rents. 2: Un message est une suite d'informations formant un tout, par exemple un chier ou une ligne de commande tap e au clavier d'un ordinateur. 3: Un paquet est une suite d'octets, dont le contenu n'a pas forc ment une signi cation et ne pouvant pas d passer une taille x e par avance. 4: L'ITU-T, International Telecommunication Union, Telecommunication Sector, anciennement CCITT est gale- ment un organisme de normalisation des t l communications. Il d pend de l'ONU et est bas Gen ve. Information http://www.itu.int 4
  • 9. 7 Application 6 Pr sentation 5 Session 4 Transport 3 R seau 2 Liaison 1 Physique Fig. 1.3 - Les sept couches du mod le de r f rence OSI de l'ISO. Le premier objectif de la norme OSI a t de d nir un mod le de toute architecture de r seau bas sur un d coupage en sept couches (cf gure 1.3), chacune de ces couches correspondant une fonctionnalit particuli re d'un r seau. Les couches 1, 2, 3 et 4 sont dites basses et les couches 5, 6 et 7 sont dites hautes. couche 1 couche 1 couche 2 couche 2 couche 3 couche 3 couche 4 couche 4 couche 5 couche 5 couche 6 couche 6 couche 7 couche 7 -protocole de couche 1 -protocole de couche 2 -protocole de couche 3 -protocole de couche 4 -protocole de couche 5 -protocole de couche 6 -protocole de couche 7 6? 6? 6? 6? 6? 6? 6? 6? 6? 6? 6? 6? 6? 6? support physique Fig. 1.4 - Communication entre couches. Chaque couche est constitu e d' l ments mat riels et logiciels et o re un service la couche situ e imm diatement au-dessus d'elle en lui pargnant les d tails d'impl mentation n cessaires. Comme illustr dans la gure 1.4, chaque couche n d'une machine g re la communication avec la couche n d'une autre machine en suivant un protocole de niveau n qui est un ensemble de r gles de communication pour le service de niveau n. En fait, aucune donn e n'est transf r e directement d'une couche n vers une autre couche n, mais elle l'est par tapes successives. Supposons un message transmettre de l' metteur A vers le r cepteur B. Ce message, g n r par une application de la machine A va franchir les couches successives de A via les interfaces qui existent entre chaque couche pour nalement atteindre le support physique. L , il va transiter via di rents n uds du r seau, chacun de ces n uds traitant le message via ses couches basses. Puis, quand il arrive destination, le message remonte les couches du r cepteur B via les di rentes interfaces et atteint l'application charg e de traiter le message re u. Ce processus de communication est illustr dans la gure 1.5. Nous allons maintenant d tailler les caract ristiques de chacune de ces couches en pr cisant d'abord que les fonctions et services d nis dans les couches du mod le OSI peuvent se retrouver dans d'autres couches dans les syst mes op rationnels disponibles sur le march . Il se peut galement qu'une fonc- tionnalit localis e dans une seule couche dans le mod le OSI se retrouve r partie sur plusieurs couches. Mais cela illustre simplement la distance qui existe entre un mod le th orique et des implantations 5
  • 10. metteur A r cepteur B sous-r seaux physique physique liaison liaison r seau r seau transport transport session session pr sentation pr sentation application application physique physique liaison liaison r seau r seau - -- - -- - -- - - - - 6? 6? 6? 6? 6? 6? 6? 6? 6? 6? 6? 6? 6? 6? 6? 6? 6? 6? 6? 6? support physique support physique Fig. 1.5 - Communication entre couches. pratiques essayant de suivre ce mod le. 1.3 La couche physique. D nition 1.3.1 La couche physique fournit les moyens m caniques, lectriques, fonctionnels et pro- c duraux n cessaires l'activation, au maintien et la d sactivation des connexions physiques destin es la transmission de bits entre deux entit s de liaison de donn es. Ici, on s'occupe donc de transmission des bits de fa on brute, l'important est que l'on soit s r que si l' metteur envoie un bit 1 alors le r cepteur re oit un bit 1. Les normes et standards de la couche physique d nissent le type de signaux mis (modulation, puissance, port e...), la nature et les caract ristiques des supports (c ble, bre optique...), les sens de transmission... Tout d'abord une liaison entre 2 quipements A et B peut tre simplex (unidirectionnelle), dans ce cas A est toujours l' metteur et B le r cepteur. C'est ce que l'on trouve par exemple entre un banc de mesure et un ordinateur recueillant les donn es mesur es. La communication est half-duplex (bidirectionnelle l'alternat) quand le r le de A et B peut changer, la communication change de sens tour de r le (comme avec des talkies-walkies). Elle est full-duplex (bidirectionnelle simultan e) quand A et B peuvent mettre et recevoir en m me temps (comme dans le cas du t l phone). La transmission de plusieurs bits peut s'e ectuer en s rie ou en parall le. En s rie, les bits sont envoy s les uns derri re les autres de mani re synchrone ou asynchrone. Dans le mode synchrone l' metteur et le r cepteur se mettent d'accord sur une base de temps (un top d'horloge) qui se r - p te r guli rement durant tout l' change. chaque top d'horloge (ou k tops d'horloge k entier x d nitivement) un bit est envoy et le r cepteur saura ainsi quand lui arrive les bits. Dans le mode asynchrone, il n'y a pas de n gociation pr alable mais chaque caract re envoy est pr c d d'un bit de start et imm diatement suivi d'un bit de stop. Ces deux bits sp ciaux servent caler l'horloge du r cepteur pour qu'il chantillonne le signal qu'il re oit a n d'y d coder les bits qu'il transmet. En pa- rall le, les bits d'un m me caract re sont envoy s en m me temps chacun sur un l distinct, mais cela pose des probl mes de synchronisation et n'est utilis que sur de courtes distances (bus par exemple). Quel que soit le mode de transmission retenu, l' mission est toujours cadenc e par une horloge dont la vitesse donne le d bit de la ligne en bauds, c'est- -dire le nombre de tops d'horloge en une seconde. Ainsi, une ligne d'un d bit de 100 bauds autorise 100 missions par seconde. Si chaque top d'horloge un signal repr sentant 0 ou 1 est mis, alors dans ce cas le d bit en bit=s est quivalent au d bit en baud. Cependant, on peut imaginer que le signal mis puisse prendre 4 valeurs distinctes (0, 1, 2, 3) 6
  • 11. dans ce cas le signal a une valence de 2 et le d bit en bit=s est double de celui en baud. D'une mani re g n rale, si le signal peut prendre 2n valeurs distinctes on dit alors que sa valence est de n, ainsi chaque top n bits peuvent tre transmis simultan ment et si le d bit de la ligne est de x bauds il est en fait de n.x bit/s. 1.3.1 Transmission en bande de base. La transmission en bande de base consiste envoyer directement les suite de bits sur le support l'aide de signaux carr s constitu s par un courant lectrique pouvant prendre 2 valeurs (5 Volts ou 0 par exemple). On d taillera ci-apr s les di rents codages des bits possibles, mais dans tous les cas l' metteur envoie sur la ligne un signal carr du type de celui de la gure 1.6 pour la s quence de bits 1010 par exemple. - 6 1 1000 T = 1 500 1 Fig. 1.6 - Signal carr de la s quence de bits 1010. En consid rant ce signal g(t) comme p riodique (il su t de r p ter une fois sur T::2T] le signal donn sur 0::T] pour obtenir un signal p riodique sur 0::2T]) on peut le d composer en une s rie de Fourier de la forme g(t) = c=2 + 1X n=1 ansin(2 nft) + 1X n=1 bncos(2 nft) o f = 1=T la fr quence fondamentale du signal c = 2=T Z T 0 g(t)dt an = 2=T Z T 0 g(t)sin(2 nft)dt bn = 2=T Z T 0 g(t)cos(2 nft)dt On dit que le signal carr est d compos en une somme in nie d'harmoniques, la premi re tant d nomm e fondamentale, et cette approximation math matique permet de savoir quel signal lectrique sera r ellement re u au bout du c ble. Cependant, le c ble sur lequel est mis le signal poss de une bande passante qui est l'intervalle des fr quences possibles sur ce support, donc la r ception on ne retrouve pas toute la richesse du signal initial et dans la plupart des cas le signal carr sera tr s d form . Par exemple, le c ble t l phonique a une bande passante de 300 3400 Hz, donc tous les signaux de fr quence inf rieure 300 ou sup rieure 3400 seront limin es. Dans notre exemple nous obtenons g(t) = 1 2 + 2sin(2000 t) + 2 3 sin(6000 t) + 2 5 sin(10000 t) + ::: Dans la gure 1.7 nous trouvons gauche les 3 premi res harmoniques et on remarque que plus la fr quence augmente plus l'amplitude diminue. droite nous avons le signal r ellement per u par le r cepteur si l'on consid re que le c ble ne laisse passer que ces 3 harmoniques-ci. Dans ce cas le signal re u reste assez proche du carr mis et le r cepteur n'aura pas trop de mal le d coder. 7
  • 12. -0.2 0 0.2 0.4 0.6 0.8 1 1.2 0 0.001 0.002 -0.2 0 0.2 0.4 0.6 0.8 1 1.2 0 0.001 0.002 Fig. 1.7 - Harmoniques et transform e de Fourrier de la s quence de bits 1010. Sans entrer dans des d tails relevant de la th orie du signal, nous indiquerons simplement que sur une ligne t l phonique dont la bande passante est de 3100Hz et pour un rapport signal/bruit5 de 10dB on peut atteindre une capacit de 10Kbits/s. code tout ou rien code NRZ code bipolaire code RZ (retour z ro) code biphase (ou Manchester) code Miller (delay modulation) 0 1 1 0 0 1 0 0 1 1 0 0 1 0 Fig. 1.8 - Di rents codages en bande de base de la s quence 0110010. Dans la gure 1.8 nous trouvons quelques exemple de codage de l'information pour une transmission en bande de base. le code tout ou rien : c'est le plus simple, un courant nul code le 0 et un courant positif indique le 1 le code NRZ (non retour z ro): pour viter la di cult obtenir un courant nul, on code le 1 par un courant positif et le 0 par un courant n gatif. 5: Rapport de l' nergie du signal mis sur l' nergie du bruit de la ligne. Le bruit tant d'un point de vue math matique une fonction al atoire repr sentant les perturbations (ondes lectromagn tiques, d fauts dans les composants qui relaient le signal...) que subit la transmission. 8
  • 13. le code bipolaire : c'est aussi un code tout ou rien dans lequel le 0 est repr sent par un courant nul, mais ici le 1 est repr sent par un courant alternativement positif ou n gatif pour viter de maintenir des courants continus. le code RZ : le 0 est cod par un courant nul et le 1 par un courant positif qui est annul au milieu de l'intervalle de temps pr vu pour la transmission d'un bit. le code Manchester : ici aussi le signal change au milieu de l'intervalle de temps associ chaque bit. Pour coder un 0 le courant sera n gatif sur la premi re moiti de l'intervalle et positif sur la deuxi me moiti , pour coder un 1, c'est l'inverse. Autrement dit, au milieu de l'intervalle il y a une transition de bas en haut pour un 0 et de haut en bas pour un 1. le code Miller : on diminue le nombre de transitions en e ectuant une transition (de haut en bas ou l'inverse) au milieu de l'intervalle pour coder un 1 et en n'e ectuant pas de transition pour un 0 suivi d'un 1. Une transition est e ectu e en n d'intervalle pour un 0 suivi d'un autre 0. 1.3.2 Transmission modul e. Le principal probl me de la transmission en bande de base est la d gradation du signal tr s rapide en fonction de la distance parcourue, c'est pourquoi elle n'est utilis e qu'en r seau local (<5km). Il serait en e et trop co teux de pr voir des r p teurs pour r g n rer r guli rement le signal. C'est pourquoi sur les longues distance on met un signal sinuso dal qui, m me s'il est a aibli, sera facilement d codable par le r cepteur. Ce signal sinuso dal est obtenu gr ce un modem (modulateur-d modulateur)qui est un quipement lectronique capable de prendre en entr e un signal en bande de base pour en faire un signal sinuso dal (modulation) et l'inverse savoir restituer un signal carr partir d'un signal sinuso dal (d modulation). Autrement dit il permet de passer de signaux num riques discrets (0 ou 1) des signaux analogiques continus. Il existe trois types de modulation d crits dans la gure 1.9 la modulation d'amplitude envoie un signal d'amplitude di rente suivant qu'il faut transmettre un 0 ou un 1. Cette technique est e cace si la bande passante et la fr quence sont bien ajust es. Par contre, il existe des possibilit s de perturbation (orage, lignes lectriques...), car si un signal de grande amplitude (repr sentant un 1) est momentan ment a aibli le r cepteur l'interpr tera tort en un 0. la modulation de fr quence envoie un signal de fr quence plus lev e pour transmettre un 1. Comme l'amplitude importe peu, c'est un signal tr s r sistant aux perturbations (la radio FM est de meilleure qualit que la radio AM) et c'est assez facile d tecter. la modulation de phase change la phase du signal (ici de 180 ) suivant qu'il s'agit d'un 0 (phase montante) ou d'un 1 (phase descendante). Dans les exemples donn s ci-dessus on a seulement 2 niveaux possibles chaque fois, donc on a uniquement la possibilit de coder 2 valeurs di rentes chaque instant, dans ce cas 1 baud = 1bit/s. De mani re plus sophistiqu e il existe des modems capables de moduler un signal suivant plusieurs niveaux, par exemple 4 fr quences di rentes que le modem r cepteur saura lui aussi distinguer. Dans ce cas, chaque signal envoy code 2 bits donc 1 baud = 2bit/s. Il est m me possible de transmettre des signaux m lant les di rentes modulations pr sent es comme dans le cas de la norme V29 qui module la fois l'amplitude du signal sur 2 niveaux et la phase sur 8 niveaux (0 ,45 ,...,315 ). En combinant les 2 modulations, on obtient ainsi 16 signaux di rents possibles chaque instant, permettant de transmettre simultan ment 4 bits chaque top d'horloge (1 baud = 4 bit/s). 9
  • 14. -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 0 1 1 0 0 1 0 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 0 1 1 0 0 1 0 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 0 1 1 0 0 1 0 Fig. 1.9 - Modulations d'amplitude, de fr quence et de phase de la s quence de bits 0110010. 1.3.3 Multiplexage. Le multiplexage consiste faire transiter sur une seule et m me ligne de liaison, dite voie haute vitesse, des communications appartenant plusieurs paires d' quipements metteurs et r cepteurs comme repr sent dans la gure 1.10. Chaque metteur (resp. r cepteur) est raccord un multiplexeur (resp. d multiplexeur) par une liaison dit voie basse vitesse. Plusieurs techniques sont possibles: le multiplexage fr quentiel consiste a ecter chaque voie basse vitesse une bande passante particuli re sur la voie haute vitesse en s'assurant qu'aucune bande passante de voie basse vitesse ne se chevauche. Le multiplexeur prend chaque signal de voie basse vitesse et le r emet sur la voie haute vitesse dans la plage de fr quences pr vues. Ainsi plusieurs transmissions peuvent tre faites simultan ment, chacune sur une bande de fr quences particuli res, et l'arriv e le d multiplexeur6 est capable de discriminer chaque signal de la voie haute vitesse pour l'aiguiller sur la bonne voie basse vitesse. le multiplexage temporel partage dans le temps l'utilisation de la voie haute vitesse en l'attribuant successivement aux di rentes voies basse vitesse m me si celles-ci n'ont rien mettre. Suivant les techniques chaque intervalle de temps attribu une voie lui permettra de transmettre 1 ou plusieurs bits. le multiplexage statistique am liore le multiplexage temporel en n'attribuant la voie haute vitesse qu'aux voies basse vitesse qui ont e ectivement quelque chose transmettre. En ne transmettant pas les silences des voies basses cette technique implant e dans des concentrateurs am liore 6: Le m me quipement joue la fois le r le de multiplexeur et d multiplexeur. 10
  • 15. MUX DEMUX ... ... voie HV voies BV voies BV - 0 N kHzfr quences de la voie HV 6 vbv 1 vbv 2 vbv 3 vbv 4 vbv 5 - 0 N secutilisation de la voie HV vbv 1 vbv 2 vbv 3 vbv 4 vbv 5 Fig. 1.10 - Multiplexages d'une ligne. grandement le d bit global des transmissions mais elle fait appel des protocoles de plus haut niveau et est bas e sur des moyennes statistiques des d bits de chaque ligne basse vitesse. 1.3.4 Les supports de transmission. L'objectif de la couche 1 du mod le OSI est aussi de xer les caract ristiques des mat riels utilis s pour relier physiquement les quipements d'un r seau. Nous d crivons succinctement quelques uns des supports de transmission les plus usit s. la paire torsad e est un c ble t l phonique constitu l'origine de deux ls de cuivre isol s et enroul s l'un sur l'autre (d'o le nom). Actuellement on utilise plut t des c bles constitu s de 2 ou 4 paires torsad es. Elle est tr s r pandue, de connexion facile et d'un faible co t mais elle poss de une faible immunit aux bruits. Pour am liorer les performances on utilise la paire torsad e blind e plus r sistante aux perturbations lectromagn tiques et qui autorise un d bit pouvant aller jusqu' 16 Mbits/s. D'une mani re g n rale les performances (et les co ts) de ce support d pendent de la qualit des mat riaux employ s et des d tails de r alisation. On recommande actuellement d'utiliser de la 4 paires non blind es de cat gorie 5 avec une imp dance de 100 ohm (la cat gorie 3 est inf rieure en qualit , et l'imp dance 120 ohm est une particularit fran aise). Utilis e en ligne de t l phone classique leur d bit est au maximum de 56 Kbit/s avec les modems les plus r cents, mais les progr s de cette technologie autorisent, sur de courtes distances, des d bits de l'ordre de 10 Mbit/s voire 100 Mbit/s. On la rencontre tr s souvent comme support des r seaux 10 Base T 7 , chaque extr mit d'un tel c ble tant muni d'une prise RJ45. Son int r t principal est que cette m me paire torsad e peut servir au r seau t l phonique, au r seau informatique et vid o d'une m me entreprise et de plus elle pourra tre utilis e ult rieurement pour voluer vers des r seaux 100 Base T et m me Gigabits . Dans ce type de r seaux locaux chaque poste est reli un hub, par une liaison point point, formant physiquement une toile (dont le centre est un hub) ou un arbre, mais dont le fonctionnement est en mode de di usion de type bus. Cependant l'orientation actuelle est de remplacer les hubs par des commutateurs qui eux r alisent de la di usion en mode point point. le c ble coaxial est un c ble utilis galement en t l phonie et en t l vision, il est constitu d'un c ur qui est un l de cuivre. Ce c ur est dans une gaine isolante elle-m me entour e par une tresse de cuivre, le tout est recouvert d'une gaine isolante. Certains coaxiaux large bande peuvent atteindre un d bit maximal de 150 Mhz mais son encombrement est nettement sup rieur celui de la paire torsad e et ses performances n'atteignant pas celle de la bre optique il a tendance dispara tre des nouveaux plans de c blage. 7: T pour twisted (torsad e), 10 pour 10 Mbits/s et 100 Base T pour 100 Mbit/s. 11
  • 16. On le rencontre dans sa version 10 Base2 (ou Ethernet n 10 Mbit/s sur 200 m maximum) ou 10 Base5 (ou Ethernet pais 10 Mbit/s sur 500 m maximum) pour la r alisation de r seaux locaux topologie en bus. Les connexions de chaque poste sur le bus se font l'aide de connecteur en T et la connexion du c ble sur le poste se fait l'aide de connecteur AUI pour l'Ethernet pais et BNC pour l'Ethernet n8 . Il est actuellement beaucoup utilis pour relier entre eux deux l ments actifs (hub, routeur,...) la bre optique est un support d'apparition plus r cente mais son utilisation prend de l'ampleur de jour en jour car elle permet(tra) des d bits de plusieurs Gbit/s sur de tr s longues distances. Elle est particuli rement adapt e l'interconnexion de r seaux par exemple entre plusieurs b timent d'un m me site. En plus de ses capacit s de transmission, ses grands avantages sont son immu- nit aux interf rences lectromagn tiques et sa plus grande di cult d' coute, contrairement aux supports lectriques, ce qui la rend galement attrayante dans les contextes o la con dentialit est requise. D'un point de vue technique une bre optique est constitu e d'un c ur et d'une gaine en silice de quelques m recouvert d'un isolant. une extr mit une diode lectrolumi- nescente (LED) ou une diode laser met un signal lumineux et l'autre une photodiode ou un phototransistor est capable de reconna tre ce signal. :XXXXXXXXXXXXz :1PPPPPPPPPq 1source lumineuse Fig. 1.11 - R exion interne. Les di rents rayons lumineux issus de la source sont guid s par le l de verre en suivant un principe de r exion interne qui se produit au niveau de la fronti re entre le c ur et la gaine comme illustr dans la gure 1.11. Si la r exion ne laisse subsister qu'un seul rayon, car le diam tre du l est tr s r duit, alors on parle de bre monomode sinon, lorsqu'il existe plusieurs rayons simultan ment on parle de bre multimode. En n, la bande passante d'une bre optique tant tr s large (plusieurs MHz) il est ais de faire du multiplexage fr quentiel pour faire transiter simultan ment plusieurs communications. les liaisons sans l sont possibles gr ce des liaisons infrarouges ou laser sur de courtes distances et gr ce aux faisceaux hertziens pour les liaisons satellitaires. Les d bits sont tr s lev s mais les transmissions sont sensibles aux perturbations et les possibilit s d' coute sont nombreuses. 1.3.5 Exemple de l'ADSL. La technique de l'ADSL (Asymetric bit rate Digital Subscriber Line ou ligne num rique d'abonn s d bits asym triques) est une technique r cente qui permet d'utiliser, sur de courtes distances, les lignes t l phoniques classiques mais avec un d bit tr s sup rieur celui des normes plus classiques (V34 ou V90). Par exemple, dans sa version Lite, elle permet de connecter Internet un particulier en utilisant simplement sa ligne t l phonique habituelle comme illustr dans la gure 1.12. De mani re th orique, cette technologie o re un d bit maximal descendant (d'Internet vers l'abonn ) de 8,2 M bit/sec et un d bit maximal montant (de l'abonn vers Internet) de 640 K bit/sec. Cepen- dant, ces performances ne sont pas possibles sur une grande distance (plus de 5 km) et les solutions commerciales grand public propos es en France actuellement ( n 1999) xent par exemple le d bit entrant 512 Kbit/sec et le d bit sortant 128 Kbit/sec. 8: Le fonctionnement d'un r seau Ethernet sera approfondi dans la section 2.4.1. 12
  • 17. PC téléphone modem ADSL modem ADSL filtre routeur voix INTERNET RTC Fig. 1.12 - Connexion Internet via ADSL Lite. D'un point de vue technique ADSL fonctionne en full duplex gr ce un multiplexage fr quentiel, permettant de faire transiter simultan ment les signaux montant et descendant accompagn s galement des signaux portant la voix t l phonique. La gure 1.13 illustre ce multiplexage dans le cas o les RTC 0 4kHz 25kHz 200kHz 1,1 MHz canal montant canal descendant Fig. 1.13 - Multiplexage fr quentiel utilis par ADSL ( chelle des fr quences non r elles). fr quences pour les voies montantes et descendantes ont t clairement s par es. Pour gagner encore en largeur de bande, et donc en d bit, on peut envisager de rapprocher les deux espaces de fr quences mais il faut alors annuler les perturbations (ph nom ne d' cho) que subissent les signaux montant et descendant mis simultan ment. Les di rents signaux sont transmis selon la technologie DMT (Discrete MultiTone) qui divise la totalit de la bande passante en 256 sous-canaux d'une largeur de 4,3 kHz. Ainsi, le 1er canal est r serv la t l phonie. Les canaux 2 6 servent s parer la voix des donn es num riques. Le ux montant occupe les 32 canaux suivants et le ux descendant tous les canaux restant, dans le cas o aucune zone de fr quence ne s pare les deux sens de communication et que l'annulation d' cho est en place. Le fait que la largeur de bande montante soit plus faible que la descendante explique le terme asym trique dans la d nomination ADSL. De plus, certains sous-canaux sont utilis s pour la gestion de la transmission Chacun des sous-canaux est modul ind pendamment en utilisant la technique du QAM (Quadra- ture amplitude modulation), qui est une m thode de modulation d'amplitude de deux porteuses en quadrature (4 niveaux d'amplitude). Avant tout transfert de donn es, une proc dure de n gociation (handshake) est mise en place pour mesurer la qualit de la transmission et l'adapter en fonction de la ligne. On appelle cette technique rate adaptative, car elle est capable de diminuer le d bit si la qualit de la transmission se d grade. 1.4 La couche liaison. D nition 1.4.1 La couche liaison de donn es fournit les moyens fonctionnels et proc duraux n - cessaires l' tablissement, au maintien et la lib ration des connexions de liaison de donn es entre entit s du r seau. Elle d tecte et corrige, si possible, les erreurs d es au support physique et signale la 13
  • 18. couche r seau les erreurs irr cup rables. Elle supervise le fonctionnement de la transmission et d nit la structure syntaxique des messages, la mani re d'enchainer les changes selon un protocole normalis ou non. Une connexion de liaison de donn es est r alis e l'aide d'une ou plusieurs liaisons physiques entre deux machines adjacentes dans le r seau donc sans n uds interm diaires entre elles. Nous commen ons par examiner les di rentes techniques de d tection et correction d'erreur (chan- gement de 1 par 0 ou vice-versa), puis nous tudierons deux familles de protocoles de liaison de donn es. 1.4.1 D tection et correction d'erreurs. Le taux d'erreurs de transmission est de l'ordre de 10;5 sur une ligne t l phonique, de 10;7 10;8 sur un coaxial et de 10;10 10;12 sur une bre optique. ce niveau-l il ne s'agit pas d'assurer la correction globale d'un change, mais de d tecter et d' ventuellement corriger des erreurs de transmis- sions dans un bloc de bits achemin par le support physique. En e et, puisque la couche 2 ne conna t pas le propri taire des paquets qu'elle manipule, elle ne peut pas se substituer aux couches de niveau sup rieur. Les techniques employ es ici reposent sur l'utilisation de codes correcteurs ou codes d tecteurs d'erreurs qui chacun transforme la suite de bits envoyer en lui ajoutant de l'information base de bits de redondance ou bits de contr le. Le r cepteur se sert de cette information ajout e pour d terminer si une erreur s'est produite et pour la corriger si la technique employ e le permet. la parit ajoute chaque bloc de i bits (i=7 ou 8) mis un bit de parit de telle sorte que parmi les i + 1 bits mis le nombre de bits 1 soit toujours pair (ou impair). Par exemple, pour une parit paire si le bloc initial est de 7 bits et est gal 1000001 le bloc de 8 bits mis est 10000010, pour envoyer 0110100 le bloc 01101001 est mis. la r ception, le d codeur calcule le nombre de bits 1 et dans le cas d'une parit paire si ce nombre de bits est pair on suppose qu'il n'y a pas eu d'erreur. Sinon, on sait alors qu'il y a eu une erreur de transmission mais on ne sait pas la localiser et il faut alors demander la r mission du bloc. La technique de parit est simple mettre en uvre cependant elle ne permet pas de d tecter 2n erreurs dans le m me bloc de bits transmis, car dans ce cas la parit ne sera pas chang e. les codes redondance cyclique (CRC) ajoutent des bits qui sont des combinaisons lin aires des bits de l'information transmettre. La suite de bits transmettre u1 u2 ::: uk est consid r e comme un polyn me M(x) = u1xk;1 +u2xk;2 +:::+uk. Par exemple 1101011011 est repr sent par x9 +x8 +x6 +x4 +x3 +x+1 . l' mission, on calcule la division du polyn me M multipli par xr par le polyn me g n rateur G de degr r. On appelle Q le polyn me quotient et R le polyn me reste de cette division, on a donc: xr M(x) = Q(x):G(x) + R(x) . La suite de bits correspondant au polyn me R constitue le CRC qui est ajout l'information transmettre, le polyn me total mis est donc E(x) = xr M(x)+ R(x) Par exemple, l'aide du polyn me g n rateur G(x) = x4 + x + 1, la suite 1101011011 sera transmise accompagn e du CRC 1110 car x4 M(x) = x13 + x12 + x10 + x8 + x7 + x5 + x4 = (x9 + x8 + x3 + x)(x4 + x + 1) + x3 + x2 + x la r ception, on divise le polyn me M0 correspondant la suite totale de bits re us (informa- tion+CRC) par le polyn me g n rateur. Si le reste calcul est non nul, c'est qu'une erreur s'est produite dans la transmission. Si le reste est nul, on est peu pr s s r (99,975% avec le polyn me g n rateur x16 + x12 + x5 + 1 de la norme V41 du ITU-T) que la transmission s'est faite sans erreur. 14
  • 19. Pourquoi cela fonctionne-t-il? Il est vident que xr M(x) ;R(x) est divisible par G(x), mais en arithm tique modulo 2 addition et soustraction sont quivalentes (ce sont des OU exclusifs en fait) donc on a galement E(x) = xr M(x)+R(x) = G(x)Q(x) montrant que E est un polyn me multiple de G. Si lors de la transmission des erreurs se sont produites, cela se traduit par le fait que le polyn me re u M0(x) = E(x) + T(x), T tant le polyn me correspondant aux erreurs (T(x) = xi si le ie bit a t invers ). la r ception le d codeur calcule le reste de E(x)+T (x) G(x) qui est en fait le reste de T (x) G(x) puisque E est un multiple de G. Si ce r sultat est non nul, c'est que T est non nul et que des erreurs se sont produites. videmment, le r sultat est galement nul si T est un multiple de G ce qui masque des erreurs, mais le choix judicieux de G permet de minimiser ces erreurs non d tect es. En n, il faut aussi remarquer un inconv nient de cette m thode qui signale des erreurs de transmission m me si celles-ci ont eu lieu dans le CRC et non dans l'information transmettre initialement. Dans ce cas il ne devrait pas tre n cessaire de retransmettre l'information, or c'est ce qui est fait puisque globalement le transfert (info+CRC) a subi des perturbations. le code de Hamming est un code correcteur d'erreurs bas sur la notion de distance de Hamming. Soit un alphabet compos de 4 caract res (00,01,10,11). Si une erreur se produit alors le caract re mis est transform en un autre caract re et il n'y a pas moyen de retrouver le caract re original. Par contre, en ajoutant de l'information de telle sorte que les caract res soient tr s di rents les uns des autres cela devient possible. Par exemple, on peut coder les 4 caract res de la mani re caract re initial 00 01 10 11 caract re mis 00000 01111 10110 11001 00001 01110 10111 11000 caract res 00010 01101 10100 11011 erron s 00100 01011 10010 11101 possibles 01000 00111 11110 10001 10000 11111 00110 01001 Tab. 1.1 - Codage de Hamming. illustr e dans la table 1.1. Ainsi si un bit (parmi les 5 mis) est erron on sait quand m me d terminer quel caract re a t mis, car comme on peut le voir dans la table 1.1 la modi cation d'un bit ne peut pas faire passer d'un caract re initial l'autre. On a des ensembles d'erreurs possibles totalement disjoints. Par contre la modi cation de 2 bits dans cet exemple peut amener des confusions et l'impossibilit de corriger les erreurs. Soit x et y deux caract res d'un alphabet A et soit N la longueur du codage des mots de cet alphabet, xi et yi d signent respectivement le ie bit de x et y. On peut alors d nir la distance d(x y) = NP i=1 (xi ;yi) mod 2 qui permet de compter le nombre de bits qui di rent entre x et y. On d nit alors la distance de Hamming par dH = inf (x y)2A2 x6=y d(x y) . Dans l'exemple choisi ci-dessus, dH = 1 dans le premier codage sur 2 bits et dH = 3 dans le codage sur 5 bits. Chaque erreur sur un bit d'un caract re x donne un caract re x0 tel que d(x x0) = 1, donc pour pouvoir d tecter et corriger une seule erreur il faut que dh 3 et pour corriger 2 erreurs il faut que dh 5. D'une mani re g n rale on d tecte et corrige n erreurs quand la distance de Hamming est 2n+ 1. On peut voir ceci dans la gure 1.14 o sont repr sent s x et y (2 caract res parmi les plus proches de l'alphabet), xi et yi des d formations de x et y apr s une erreur et x0 1 et y0 1 des d formations apr s deux erreurs. Ainsi, quand on re oit un caract re x (erron ou non on ne peut pas le savoir l'avance) il su t de chercher le caract re c 2 A le plus proche de x selon la distance d pour obtenir le caract re mis. Un exemple de code de Hamming est donn par la technique suivante o l'on veut envoyer des caract res cod s sur 4 bits de donn es ABCD. Pour cela on va mettre la suite ABCP2DP1P0 15
  • 20. dH = 3 x x1 x2 x3 r r r r 6 - @ @R y y1 y2 y3 rr r r -;; dH = 5 x x1 x2 x3 x 0 1r r r r r 6 - @@R - y y1 y2 y3 y 0 1 rr rr r -; ; Fig. 1.14 - Distance de Hamming. dans laquelle les bits de contr le Pi sont plac s sur les bits de rang 2i et sont d nis par 8>< >: P0 = A C D P1 = A B D P2 = A B C Les Pi sont des bits de parit d nis l'aide des bits de donn es de rang k tels que la d composition de k en somme de puissances de 2 contienne 2i . Par exemple, A est un bit de donn e de rang 7 = 20 + 21 + 22 donc A sert au calcul de P0, P1 et P2. De m me, le rang de D est 3 = 20 + 21 donc il sert au calcul de P0 et P1. la r ception on calcule 8 >< >: P0 0 = P0 A C D P0 1 = P1 A B D P0 2 = P2 A B C si on obtient P02 = P01 = P00 = 0 alors c'est que la transmission s'est pass e sans probl me. Sinon, la valeur binaire de P02P01P00 donne la place de l'erreur dans les bits re us (en commen ant par la droite). On corrige alors l'erreur et on recalcule les P0 i , s'ils sont devenus tous nuls l'erreur a t corrig e, sinon il y avait eu au moins deux erreurs et on peut rejeter la suite de bits mais pas la corriger. Par exemple, si l'on veut envoyer les 4 bits 0010, on va nalement mettre 0011001. Si l'on re oit 0010001, on trouve P02P01P00 = 100 c'est- -dire 4, donc l'erreur tait en 4e place. On corrige, pour obtenir 0011001 et un nouveau calcul donne P0 2 = P0 1 = P0 0 = 0 assurant que l'on a corrig l'erreur. On peut remarquer qu'en fait on a corrig une erreur qui n' tait pas sur les donn es initiales mais sur les bits de parit rajout s. 1.4.2 Protocoles de liaison de donn es. Le r le d'un protocole de liaison de donn es est videmment de xer comment doivent tre r alis es les di rentes t ches qui incombent la couche 2 du mod le OSI. Deux grandes familles de telles proc dures sont employ es. Les proc dures orient es caract res (BSC de chez IBM) sont assez anciennes et sont utilis es pour des communications l'alternat sur le principe send and wait. Les proc dures orient es bits (HDLC) sont pr vues pour des transmissions full-duplex et haut d bits. le protocole BSC (Binary Synchronous Communications) est bas sur la transmission de blocs de caract res repr sent s principalement en ASCII (7 bits) ou EBCDIC (8 bits de chez IBM) avec acquittement l'alternat. Il utilise la fois des messages d'information pour transporter les donn es et des messages de service pour superviser ces changes. 16
  • 21. XXXXXXXXz XXXXXXXXz XXXXXXXXz 9 9 9 metteur r cepteur Data 1 Data 2 Data 2 bis ACK NACK ACK erreur Fig. 1.15 - Dialogue de type send and wait. Les erreurs sont donc d tect es et corrig es par demande de r p tition comme illustr dans la gure 1.15. La gestion des changes se fait gr ce l'ensemble de caract res de commandes de la table 1.2. SYN synchronous idle utilis pour la synchronisation caract re et mis en d but de s quence de caract res ENQ enquiry invite une station mettre ou recevoir SOH start of heading d but d'en-t te STX start of text n d'en-t te et d but de texte ETB end of transmission block n de bloc de donn es ETX end of text n du texte et d but des caract res de contr le n cessaires la d tection des erreurs ACK acknowledgement accus de r ception positif NACK negative acknowledgement accus de r ception n gatif DLE data link escape caract re d' chappement de transmission EOT end of transmission n d'un transfert de donn es Tab. 1.2 - Caract res de commande BSC. D'autres caract res sp ci ques ont t ajout s par des constructeurs mais ils ne sont pas d taill s ici. Le r le du caract re DLE est primordial car il permet d'obtenir une transmission transparente au code. En e et, si les donn es peuvent contenir des caract res de commande des confusions deviennent possibles. Pour viter cela, tous les caract res de commande sont pr c d s de DLE lorsque l'alphabet est tel que les codes de commande sont susceptibles d'appara tre dans les donn es transmises. De plus, si l'on doit transmettre dans les donn es le caract re DLE lui-m me, il sera alors lui-m me pr c d de DLE de mani re ce que le caract re qui le suit ne soit pas pris tort pour une commande. Les messages (donn es de taille quelconques ) mis selon le protocole BSC sont mis sous forme de blocs de taille appropri e aux possibilit s de la ligne. Ainsi un message constitu d'une en-t te 17
  • 22. et d'un texte de donn es, le tout ne constituant qu'un seul bloc sera mis de la mani re suivante9 SYN SYN SYN SYN SOH ...en-t te... STX ...texte... ETX BCC EOT BCC (Block Check Character) est en fait un ensemble de caract res de contr le pour d tecter les erreurs de transmission. Pour l'EBCDIC et l'ASCII en mode transparent le BCC est le polyn me de la norme V41 pr sent dans la section 1.4.1 le protocole HDLC (High level Data Link control) est un protocole orient bit et d nit un ensemble de proc dures normalis es par l'ISO pour des communications, aussi bien point point que multipoint, half ou full-duplex, mais toujours entre une machine primaire et une (ou plusieurs) machine(s) secondaires. Les di rents modes sont les suivants: le mode ABM (Asynchronous Balanced Mode) est un mode de r ponse asynchrone quilibr utilis sur une liaison full-duplex entre 2 machines uniquement (liaison point point) qui ont chacune le statut de primaire et de secondaire. Le secondaire peut mettre sans avoir re u de permission du primaire. le mode NRM (Normal Response Mode) est utilis sur une liaison half duplex et ici le secondaire ne peut transmettre que sur invitation du primaire. le mode ARM (Asynchronous Response Mode, connu galement sous le nom LAP) est utilis sur une liaison half duplex galement, mais le secondaire peut mettre sans que le primaire l'ait sollicit . Ceci peut alors provoquer des probl mes si primaire et secondaire veulent simultan ment mettre des donn es. Les trames chang es ont l'allure suivante fanion adresse commande ...donn es... contr le Le fanion est gal 01111110 et pour que la transparence au code soit possible, c'est- -dire pour que la pr sence d'une suite de 6 bits 1 dans les donn es ne soit pas interpr t e comme un fanion, l' metteur ins re un 0 apr s chaque suite de 5 1. Le r cepteur supprime ce 0 suppl mentaire apr s 5 1 cons cutifs de mani re restaurer le caract re r ellement mis. Il existe trois types de trame distingu s par les 2 premiers bits du champ de commande. Les trames d'information contiennent des donn es en provenance, ou destination, des couches sup rieures. Les trames de supervision assurent le contr le d'erreur et de ux. Les trames non num rot es servent l'initialisation de la liaison et aux probl mes de reprise sur erreur non r gl s la couche 2. Le contr le est assur par la technique du polyn me g n rateur de la norme V41 (cf section 1.4.1). 1.5 La couche r seau. D nition 1.5.1 La couche r seau assure toutes les fonctionnalit s de relai et d'am lioration de ser- vices entre entit de r seau, savoir: l'adressage, le routage, le contr le de ux et la d tection et correction d'erreurs non r gl es par la couche 2. ce niveau l de l'architecture OSI il s'agit de faire transiter une information compl te (un chier par exemple) d'une machine une autre travers un r seau de plusieurs ordinateurs. Il existe deux grandes possibilit s pour tablir un protocole de niveau r seau: le mode avec connexion et le mode sans connexion d j pr sent s dans 1.1. Le premier cas est celui adopt dans la norme X25.3 (composante de la norme X25 du CCITT, galement norme ISO 8208 et quasi standard international des ann es 80, utilis dans le r seau fran ais TRANSPAC) et d crit partiellement ci-apr s et le second est celui du protocole IP du r seau Internet d crit dans la section 2.5. 9: On se place dans le cas o le caract re DLE n'est pas n cessaire et de plus quelques d tails sur la synchronisation sont omis 18
  • 23. 1.5.1 Le contr le de ux. Le contr le de ux consiste g rer les paquets pour qu'ils transitent le plus rapidement possible entre l' metteur et le r cepteur. Il cherche viter les probl mes de congestion du r seau qui surviennent lorsque trop de messages y circulent. On peut citer les quelques m thodes suivantes: Dans le contr le par cr dits, seuls N paquets sont autoris s circuler simultan ment sur le r seau, donc un paquet ne peut entrer dans le r seau qu'apr s avoir acquis un jeton qu'il relache lorsqu'il arrive destination. Dans la m thode isarythmique tous les jetons sont banalis s et la di cult r side dans leur distribution correcte aux bonnes portes du r seau pour assurer un fonctionnement optimal. Cette technique est am lior e en xant des jetons d di s par n ud d'entr e dans le r seau. Chaque n ud g re avec ses jetons une le d'attente des paquets qu'il met. Quand un paquet arrive destination, le r cepteur renvoie l' metteur le jeton correspondant au paquet re u. Dans le cadre d'un circuit virtuel tabli pour le mode avec connexion des r seaux X25 on utilise un m canisme de fen tre. Les paquets de donn es sont num rot s modulo 8 et contiennent deux compteurs: P(S) un compteur de paquets mis et P(R) un compteur de paquets re us. L' metteur n'est autoris mettre que les paquets inclus dans la fen tre, c'est- -dire les paquets dont le compteur de paquet mis est tel que dernierP(R)re u P(S)courant dernierP(R)re u + W o W est la taille de la fen tre d' mission. De son c t le r cepteur renvoie l' metteur le compteur de paquets re us P(R) en l'incr mentant du nombre de paquets re us correctement et en s quence. Le gestionnaire du r seau peut tr s bien ne pas renvoyer imm diatement les acquittements s'il d sire d charger momentan ment le r seau. Par exemple, si le dernier paquet P(R) re u est gal 1 et que la fen tre W = 4 cela signi e que le paquet 0 a bien t re u et que l' metteur peut envoyer les paquets 1, 2, 3 et 4. &% '$0 1 2 3 4 5 6 7 Position initiale de la fen tre &% '$0 1 2 3 4 5 6 7 HHHHHH Position nale de la fen tre Fig. 1.16 - Contr le de ux par fen tre. Si l' metteur a d j exp di les paquets 1, 2 et 3 et qu'il re oit un compteur de paquets re u P(R) = 2 il d place sa fen tre d' mission de deux positions comme illustr dans la gure 1.16 et peut exp dier les paquets suivants. 1.5.2 Le probl me de la congestion. Malgr tous les e orts pour contr ler le ux d'information dans un r seau celui-ci peut se retrouver face un probl me de congestion. Il s'agit alors de r soudre le probl me sans l'aggraver. En e et, les 19
  • 24. probl mes de congestion arrivent lorsque les n uds d'un r seau saturent leurs les d'attente et donc perdent des paquets. Si ces paquets sont r exp di s ou si des messages de gestion de r seau se mettent circuler en grand nombre les performances du r seau vont s' crouler tr s vite. On essaye d' viter le probl me de la congestion en autorisant un paquet ne rester dans le r seau qu'un temps limit par un temps maximal x par le gestionnaire du r seau. Tout paquet est donc mis avec une date x e par une horloge commune au r seau, si un n ud s'aper oit que le temps de pr sence dans le r seau d'un paquet est d pass il le d truit. Cela permet ainsi de d truire les paquets perdus par erreur d'adressage ou de routage, ainsi que ceux bloqu s dans un n ud. Mais cette m thode bas e sur une horloge est assez di cile mettre en uvre et on utilise souvent une m thode plus simple consistant m moriser simplement dans la zone de temps un nombre d cr ment chaque travers e de n ud. Lorsque ce nombre atteint la valeur 0 il est d truit. 1.5.3 Le routage. Le routage des paquets dans un r seau maill consiste xer par quelle ligne de sortie chaque commutateur r exp die les paquets qu'il re oit. Ceci se fait en fonction de la destination nale du paquet et selon une table de routage qui indique pour chaque destination nale quelles sont les voies de sortie possible. Pour l'exemple de la gure 1.17 on pourrait avoir la table de routage suivante: destination nale voie de sortie D1 A1, A2 D2 A2 D3 A2, A3 D4 A3 m- - - - A1 A2 A3 JJ J JJ^ - le d'attente en entr e n ud de commutation les d'attente en sortie voies de sortie D1 D2 D3 D4 - - - - Fig. 1.17 - Routage de paquets. D'une mani re g n rale le routage est un ensemble de processus algorithmiques devant prendre des d cisions dispers s dans le temps et dans l'espace. Les di rents algorithmes sont r partis sur chaque n ud du r seau et l'ensemble peut fonctionner de mani re centralis e ou r partie. Le routage centralis est g r par un n ud particulier du r seau qui re oit des informations de chacun des n uds du r seau et leur envoie leur table de routage. Pour xer ces tables on prend en compte notamment le co t des liaisons, le co t de passage dans un n ud, le d bit demand , le nombre de n uds traverser, la s curit de transport de certains paquets, l'occupation des m moires des n uds de commutation,... Le plus souvent un algorithme de plus court chemin donne de bons r sultats en xant 1 le co t de franchissement d'un n ud (on peut galement 20
  • 25. pond rer plus fortement les n uds qui sont les plus occup s). La mise jour des tables de routage peut se faire de mani re xe : en fait il n'y a pas de mise jour, la table de routage est x e une fois pour toute en fonction de la topologie du r seau. synchrone : toutes les tables sont mises jour au m me moment par le centre de contr le qui re oit des informations de la part de tous les n uds intervalles r guliers (toutes les 10 sec par exemple). asynchrone : les tables sont mises jour ind pendamment les unes des autres dans certaines parties du r seau, chaque n ud envoyant un compte-rendu de son tat au centre de contr le lorsqu'il observe des changements signi catifs. Mais le routage centralis dans un r seau grande chelle est peu performant, car un routage est d'autant meilleur qu'il r agit rapidement aux informations qui lui parviennent. De plus, si une panne survient dans l'ordinateur qui assure ce contr le, c'est tout le r seau qui tombe en panne. Le routage d centralis ne poss de pas de centre de contr le et les r gles de passage d'un paquet (paquet d'appel pour tablissement d'un circuit virtuel) sont: l'inondation : la r ception d'un paquet celui-ci est renvoy sur toutes les lignes de sortie. Cette technique simpliste et rapide est e cace dans les r seaux tra c faible et o le temps r l est n cessaire mais elle est p nalisante en ux de donn es, inadapt e aux r seaux complexe et au circuit virtuel. la technique hot patatoes : un paquet re u est renvoy le plus t t possible par la premi re ligne de sortie vide. On am liore ce principe en a ectant des coe cients chaque ligne de sortie en fonction de la destination voulue. On tient compte de l' tat des n uds voisins, sans utiliser de paquet de contr le, mais simplement en comptabilisant le nombre de paquets re us de chacun d'eux. Ils peuvent galement envoyer de mani re synchrone ou asynchrone un compte-rendu de leur tat, permettant ainsi de choisir la meilleure ligne un instant donn . Mais ceci reste local et une panne du r seau localis e au-del du premier n ud voisin ne pourra pas tre prise en compte. le routage adaptatif la fois dans l'espace et dans le temps demande, de la part de chaque n ud, une connaissance compl te du r seau. Les di rents n uds s' changent donc des messages, mais si chacun envoie des messages tous les autres le tra c va augmenter de mani re baucoup trop grande. C'est pourquoi un n ud ne transmet un compte-rendu qu' ses voisins imm diats qui doivent en tenir compte dans leur propre compte-rendu. (voir exemple) D'une mani re g n rale, le routage doit viter l'usage d'algorithmes adaptatifs trop complexes et limiter les dialogues de services entre les n uds sinon l'e et obtenu sera l'oppos de celui recherch . 1.5.4 La norme X25, niveau r seau. Cette norme a t tablie en 1976 par le CCITT pour les r seaux commutation de paquets sur proposition de 4 pays qui l'utilisent pour leurs r seaux publics de communication: Transpac pour la France, EPSS pour la Grande-Bretagne, Datapac pour le Canada et Telenet pour les USA. Comme illustr dans la gure 1.18 le protocole X25 contient les trois premi res couches du mod le OSI et d nit l'interface entre un ETTD ( quipement Terminal de Traitement de Donn es) et un ETCD ( quipement de Terminaison de Circuit de Donn es) pour la transmission de paquets. Elle xe donc les r gles de fonctionnement entre un quipement informatique connect un r seau et le r seau lui-m me. 21
  • 26. ETTD ETCD couche 3 couche 2 couche 1 couche 3couche 2couche 1modem modem -X25 niveau r seau -LAPB: sous-ensemble de HDLC -par exemple V24 Fig. 1.18 - Niveaux du protocole X25. X25 d nit les types de paquets et leur format est le suivant (chaque ligne correspond un octet10 ) 8 7 6 5 4 3 2 1 identi cateur g n ral de format num ro de groupe de voie logique num ro de voie logique identi cateur g n ral de type de paquet donn es X25 utilise le mode avec connexion, sachant que la connexion est r alis e l'aide d'un circuit virtuel dont le fonctionnement se d roule comme illustr dans la gure 1.19. L' tablissement du circuit virtuel se fait de bout en bout par l'envoi d'un paquet d'appel (call request). Il existe des circuits virtuels permanents (CVP) ou commut s (CVC). un instant donn , plusieurs CVC et CVP peuvent coexister. Chaque circuit virtuel utilise une voie logique rep r e par un num ro de groupe logique (entre 0 et 16) et un num ro de voie (entre 0 et 255). Ainsi, 4095 (la voie 0 est r serv e) voies sont utilisables par une entr e. Pour un CVC les deux num ros sont attribu s pendant la phase d' tablissement de la communication, pour un CVP ils le sont lors de l'abonnement. Lorsque le paquet d'appel arrive l'ETCD destinataire, celui-ci peut refuser la connexion en envoyant une demande de lib ration (clear request) ou l'accepter en envoyant un paquet de communication accept e (call accepted). ce moment-l le circuit virtuel est tabli et les donn es peuvent tre chang es, celles-ci emprunteront alors toutes le m me chemin marqu travers le r seau par le paquet d'appel. Pour leur part la demande et la con rmation de lib ration sont trait es localement et la demande peut tre trait e par n'importe lequel des deux quipements. 1.6 La couche transport. D nition 1.6.1 La couche transport assure un transfert de donn es transparents entre entit s de session et en les d chargeant des d tails d'ex cution. Elle a pour r le d'optimiser l'utilisation des services de r seau disponibles a n d'assurer au moindre co t les performances requises par la couche session. C'est la premi re couche r sider sur les syst mes d'extr mit . Elle permet aux deux applications de chaque extr mit de dialoguer directement ind pendamment de la nature des sous-r seaux travers s et comme si le r seau n'existait pas. Au niveau inf rieur de la couche r seau seule la phase d' tablissement de la liaison logique s'e ectue de bout en bout, alors que les transferts d'information se font de proche en proche. 10: Le troisi me octet contient les compteurs P(S) et P(R) d crits dans la section 1.5.1. 22
  • 27. 6 Ouverture d'un circuit virtuel ? 6 Transfert de donn es ? 6Lib ration ? 6 Ouverture d'un circuit virtuel? 6 Transfert de donn es ?6 Lib ration ? ETTD local ETTD distantETCD local ETCD distant -Paquet d'appel -Appel entrant Communication accept e Communication tablie - - - - Donn es Donn es -Demande de lib ration Con rmation de lib ration -Indication de lib ration Con rmation de lib ration Fig. 1.19 - Vie d'un circuit virtuel. La couche transport doit assurer, en mode connect ou non connect , un transfert transparent de donn es entre utilisateurs de service r seau en leur rendant invisible la fa on dont les ressources de communication sont mises en uvre. Cette notion de transparence implique par exemple de pouvoir acheminer de bout en bout des TPDU (Transport Protocol Data Unit) dont la taille peut varier de 128 8192 octets. Cette taille est cependant xe une fois que la valeur a t n goci e. 1.6.1 Qualit de service. Une autre fa on de d nir la couche transport est de la consid rer garante de la qualit de service (QOS) rendue par la couche r seau. Si cette derni re est sans faille, alors le travail de la couche transport est minime. Dans le cas contraire elle assure la jonction entre ce que d sire l'utilisateur et ce que la couche r seau met disposition en terme de qualit . La qualit est valu e sur certains param tres avec trois types de valeurs possibles: pr f r , acceptable et inacceptable qui sont choisis lors de l' tablissement d'une connexion (certains param tres sont cependant disponibles pour un mode sans connexion). La couche transport surveille alors ces param tres pour d terminer si la couche r seau sous-jacente assure la qualit de service demand e. Les di rents param tres de la qualit de service sont: le temps d' tablissement de la connexion transport: c'est la dur e qui s' coule entre le moment o une demande de connexion est mise et le moment o la con rmation de cet tablissement est re u et plus ce d lai est court meilleure est la qualit de service. la probabilit d' chec d' tablissement mesure la chance (ou plut t malchance) qu'une connexion ne puisse s' tablir dans un d lai maximum d ni. On ne tient pas compte ici du refus de l'entit 23
  • 28. distante d' tablir cette connexion, mais on consid re plut t les probl mes d'engorgement de r seau. le d bit de la liaison mesure le nombre d'octets utiles qui peuvent tre transf r s en une seconde, ce d bit est valu s par ment dans les deux sens. le temps de transit mesure le temps coul entre le moment o l'utilisateur du service de transport envoie un message et celui o l'entit de transport r ceptrice le re oit, ce temps est valu s par ment dans les deux sens. le taux d'erreur r siduel est le rapport entre le nombre de messages perdus ou mal transmis et le nombre total de messages mis au cours d'une p riode consid r e. Ce nombre, en th orie nul, a une valeur faible. la probabilit d'incident de transfert mesure le bon fonctionnement du service transport. Lors- qu'une connexion est tablie, un d bit, un temps de transit, un taux r siduel d'erreurs sont n goci s. La probabilit d'incident mesure la fraction de temps durant laquelle les valeurs x es pr c demment n'ont pas t respect es. le temps de d connexion mesure la dur e s' coulant entre une demande de d connexion mise et la d connexion e ective du syst me distant. la probabilit d'erreur de d connexion est le taux de demandes de d connexion non ex cut es pendant le temps maximum d ni. la protection est d nie comme la possibilit de se pr munir contre les intrusions passives (inter- f rences sur une m me ligne) et actives ( coute et modi cation des donn es transmises). La priorit permet l'utilisateur de privil gier certaines transmissions par rapport d'autres. La r siliation est la libert laiss e la couche transport de d cider elle-m me de la d connexion suite un probl me. En mode non connect , ces param tres indiquent uniquement les souhaits de l'utilisateur en ce qui concerne le d bit, le d lai de transit, le taux d'erreur r siduel et la priorit d'une transmission. Ces param tres sont utilis es apr la couche transport pour xer des options de protocoles avant d' tre soumis la couche r seau. Lorsqu'une connexion est demand e, tous ces param tres sont transmis par l'utilisateur la couche transport, les valeurs d sir es et minimales sont sp ci es. Les di rents cas de gure et tapes peuvent alors se pr senter. Si la demande semble irr aliste pour certains param tres alors la demande de connexion n'est m me pas ex cut e et un message d'erreur est renvoy pour expliquer le probl me. Si la demande ne peut pas tre satisfaite compl tement mais partiellement (par exemple avec un d bit moindre mais acceptable), alors c'est cette demande avec des objectifs moindres qui est soumise. Si l'ordinateur distant ne peut satisfaire compl tement la demande, mais reste au-dessus du minimum requis, alors il modi e aussi le param tre. S'il ne peut pas rester au-dessus de ce minimum, il rejette la demande de connexion. En n, la couche transport avertit son utilisateur de la bonne n (ou non) de la proc dure de connexion et lui transmet les param tres accept s. Cette proc dure s'appelle la n gociation des options qui, une fois x es, restent inchang es pendant toute la connexion. Pour que tous les utilisateurs ne demandent pas une qualit de service optimale, les prix pratiqu s par les fournisseurs de r seaux croissent avec cette qualit de service. 24
  • 29. 1.6.2 Primitives du service transport. machine de transport protocole de transport machine de transport entité de sessionentité de session requète réponse indicationconfirmation Fig. 1.20 - Dialogue de niveau transport. Les services qu'o rent la couche transport en mode connect sont rendues par les primitives donn es ci-dessous. Celles-ci se d composent comme dans tout dialogue entre couches en quatre cat gories comme illustr dans la gure 1.20. phase d' tablissement de la connexion T_CONNECT.request(adresse source, adresse distante, donn es_expr s, qos, donn es_utilisateur) pour demander une connexion T_CONNECT.indication(adresse source, adresse distante, donn es_expr s, qos, donn es_utilisateur) pour indiquer une connexion de transport T_CONNECT.response(adresse source, adresse distante, donn es_expr s, donn es_utilisateur) pour r pondre une demande de connexion de transport T_CONNECT.confirm(adresse source, adresse distante, donn es_expr s, qos, donn es_utilisateur) pour con rmer l' tablissement d'une connexion de transport phase de transfert de donn es T_DATA.request(donn es_utilisateur) pour demander le transfert de donn es T_DATA.indication(donn es_utilisateur) pour indiquer un transfert de donn es T_EXPEDITED_DATA.request(donn es_utilisateur) pour demander le transfert de don- n es expr s T_EXPEDITED_DATA.indication(donn es_utilisateur) pour indiquer un transfert de donn es expr s phase de lib ration de la connexion T_DISCONNECT.request(donn es utilisateur) pour demander une d connexion de trans- port T_DISCONNECT.indication(raison, donn es_utilisateur) pour indiquer une d connexion de transport La gure 1.21 d taille les di rents encha nements de primitives possibles. Pour chaque cas, un utilisateur est plac gauche des lignes doubles et son homologue est droite, la couche transport est entre les lignes et le temps s' coule de haut en bas. 25
  • 30. T_CONNECT request HHHj T_CONNECT indicationHHHj T_CONNECT response T_CONNECT confirm tablissement d'une connexion T_CONNECT request HHHj T_CONNECT indicationHHHj T_DISCONNECT request T_DISCONNECT indication rejet par un utilisateur d'une demande de connexion T_CONNECT request HHHj T_DISCONNECT indication rejet par le fournisseur d'une demande de connexion T_DATA request HHHj T_DATA indication HHHj transfert de donn es normales T_EXPEDITED_DATA request HHHj T_EXPEDITED_DATA indicationHHHj transfert de donn es expr s T_DISCONNECT request HHHj T_DISCONNECT indicationHHHj lib ration sur initiative d'un utilisateur T_DISCONNECT request HHHj T_DISCONNECT request lib ration sur initiative des deux utilisateurs T_DISCONNECT indication T_DISCONNECT indicationHHHj lib ration provoqu e par le fournisseur Fig. 1.21 - Encha nements de primitives en mode connect . Seules les successions de primitives d crites dans l'automate de la gure 1.22 sont autoris s assurant ainsi qu'une machine r alisant le service de transport ne peut se trouver que dans l'un des quatre tats repr sent s savoir veille : aucune connexion n'est tablie, une demande de connexion peut tre mise ou re ue connexion sortante en attente : la machine a demand une connexion et la r ponse de l'autre extr mit n'est pas encore arriv e connexion entrante en attente : la machine a re u une demande de connexion qu'elle n'a pas encore accept e ou rejet e. transfert de donn es pr t : une connexion a t tablie, les transferts de donn es peuvent com- mencer Pour ce qui est du mode non connect seules les primitives suivantes sont disponibles. T_UNIDATA.request(appel , appelant, qos, donn es utilisateur) 26
  • 31. connexion sortante en attente repos pas de connexion en cours connexion entrante en attente transfert de données T_CONNECT.confirm T_DISCONNECT.indication T_DISCONNECT.indication T_DISCONNECT.request T_CONNECT.request T_DISCONNECT.request T_DISCONNECT.indication T_DISCONNECT.request T_EXPEDITED_DATA.request T_EXPEDITED_DATA.indication T_DATA.indication T_DATA.request T_CONNECT.indication T_CONNECT.response Fig. 1.22 - Diagramme d' tats d'une machine de service de transport. T_UNIDATA.indication(appel , appelant, qos, donn es utilisateur) 1.6.3 Le protocole de transport ISO en mode connect (ISO 8073 ou X.224) Les fonctions de la couche transport ISO sont tablies dans le but de combler l' cart existant entre les services o erts par les couches basses et les services o rir. Les principales fonctions r alis es pendant l' tablissement de la connexion sont les suivantes. La s lection d'une connexion r seau appropri e. La d cision de mettre en place un multiplexage ou un clatement. Le multiplexage a pour but de regrouper plusieurs connexions de transport sur une m me connexion de r seau, ce qui va permettre de minimiser les ressources utilis es au niveau r seau, donc de diminuer les co ts de communication. Ceci est surtout utile si l'on a de nombreuses connexions de faible d bit tablir. l'inverse, l' clatement consiste r partir une connexion de transport simultan ment sur plusieurs connexions r seau dans le but d'accro tre le d bit et la abilit (voir la gure 1.23). la d termination de la taille optimale des TPDU la mise en relation des adresses transport et r seau l'identi cation de la connexion 27
  • 32. A B C 23 1 adressesde réseau adresses de transport CV1 CV2 CV3 CV4 multiplexage des connexions A1 et B2 éclatement de la connexion C3 Fig. 1.23 - Adressage, multiplexage et clatement de connexions transport. Lors de la phase de transfert les donn es expr s (interruptions, alarmes de petite taille) ne sont pas soumises au contr le de ux et sont assur es d' tre d livr es avant toutes donn es normales mises apr s elle. La fragmentation-r assemblage permet, si n cessaire, de d couper des TSDU (Transport Service Data Unit) a n de tenir dans un seul TPDU. Ainsi les lettres trop grandes sont d coup es en fragments de taille xe (sauf ventuellement le dernier), num rot s et exp di s chacun dans un paquet pour tre r assembl s l'arriv e. La num rotation des paquets permet galement de d tecter les paquets perdus ou dupliqu s. Les erreurs de transmission tant normalement d tect es par les couches inf rieures, il n'est pas toujours n cessaire de prot ger chaque TPDU. Cependant, si la qualit de service r seau est m diocre, on ajoute des m canismes de d tection d'erreur par total de contr le associ un m canisme de retransmission. Le contr le de ux est fond sur une fen tre coulissante de taille variable, similaire une notion de cr dit. Le destinataire impose la cadence de transfert en indiquant l'exp diteur des cr dits d' mission (num ro dans la s quence ne pas d passer) qu'il lui transmet dans ses acquittements. En n, la lib ration de la connexion de transport peut tre d cid e et d clench e de mani re incon- ditionnelle par l'un quelconque des correspondants, ce qui peut provoquer des pertes de donn es. Cette lib ration est explicite quand il y a changes d'unit s de donn es sp ciales ou implicite quand en fait c'est la connexion r seau sous-jacente qui est lib r e. Pour simpli er le choix des fonctions mettre en uvre, l'ISO a d ni 5 classes de protocoles chacune tant adapt e un type de r seau particulier11 et choisi lors de l' tablissement de la connexion. L'appelant d clare sa classe pr f r e et des classes de repli, l'appel choisi parmi ces propositions si aucune classe ne lui convient il refuse la connexion. Succinctement, on trouve la classe 0 : elle assure une connexion standard pour les r seaux de type A ( tablissement n goci e de la connexion, lib ration implicite, transfert de donn es normales, segmentation et r assemblage des donn es. la classe 1 : pour les r seaux de type B elle ajoute la classe 0 le transport de donn es expr s, la reprise sur erreurs signal es, la d connexion et la reprise sur r initialisation du r seau. 11: Les r seaux sont r parties en 3 classes: - type A: peu d'erreurs signal es et non signal es - type B: peu d'erreurs non signal es, mais trop d'erreurs signal es - type C: trop d'erreurs des deux types. 28
  • 33. la classe 2 : pour les r seaux de type A elle ajoute la classe 0 le multiplexage et un contr le de ux am lior . la classe 3 : pour les r seaux de type B elle est constitu e des fonctionnalit s des classes 1 et 2. la classe 4 : pour les r seaux de type C elle correspond la classe 3 laquelle on ajoute la d tection et la reprise d'erreurs non signal es et l' clatement de connexions de transport. 1.7 Les couches hautes: session, pr sentation et application. Les couches session, pr sentation et application constituent les couches hautes du mod le OSI et o rent des services orient s vers les utilisateurs alors que les couches basses sont concern es pas la communication able de bout en bout. Elles consid rent que la couche transport fournit un canal able de communication et ajoutent des caract ristiques suppl mentaires pour les applications. 1.7.1 La couche session. D nition 1.7.1 La couche session fournit aux entit s de la couche pr sentation les moyens d'orga- niser et synchroniser les dialogues et les changes de donn es. Une session peut par exemple tre utilis e pour la connexion distance d'un terminal un ordina- teur ou pour le transfert d'un chier et ceci en mode connect . Bien que tr s similaires la session et la b) c)a) session transport Fig. 1.24 - Sessions et connexions de transport. connexion de transport ne sont pas identiques, les trois cas de la gure 1.24 peuvent se pr senter. a) Il y a correspondance exacte entre une session et une connexion de transport. b) Plusieurs sessions successives sont tablies sur une seule et m me connexion de transport. Par exemple, ceci peut tre utilis dans le contexte d'une agence de voyage dans laquelle chaque employ utilise un terminal reli un ordinateur local. Celui-ci est reli une base de donn es centrale de la compagnie pour enregistrer les r servations. Chaque fois qu'un employ veut faire une r servation, une session est ouverte avec l'ordinateur central et elle est ferm e lorsque la r servation est termin e. Mais il est inutile de lib rer la connexion de transport sous-jacente car celle-ci sera utilis e quelques instants plus tard par un autre employ . c) Plusieurs connexions de transport successives sont n cessaires pour une seule et m me session. Ceci peut arriver lorsqu'une connexion de transport tombe en panne, la couche session tablit alors une nouvelle connexion de transport de mani re poursuivre la connexion commenc e. Par contre, il n'est pas possible de multiplexer plusieurs sessions sur une m me connexion de transport. Celle-ci ne transporte tout instant qu'au plus une session. Le transfert des donn es est r gi par les trois phases habituelles: tablissement de la session, transfert des donn es et lib ration de la session. Les primitives fournies par la couche session sont semblables celles fournies par la couche transport la couche session. L'ouverture d'une session 29
  • 34. n cessite la n gociation de plusieurs param tres entre les utilisateurs des extr mit s, certains (qos et existence ou non de donn es expr s) sont identiques ceux de la couche transport qui ils sont pass s tels quels. Un autre param tre peut permettre de d cider quelle extr mit aura l'initiative du dialogue dans le cas d'une session bidirectionnelle. Les di rences entre transport et session vont se situer au niveau de la lib ration de la connexion. Dans le cas du transport, la primitive T_DISCONNECT.request provoque une lib ration brutale de la connexion avec perte des donn es en cours de transfert. Une session, elle, sera termin e par la primitive S_RELEASE.request qui op re une lib ration ordonn e de la connexion, sans perte de donn es, appel e terminaison n goci e. Les di rences entre ces deux modes T_DATA request T_DISCONNECT. indication T_DISCONNECT. request a) A B S_RELEASE. request S_DATA S_RELEASE. request S_DATA indication S_RELEASE. indication response confirm S_RELEASE. b) A B Fig. 1.25 - Lib ration brutale a) et ordonn e b). de lib ration sont illustr es dans la gure 1.25. Dans le premier cas, B ne peut plus recevoir le message qui est en transit partir du moment o il a mis une demande de d connexion (voir l'automate de la gure 1.22). Dans le deuxi me cas, B continue d'accepter des donn es apr s avoir mis sa demande de lib ration jusqu' ce que A con rme positivement cette d connexion. Si A veut refuser la d connexion, il le signale par l'un des param tres de S_RELEASE.response et il peut ainsi continuer d'envoyer des donn es, la session se prolonge comme si de rien n' tait. Les sessions peuvent autoriser le dialogue bidirectionnel ou unidirectionnel ou l'alternat. Ce dernier cas n'est pas forc ment d des limitations mat rielles mais est souvent inh rent au fonc- tionnement des applications de plus haut niveau. Par exemple, l'acc s une base de donn es distante est tabli sur ce mode. Un utilisateur envoie depuis son terminal une requ te un ordinateur central, puis il attend la r ponse de celui-ci. Lorsque l'ordinateur central a envoy sa r ponse, l'utilisateur peut envoyer une autre requ te. Ainsi, le mode de fonctionnement l'alternat est naturel. Dans ce cas il s'agit alors de g rer qui c'est le tour d'envoyer des donn es. Ce service est mis en uvre gr ce un jeton de donn es (data token). Seule l'extr mit qui poss de le jeton peut envoyer des donn es, l'autre doit rester silencieuse. La n gociation initiale l' tablissement de la connexion de session xe quelle extr mit re oit en premier le jeton. Lorsque le possesseur du jeton a ni d'exp dier ses donn es il peut passer le jeton son correspondant l'aide de la primitive S_TOKEN_GIVE.request. Si l'extr mit qui ne poss de pas le jeton veut exp dier des donn es il peut le demander, poliment, l'aide de la primitive S_TOKEN_PLEASE.request. Le possesseur du jeton peut alors le lui envoyer ou lui refuser. La synchronisation est galement l'un des services de la couche session et consiste placer les entit s de session dans un tat connu des deux interlocuteurs en cas d'erreur. Il ne s'agit pas ici de r gler des erreurs qui seraient d es un probl me de transmission de donn es puisque la couche transport doit les r gler. Mais celle-ci ne peut e ectuer des reprises sur erreurs dues aux couches sup rieures puisqu'elle 30
  • 35. n'en a pas connaissance. Par exemple, si lors d'un transfert de chiers tr s long une erreur se produit du c t du r cepteur mais en dehors de la transmission proprement dite (probl me d'acc s un disque par exemple), il faut que la couche session soit capable de s'en apercevoir et qu'elle vite de relancer simplement tout le transfert de chiers. C'est pourquoi, gr ce des points de synchronisation dans le ot d' changes de donn es, elle reprendra les transferts au niveau du dernier point de reprise correct. Ces points consistent d couper le ot de donn es transmettre en pages et videmment, le m canisme n cessite que l'utilisateur de la session metteur soit capable de m moriser su samment longtemps les pages envoy es pour pouvoir en r exp dier certaines si n cessaires. 1.7.2 La couche pr sentation. D nition 1.7.2 La couche pr sentation s'occupe de la syntaxe et de la s mantique des informations transport es en se chargeant notamment de la repr sentation des donn es. Par exemple, sur un ordinateur base d'un processeur de la famille des 68 000 les entiers sont repr sent s avec les bits de poids fort gauche et ceux de poids faible droite. Or, c'est l'inverse sur un ordinateur bas sur un processeur de la famille du 80x86. Cette di cult sera prise en compte par la couche pr sentation qui e ectuera les op rations n cessaires la communication correcte entre ces deux familles de machines. Pour ce faire l'ISO a d ni une norme appel e syntaxe abstraite num ro 1 (Abstract Syntax Notation 1) permettant de d nir une sorte de langage commun (une syntaxe de transfert) dans lequel toutes les applications repr sentent leurs donn es avant de les transmettre. C'est aussi ce niveau de la couche pr sentation que peuvent tre implant es des techniques de compression (code de Hu man par exemple) et de chi rement de donn es (RSA, DSE, etc...) non d taill es ici (voir cours correspondants de licence). 1.7.3 La couche application. D nition 1.7.3 La couche application donne au processus d'application le moyen d'acc der l'envi- ronnement OSI et fournit tous les services directement utilisables par l'application, savoir: - le transfert d'informations - l'allocation de ressources - l'int grit et la coh rence des donn es acc d es - la synchronisation des applications coop rantes En fait, la couche application g re les programmes de l'utilisateur et d nit des standards pour que les di rents logiciels commercialis s adoptent les m mes principes, comme par exemple: - Notion de chier virtuel repr sent sous forme d'arbre pour les applications de transfert de chiers, op rations permises sur un chier, acc s concurrentiels, ... - D coupage des fonctions d'une application de courrier lectronique qui se compose d'un le contenu (en-t te et corps) et d'une enveloppe. Une fonctionnalit de l'application g re le contenu et une autre le transfert en interpr tant l'enveloppe. 31
  • 36. Chapitre 2 Le r seau Internet et les protocoles TCP/IP. Ces 15 derni res ann es ont vu merger de nouvelles techniques rendant possible l'interconnexion de r seaux di rents (internetworking) en les faisant appara tre comme un unique environnement de communication homog ne. On d signe ce syst me d'interconnexion sous le nom d'internet, sachant que r seau Internet et Internet d signent l'ensemble de ces internets dont le point commun est de fonctionner en suivant les protocoles TCP/IP (Transmission Control Protocol/Internet Protocol). Le but de ce chapitre est d' tudier comment fonctionne l'ensemble de ces protocoles. 2.1 Historique et organisation d'Internet. Les travaux de l'ARPA (Advanced Research Project Agency) d but rent au milieu des ann es 70 et avaient pour but de d velopper un r seau commutation de paquets pour relier ses centres de recherches dans le but de partager des quipements informatiques et changer des donn es et du courrier. Le but tait de concevoir un r seau r sistant des attaques militaires. Il ne fallait donc pas qu'il comporte de points n vralgiques dont la destruction aurait entra n l'arr t complet du r seau. C'est ainsi, que d s le d part le r seau ARPANET fut con u sans n ud particulier le dirigeant, et de telle sorte que si une voie de communication venait tre d truite, alors le r seau soit capable d'acheminer les informations par un autre chemin. C'est vers 1980 qu'est apparu le r seau Internet, tel qu'on le conna t maintenant, lorsque l'ARPA commen a faire voluer les ordinateurs de ses r seaux de recherche vers les nouveaux protocoles TCP/IP et qu'elle se mit subventionner l'universit de Berkeley pour qu'elle int gre TCP/IP son syst me d'exploitation Unix (BSD). Ainsi la quasi totalit des d partements d'informatique des universit s am ricaines put commencer se doter de r seaux locaux qui en quelques ann es seront interconnect s entre eux sous l'impulsion de la NSF (National Science Foundation).2 M me si d s son origine Internet comprenait des soci t s priv es, celles-ci taient plus ou moins li es la recherche et au d veloppement, alors qu' l'heure actuelle les activit s commerciales s'y sont consid rablement multipli es, et ceci surtout depuis l'arriv e du web en 1993. La gure 2.1 (source ISOC, www.isoc.org) donne un r sum des grandes tapes de l' volution d'Internet au niveau mondial qui comportait en 1996 plus de 100 000 r seaux di rents permettant de regrouper presque 10 millions d'ordinateurs dans le monde. Mais les statistiques sont di ciles tablir et sont parfois fantaisistes ou biais es par des consid rations politiques ou commerciales. Une bonne source d'information est encore l'ISOC dont sont extraites les donn es de la gure 2.2. Pour ce qui est de la France, apr s des tentatives avort es de constitution d'un r seau de la recherche, puis l'apparition du r seau EARN (European Academic and Research Network) bas sur des protocoles et des ordinateurs IBM, un d but de r seau b ti sur des ordinateurs Unix et TCP/IP apparu sous le nom de FNET. C'est la n des ann es 80 que les campus universitaires s' quip rent massivement de r seaux Ethernet et cr rent des r seaux r gionaux bas s sur TCP/IP. L'ouverture l'Internet 32
  • 37. Fig. 2.1 - Les grandes dates d'Internet. Fig. 2.2 - volution du nombre de machines connect es Internet 33
  • 38. mondial ( l' poque presque exclusivement nord-am ricain) eut lieu en 1988 et ensuite la cr ation de Renater (R seau National de T l communications pour l'Enseignement et la Recherche) en 1994 sont les grandes dates de l' volution d'Internet en France. Comme l'ensemble des protocoles TCP/IP n'est pas issu d'un constructeur unique, mais mane de la collaboration de milliers de personnes travers le monde, une structure de fonctionnement originale a t imagin e d s le d but. Apr s des volutions successives, c'est maintenant l'IAB (Internet Architecture Board) qui est le comit charg de coordonner l'architecture, les orientations, la gestion et le fonctionnement d'Internet. L'IAB comporte deux branches principales: l'IETF (Internet Engineering Task Force, www.ietf.org) s'occupe des probl mes techniques court et moyen terme et est divis en 9 zones (applications, s curit , routage et adressage, etc...) chacune dot e d'un responsable. l'IRTF (Internet Research Task Force, www.irtf.org) coordonne les activit s de recherche rela- tives TCP/IP. Par ailleurs, il existe l'ISOC (The Internet Society ) qui est li e l'IAB et qui aide ceux qui sou- haitent s'int grer la communaut d'Internet. De nombreux renseignements sur le fonctionnement et les organismes li s Internet sont disponibles sur le web de l'ISOC www.isoc.org. Aucun constructeur, ou diteur de logiciel, ne peut s'approprier la technique TCP/IP, les docu- mentations techniques sont donc mises disposition de tous par l'INTERNIC (Internet Network In- formation Center partir de son site web ds.internic.net/ds/dspg1intdoc.html). Les documents relatifs aux travaux sur Internet, les nouvelles propositions de d nition ainsi que les modi cations de protocoles, tous les standards TCP/IP, y sont publi s sous la forme de RFC (Request For Comments, appels commentaires). Tous les RFC sont publi s par un membre de l'IAB et sont num rot s s - quentiellement, une proposition de RFC s'appelle un Internet Draft qui sera discut , modi , et en n adopt ou rejet par les membres du domaine concern par la note technique. 2.2 Architecture des protocoles TCP/IP. Les logiciels TCP/IP sont structur s en quatre couches de protocoles qui s'appuient sur une couche mat rielle comme illustr dans la gure 2.3. La couche de liens est l'interface avec le r seau et est constitu e d'un driver du syst me d'exploi- tation et d'une carte d'interface de l'ordinateur avec le r seau. La couche r seau ou couche IP (Internet Protocol) g re la circulation des paquets travers le r seau en assurant leur routage. Elle comprend aussi les protocoles ICMP (Internet Control Message Protocol) et IGMP (Internet Group Management Protocol) La couche transport assure tout d'abord une communication de bout en bout en faisant abs- traction des machines interm diaires entre l' metteur et le destinataire. Elle s'occupe de r guler le ux de donn es et assure un transport able (donn es transmises sans erreur et re ues dans l'ordre de leur mission) dans le cas de TCP (Transmission Control Protocol) ou non able dans le cas de UDP (User Datagram Protocol). Pour UDP, il n'est pas garanti qu'un paquet (appel dans ce cas datagramme) arrive bon port, c'est la couche application de s'en assurer. La couche application est celle des programmes utilisateurs comme telnet (connexion un ordi- nateur distant), FTP (File Transfert Protocol), SMTP (Simple Mail Transfert Protocol), etc... Cette architecture et ces di rents protocoles permettent de faire fonctionner un r seau local, par exemple sur un bus Ethernet reliant un ordinateur client A qui interroge un serveur FTP B, comme illustr dans la gure 2.4 Mais, ceci permet surtout de constituer un internet, c'est- -dire une interconnexion de r seaux ventuellement h t rog nes comme illustr dans la gure 2.5. Ici les 34
  • 39. correspondantes couches OSI logiciels hors du SE logiciels dans le SE adressage IP suniquement adressage physique processus utilisateur processus utilisateur processus utilisateur processus utilisateur transport applications réseau liens 4 2 1 7 interface matérielle IGMPICMP TCP UDP ex : ping ex : FTP ex : BOOTP support matériel IP ARP RARP 3 5 6 Fig. 2.3 - Architecture d'une pile TCP/IP client FTP TCP IP Ethernet driver ordinateur A protocole FTP protocole TCP protocole IP protocole Ethernet IP TCP serveur FTP driver ordinateur B Ethernet bus Ethernet Fig. 2.4 - Communication entre deux machines du m me r seau 35