Reseaux
Reseaux
COURS DE
RESEAUX ET SYSTEMES
Cycle Probatoire
I. INTRODUCTION..........................................................................................................................................7
PROTOCOLES DE COMMUNICATION
I. GESTION DE LA LIAISON DES DONNEES ...........................................................................................52
1.1) Protocoles .............................................................................................................................................. 52
1.2) Deux familles de procédures (protocoles).............................................................................................. 52
1.3) La procédure BSC .................................................................................................................................. 52
1.4) Déroulement du protocole en liaison multi-points ................................................................................. 54
___________________________________________________________________
DI GALLO Frédéric Page 2/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
INTERCONNEXION DE RESEAUX
I. BESOINS D’INTERCONNEXION.............................................................................................................84
II. PASSERELLE ...........................................................................................................................................85
2.1) Les différentes passerelles : ................................................................................................................... 85
2.2) Techniques d’interconnexion ................................................................................................................ 87
2.3) EXERCICE : Ethernet interconnecté avec X.25.................................................................................... 88
TCP/IP
I. HISTORIQUE ..............................................................................................................................................90
II. DOCUMENTATION.................................................................................................................................90
III. FONCTIONS DES COUCHES .................................................................................................................91
IV. ADRESSAGE IP (V4) ...............................................................................................................................92
4.1) Sigles des organismes qui contrôlent IP ................................................................................................ 94
4.2) Entête d’un paquet IP............................................................................................................................. 95
V. TCP ............................................................................................................................................................96
5.1) Service de transport ............................................................................................................................... 96
5.2) Entête de TCP ........................................................................................................................................ 97
5.3) Ajustement des délais de transmission (contrôle de flux)....................................................................... 98
VI. UDP............................................................................................................................................................98
VII. NUMEROS DE PORT ...............................................................................................................................98
7.1) Sockets.................................................................................................................................................... 98
7.2) Routage .................................................................................................................................................. 99
7.3) Le Nommage ....................................................................................................................................... 110
___________________________________________________________________
DI GALLO Frédéric Page 3/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
7.4) Sécurité des réseaux............................................................................................................................ 112
___________________________________________________________________
DI GALLO Frédéric Page 4/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
SNA ET OSI/DSA
I. SNA............................................................................................................................................................170
1.1) Réseau SAN .......................................................................................................................................... 171
1.2) APPN (non hiérarchique).................................................................................................................... 171
1.3) Protocole de la LU6.2 ......................................................................................................................... 172
II. DSA..........................................................................................................................................................173
2.1) Terminologies dans OSI/DSA.............................................................................................................. 174
2.2) Fonctionnalités de OSI/DSA ............................................................................................................... 174
2.3) Les datanets......................................................................................................................................... 174
2.4) Conclusion .......................................................................................................................................... 174
ADMINISTRATION DE RESEAUX
I. PROBLEMATIQUE ..................................................................................................................................178
II. LA GESTION VUE PAR L’ISO .............................................................................................................178
2.1) Les 5 domaines fonctionnels : ............................................................................................................. 178
2.2) CADRE ARCHITECTURAL DE LA GESTION OSI ........................................................................... 179
III. GESTION DE RESEAU TCP/IP .............................................................................................................181
3.1) Introduction à SNMP .......................................................................................................................... 181
3.2) Architecture de la gestion SNMP ........................................................................................................ 182
3.3) Les informations de gestion................................................................................................................. 184
3.4) Le protocole SNMD............................................................................................................................. 185
3.5) Autres protocoles d’administration : .................................................................................................. 186
___________________________________________________________________
DI GALLO Frédéric Page 5/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
EXERCICE: RESEAUX LOCAUX ETHERNET........................................................................................ 208
___________________________________________________________________
DI GALLO Frédéric Page 6/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
I. INTRODUCTION
Les réseaux prennent de plus en plus d’importance car ils permettent de minimiser les
coûts de transport des informations. Ils permettent aussi de réduire les durées de circulation de
l’information (forums, courriers électroniques, …).
--------------------------------
___________________________________________________________________
DI GALLO Frédéric Page 7/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
THEORIE
DU
SIGNAL
___________________________________________________________________
DI GALLO Frédéric Page 8/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
x(t) y(t)
support +
signal transmis signal reçu
b(t)
I. NOTION DE SPECTRE :
E
Energie
f
fréquence
en jaune : sinusoïde parfaite de fréquence f
en rouge : sinusoïde réelle de fréquence f
___________________________________________________________________
DI GALLO Frédéric Page 9/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
1200 2300 f
spectre de raies
atténuation
fc fc fc fc
fréquence
de coupure
___________________________________________________________________
DI GALLO Frédéric Page 10/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Ps
N = 10 log10
Pb
Ps = puissance du signal
Pb = puissance du bruit
Ps/Pb
3 dB
f min f max f
D = W log2 ∂)
(1 +∂
___________________________________________________________________
DI GALLO Frédéric Page 11/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
S = énergie du signal
B = énergie du bruit
∂ = rapport d’énergie
Le débit binaire dépend de la façon dont on code le signal.
- Intervalle significatif : Temps pendant lequel les caractéristiques du signal sont stables.
Intervalle compris entre deux temps significatifs.
0 1 0 1 0
instant
intervalle
start
S 1 0 1 1 0 1 0 0 S
Instant significatif
Même s’il y a un décalage de l’instant significatif, ce n’est pas grave car au bout de 10
caractères, on remet un bit de start pour bien repartir.
- Valence : nombre des états significatifs distincts dans une modulation (2π)
T = intervalle significatif
- Débit binaire : quantité d’information par seconde. Exprimé en bit par seconde.
___________________________________________________________________
DI GALLO Frédéric Page 12/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
D = R log2 V
EXERCICE 1 :
N = 10 log10 (R)
10 dB Æ R= 10
3 dB Æ R= 1,995… (100,3)
40 dB Æ R= 104
37 dB Æ R= 5011,87…. (103,7)
EXERCICE 2 :
A combien de dB correspondent les rapports de puissance suivants : 2000, 500, 100 000
2000 : 1000 Æ 30
2000 Æ 30 +3 = 33
___________________________________________________________________
DI GALLO Frédéric Page 13/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
EXERCICE 3 :
a) Quel est le débit binaire d’une voie qui émet un signal à chaque période T ? T=10 ms
D = R log2 V
D = Erreur ! log2 V Æ par défaut il faut savoir que l’on a une valence de 2
1
D = Erreur ! log2 (2) = Erreur !Erreur !Erreur ! = Erreur !Erreur ! =100 b/s
10
n = log2 2n
1 1
= = 10 bauds
∆ 100
c) Le signal a une valence V. quel est le débit binaire disponible ? Exprimer cette
grandeur en fonction de ∆ et de V.
1
D = R log2 V R = Erreur ! =
∆
1 log 2 V 4
D= log2 V Æ D = = = 4000 bits/secondes
∆ ∆ 0,01
EXERCICE 4 :
1) Quelle est la modulation nécessaire (en baud), D = 2400 b/s, signaux binaires (V=2)
log 2 V log 2 2 1
R = Erreur ! = = = = 2400 bauds
D 2400 2400
2) Bande passante 1000 Hz, débit binaire = 2400 b/s, quel est le rapport Erreur ! ? en
rapport de puissance puis en dB
D = W log2 (1 + Erreur !)
log 2 V log 2 4 2
R = Erreur ! = = = = 1200 bauds
D 2400 2400
___________________________________________________________________
DI GALLO Frédéric Page 14/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
EXERCICE 5 :
a)
D = W log2 (1 + Erreur !)
b) D = W log2 (1 + Erreur !)
EXERCICE 6 :
La base 2 est elle la meilleur base pour stocker l’information ? R : non ! pourquoi ?
En fait quelle est la base minimale que l’on doit adopter pour avoir le minimum d’état
stable ?
Au basket :
Æ 20 plaques pour score de 00 à 99 en décimal
Réponse :
np = b * d np = nombre de plaques
b = base
d = nb de chiffres nécessaires
d? bd ≥ Ν
logb bd = d ≥ logb Ν = Erreur !
d ≥ Erreur !
___________________________________________________________________
DI GALLO Frédéric Page 15/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
b ln(b) − 1
np(b) = b Erreur ! = k ⇒ np’(b) k
ln b ln(b) 2
D = W log2 (1 + Erreur !)
Si on rapproche ces 2 formules, on s’aperçoit que la
D = R log2 V valence est liée au rapport signal sur bruit
Signal binaire
Signal analogique
zoom
La modulation, c’est transformer un signal binaire en signal analogique. Elle utilise une onde
sinusoïdale (porteuse) dont la fréquence est supérieure à l’onde modulante.
Ap = amplitude
ϖp = pulsation
ϕp = déphasage
___________________________________________________________________
DI GALLO Frédéric Page 16/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
m = taux de modulation
s(t) = signal variant en fonction du temps
m s(t) > -K
Ap
X(t)
S(t)
1 0 1
X(t)
Ap
1 0 1
___________________________________________________________________
DI GALLO Frédéric Page 17/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
On transmet les signaux numériques sur le support et sur des distances limitées (< 30Km).
12V 5V
0 Å 500 m Æ 0
-12V
010110 codeur
Ce codeur transforme une suite de bits {ai} en une suite de symboles {dk}
dk ∈ {α1, … , αq }
___________________________________________________________________
DI GALLO Frédéric Page 18/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
1 1 0 1 0 0 1 0 0 0 1 1 1
0 hautes fréquences
1 0 1 1 0
___________________________________________________________________
DI GALLO Frédéric Page 19/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
ai = 0 ai = 1
∆ ∆
10110 +a
-a
1 0 1 1 0
Décodage :
- Si sur un intervalle ∆, le signal ne présente pas de transition, la donnée vaut 0 (ai = 0).
- Si sur un intervalle ∆, le signal présente une transition, la donnée vaut 1 (ai = 1).
___________________________________________________________________
DI GALLO Frédéric Page 20/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
EXERCICE :
On désire transmettre une suite de bits : 00101101, dessiner la suite de signaux transmis par
un modem.
a) en modulation de phase quadrivalente (valence = 4).
00 Æ ϕ = 0
π
01 Æ ϕ =
2
10 Æ ϕ = π
3π
11 Æ ϕ =
2
00 10 11 01
« Cassure » du signal
Signal Réel
0 0 1 0 1 1 0 1
Signal
Porteuse
___________________________________________________________________
DI GALLO Frédéric Page 21/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
0 Æ idem porteuse
1 Æ fréquence doublée par rapport à la porteuse
EXERCICE :
Transmettre 00101101, liaison avec bande passante à 1200 bauds, bande de base, je veux
transmettre 2400 bits/seconde, comment faire le codage des données ?
00 Æ +a +a
+a +a
01 Æ
2 2
−a −a
10 Æ
2 2
11 Æ -a -a
00 10 11 01
- Fréquence réduite.
- S’annule pour fréquence nulle.
ai = 0 le signal vaut 0
ai = 1 le signal vaut +a ou –a selon le signal précédent.
+a
-a 0 1 0 1 1 0 0 0
___________________________________________________________________
DI GALLO Frédéric Page 22/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Ecart au cours : sur un micro, la probabilité d’erreur non détectée avec ECC (erreur control
correcteur) est de 10-12 et elle passe à 10-6 sans ECC.
- Numérisation du signal :
- Transmission analogique du signal analogique (TSF)(paroles, images).
- Transmission analogique d’information numérique (modem).
- Transmission numérique d’information analogique.
- Transmission numérique d’information numérique.
___________________________________________________________________
DI GALLO Frédéric Page 23/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Pas parfait ! ! !
Si B est la fréquence la plus élevée contenue dans le spectre A(f) du signal a(t), la fréquence
d’échantillonnage doit être ≥ 2B.
EXERCICE :
1)
+a
-a 1 1 0 1 0 0 0 0 1 1
+a
-a 1 1 0 1 0 0 0 0 1 1
___________________________________________________________________
DI GALLO Frédéric Page 24/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
CIRCUIT
&
LIAISON
DE
DONNEES
___________________________________________________________________
DI GALLO Frédéric Page 25/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
I. DEFINITIONS
ETCD : Equipement Terminal de Circuits de Données
Equipement placé à chaque extrémité du circuit de transmission ayant pour rôle de
transformer le signal en données compatibles pour le circuit (ex : modem …).
Circuit de données :
Ensemble constitué du support de transmission + ETCD.
Liaison de données :
Dispositif matériel + logiciel pour acheminer des données avec un taux d’erreur
minimum garanti.
circuit de données
ZOOM ZOOM
Circuit de données
___________________________________________________________________
DI GALLO Frédéric Page 26/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
t
ETTD ETTD
t+∆t
- Bidirectionnelles simultanées (full duplex) : ex : les modems actuels. Utilisation de
bandes de fréquences différentes sur le canal de transmission.
ETTD ETTD
Liaison full duplex
A B
A B
E C
D
A
B C D
- En boucle : on peut considérer que c’est une double liaison multipoints. Ex : token ring,
FDDI (100mb/s).
A
B C D
D B
___________________________________________________________________
DI GALLO Frédéric Page 27/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Objectif : former une trame de bits de débit D sur une voie HV en fonction d’une voie
BV.
trame
configuration de bits
HV = « verrouillage de
trame »
B1
BV
4 bits (BV)
B2
___________________________________________________________________
DI GALLO Frédéric Page 28/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
EXERCICES :
1er cas : les 2 attendent que l’autre émette ou que les 2 n’ont rien à dire.
Î
Pour détecter cela, il faut s’écouter parler (comparer ce qu’il envoi avec ce
qu’il écoute). En cas de collision, il arrête et réessaye un peu lus tard.
2) On veut multiplexer 6 voies binaires de débit différents sur une voie HV. Multiplexage
temporel par caractère. Les lignes BV sont en mode asynchrone et envoient 1 bit de start +
8 bits de données + 1 bit de stop.
1
2
3
4 MUX HV
5
6
___________________________________________________________________
DI GALLO Frédéric Page 29/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
100 bits/s
200 bits/s
300 bits/s
1Æ
1 2 3 4 5 6
1/3 1/3 1/3 2/3 2/3 3/3
Verrouillage Signalisation
V 1 2 3 4 5 6 S V 4 5 6 S V 6 S
2400 bits/s
inconvénients : trames vides
2Æ
V 6 4 1 5 6 2 3 4 6 5 S
3Æ
V 6 1, 2 4 S
ou 3 2fois
5
___________________________________________________________________
DI GALLO Frédéric Page 30/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
2fois
V 6 1 4 S
V 6 2 5 S
V 6 3 4 S
V 6 1 5 S
V 6 2 4 S
V 6 3 5 S
1500 bits/s
3) Un son HIFI 16Hz Æ 20 kHz de bande passante. Son numérisé (technique MIC) avec
1024 niveaux de quantification.
D = 2 * f max * n bits
1024 = 210
___________________________________________________________________
DI GALLO Frédéric Page 31/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Hors bande
Signalisation dans la bande
d) Efficacité du multiplexeur.
___________________________________________________________________
DI GALLO Frédéric Page 32/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
SUPPORT
&
MODE
DE
TRANSMISSION
___________________________________________________________________
DI GALLO Frédéric Page 33/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Les réseaux informatiques utilisent de supports physiques très variés pour la transmission de
données.
- câble coaxial :
- Caractérisé par son impédance (50Ω, 75Ω, 100Ω).
- Besoin d’un terminateur de câble (bouchon) : résistance qui absorbe le signal pour
éviter la réflexion de celui ci (en fait n’absorbe pas mais simule un câble infini).
- 100 Mhz en standard ethernet, 500 Mhz en télétransmission.
- 500 mètres maximum.
- fibres optiques :
- Onde luminaire dans une fibre de silicium.
- On peut aller jusqu'à plusieurs kilomètres.
- Insensible au bruit.
- Un seul sens de circulation (simplex) .
- Plusieurs Gigabits de capacité.
___________________________________________________________________
DI GALLO Frédéric Page 34/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
- HF (hyper fréquence) :
Bâtiment Bâtiment
canal B à 64 kbits/s
canal D à 16 ou 64 kbits/s
canal Y à 48 ou 64 kbits/s
INTERFACE S :
INTERFACE R :
___________________________________________________________________
DI GALLO Frédéric Page 35/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
INTERFACE T :
___________________________________________________________________
DI GALLO Frédéric Page 36/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
LES
SUPPORTS
PHYSIQUE
___________________________________________________________________
DI GALLO Frédéric Page 37/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
0 1 1 0 1 1 0 0 1
data
E R
clock
Intervalle significatif
Æ asynchrone :
on a une horloge coté émetteur et coté récepteur qui bat à la même vitesse ! ! Avant
chaque transmission, on transmet un signal de synchro .
synchro
R décodage
data
E R
___________________________________________________________________
DI GALLO Frédéric Page 38/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
longueur du mot
- La longueur du start bit détermine la fréquence à laquelle j’envoie des bits (largeur du
signal transmis) Æ vitesse de la ligne.
- Stop bit : état de fin de transmission.
- Longueur du mot : 5, 6, 7 ou 8
- Parité
___________________________________________________________________
DI GALLO Frédéric Page 39/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Exercice : à débit binaire égale, quelles raisons feraient choisir la paire torsadée ou le câble
coaxial ? ?
Inconvénients : Inconvénients :
- + cher
- + fragile (courbure, écrasement, …)
Exercice : Quelles sont les limitations des transmissions par voie hertzienne ? ?
AVANTAGES INCONVENIENTS
- pas de génie civile - être de vis à vis
- large bande passante - conditions atmosphériques
- longue distance - problème de sécurité (interception ou
brouillage possible du signal)
- environnement
Exercice : Quelles sont les limitations des transmissions par infrarouge, micro-ondes, laser ? ?
AVANTAGES INCONVENIENTS
- peu sensible aux perturbations magnétiques - obstacles
- confidentialité
___________________________________________________________________
DI GALLO Frédéric Page 40/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Exercice : avec l’hyper terminal Windows 95 ou un kermit du domaine public, vérifier que la
liaison COM 1 fonctionne. Faire un « bouchon » qui renvoi les données émises sur
la réception.
1
2
3
4
5
6
7
8
20
D’habitude : A M M B
V24 V24
___________________________________________________________________
DI GALLO Frédéric Page 41/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
A B
___________________________________________________________________
DI GALLO Frédéric Page 42/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
C(n,k) = r
n : bits à transmettre
k : redondance
I. DETECTION
___________________________________________________________________
DI GALLO Frédéric Page 43/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Dans ce cas, on est capable de détecter une erreur de parité, mais pas de la localiser.
La parité longitudinale était initialement utilisée pour les bandes magnétiques pour compléter
la détection des erreurs de parité verticale.
avant
DLT
DAT ou hexabyte
0100011 0
1011100 1
1101010 1
LRC 1101010 1
La combinaison de LRC et VRC permet de détecter 2 erreurs de bits dans un seul mot ou de
corriger 1 erreur.
Un code est cyclique s’il est linéaire (les bits de contrôle sont une combinaison linéaire des
bits d’information) et si toutes les permutations d’un mot de code(suite de bits) restent un mot
de code.
C = [000,101,011,100] est un code cyclique
___________________________________________________________________
DI GALLO Frédéric Page 44/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Définition : Un mot de code est représenté sous forme polynomiale dans laquelle la suite
de bits à transmettre M=m1m2…mn est représenté par Mx=u1+u2x+…+unxn-1
Par exemple 1100101 est représenté par x6+x5+0x4+0x3+x2+x+1 c’est à dire x6+x5+x2+1
Principe de détection :
On utilise le reste R(x) de la division polynomiale M(x) par un polynôme diviseur G(x) qui
donne un quotient Q(x). R(x) est calculé par l’émetteur puis transmis au récepteur. Le
récepteur fait le même calcul R’(x) en divisant M(x)+R(x) (message + contrôle). Si R’=0
alors pas d’erreur, si R’≠0 alors erreur.
M(x) – R(x) est divisible par G(x) et est équivalent à M(x) + R(x) modulo 2.
Cette méthode fonctionne bien car la table de vérité de l’addition (en modulo 2) équivaut au
ou exclusif. + Æ ou exclusif ⊕
Ce mode de calcul n’est valable que si l’on transmet en parallèle les informations (ex : bande
magnétique).
LRC sur 1 octet est un code cyclique de polynôme générateur x8+1.
x 8 M ( x)
=
x8 + 1
x22+x19+x18+x16+x14+x13+x11+x10+x9+x8 x8+1
R(x) = x5+x
00100010 Æ on trouve comme en haut ! !
___________________________________________________________________
DI GALLO Frédéric Page 45/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Je reçois donc cela et peut le diviser par x8+1 pour vérifier qu’il n’y a pas d’erreur.
Pour fabriquer ces codes à la volée, on utilise donc un registre à décalage ainsi que un ou
plusieurs ou exclusif.
Data in
0 1 2 3 4 5 6 7 8 Top d’horloge
16bits
8bits data in vers data out
pendant 16
bits puis sortie du registre vers data
out pendant 8 bits
Rappel : ou exclusif
1⊕1Æ0
0⊕0Æ0
1⊕0Æ1
___________________________________________________________________
DI GALLO Frédéric Page 46/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
30 0
31 0
32 0
___________________________________________________________________
DI GALLO Frédéric Page 47/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Exercice :
Polynôme V41 : x16+x12+x5+1
Quel serait le circuit à base de ou exclusif et de registre qui calcule le LRC ?
Data in
0 1 23 4 5 6 7 8 9 10 11 12 13 14 15
LRC
___________________________________________________________________
DI GALLO Frédéric Page 48/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
100010011010111
010011010111100
001001101011110
000100110101111
100011000110001
000110001100011
001010010100101
011110111101111
si les bits de données valent 0101100 H Xt = 0
Y.Ht ⇒ on trouve (10100101)t⇒ 9ème colonne de la matrice, on corrige donc le 9ème bit.
___________________________________________________________________
DI GALLO Frédéric Page 49/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
3 bits, contrainte deux codes contiguës ont 1 seul bit qui change.
2 bits 3 bits
00 000
10 100
11 110
01 010
011
111
101
001
___________________________________________________________________
DI GALLO Frédéric Page 50/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
PROTOCOLES
DE
COMMUNICATION
___________________________________________________________________
DI GALLO Frédéric Page 51/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
PROTOCOLES DE COMMUNICATION
___________________________________________________________________
DI GALLO Frédéric Page 52/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
• Synchronisation de caractères
Série de SYN. Toutes les secondes « SYN SYN » pour éviter une perte éventuelle de
synchronisation. Au début, il y en a même de 4 à 7 à suivre.
Il y a une séquence de remplissage (PAD) Æ padding pour temporiser une coupure.
• Temporisation
A l’alternat, il faut respecter un délai maximum de réponse (3 secondes pour une station
réceptrice). Au bout d’un certain temps, on passe en mode dégradé puis 2 ou 3 essais
avant de déclarer la ligne Hors Service.
___________________________________________________________________
DI GALLO Frédéric Page 53/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
∅,EOT,PAD,A6,ENQ,PAD
∅,EOT,PAD
∅,EOT,PAD,B6,ENQ,PAD
∅,SOH,…,STX,…,ETX,BCC,PAD
∅,EOT,PAD,A7,ENQ,PAD
∅,ACK0,PAD
∅,SOH,…,STX,…,ETX,BCC,PAD
∅,NACK,PAD
∅,SOH,…,STX,…,ETX,BCC,PAD
∅,ACK1,PAD
___________________________________________________________________
DI GALLO Frédéric Page 54/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
EXERCICE :
a) En phase de test, on remarque que des données arrivent mais ne provoquent aucune
réaction de la part du terminal. On remarque que le terminal reçoit des caractères codés
4C (en base 16) au lieu e B3 (en base 16). A quoi est dû le problème ? ?
4C Æ 01001100
B3 Æ 10110011
Tous les bits sont inversés Æ on a donc dû inverser les fils d’une paire.
Tout se passe en fait comme si l’ordinateur maître n’avait pas reconnu la réponse. Il y a un
problème de synchronisation entre le matériel et le logiciel. Remède : tester le circuit 106
(prêt à émettre).
On retourne le modem trop tôt avant que le dernier caractère ne soit arrivé. Remède :
temporiser en envoyant du padding.
d) Par la suite, la réponse à une séquence de poolling est toujours EOT. Pourquoi ? ?
___________________________________________________________________
DI GALLO Frédéric Page 55/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
COUCHE
LIAISON
___________________________________________________________________
DI GALLO Frédéric Page 56/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
___________________________________________________________________
DI GALLO Frédéric Page 57/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
I. Introduction
Cette couche conditionne les bits bruts de la couche physique en trames de données. La
couche liaison de données est également chargée du contrôle d'erreurs qui s'effectuent en
s'assurant que les bits de données reçues sont identiques à ceux qui ont été envoyées. En
bref :
¾Elle envoie les trames de donnes depuis la couche réseau a la couche physique.
¾Elle regroupe les trames de bits de la couche physique et attend un accuse de réception
¾Sous couche LLC : elle définit des point d'accès au services SAP
¾Sous couche MAC : Elle communique directement avec la carte réseau. C’est elle qui est
responsable du transfert sans erreurs des trames
La couche liaison de données prend les données de la couche physique et fournit ses
services à la couche réseau. Les bits reçus sont regroupé en unité logiques appelées trames.
Dans le contexte d ’un réseau, une trame peut être une trame Token Ring ou Ethernet, FDDI,
ou un autre type de trame réseau. Pour les liens des réseaux étendus, ces trames peuvent être
des trames SLIP, PPP, X.25 ou ATM. Les bits d’une trame ont une signification spéciale. Le
début et la fin d ’une trame peuvent être marqués par des bits spéciaux. De plus, les bits de
trame sont répartis en champ adresse, champ de contrôle, champ de données et champ de
contrôle d’erreurs.
¾Les champs d’adresses contiennent les adresses source et destination.
¾Le champ de contrôle indique les différents types de trames de liaison de données.
¾Le champ de données contient les données proprement dites, transmises par la trame.
¾Le champ de contrôle d’erreurs détecte les erreurs dans la trame de liaison de
données.
La couche liaison de données est la première couche qui gère les erreurs de transmission.
En général, le champ de contrôle d ’erreur consiste en un générateur de checksum, utilisé pour
détecter les erreurs dans la trame de liaison de données. Dans la plupart des cas, les réseaux
modernes utilisent un contrôle de redondance cyclique (CRC). Pour les réseaux locaux, c ’est
un CRC 32 bits. Pour les réseaux étendus où les liens sont plus lents, on utilise un CRC à 16
bits pour éviter de surcharger la liaison. Dans les réseau TCP/IP, les implémentations de la
couche liaison de données comprennent les technologies suivantes : Token Ring, Ethernet,
FDDI, Frame Relay, X.25, SLIP, PPP et ATM.
On définit plusieurs types de réseau selon leur étendue: LAN (Local Aera Network), WAN
(Wide Aera Network) et MAN (Metropolitan Aera Network): plaques régionnales (fédérées
par entité administrative). Ex : en aquitaine le MAN aquarelle.
support
liaison
___________________________________________________________________
DI GALLO Frédéric Page 58/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
machine
Il y a deux sous-niveaux dans la couche liaison du modèle OSI :
- Les technologies d’accès au support (Medium Access Control = MAC). Commun à
toutes les stations connectées sur le réseau local.
- Procédure de communication : niveau de commande du lien logique (Logical Link
Control = LLC). Cela décrit la manière de prélever les informations du support bit par
bit.
NOTE : Les protocoles TCP/IP ou ATM ne respecte pas le modèle OSI.
LLC médium
LLC1 : service sans connexion et sans acquittement. Le travail est fait dans les couches
supérieures ou on accepte de perdre des données (ex : visio conf et temps réel)les
couches supérieures assurent la reprise en cas d’erreur).
LLC2 : service avec connexion ex : porteuse (pour les transmissions longues de fichiers,).
LLC3 : service sans connexion et avec acquittement Cela évite de maintenir une table active :
datagramme. En fait, on écoute en permanence car il y a des diffusion d’écoute (on
arrose tout le monde).
¾Assure le contrôle de flux (de type « stop and wait » sans connexion pour LLC3).
Mécanisme de type « fenêtre »(buffer d’anticipation) avec connexion pour LLC2.
___________________________________________________________________
DI GALLO Frédéric Page 59/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
¾Assure le contrôle d’erreurs à l’aide d’un CRC de 32 bits qu’il rajoute au niveau MAC
car la taile des trames émises en LAN est supérieure par rapport au WAN.
NOTE : En Ethernet, c’est la couche MAC qui détecte les collisions et qui demande la
réémission.
Classe LLC 1 :
2 primitives
DL_UNIDATA
request
DL_UNIDATA
indication
Classe LLC 2 :
3 classes successives :
. établissement d’une connexion entre 2 utilisateurs à des points d’accès au service
(service Access Point Æ SAP)
. Transfert de données
. Déconnexion.
DL_CONNECT
request
DL_CONNECT
indication
DL_CONNECT
DL_CONNECT response
Confirm
DL_DATA
request
DL_DATA
___________________________________________________________________
DI GALLO Frédéric Page 60/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Indication
Classes LLC 3 :
DL_DATA_ACK
request
DL_DATA_ACK
indication
DL_DATA_ACK_STATUS
Confirm
Format DSAP
* * * * * * U I/G
Adresse individuelle
ou groupe (multicast)
Format SSAP
* * * * * * U C/R
___________________________________________________________________
DI GALLO Frédéric Page 61/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Commande ou réponse
Fonctionnelle ou universelle
Introduction :
L’origine d’Ethernet vient des constructeurs Dec, Xerox, Intel en 1980. Basée sur
CSMA/CD : Carrier Sense Multiple Access / Collision Detection. Cette technique, utilisée
dans les réseaux Ethernet, est en fait basée sur la détection d’une porteuse avec accès multiple
et détection de collision. C’est à dire que l’on peut avoir plusieurs éléments connectés qui
peuvent prélever des bits sur le câble.
La vitesse est d’environ 0,7c (c=vitesse de la lumière).
C
Instant t+1 instant t instant t+1
Bouchon 50 Ω
A B
Une collision se produit quand deux signaux sont émis en même temps (deux stations
discutent en même temps). Les machines attendent le temps d’une temporisation et ensuite
réémettent. C’est une technique de contrôle de flux probabiliste, c’est à dire la probabilité que
la collision se produise doit être le plus faible possible. Mais les collisions dépendent donc du
trafic et l’on a typiquement le "phénomène d’effondrement" qui caractérise Ethernet. Ce
phénomène se produit à environ 7Mb/s pour un réseau Ethernet à 10Mb/s.
10101…01010 Start
Frame
Delimitor
10101011
56 bits au lieu de 0
De 64 à 1518 octets
___________________________________________________________________
DI GALLO Frédéric Page 62/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Supports Physiques :
Coaxial - 10 BAS 2 Æ Ethernet fin
- 10 BAS 5 Æ Ethernet “gros”
Paires torsadées - 10 BAS T Æ Ethernet paires torsadées (10Mb/s)
- 100 BAS T Æ Fast Ethernet (100Mb/s)
Fibres Optiques - 100 BAS F Æ Ethernet fibres optiques (100Mb/s)
- Æ Ethernet Gigabit (1Gb/s)
C D
B G
Anneau à jeton
A H
J I
Fondé sur le droit d’émission c’est à dire qu’il dépend d’un « jeton ». On partage le support
(un BUS) en « exclusion mutuelle ». En fait, on utilise le support en garantissant les délais de
transmission mais l’utilisation n’est pas optimum car on charge le réseau inutilement. On a
une liste de successeur avec une initialisation du réseau où est fabriqué un anneau virtuel. Le
jeton est toujours transmis au successeur. En cas de panne d’une machine, on a une perte du
jeton et une station "superviseur" réémet le jeton au bout d’un moment.
A B C D
___________________________________________________________________
DI GALLO Frédéric Page 63/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Ce type de réseau est peu utilisé pour des raisons de lourdeur d’initialisation du réseau. Ces
avantages sont qu’il est très simple à mettre en œuvre et que sa topologie est en bus (on peut
rajouter et enlever des stations sans problème : modulable). Par contre, il y a un manque de
performance qui est lié au contrôle du jeton et au nombre de machines connectées.
Le fonctionnement de ce réseau est très lié à son architecture : un anneau. En fait le jeton
est une sorte de « wagon » dans lequel on met des choses. Ce réseau est très compliqué et
assez fragile. La vitesse est liée au nombre de stations puisque le jeton doit nécessairement
faire le tour de l’anneau. Si l’on coupe le câble à un endroit : tout le réseau est bloqué.
L’avantage est que l’on sait facilement où se trouve une station car on a une circulation en
anneau du jeton.
En fait, sur cet anneau, on a une circulation de trames (contenant des informations plus
l’identifiant du destinataire) permanente qu’elles soient pleines ou vides. Le débit binaire est
garanti en permanence car le prélèvement de l’information dans le jeton ne ralentit pas
vraiment le réseau. Chaque information est déposée de façon synchrone (a moyen d’un droit
de parole : jeton). En vitesse de croisière cela marche bien mais en cas de problème c’est très
lourd à gérer.
Il faut une station superviseur sur le réseau qui fasse la gestion du jeton. Elle veille au bon
fonctionnement en faisant une régénération du jeton en cas de perte (time out). Si le moniteur
est défaillant (panne ou autre), il n’envoie plus de trames signalant sa présence (trame :
ACTIVE_MONITOR_PRESENT, MAC type AMP), alors une station qui peut devenir
moniteur prend sa place (elle envoie une trame CLAIM_TOKEN). Ces stations qui peuvent
___________________________________________________________________
DI GALLO Frédéric Page 64/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Le moniteur a pour fonction la gestion du jeton mais aussi la surveillance des trames qui
bouclent (ex: mauvaise adresse destinataire), et il gère le bon passage du jeton (trame de 24
bits) en fonction du temps de circulation sur l’anneau.
1 octet 1 1 6 6
Délimiteur Champ de commande Adresse de destination Adresse d’origine
7 bits 1 1 3
Mode de bit de bit réservation type de commande
Priorité jeton moniteur de priorité trame
Contrôle de l’accès au support 00 MAC
01 LLC
1x réservé
Chaque adresse physique des stations est connue (adresse MAC). Les adresses sont
uniques (sauf cartes bas de gamme type Taiwan). Mais il existe également des adresses
physiques de diffusion. D’ailleurs c’est beaucoup plus lourd que les diffusions d’Ethernet car
il lui faut le temps de faire le tour (en Ethernet, tout le monde voit la trame en même temps).
___________________________________________________________________
DI GALLO Frédéric Page 65/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Sachant qu’un bit met 4 µs pour faire tout le réseau (800 m) et que nous avons un débit de
10Mb. Cela nous donne au total 4.10-6 * 10.106 = 40 bits sur le réseau (un tous les 20 m).
trame i trame i +1
208 + 48 bits
tps propag.
ACK
32 bits
Les données d’informations (pour le débit efficace) sont de 256 – 48 = 208 bits.
(256 − 48)
Donc le débit efficace est de : ≈ 5,65 Mb/s
36,8.10 6
___________________________________________________________________
DI GALLO Frédéric Page 66/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Nombre de bits utilisés par trame : 512 – 32 = 480 bits (de data)
4.10 6
bits/s disponibles par station donc 80 Kb/s au total.
50
80.10 3 * 480
Le débit utile est donc de = 75 Kb/s
512
On sait que pour transmettre de la parole, il faut environ 64 Kb/s, ici c’est donc possible.
5m
3m Etc…
Ordinateur
central
Etc… Etc…
1) Quelle est la quantité de câble nécessaire pour un réseau en bus, avec un câblage en
bus ?
On a 6x5=30 m/étage de longueur. En comptant les 3 m de hauteur cela nous fait au total :
( 30 + 3 ) x 5 = 165 m mais il faut enlever la hauteur d’un étage puisque l’on considère que
l’on place la prise à la même hauteur dans chaque bureau donc on a 165-3= 162 m
2) Quelle est la quantité de câble nécessaire pour un réseau en bus, avec câblage en
étoile ?
___________________________________________________________________
DI GALLO Frédéric Page 67/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
3) Quelle est la quantité de câble nécessaire pour un réseau en anneau, avec câblage en
bus ?
On reprend le câblage du 1) puis on rajoute le câble nécessaire pour faire la boucle. Soit
12m de hauteur et 15m de longueur pour partir du premier ou du dernier vers le centre.
Donc cela fait 162+2x(15+12) = 216 m.
4) Quelle est la quantité de câble nécessaire pour un réseau en anneau, avec câblage
étoile ?
___________________________________________________________________
DI GALLO Frédéric Page 68/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
COUCHE
RESEAU
ET
X.25
___________________________________________________________________
DI GALLO Frédéric Page 69/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
___________________________________________________________________
DI GALLO Frédéric Page 70/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
I. INTRODUCTION
La couche réseau est chargée d'adresser les messages et de convertir les adresses et noms
logiques en adresses physiques. Elle détermine aussi l'itinéraire à emprunter de la source à
l'ordinateur de destination. Elle choisi le chemin que doivent suivre les données en fonction
des contions du réseau, de la priorité du service et d'un certain nombre de facteurs. Elle gère
aussi les problèmes de trafic comme la communication, l'acheminement et l'encombrement
des paquets de données sur le réseau.
• Responsable de l’adressage, de la traduction des adresses en nom logique.
• Définie le routage des paquets.
• Gère les problème de trafique, commutation de paquets, encombrement.
La couche réseau gère les connexions entre les nœuds du réseau. Un service
supplémentaire, fourni par la couche réseau, concerne la façon de router les paquets entre les
nœuds d’un réseau.
La couche réseau sert à éliminer les congestions et à réguler le flot des données ; Cette
couche permet aussi à deux réseaux différents d’être interconnectés en implémentant un
mécanisme d’adressage uniforme. Token Ring et Ethernet possèdent, par exemple, différents
types d’adresses. Pour interconnecter ces réseaux, vous avez besoin d’un mécanisme
d’adressage compréhensible par les deux réseaux. Pour les réseaux TCP/IP, la couche réseau
est implémentée en utilisant le protocole IP.
Services facultatifs :
___________________________________________________________________
DI GALLO Frédéric Page 71/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
4.1) Introduction
Adopté en septembre 1976 par le CCITT, le protocole X25 définit l'interface entre un
ETTD ( Equipement Terminal de Traitement des Données ) et un ETCD ( Equipement
Terminal de Circuit de Données). Il résulte de l’expérience accumulées sur différents réseaux
à commutation de paquets.
On entend souvent par X25 l'ensemble des protocoles liés à X25 et qui couvre les couches
1 à 3 du modèle OSI de la norme ISO. Le niveau physique provient principalement de la
norme X.21, la couche liaison est constitué par un sous-ensemble de la norme HDLC : le
protocole LAP-B. Pourtant, le terme X25 désigne uniquement le niveau 3 ou niveau paquet
transporté entre les champs d'information des trames LAP-B.
Le protocole X.25 est donc en premier lieu une interface locale entre un équipement
informatique connecté au réseau et le réseau lui-même. Cependant, la définition de X25 a été
étendue pour prendre en compte des transmissions entre des ETTD.
Pour résumer, nous avons un protocole en mode connecté avec un circuit virtuel. Suite à la
sous utilisation des lignes allouées et pour réutiliser les temps de silence, il y a une
optimisation des lignes. Ce qui a pour effet que la facturation est faite sur la durée et le
volume de la communication (indépendant de la distance).
LAPB
Le protocole LAPB est le protocole de niveau 2 qui transporte les paquets X25. Le format
standard d'une trame LAPB est le suivant:
___________________________________________________________________
DI GALLO Frédéric Page 72/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
seulement prendre les valeur 0x01 et 0x03. 01 désigne une commande de l'ETTD à l'ETCD et
03 contient une réponse de l'ETCD à l'ETTD.
Champ de contrôle: Identifie le type de trame. En plus, il inclut la séquence de nombre, les
fonctions de contrôles et le traquage des erreurs en fonction du type de trame.
FCS: Frame Check Sequence.
Types de trame:
Trames de supervision:
RR : Prêt à recevoir.
REJ : Demande de retransmission.
RNR : Pas prêt à recevoir.
Trame d'information:
INFO
Notons que les paquets sont de petite taille puisque optimisés pour de longues distances.
Bits
8 7 6 5 4 3 2 1
Identificateur N° de groupe
général de format de Voie logique
N° de Voie Logique
Identificateur de Type de paquet
GFI: Identifiant de format général. Q indique un paquet X25 (0) ou X29 (1). D indique un
acquittement local (0 : ETCD) ou distant (1 : ETTD). Les bits 01 indiquent que les numéros
de trames vont de 0 à 7. Le format de trame où ils indiquent 10 montre que l'on numérote les
trames de 0 à 127 (10). Cela permet d'envoyer beaucoup de trame avant d'acquitter ce qui est
intéressant pour les réseaux lents tels que les réseaux satellites.
___________________________________________________________________
DI GALLO Frédéric Page 73/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
a) Circuits Virtuels :
- CVP : Circuit Virtuel Permanent (facturation au volume uniquement) liaison point à point
- CVC : Circuit Virtuel Commuté.
A chaque instant, plusieurs circuits virtuels peuvent cohabiter sur une voie. Chaque circuit
virtuel utilise une voie logique qui est repérée par un n° de groupe de voie logique (≤15) et un
numéro de voie logique (≤255). Ces n° ont une signification locale à l’ETTD/ETCD.
___________________________________________________________________
DI GALLO Frédéric Page 74/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Le paquet contient un champ pour indiquer les options de contrôle du circuit virtuel ainsi
qu'un champ de 64 octets maximum destiné à l'utilisateur. Il peut utiliser ce champ pour
donner, entre autres, des adresses complémentaires, si l'adresse du récepteur est un réseau
local ou un autocommutateur privé et des mots de passe.
Le paquet d'appel, lorsqu'il arrive à l'ETCD destinataire, capte le plus petit numéro de voie
logique pour éviter la collision avec une demande d'ouverture de circuit virtuel qui pourrait
arriver sur l'ETCD après avoir réservé le même numéro de voie logique sur l'ETTD, la
demande entrante étant alors prioritaire. Le récepteur retourne, s'il accepte la communication,
un paquet "communication acceptée", sinon il envoie une demande de libération.
L'émetteur ou le récepteur peut mettre fin au circuit virtuel en envoyant une demande de
fermeture qui est acquittée au niveau local. Le paquet de libération peut contenir la raison de
la demande : numéro logique à l'ETTD récepteur occupé, émetteur absent ou occupé, paquet
non dans l'ordre, erreur locale, congestion d'un nœud, etc. La zone d'identificateur du type de
paquet permet de déterminer la fonction du paquet ; elle ressemble à la zone de supervision de
HDLC pour le contrôle de la connexion de réseau.
A B
TRANSPAC
c) Collision d’appel
On a collision d’appel lorsqu’il y a une transmission simultanée, sur une voie logique, d’un
paquet APPEL ENTRANT et d’un paquet APPEL (sortant). Transpac gère donc l’APPEL et
ignore l’autre. Il donne en fait, la priorité à celui ayant le plus petit numéro de voie logique.
N° voie logique
___________________________________________________________________
DI GALLO Frédéric Page 75/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
(6)
Appels sortants (7)
Le contrôle de flux est bidirectionnel avec un mécanisme de fenêtre. C’est une procédure
de type HDLC avec deux compteurs de paquets : les paquets émis P(S) et les paquets reçus
P(R). Les paquets sont numérotés modulo 8 et on a l’autorisation d’émettre si et seulement si
dernier P(R) reçu ≤ P(S) courant ≤ dernier P(R) reçu + W. Ici W correspond à la taille de la
fenêtre de niveau 3 (norme ISO modèle OSI).
6 7
3 2
Depuis 1984, on a deux types d’acquittement. Cela dépend du choix de sécurité de la liaison.
¾local : acquitté par l’ETCD local,
¾de bout en bout : acquitté par l’ETCD distant.
A
B
TRANSPAC
La taille des paquets (champs de données plus en-tête) est fixé lors de la mise en place de
l’abonnement à Transpac. On a le choix entre : 16 octets (très interactif), 32, 64 ou 128 octets
(pour les gros fichiers).
Si taille du paquet ETTD émetteur > taille du paquet ETTD récepteur, Transpac assure la
fragmentation. Dans le cas inverse, si taille du paquet ETTD émetteur < taille du paquet
ETTD récepteur, Transpac peut regrouper les paquets (c’est à la demande).
___________________________________________________________________
DI GALLO Frédéric Page 76/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Dans tous les cas, suivant la nature de l'abonnement, des options sont prises par défaut:
¾ Voie logique unidirectionnelle. Pour éviter des collisions de paquets d'appel, les
voies logiques peuvent être unidirectionnelles;
¾ Temporisateurs pour envoyer les paquets d'interruption, de réinitialisation et de
reprise ne sont pas définis. Ils seront déterminés par l'utilisateur, suivant les options
prises, et en particulier Si la fenêtre de contrôle est locale ou de bout en bout.
4.5) Conclusion
La recommandation X.25 a été l'une des normes les plus utilisées depuis le début des
années 1980. Elle est à la base des grands réseaux de transport de données dans les cinq
continents. C'est une norme assez complexe dont le problème principal est la lourdeur. Elle
devrait être remplacée petit à petit par les techniques de commutation par cellules. Cette
transition sera très longue, d'autant plus que l'optimisation d'une norme demande de
nombreuses années. On considère qu'il faut une dizaine d'années avant de parfaitement
maîtriser une norme de la complexité de X.25. Les environnements à commutations de
cellules ne seront donc pas vraiment opérationnels à un niveau national avant 2005, ce qui
laisse encore à X.25 un laps de temps suffisant pour que des utilisateurs investissent dans
cette direction, mais il est sûr que les questions de pérennité se posent.
X.25 est maintenant une norme parfaitement maîtrisée et les réseaux associés comme
Transpac sont aujourd'hui techniquement irréprochables. Mais la dérégulation massive pousse
les différents opérateurs à proposer de nouvelles solutions à base de relayage de trames, de
réseaux métropolitains, etc. La suprématie de la norme X.25 pourrait disparaître petit à petit
au profit de nouvelles techniques plus performantes.
___________________________________________________________________
DI GALLO Frédéric Page 77/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
PLP signifie « Packet Level Protocol ». C’est une adaptation de X25 pour une utilisation
dans les réseaux locaux. Standarisé par l’ISO référence 8208 avec le service ne mode
connexion OSI.
A la différence avec le protocole X.25, le routage des paquets qui se fait sans routeur. C’est
à dire que le nombre de nœuds intermédiaires est limité. A noter aussi que les ETTD locaux
sont appelés EXD (équipement d’échange de données).
a) Fonctions
b) En émission :
X.25 PLP fournit un service de fragmentation des données du niveau supérieur avant de les
transmettre au correspondant. Il fournit aussi un service en mode connecté vers le niveau
supérieur (TCP par exemple) . Les Circuits virtuels sont commutés ou permanents.
c) En réception :
X 25 PLP fournit un service de contrôle et de réassemblage des paquets reçus avant de les
délivrer (ceci pour le transfert de données sur n’importe quel type de réseau local, quelques
soient la taille des PDU véhiculés et le réassemblage des unités de données dans leur taille
originelle).
___________________________________________________________________
DI GALLO Frédéric Page 78/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Ex : un numéro TRANSPAC :
b) Un réseau X25 relie 3 ETTD entre eux, est-il possible d’avoir plusieurs circuits
virtuels entre 2 ETTD données ? Si oui, à quoi cela sert-il ?
ETTD
C
X.25
ETTD
ETTD
A
B
circuits virtuels
D’après la norme Transpac, on peut établir plusieurs circuits virtuels selon ce que
l’on a définit dans le contrat d’abonnement. Sachant que les appels sortant sont
numérotés dans l’ordre décroissant et les appels entrants dans l’ordre croissant, il n’y a
pas de problème de circuits virtuels multiples tant qu’ils sont inférieur au nombre
autorisé par l’abonnement.
L’intérêt est de pouvoir éclater les paquets sur plusieurs voies donc si l’on a une
taille de fenêtre égale à 7 bits, on pourra avoir 7xn voies à la fois avant d’attendre
l’accusé de réception ! Ceci entraîne donc l’augmentation de l’anticipation et du débit.
___________________________________________________________________
DI GALLO Frédéric Page 79/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
ETTD A X 25 ETTD B
Indiquer quels sont les paquets échangés depuis l’établissement des CVC jusqu'à leur
libération. Chaque ETTD veut envoyer 3 paquets de données vers l’autre. C’est A qui ouvre
le circuit virtuel commuté. La taille de la fenêtre est de 2.
PR (VL)
LIB (A,B,VL)
PRR2 (8)
P(2,3,8)
PRR3 (1)
DEMANDE LIBERATION (A,B,8)
___________________________________________________________________
DI GALLO Frédéric Page 80/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
1 2
ETTD
2
1
Chaque ETTD veut envoyer 4 paquets de données aux deux autres. Le plus grand numéro
de voie logique est 7 pour tous les ETTD.. Les circuits virtuels sont permanents et déjà
ouverts C’est 1 qui ouvre le circuit virtuel commuté avec 2 et 3 qui lui ouvre le circuit virtuel
commuté avec 2. Les circuits virtuels sont des circuits permanents (CVP). L’acquittement des
paquets est local. On entrelace les paquets des différents circuits virtuels. Les fenêtres entre
CV sont les suivantes : entre ETTD 1 et ETTD 2 : 1 ; entre ETTD 1 et ETTD 3 : 2 ; entre
ETTD 2 et ETTD 3 : 3.
Représenter les paquets échangés depuis l’établissement des CVC jusqu'à leur libération.
P(1,0,6) P(0,0,6) P(0,0,7) P(2,0,2) P(1,0,2) P(0,0,2) P(0,0,1) P(2,0,7) P(1,0,1) P(1,0,7) P(0,0,1) P(0,0,7)
PRR4(7) PRR4(1)
___________________________________________________________________
DI GALLO Frédéric Page 81/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
INTERCONNEXION
DE
RESEAUX
___________________________________________________________________
DI GALLO Frédéric Page 82/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
INTERCONNEXION DE RESEAUX...............................................................84
I. BESOINS D’INTERCONNEXION.......................................................................................................... 84
II. PASSERELLE ........................................................................................................................................ 85
2.1) Les différentes passerelles : ................................................................................................................... 85
2.2) Techniques d’interconnexion ................................................................................................................ 87
2.3) EXERCICE : Ethernet interconnecté avec X.25.................................................................................... 88
___________________________________________________________________
DI GALLO Frédéric Page 83/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
INTERCONNEXION DE RESEAUX
En général, des réseaux point à point sur de longues distances (le long des autoroutes,
voies ferrées, canaux…) pour arriver à un réseau maillé (ou plutôt arborescent en France).
I. BESOINS D’INTERCONNEXION
Exemple :
LAN LAN
Ethernet Ethernet
Pont distant
Ethernet X25 Token Ring
Ethernet Etc…
Collisions gérées par le pont
RNIS
Trifouilli
les olivettes
___________________________________________________________________
DI GALLO Frédéric Page 84/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Pour des transmissions à la longue distance, il faut un bon rendement et des petits paquets
(pour éviter de réémettre de gros paquets). La qualité de la ligne est exprimé en pourcentage
de bits erronés (mauvaise : 10-3 : 1 bit/1000 erronés, bon : 10-5).
II. PASSERELLE
Une passerelle est l’ensemble des ressources matérielles et logicielles nécessaires pour offrir
aux équipements connectés à des réseaux différents, les moyens de communiquer entre eux.
Ex : Apple Talk vers TCP/IP, ou PAD vers Telnet…
X25
TRANSPAC
Ici, la passerelle est un logiciel qui accepte un circuit virtuel d’un protocole X25 et qui
établit une connexion du type Telnet.
Niveau
7 Application Passerelles de niveau supérieur
6 Présentation Ex : messagerie X400 Ù messagerie sendmail
5 Session
4 Transport Transcodage ou classes de transport
3 Réseau Routeur (transmission de paquets)
2 Liaison Pont (switch =multipont)
1 Physique Répéteur (, ex : hub= multi répéteur)
Physique :
REPETEUR
remise en forme des signaux
500 m 500 m
___________________________________________________________________
DI GALLO Frédéric Page 85/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
RTC ou RNIS
machine PONT Distant machine machine à n interfaces
MULTI PONT
Réseau : ROUTEUR
ROUTEUR
147.210.6 147.210.7
Routage statique : Les routeurs sont des machines qui communiquent entre elles .
RIP : Routing Information Protocol (protocole ancien basé sur les fichiers d’adresse de
chaque nœud). Ex : daemon Routed d’Unix.
IGRP : Interior Gateway Routing Protocol (amélioration de RIP avec délais, envois de
paramètres des liaisons, …).
OSPF: Open Shortest Path First (permet un routage distribué).
Routage statique :
147.210.6.1 147.210.7.1
147.210.6.254 147.210.7.254
A B
ROUTEUR
147.210.6 147.210.7
Notons que pour relier 2 réseaux X25 entre eux, il existe la norme X75. INTERNET est en
fait une simple interconnexion de réseaux IP.
___________________________________________________________________
DI GALLO Frédéric Page 86/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Encapsulation
Bordeaux Paris
TRANSPAC
TCP/IP TCP/IP
X25 X25
A M M B
Cette technique universelle est plus facile et plus simple à mettre en place. Par contre,
l’inconvénient c’est que c’est plus lourd et beaucoup moins efficace. En fait, cela consiste à
envelopper une trame de R1 comme donnée d’une trame de R2.
Translation ou conversion
Cette solution est plus efficace mais elle n’est pas universelle.
Interconnexion X75
CV
CV1 CV2
AX25 1 2 X25 B
X75
Principe de fonctionnement :
1) Demande de connexion de la station A et génération du paquet d’appel contenant
l’adresse internationale de la station B. Le réseau 1 crée un Circuit Virtuel entre la station
et le réseau de sortie (nœud dédié).
2) Etablissement de la liaison entre 1 et 2 (passerelle).
___________________________________________________________________
DI GALLO Frédéric Page 87/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
3) Etablissement du Circuit Virtuel entre le nœud 2 et B (il est possible d’avoir 4096
interconnexions différentes et pas de CVP) et transfert des données.
Soit un réseau local d’entreprise de type Ethernet. Toutes les stations veulent communiquer
avec le monde extérieur en X.25 (Transpac).
On installe une ligne X.25 à chaque station avec le logiciel correspondant et l’interface
(carte). Ceci doit couter dans les 25 000 Frs par an et par poste !!!
On rajoute un routeur vers X25 (passerelle spécialisée) afin de se partager une seule ligne
Transpac. Une machine fait office de passerelle (machine générique). Elle établit une
passerelle (aussi appelé proxy) vers le Circuit Virtuel avec le X.25.
Logiciel passerelle
TCP/IP X25.3
LLC X25.2
MAC X25.1
Il faut prévoir le coût du matériel, le coût des communications, le coût des contrats de
maintenance, le coût des ressources humaines…
___________________________________________________________________
DI GALLO Frédéric Page 88/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
TCP / IP
___________________________________________________________________
DI GALLO Frédéric Page 89/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
TCP/IP
I. HISTORIQUE
II. DOCUMENTATION
RFC (Request For Comment)
RFC 793 décrit TCP/IP
___________________________________________________________________
DI GALLO Frédéric Page 90/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
7 Applications
6 telnet, ftp, smtp
5 Internet
4 TCP UDP Protocol
3 ICMP Suite
ARP RARP
interface
2 Liaison (ethernet, X25, série…)
1 Physique
___________________________________________________________________
DI GALLO Frédéric Page 91/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
- Chaque adresse devrait être unique au monde car elle est significative d’un lieu
géographique.
- Composée d’une adresse réseau + une adresse locale (adresse de machine ou adresse
de sous-réseau + adresse machine).
Classe A :
A = adresse de réseau
A < 127 Æ on utilise 126 réseaux possibles et on garde 2543 adresses locales possibles
(≈ 16 millions).
N’existe pas en France mais aux Etats-Unis (16.0.0.0 : DEC, 18.0.0.0 : MIT)
Classe B :
127 < A < 192
Classe C :
191 < A < 223
Classe D :
222 < A < 239
Adresses multicast
Classe E :
Classe RFU
___________________________________________________________________
DI GALLO Frédéric Page 92/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Loopback : 127.0.0.1
Défaut :0.0.0.0
130.190.0.0 Æ réseau de classe B 130.190
130.190.255.255 Æ adresse broadcast (toutes les machines du réseau 130.190)
147.210.9.3
255.255.0.0 netmask
147.210.8.0 8 1000
93.D2.08.00 9 1001
1001 0011 1101 0010 0000 1000 0000 0000
23 bits 9 bits
FF.FF.FE.00
255.255.254.0
Paquet broadcast :
Exercice
Proposer un mécanisme d’adressage pour faire 4 sous réseaux dans un réseau de classe C
192.33.148.
8 bits 00
01
10
11 11 00 00 00
netmask broadcast
4 sous réseaux Æ 192.33.148.0 255.255.255.192 192.33.148.63
192.33.148.64 192.33.148.127
192.33.148.128
192.33.148.191
___________________________________________________________________
DI GALLO Frédéric Page 93/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
192.33.148.192 192.33.148.255
___________________________________________________________________
DI GALLO Frédéric Page 94/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Réseau privé
172.47…..
Internet
Si les machines du réseau privé veulent discuter avec l’extérieur, elles demandent à la
machine ayant l’adresse de sous traiter le trafic. La machine M contient une table de
correspondance. Cette machine s’appelle un proxie (lien entre réseau privé et réseau public).
___________________________________________________________________
DI GALLO Frédéric Page 95/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
@ source
adresse IP
@ destination
V. TCP
Transmission Protocol (RFC793)
IP
___________________________________________________________________
DI GALLO Frédéric Page 96/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Source port
Numéro de service
Destination port
Acknowledgement number : numéro du prochain octet que l’on souhaite recevoir. Paquets
précédents reçus sans erreurs ni pertes.
URG : Données urgentes. Le champ « pointeur vers urgence » indique alors la donnée à
transmettre immédiatement.
PSH : Push. Délivrer les données immédiatement à l’application (vider le buffer, return…).
Window : Taille de la fenêtre. Nombre d’octets que l’on peut recevoir par rapport à
l’acknowledgement number. (fonction du contrôle de flux).
Cheksum : Fonction des entêtes TCP, IP + données. Assure un transport sans erreurs.
___________________________________________________________________
DI GALLO Frédéric Page 97/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
VI. UDP
Port source Port destination
Longueur Checksum
7.1) Sockets
N°port
___________________________________________________________________
DI GALLO Frédéric Page 98/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
7.2) Routage
- Idée :
• Chaque routeur connaît uniquement son voisin.
• La carte complète du réseau n’existe pas.
• Table de routage sur chaque routeur.
La mise à jour de la table de routage peut être :
- statique : manuelle, il faut remplir à la main les lignes de configuration.
- Dynamique : des démons échangent des infos de routage.
- Mixte
A B
C
Un routeur peut recevoir sur son interface ETHERNET des trames ethernet qui lui sont
destinées mais avec un paquet IP qui n’est pas pour lui. Il le renvoi alors vers le routeur le
plus proche ou vers un autre tronçon.
___________________________________________________________________
DI GALLO Frédéric Page 99/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Exemple de routage
130.190.4 130.190.5
2 R1 129.88.32
2 Machine B
Machine A 1 130.190.6 3 R4 1
2 R6 autres
3 R2 1 X25 2 R3 1
réseaux
Tunnel
Machine F 24 2 R5 4 3
Machine D
Machine C 1
129.88.36
Machine E 10
Pour aller
sur E Route add net 193.33.64.0 129.88.32.4 1
Pour aller
sur D Route add net 129.88.36.0 129.88.32.3 1
___________________________________________________________________
DI GALLO Frédéric Page 100/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Exercice
L’administrateur d’un parc de machine LINUX voudrait contrôler les accès réseau vers
l’extérieur.
192.33.148
gate
1 2 3 10 254
chef
Pour empêcher le routage, le chef refuse les requêtes qui ne sont pas pour lui (ou bien il peut
aussi déconnecter son poste ! !).
___________________________________________________________________
DI GALLO Frédéric Page 101/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Problématique : Dans chaque paquet IP indépendamment les uns des autres, on a les
informations, y figurent deux adresses « mondiales » : émetteur et récepteur.
1) Ether
IP
___________________________________________________________________
DI GALLO Frédéric Page 102/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Exercice
maison
192….253
tunnelling
R (192.33.148.0)
Internet
Seul 2 connaît 1 et peut lui faire parvenir une info que lui enverrait Internet via un routeur.
___________________________________________________________________
DI GALLO Frédéric Page 103/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Le firewall filtre les paquets pour éviter ce qui pourrait polluer son réseau.
Point d’accès : seul point par lequel l’extérieur peut entrer dans le réseau. En fait, on travaille
sur les entêtes des paquets et les numéros de services.
Si un firewall est en panne, on l’enlève, tout le monde va vers 252, si on l’enlève : problème,
personne ne saura aller vers le routeur 254. (car seul le firewall avait cette adresse).
___________________________________________________________________
DI GALLO Frédéric Page 104/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
EXERCICE
1) Etudier un mécanisme de FW transparent. C’est à dire qui peut être ajouté ou enlevé de
façon transparente.
a) Peut-on le faire avec des mécanismes ARP + routage ?
b) Faut-il modifier ou adapter les protocoles.
NB : Le logiciel de FW le plus connu est le TIS.
@ logique, virtuelle
R FW 254 192.33.148.0
192.33.148.0
Routage statique
ICMP redirect
Indication d’un routeur qui indique qu’il y a eu une erreur et qui permet de renvoyer le
paquet. Permet de corriger dynamiquement une table de routage.
R1
MACHINE A
MACHINE B
R2 R3
___________________________________________________________________
DI GALLO Frédéric Page 105/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Si A est mal configurée, elle envoie un paquet à destination de B vers R1 (au lieu de R2). R1
l’envoie à R2 et ensuite R2 envoie à R3 qui l’envoie vers B.
R1 envoie un paquet ICMP redirect à A en disant que pour atteindre B, il faut passer par R2.
A ajoute cette info dans sa table de routage s’il supporte ICMP redirect.
Routage dynamique
Principe : régulièrement, les routeurs diffusent des informations pour indiquer quels réseaux
on peut atteindre par eux. Les machines-routeurs enregistrent ces informations et
font la MAJ des tables de routage.
Il existe plusieurs protocoles pour échanger les informations de routage. On met alors les
machines en domaines.
Autonomous System (AS) : ensemble des machines qui ont la même politique de routage. (n°
à 16 bits, ex : CEA : 777, RNI renater : 1717)
ethernet
IP
UDP RIP
Le routeur diffuse la liste des réseaux qu’il peut atteindre avec une certaine distance (nb de
sauts). Les machines écoutent sur le port UDP 520. Les routages peuvent être actifs (émet,
reçoit) ou passifs (écoute seulement).
___________________________________________________________________
DI GALLO Frédéric Page 106/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Avantages du RIP :
- Très commun et très utilise (surtout au états unis).
- Permet de s’adapter automatiquement en cas de panne.
Inconvénients du RIP :
- Distance donnée comme seule info (pas le coût, ni la vitesse, la charge, le débit, ..)
- Distance max = 15. (16 = inaccessible).
- Pas de garantie sur l’origine des informations.
EGP :
AS routeur routeur AS
M2 M1
Pear neiggbour
(liaison point à point)
Messages échangés : - « es tu là ? »
- « oui je suis là »
- « envoies moi ta table de routage »
- « voici ma table de routage »
___________________________________________________________________
DI GALLO Frédéric Page 107/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
EXERCICE
A
APP
TCP
IP IP
LLC LLC X25.3
MAC MAC X25.2
Physique Physique X25.1
Réseau
X25
B
APP
TCP
IP IP
LLC LLC X25.3
MAC MAC X25.2
Physique Physique X25.1
Le datagramme émis par A contient 1300 octets de données. X25 n’accepte que des paquets
de 64 octets de données.
1) Décrire la suite des paquets transmis.
2) Calculer et comparer le volume.
___________________________________________________________________
DI GALLO Frédéric Page 108/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
EXERCICE
LAN 1
TCP/IP A
Gateway
LAN
1
TCP/IP B
___________________________________________________________________
DI GALLO Frédéric Page 109/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
7.3) Le Nommage
- Le système est arborescent. Le monde est découpé en domaines (ex :fr) au-dessus, il y
a ce qu’on appelle la racine(virtuelle).
.com .edu .mil .gov .arps .org .fr .uk .de .nd .du .jp …
isis compta
___________________________________________________________________
DI GALLO Frédéric Page 110/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Redondance : plusieurs serveurs possèdent dans leur mémoire ou dans des fichiers les même
informations.
Un serveur primaire contient la base d’information d’un domaine.
Cette base est mise à jour manuellement.
Des serveurs secondaires ont une copie avec MAJ automatique de la base d’information du
serveur primaire.
Æ il faut choisir correctement son serveur primaire et ses serveurs secondaires.
___________________________________________________________________
DI GALLO Frédéric Page 111/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
SYN
A Y
- Les scans systématiques de tous les ports d’une machine pour savoir lequel est associé à
un service (peut se détecter avec un journaliseur d’événement sur la machine : log).
- Sécurité logicielle :
Pour éviter que l’on puisse se connecter aux câbles, on chiffre les données (cryptage). Le
cryptage se fait par l’intermédiaire de boites de chiffrement.
IP IP
Chiffrement Déchiffrement
Réseau public
Le problème qui se pose le plus souvent c’est l’authentification de l’utilisateur (par calculette
(synchronisation avec un matériel), fond de l’œil, empreintes digitales, empreinte vocale).
___________________________________________________________________
DI GALLO Frédéric Page 112/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
COUCHE
TRANSPORT
___________________________________________________________________
DI GALLO Frédéric Page 113/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
___________________________________________________________________
DI GALLO Frédéric Page 114/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
I. DEFINITIONS
Cette couche garantie la bonne livraison des messages, sans erreurs, dans l'ordre et sans
pertes ni doublons. Cette couche reconditionne les messages pour en assurer une transmission
efficace sur le réseau. Coté réception, la couche transport désencapsule les messages,
rassemble les messages d'origine et émet un accusé de réception.
¾S’assure que les paquets sont reçus sans erreurs, dans l’ordre, sans perte ni duplication,
¾Découpe en paquet et réassemble.
¾Envoi d’un accuse de réception,
¾Contrôle le flux et gestion des erreurs.
La couche transport offre des services supplémentaires par rapport à la couche réseau.
Cette couche garantie que les données reçues sont telles qu’elles ont été envoyées. Pour
vérifier l’intégrité des données, cette couche se sert des mécanismes de contrôle des couches
inférieurs. Cette couche transport est aussi responsable de la création de plusieurs
connexions logiques par multiplexage sur la même connexion réseau. Le multiplexage se
produit quand plusieurs connexions logiques partagent la même connexion physique. La
couche transport se trouve au milieu du modèle OSI. Les trois couches inférieures forment le
sous-réseau, les trois couches supérieures sont implémentées par les logiciels réseau.
La couche transport est aussi implémentée sur les nœuds. Son travail consiste à relier un
sous-réseau non fiable à un réseau plus fiable. Dans les réseaux TCP/IP, la fonction de la
couche transport est assurée par le protocole TCP et par le protocole UDP. La couche
transport implémente le multiplexage dans lequel plusieurs éléments logiciels partagent la
même adresse de la couche réseau. Pour identifier sans erreur l’élément logiciel dans la
couche transport, un forme plus spécifique d’adresse est nécessaire. Ces adresses, appelées
adresses de transport, sont fournies par une combinaison de l’adresse de la couche réseau et
d’un numéro TSAP (Transport Service Access Point). Dans les réseaux TCP/IP, l’adresse de
transport porte le nom de numéro de port.
___________________________________________________________________
DI GALLO Frédéric Page 115/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
D’une manière générale ce sont les mêmes services que la couche réseau (Mode connecté
ou non, primitives, QoS…) mais avec des taux d’erreurs beaucoup plus faible.
___________________________________________________________________
DI GALLO Frédéric Page 116/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Quand j’envoie un paquet d’une certaine longueur, quelle est la probabilité qu’il soit
erroné. Sachant que la qualité de la ligne est de 10-3 (donc un caractère HS tous les milles).
On peut le faire de manière expérimentale (par simulation) pour voir le débit utile.
Voir ADSL pour les lignes téléphoniques avec ATM (petits paquets).
___________________________________________________________________
DI GALLO Frédéric Page 117/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
COUCHES
HAUTES
DU
MODELE
OS I
___________________________________________________________________
DI GALLO Frédéric Page 118/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
___________________________________________________________________
DI GALLO Frédéric Page 119/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
I. LA COUCHE SESSION
C’est la première des couches supérieures. On va donc travailler uniquement sur des
problèmes logiciels (protocoles…). Cette couche permet à 2 applications tournant sur
différents ordinateurs d'établir, d'utiliser et d'interrompre une connexion appelée session.
Cette couche procède à l'identification et assure des fonctions, telles que la sécurité,
nécessaire à l'établissement de la communication de deux applications sur le réseau. Cette
couche assure la synchronisation des taches utilisateurs. Elle permet également de contrôler
le dialogue entre deux processus de communication, de savoir d'ou vient la transmission, à
quel moment elle se produit, combien de temps elle dure.
La couche session gère les connexions entre les application coopérantes. Avec cette
couche, un utilisateur peut se connecter à un hôte, à travers un réseau où une session est
établie pour transférer les fichiers. La couche session offre les fonctions suivantes :
• Contrôle du dialogue,
• Gestion des jetons (le jeton dont il est question ici n’a rien à voir avec le jeton des
réseaux Token Ring. La gestion du jeton dans les réseaux Token Ring relève des
couches 1 et 2 du modèle OSI, alors que celui dont il est question ici relève du
niveau 5)
• Gestion de l’activité
En général, une session permet des communications full duplex, bien que certaines
applications se contentent d’une communication half duplex. La couche session peut fournir
une ou deux voies de communication (contrôle du dialogue).
Pour certains protocoles, il est essentiel qu’un seul côté lance une opération critique. Pour
éviter que les deux côtés lancent la même opération, un mécanisme de contrôle, comme
l’utilisation des jetons (cf. note plus haut), doit être implémenté. Avec la méthode du jeton,
seul le côté qui possède le jeton peut lancer une opération. La détermination du côté qui doit
posséder le jeton et son mode de transfert s’appellent la gestion du jeton.
Les réseaux TCP/IP ne possèdent pas de couche session, car certaines caractéristiques de
cette couche sont fournies par le protocole TCP. Les applications TCP/IP fournissent elles-
mêmes certains services. Par exemple, le service NFS comporte son propre service de la
couche session : le protocole RPC
___________________________________________________________________
DI GALLO Frédéric Page 120/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
But :
Le but est de fournir à la couche supérieure les moyens pour gérer le dialogue (et les
échanges de données). Sachant que les couches supérieures offrent des services orientés
« utilisateur », la couche session fournira des services à la couche « présentation ». Notons
que TCP/IP mélange les trois couches supérieures sans respecter vraiment le modèle OSI.
Particularités :
On utilise quatre jetons différents pour représenter les droits exclusifs qui ont été acquis
sur demande. Ceci afin d’utiliser des services critiques :
- Données
- Terminaison
- Synchronisation
- Gestion d’activité
On utilise des point de synchronisation qui permettent de structurer un échange de
données en dialogue, ils peuvent être majeurs (acquittés) ou mineurs (non acquittés).
Principale fonction :
Etablir des connexions qu’on appelle des sessions et on y transfère les données dans le bon
ordre. Notons que TCP/IP est un peu le mélange de la couche transport et de la couche
session.
Session
Transport
(1) (2) (3)
___________________________________________________________________
DI GALLO Frédéric Page 121/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Synchronisation :
Session
1 2 3 4 5 6
points de synchronisation
Si vous transférez un fichier pendant une heure entre deux machines, et qu’une panne
réseau intervienne au bout de trente minutes, vous ne pourrez reprendre le transfert là où il
s’était arrêté. Il vous faudra toujours reprendre le transfert à son début. Pour éviter cela, vous
pouvez traiter tout le fichier comme une seule activité et insérer des points de vérification
dans le flot de données. Ainsi, si une coupure survient, la couche session synchronisera à
nouveau le transfert, à partir du dernier point de vérification transmis. Ces points de
vérification s’appellent « points de synchronisation ». Il en existe deux types : majeurs et
mineurs.
Un point de synchronisation majeur est inséré par un des côtés doit recevoir un accusé de
réception de la part de l’autre côté, alors qu’un point de synchronisation mineur n’a pas
besoin d’être vérifié par un accusé de réception. La session comprise entre deux points
majeurs s’appelle une unité de dialogue. La gestion de toute l’activité s’appelle une gestion
d’activité. Une activité consiste en une ou plusieurs unités de dialogue. Chaque point de
synchronisation possède un numéro de série d’où reprend la session en cas de rupture. Les
dialogues correspondent à des activités…
dialogue dialogue
1 2 3 4 5 6
synchro. mineure
synchronisation majeure
___________________________________________________________________
DI GALLO Frédéric Page 122/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Demande
CLIENT SERVEUR
Réponse
Dans l’appel de procédure à distance (RPC :Remote Procedure Call), un message envoyé
est considéré comme un appel de sous programme. On peut inclure le RPC dans le langage
lui même (langage développement). Les détails de fonctionnement du réseau sont cachés, ils
sont inclus dans des procédures locales (STUBS).
1 4
Client STUBS STUBS Serveur
8 5
7 2 3 6
couches 1 à 4 couches 1 à 4
• passage des paramètres : par valeur, par adresse locale non significative ou par URL
(Unique Ressource Location).
• pannes du client ou du serveur : nombreux cas particuliers d’erreurs.
• protocole utilisé : exactly once (panne), at most once, at least once.
___________________________________________________________________
DI GALLO Frédéric Page 123/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
___________________________________________________________________
DI GALLO Frédéric Page 124/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Elles ne servent à rien, car il n’y a rien à faire (pas de contrôle à faire = pas de jeton à
gérer).
2) La couche session à des données express, que deviennent elles dans les couches
inférieures ?
Cela dépend. Soit elles sont véhiculées par les services transport, soit elles sont
transformées en données normales (si la couche transport n’est pas disponible).
3) Une application d’interrogation d’une base de données est programmée avec le protocole
question-réponse. On est obligé d’attendre la réponse pour poser une nouvelle question.
A quelles unités fonctionnelles de session peut-on faire appel ?
4) Un processus client envoi via un RPC une requête qui se traduit au niveau du serveur par
la création d’un processus fils pour réaliser le traitement et renvoyer le résultat au
processus client qui est son père. Que se passe-t-il si la machine client tombe en panne ?
Donner une méthode sure pour exterminer les orphelins au niveau du serveur .
Présence d’orphelins sur la machine : le client re-fonctionne au bout d’un temps, comme
sur le serveur les requêtes ont un numéro d’identifiant, le client interroge le serveur pour
savoir si il y a des requêtes. Si oui, il demande de les supprimer. On peut aussi prévoir des
time-out pour les requêtes.
___________________________________________________________________
DI GALLO Frédéric Page 125/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
applications (traducteur). Elle redirige les données par le redirecteur. Elle est responsable de
la conversion des protocoles, l’encodage des données et la compression.
Il faut décrire les structures de données (grâce à ASN1 ISO 8824, 8825 : codage). Elle
assure aussi la manipulation de données notamment pour des raisons de sécurité
(chiffrement), ou de gain de rentabilité (compression).
Cette couche n’est qu’un filtre. Les demandes de connexion (par exemple) passent telles
qu’elles (sans être traitées à ce niveau). Le contexte est le structure de données nécessaires
pour assurer le fonctionnement de la couche présentation.
C’est la description des données dans le langage ASN-1 (Abstract Syntax Notation). On ne
fait pas d’hypothèse sur la représentation des données.
commentaire
___________________________________________________________________
DI GALLO Frédéric Page 126/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
INTEGER entier ≥0
REAL réel
BOOLEAN vrai ou faux TRUE/FALSE
BIT STRING suite de bits
OCTET STRING suite de caractères ordonnés Pas de longueur maxi
ANY n’importe quel type Réunion de tous les types
NULL sans type complément de ANY
OBJECT IDENTIFIER nom d’objet
Entier : pas de limite à la taille maximum, valeur énumérées (janvier = 1, février = 2, …).
Suite de bits : ‘01001101’ B au lieu de ‘4D’ H
ANY : on reporte à plus tard le type de données (considéré comme la réunion de tous les
types).
NULL : complément de ANY. Une seule valeur possible (abstraite) : NULL
Quand une connexion est établie, la couche présentation est responsable d’une
négociation qui permet de « synchroniser » les représentations pour se mettre d’accord sur la
syntaxe abstraite utilisée. Tous les éléments sont des objets identifiés par leur OBJECT
IDENTIFIER.
Liste-PDU: := SEQUENCE {
Nom-syntaxe-transfert OPTIONAL,
Identificateur-contexte-presentation : := CHOICE {
Type-ASN1-unique [0] ANY,
Aligné –octet [1] IMPLICIT OCTET STRING,
Arbitraire [2] IMPLICIT BIT STRING }
} (séquence)
___________________________________________________________________
DI GALLO Frédéric Page 127/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
3) le champ de données
Ex : données utiles
4 F 8 0
0100 1111 1000 0000
Ce qui donne 03 01 4F 80 (en hexa).
Longueur des données contrôle (combien de bits utiles
dans le dernier
octets)
Pour les chaînes de caractères : transmis tel quel avec poids fort en tête. La valeur NULL
est indiquée par un champ de données de longueur nulle.
___________________________________________________________________
DI GALLO Frédéric Page 128/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
nbauteur = 4 BOOLEAN = 1
disponible = true (n’importe quoi sauf 0) OCTET STRING = 4
nbpages = 280 SEQUENCE = 16
nbexercice = 75
pot = true
On suppose qu’il s’agit d’étiquettes UNIVERSAL. Code ASCII avec parité impaire :
T O M E 2
54 4F 4D 45 20 32
01010100 01001111 01001101 01000101 00100000 00110010
TOME 2 Æ 04 06 54 4F CD 45 A0 32
4 Æ 02 01 04
true Æ 01 01 01
280 Æ 02 02 01 18
75 Æ 02 01 4B
private 16
Longueur = 24 =0x18 = FO 18
La famille Teres est composée de 6 personnes, toutes passionnées de jeux sur ordinateur
individuel. On souhaite créer un fichier pour stocker les meilleurs scores sous forme
d’enregistrements :
¾Prénom
¾Jeu (libellé alphanumérique + code hexadécimal)
¾Niveau (de 1 à 4)
¾Dernier score obtenu (de 1 à 99 999).
1) Donner un exemple de représentation en ASN.1 pour spécifier la structure de chaque
membre puis la liste entière de ses membres.
Joueur_TERES : : SEQUENCE {
Prenom OCTET STRING,
Jeu_prefere jeu,
Niveau INTEGER (1..4),
Dernier_score INTEGER (1..99999),
Date GENERALIZEDTIME }
Jeu : : SEQUENCE {
Libelle OCTET STRING,
Code OCTET STRING, }
___________________________________________________________________
DI GALLO Frédéric Page 129/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
2) « Initialiser » un membre.
Il suffit de créer une structure chat et on mettra dans « Famille_TERES » un CHOICE entre
Joueur_TERES et chat.
Information
Calcul
information
Stockage
N
Σ Pi log2 Pi avec N = nb de symboles
i=1 Pi = probabilité d’occurrence du symbole i
entropie par symbole
Code de Huffman
___________________________________________________________________
DI GALLO Frédéric Page 130/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Ce codage fonctionne bien s’il y a une équiprobabilité d’occurrence des symboles. C’est
un codage spécifique au jeu de données. Déroulement :
1. Ecrire la liste de tous les symboles et leur probabilité d’occurrence.
2. Construire un arbre binaire dont les symboles sont les nœuds terminaux.
3. Trouver les deux plus petits nœuds (plus faible probabilité d’occurrence) et les
marquer.
4. Construire ensuite un nouveau nœud avec 2 axes qui permettent d’atteindre les
nœuds. La probabilité de ce nœud est la somme des probabilités des nœuds
connectés.
5. Répéter les étapes n°3 et 4 jusqu'à ce que tous les nœuds soient marqués sauf un.
6. Le nœud non marqué est la racine de l’arbre, et sa probabilité est égale à 1.
7. Le codage de chaque symbole correspond au chemin à parcourir depuis la racine
jusqu'à ce symbole en mettant à chaque fois les embranchements (droite = 1 et
gauche =0). Le code d’un mot est donc le chemin obtenu.
Ph = Pi + Pj
Pi Pj
Pourcentage d’occurrence :
E R S A T L I N P
24% 18% 15% 10% 8% 8% 6% 5% 4% 2%
00 01 100 1010 1011 1100 1101 1110 11110 11111
1) Construire l’arbre et coder les différentes lettres. Quelle est la longueur moyenne du
code ? Comparer avec un code de longueur fixe. Comparer avec la longueur minimale
théorique.
S A L I T N P E R
24 10 8 6 5 8 4 2 18 15
18 11 6 33
42 14
25
58
Gauche Æ 0
Droite Æ 1
100
___________________________________________________________________
DI GALLO Frédéric Page 131/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
3,07
Ce codage est plus particulièrement utilisé pour coder des chaînes qui contiennent des
longues plages de 0 ou bien des répétitions de plages. Chaque symbole de k bits indique
combien de « 0 » séparent deux « 1 » consécutif. Ex : 111111 AAAAA BBBBB. Dessins N&B
au trait…
000100000010010000000000000001000001000100000011010000101
3 6 2 15 5 3 6 01 4 1 (plage de zéros)
011 110 010 111111001 101 011 110 000 001 100 001
3 6 2 15 5 3 6 0 1 4 1
Notons que le chiffre 7 serait représenté par 111 00 car 111 indique que la plage suivante
fait partie de la même suite.
1) Utiliser un codage par plage avec 4 bits et coder la suite. Quel est le gain ?
16 15 14 1 0 0
1111 0001 1111 0000 1110 0001 0000 0000
___________________________________________________________________
DI GALLO Frédéric Page 132/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Avant nous avions : 16+1+15+1+14+4 = 51 bits. Et après codage, nous avons : 6x4=28 octets.
Une application bancaire transfère 100 000 transactions chaque jour de la succursale vers
le siège. Chaque transaction comporte :
¾L’entête : 4 octets
¾Le type : 1 octet
¾Le numéro : 10 octets (entier positif)
¾Le montant : 10 octets (entier positif)
¾Le code banque : 8 octets (entier positif)
¾La date & heure : 5 octets
¾Les infos bancaire : 400 octets (texte de a-z, A-Z et espaces)
¾Et la clef : 4 octets
Le codage est ASCII et se fait sur 8 bits. L’enveloppe globale X.25 – LAP.B est de 20
octets. Le débit binaire est de 9600 b/s et chaque paquet contient 512 octets au maximum.
1) Calculer le temps de transmission total.
Une transaction est donc composé de 442 octets. On peut faire des paquets de 512-20=492
octets. Si l’on prend une transaction par paquet, on doit donc faire des paquets de
442+20=462 octets minimum. Le codage étant sur 8 bits et le débit étant de 9600 b/s cela
donne : 462x8/9600=385 ms par paquet. Soit 38 500 s = 10,7 heures au total pour tout
transmettre.
2) Chaque minute revient à 50 cts. Quel est donc le coût total de la transmission ?
On peut compresser les données « infos bancaire » (pour ne pas devoir décompresser toute
la transaction à chaque fois, on connaît « l’identité » de la transaction). Mais cela dépendra
beaucoup de type des données de ce champ.
___________________________________________________________________
DI GALLO Frédéric Page 133/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
- Le processus d’application (AP) est la représentation abstraite des éléments d’un système
(programme écrit par exemple).
- L’activité d’un processus (un programme qui s’exécute) (API : Application Process
Invocation) est représenté par une invocation de processus d’application.
Un processus d’application peut être fabriqué à partir d’autres processus communicants.
- Un processus d’application peut être coupé en 2 parties :
- locale (calcul) et spécifique d’un système.
- Partie communicante représentée par une EA (Entité d’Application).
- Une EA n’est attachée qu’à un seul processus d’application (AP) mais un processus
d’application peut compter plusieurs EA.
AP1 AP2
EA EA
___________________________________________________________________
DI GALLO Frédéric Page 134/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Couche présentation
- L’activité d’une EA est représentée par une invocation d’entité d’application (AEI :
Application Entity Invocation) qui modélise les fonctions de communication particulières
d’une API.
- Les EA comportent un ensemble d’éléments de service d’application (ASE : Application
Service Element).
Connexion établie entre deux AEI. Une AA ne peut être créée que après l’activation des
deux AE correspondants.
Entité d’application
ASEn
fonction de contrôle
d’association ASE1 association d’application (socket)
simple
ASE
SAO (Single Association Object) : ensemble des fonctions et des informations de contrôle
relatives à une association.
Un SAO (objet d’association simple) contient des informations sur la combinaison d’ASE qui
est utilisée dans le cadre d’une association. La collaboration entre ASE à l’intérieur d’un SAO
est régie par des règles internes (SACF : fonction de contrôle des associations simples).
___________________________________________________________________
DI GALLO Frédéric Page 135/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Primitives :
- A-ASSOCIATE : service confirmé comprenant une requête, une indication, une réponse
et une confirmation.
- A-RELEASE : service confirmé avec fermeture de connexion sans perte.
- A-U-ABORT : (U : user) service non confirmé, libération brutale avec perte.
- A-P-ABORT : (P : Provider) service non confirmé, rupture de liaison brutale avec perte
3.4) RTSE
RT-OPEN.rq RT-TRANSFER.rq
RTSE
Couche application
EXERCICE
association d’application
connexion de présentation
7 A 7 A
6 P 6 P
___________________________________________________________________
DI GALLO Frédéric Page 136/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
EXERCICE
A-ASSOCIATE
APDU
Ces informations sont replacées dans la requête P-CONNECT puis vers S-CONNECT
R :dans le cas half duplex, il faut savoir qui va commencer le dialogue. Il faut donc gérer le
jeton dès le niveau application.
___________________________________________________________________
DI GALLO Frédéric Page 137/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
c) modèle hiérarchique
répertoire
fichiers
Phase d’association
Phase d’ouverture
Phase de transfert
___________________________________________________________________
DI GALLO Frédéric Page 138/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
F-read F-transfert
F-write end
f-open f-close
f-select f-deselect
ou f-create ou f-delete
f-initialize f-
terminate
* Primitives de FTAM
- F-locate : déplacement d’un pointeur FADU (File Access Data Unit = répertoire)
___________________________________________________________________
DI GALLO Frédéric Page 139/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Agent utilisateur
UA UA
MTA
Environnement OSI
___________________________________________________________________
DI GALLO Frédéric Page 140/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Racine
Entrée d’objet
- Accès à l’annuaire
DUA
DB
DSA DSA DSA
BD DSP
OSI
Autres applications
___________________________________________________________________
DI GALLO Frédéric Page 141/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Une autre norme a été définie autour de EDI : EDIFACT Æ ISO 9735
(Electronic Data Interchange For Administration Commerce & Trade)
- Traitement réparti ouvert : ODP (Open Distributed Processing)
Pour faire du // sur un réseau
- Modèle d’applications Bureautique distribuées
DOAM (Distributed Office Application Modele)
- Traitement transactionnel : TP (Transaction Porcessing)
Norme OSI TP (ISO 10026)
- Terminal virtuel (ex : telnet) : VT
- Tests de conformité de protocole
ISO 9646
TTCN (Tree Tabular Combined Notation)
Décrit une suite de tests pour vérifier la conformité d’un produit aux normes ISO.
___________________________________________________________________
DI GALLO Frédéric Page 142/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
PROCESSUS
ET
APPLICATIONS
REPARTIES
___________________________________________________________________
DI GALLO Frédéric Page 143/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
___________________________________________________________________
DI GALLO Frédéric Page 144/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
I. INTRODUCTION
Que ce soit dans une machine, un système ou un réseau, on peut distinguer
3 composants : un serveurs, des clients et des ressources. On introduit alors les
processus (activité indépendante). Un processus est l’exécution d’un programme
ou plus précisément la suite temporelle d’exécution (interprétation)
d’instructions. Un processeur est un dispositif qui permet à un programme de
s’exécuter.
Utilisation du processeur
Lire info Lire info
P1
Modification Modification
écrire écrire
P2
Opérateur 1 Opérateur 2
P3
temps
¾Vecteur d’état d’un processus : ensemble des variables et procédures qu’il peut utiliser.
¾Point observable : instant où l’on peut observer l’état d’un processus.
¾Ressource : ce qui est nécessaire à un processus pour fonctionner (Ex : mémoire, un
processeur, une information, un périphérique…).
¾Les différents états d’un processus :
- Actif : le programme à tout ce qu’il faut pour fonctionner.
- Bloqué : en attente de ressources pour continuer (Ex : un processus P fait un calcul
et range le résultat dans un buffer. Q ne peut continuer que si le buffer est rempli).
___________________________________________________________________
DI GALLO Frédéric Page 145/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
¾Accès au ressources :
- Locale : n’est utilisé que par ce processus.
- Commune : partageable avec n point d’accès.
¾Pouvoir d’un processus : ensemble d’infos qui lui définissent ses ressources accessibles.
¾Identité d’un processus : information qui permet de le repérer.
¾Synchronisation : - Interactions entre processus (Ex : libération des ressources).
- Notification par les processus eux même.
¾Communication : - Echange de résultats intermédiaires.
- Echange d’états.
ex : CU sous Unix (émulation terminal).
Exemples :
¾Une imprimante est disponible et plusieurs personnes veulent l’utiliser. Le premier doit
finir d’imprimer avant que le second ne puisse s’en servir.
Intervalle critique
___________________________________________________________________
DI GALLO Frédéric Page 146/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Pour gérer une exclusion mutuelle, il faut respecter ces quatre règles élémentaires :
a) A tout instant, un processus et un seul (au plus) peut se trouver en section critique.
b) Si plusieurs processus sont bloqués en attente de la ressource critique, alors qu’aucun
processus ne se trouve en section critique, l’un d’eux doit pouvoir y entrer au bout d’un
temps fini (ceci pour éviter les éventuels blocages).
c) Si un processus est bloqué en dehors d’une section critique, il ne doit pas empêcher
l’entrée d’un autre processus dans cette section critique.
d) La solution doit être la même pour tous le processus (aucun processus ne doit jouer de
rôle privilégié).
S’il existait une fonction d’exclusion mutuelle (section critique), la suite d’instructions serait :
début
entrée
section critique
sortie
fin
Pour cela, il faut déclarer une variable P commune aux processus ayant pour valeur 0 ou 1
(booléen) suivant que la ressource est libre ou occupé. Un processus doit consulter P et le
remettre à zéro après usage. Il faut savoir qu’il existe (depuis 1980) une instruction en code
machine indivisible : Test And Set (TAS) qui recolle 2 instructions atomiques pour en faire
une indivisible. On appelle aussi cela une solution universelle sur machine monoprocesseur.
Machines multiprocesseurs :
___________________________________________________________________
DI GALLO Frédéric Page 147/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
interruption Bi-processeur : pendant que P1 traite les
cache instructions, P2 regarde en mémoire. C’est
P2 P1 P3 P4 processeur
donc facile à réaliser.
Machines en réseau :
Les ressources (processeurs) sont banalisées. Actuellement, les calculs sont répartis sur une
centaines de machines pour avoir une puissance de 70-80% de la puissance totale. Il vaut
mieux avoir un protocole avec des transmissions de messages plutôt que de la mémoire
partagée etc… On execute un sous programme ou un morceau du programme en autonomie
sur une des machines avec seulement le passage des paramètres et des résultats par le réseau.
Un verrou est un mécanisme qui permet de contrôler l’accès à une ressource critique. Les
verrous sont constitués d’une variable P et d’une file d’attente f(P). On accède à cette variable
par deux primitives :
Au départ : P=0.
Verrouiller (P) : si P=0 alors P=1
sinon mettre P1 dans la file d’attente f(P).
(ce qui le fait passer à l’état bloqué)
On a une machine dédiée qui n’accepte qu’une communication à la fois, ce qui permet
d’enchaîner les processus. (Avec des moniteurs par exemple…)
Paquets réseau :
P3 P2 P7 P5
___________________________________________________________________
DI GALLO Frédéric Page 148/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
3.1) Définitions
Un sémaphore « s » est constitué d’une variable entière e (s) et d’une file d’attente f (s)
avec e(s) ∈ Z (positif ou négatif), c’est la valeur du sémaphore. On ne fait pas d’hypothèse
sur la gestion des files d’attente. Un sémaphore est créé par une déclaration qui précise la
valeur initiale e0(s) (nécessairement une entier non négatif). Il correspond aussi au nombre de
ressources à gérer. f(s) est toujours vide à la création. On a deux opérations (primitives,
méthodes, appels systèmes) indivisibles de base :
___________________________________________________________________
DI GALLO Frédéric Page 149/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
…instructions…
Exemple d’utilisation :
P1 P2
Producteur Lecteur de
de messages messages
P1 P2
A l’intérieur d’une section critique (si l’on a P(mutex) au début et V(mutex) à la fin), il
ne faut jamais mettre un autre P(…) sous risque d’interblocage avec un autre procesus. Dans
un réseau, on sort d’un interblocage au bout d’une temporisation (reste à la configurer
correctement selon les temps des processus).
P1 : P2 :
P(mutex) P(mutex)
P(RC) P(RC) (blocage car si RC est déjà prise,
V(mutex) V(mutex) il ne fera jamais le V(mutex))
V(RC) V(RC)
___________________________________________________________________
DI GALLO Frédéric Page 150/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
L’implémentation des mécanismes de type sémaphore sur un réseau permet de limiter une
quantité de ressource. En fait, le P(s) est exécutable par le propriétaire mais le V(s) est
exécutable par tout le monde. Pour gérer l’exclusion mutuelle, il faut dédier une machine (le
notaire) pour gérer des sémaphores. Cela garantit l’unicité (une machine) et l’atomicité de P
et V (mécanisme de socket).
Chaque opération sur sémaphore correspond à l’établissement d’un socket, puis l’échange
de message et enfin la fermeture du socket (tube de communication):
- Création, initialisation (requête sur le réseau),
- P(…)
- V(…)
- Destruction.
Tube de communication
C’est une sorte de producteur / consommateur avec contrôle de flux. La longueur du tube
dépend de la taille du buffer. On y fait transiter un jeton. Les lectures sont bloquantes s’il n’y
a rien dans le tube, du coup la file d’attente est celle du système ou de réseau.
stock de
jeton V(s)
On peut résumer l’implémentation d’un sémaphore à l’aide d’un socket dans ce tableau :
___________________________________________________________________
DI GALLO Frédéric Page 151/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Rendez-vous ADA :
Plus principalement dans les systèmes de programmation plutôt que dans les réseaux.
Seules opérations indivisibles : affectation d’une valeur à une variable, et test d’une valeur.
Pi : i = 1 ou 2 j = 3-i
Contexte commun : booléen : c = faux ; (ressource libre)
début
Ai : si c alors aller à Ai (ne marche pas si Pi est interrompu à ce moment là)
c = vrai (car i et j rentrent en section critique en même temps)
section critique (ce n’est pas une instruction atomique).
c = faux
reste du programme
aller à Ai
fin
CELA NE MARCHE PAS
___________________________________________________________________
DI GALLO Frédéric Page 152/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
reste du programme i
aller à Ai
priorité (c’est mon tour ?). En cas de conflit (si c[1] = c[2] = vrai) les 2 processus
s’engagent dans une séquence d’attente où t garde une valeur constante. Pi annule sa
demande si i≠t en faisant c[i] = faux. Pi attend ensuite que t passe à i avant de refaire
sa demande.
Solution de Dekker :
Pi : Ai : c[i] = vrai
Li : si c[j] alors
si t=i alors aller à Li
sinon c[i] = faux
Bi : si t=j alors aller à Bi
aller à Ai
section critique
t=j ;
c[i] = faux
reste du programme
Aller à Ai
1. Définir un algorithme qui soit le même pour chaque philosophe et qui respecte ces
contraintes (on repère les philosophes par i modulo 5) :
- Les philosophes mangent à tour de rôle.
- Il faut 2 fourchettes pour manger.
- Quand on ne mange pas, on laisse la fourchette sur la table.
2. Ecrire l’activité ϕi
___________________________________________________________________
DI GALLO Frédéric Page 154/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
L’état des philosophes sera représenté par un tableau de 5 variables c[0..4] avec :
c[i]=0 lorsqu’il
pense (il n’utilise pas de fourchette),
c[i]=1 lorsqu’il
voudrait bien manger mais ne peut pas par manque de fourchette,
c[i]=2 lorsqu’il
mange (il a donc les deux fourchettes).
Le passage de l’état 0 à l’état 2 n’est possible que si {c[i+1]≠2} et si {c[i-1]≠2}. (condition
« section critique » donc protégé par un sémaphore mutex). Si cette condition n’est pas réalisée c[i]=1
et le ϕ se bloque. En fait, pour bloquer les philosophes, le tableau sempriv[i] sera initialisé à
O donc sempriv[0..4] = 0. (Seul le propriétaire peut se bloquer mais n’importe qui peut le débloquer). Le
sémaphore d’exclusion mutex sera initialisé à 1.
B1 : P(mutex)
si { (c[i+1] ≠ 2) et (c[i-1] ≠ 2) }
section alors c[i] = 2
critique V(sempriv[i]) (Je me débloque de façon préventive)
sinon c[i] = 1
V(mutex)
P(sempriv[i]) (Si on a pas fait le V(sempriv), on se bloque juste en attendant notre tour)
Action exécutée par le philosophe i qui a fini de manger (provisoire) et rend les fourchettes :
Le passage de l’état c[i]=2 à 0 entraîne le réveil des philosophes i+1 et i-1 à deux conditions :
- ils ont l’intention de manger donc c[i-1] = 1 ou/et c[i+1] = 1,
- ils ont l’autre fourchette donc c[i+2] ≠ 2 ou/et c[i-2] ≠ 2.
B2 : P(mutex)
c[i] = 0
si { (c[i+1] = 1 ) et (c[i+2] ≠ 2) }
section alors c[i+1] = 2
critique V(sempriv[i+1])
si { (c[i-1] = 1 ) et (c[i-2] ≠ 2) } (Pour réduire la longueur de la section critique, on peut
alors c[i-1] = 2 mettre V(mutex) et P(mutex) avant cette ligne)
V(sempriv[i-1])
V(mutex)
Remarque :
La suite (0,3) ; (0,2) ; (4,2) ; (0,2) ; (0,3) ; … est possible (le 1 ne mangera donc jamais)
car on ne garantit pas que tous les philosophes mangeront. Pour cela, il faudrait introduire
des sémaphores pour la gestion de la file d’attente. Par exemple, en FTP, on essaye de
répartir la charge de la bande passante du réseau.
___________________________________________________________________
DI GALLO Frédéric Page 155/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
LECTEUR REDACTEUR
LECTURE ECRITURE
1er cas) Priorité des lecteurs sur les rédacteurs, sans réquisition (variable d’état).
C’est uniquement lorsqu’il n’y a plus de lecteur en train de lire que le rédacteur peut
écrire. Soulignons que les lecteurs ont donc toujours la priorité sur les rédacteurs.
plus aucun lecteur ne lit et ne veut lire donc le rédacteur peut écrire
Lecteurs
rédacteur
demande d’écriture
LECTEUR
___________________________________________________________________
DI GALLO Frédéric Page 156/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Si nl = 0 alors P(w) (s’il n’y avait pas de lecteur présent : on protège l’accès rédacteur fichier)
nl = nl + 1 (on incrémente le nombre de lecteurs qui occupent le fichier)
V(lmutex) (on libère la variable nl)
Lecture (on fait la lecture dans le fichier)
P(lmutex) (on protège la variable nl)
nl =nl -1 (on décrémente le nombre de lecteurs qui occupent le fichier)
Si nl = 0 alors V(w) (s’il n’y a plus de lecteur présent : on libère l’accès rédacteur au fichier)
V(lmutex) (on libère la variable nl)
REDACTEUR
Remarque : Dans le cas présent, la priorité des lecteurs n’est évidemment pas respectée.
2ième cas) Priorité des lecteurs sur les rédacteurs (sans sémaphore privé).
C’est à dire une priorité des lecteurs sur les rédacteurs si et seulement si un lecteur occupe
déjà le fichier. Il suffit donc de faire la même chose que dans le premier cas mais sans
sémaphore privée (pas de variable rmutex). Ce qui donne pour le processus du rédacteur :
REDACTEUR
LLLLRLLRR LLLLR
LECTEUR
___________________________________________________________________
DI GALLO Frédéric Page 157/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Si nl = 0 alors P(w) (s’il n’y avait pas de lecteur présent : on protège l’accès rédacteur fichier)
nl = nl + 1 (on incrémente le nombre de lecteurs qui occupent le fichier)
V(lmutex) (on libère la variable nl)
V(Rmutex) (on libère la file d’attente commune rédacteur - lecteurs)
Lecture (on fait la lecture dans le fichier)
P(lmutex) (on protège la variable nl)
nl =nl -1 (on décrémente le nombre de lecteurs qui occupent le fichier)
Si nl = 0 alors V(w) (s’il n’y a plus de lecteur présent : on libère l’accès rédacteur au fichier)
V(lmutex) (on libère la variable nl)
REDACTEUR
Dès qu’un rédacteur demande l’accès au fichier, il doit l’obtenir dès que possible. S’il
arrive après les demandes de lecteurs, il est prioritaire (en fait, la file d’attente des
rédacteurs est prioritaire sur celle des lecteurs). C’est à dire que l’on bloque toutes les
nouvelles demandes mais on laisse les processus actifs se terminer.
LECTEUR
On aura un seul lecteur à la fois qui réservera le fichier pour garantir la file des rédacteurs.
___________________________________________________________________
DI GALLO Frédéric Page 158/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
REDACTEUR
___________________________________________________________________
DI GALLO Frédéric Page 159/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
TRAVERSEE 1 TRAVERSEE 2
CHANGEMENT
___________________________________________________________________
DI GALLO Frédéric Page 160/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
CHANGEMENT
On n’a pas besoin de se protéger contre les dead lock puisqu’on a qu’un processus changeant.
a
S (a, b) P (a, b) a b
b point d’attente
a b c d
___________________________________________________________________
DI GALLO Frédéric Page 161/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
P1 P1
P1
P3 P2 P5
P1 P2 P6 P4 P7
P2 P2 P4
P3 P4 P5 P3 P6
P3 P8
P7 P8
P2
___________________________________________________________________
DI GALLO Frédéric Page 162/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Sémaphore sérieP1P2 = 0
P1 P (sérieP1P2)
V (sérieP1P2) P2
S (P1, P2) = { sémaphore sérieP1P2 ; spaw (P1, V (sérieP1P2)) ; spaw (P (sérieP1P2), P2)}
P (a, b) = { sémaphore a=0 ; sémaphore b=0 ; spaw (a ; V(b) ; P(a) ) ; spaw (b ; V(a) ; P(b) ) }
Soit les sémaphores : x3, x4, x5, x60, x61, x71, x72, x80, x81 = 0.
P(x61)
P(x3) P(x60)
P2 P3 P4 P5 P6
V(x3) V(x71) V(x80) V(x81) V(x72)
V(x4) P(x72) P(x81) P(x80) P(x71)
V(x60) V(x61)
Facultatif car même
rôle que V(x60)
- Modèle client-serveur et établir des canaux de communication entre les clients et le serveur.
- Inventé par UNIX BSD.
- S’appuie sur TCP ou UDP, appletalk, IP, X25…
- Communication bidirectionnelle.
- Transmission des données paramétrables : flots, paquets, datagrammes.
-
serveur
programme
IP CLIENT
Port
CLIENT
programme
CLIENT
___________________________________________________________________
DI GALLO Frédéric Page 163/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
SERVEUR CLIENT
(connecteur) Socket Socket( ) (fabrication du dispositif
qui permet une
connexion)
Read
(mise en place de la file Listen(s,n) Write
d’attente)(n=longueur de
la file d’attente)
Ce programme teste les ports qui répondent sur une machine (il utilise des sockets).
main (int argc, char *argv[ ]) (argc : nbre de paramètres passés ; argv : tableau de paramètres)
{ int i;
int s;
struct sockaddr_in sin;
struct hostent *p;
rantanp1an:~/slide/sys4> ./scan
7
9
11
13
15
19
21
23
37
79
111
…
main ( )
{
___________________________________________________________________
DI GALLO Frédéric Page 165/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
int s;
struct sockaddr_in Sm;
___________________________________________________________________
DI GALLO Frédéric Page 166/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Ce programme illustre l'utilisation des sockets. Il est le client d'un système de synchronisation
des horloges sur différentes machines.
{ float t=0;
int i;
char buf[l00];
struct timeval tl,t2,ref;
struct timezone zl,z2;
for (i=0;i<l0;++i) (on mesure le temps d’aller-retour pour synchroniser le réseau : dix fois)
{ gettimeofday (&tl, &zl);
write (s, "s", l) ;
read (s, buf, l) ;
gettimeofday (&t2, &z2);
t+=VAL (t2)-VAL (tl) ;
}
t/=l0.0; (fait la moyenne pour avoir le délai du décalage horaire et mettre en synchro par settimeofday)
printf (délai moyen : %f (seconde)\n", t);
**** Maintenant, on récupère l'horloge du serveur ***
write (s, "t", l) ;
read (s, (char *)&ref, sizeof (struct timeval)) ;
gettimeofday(&tl, &zl);
printf ("temps du serveur : %.3f\n",VAL (ref)+t);
printf ("temps local : %.3f\n",VAL (tl)) ;
}
}
rantanplan:~/slide/sys4> . /timeclient
pas moyen de se connecter au serveur de temps: Connection refused
rantanplan:~/slide/sys4> . /timeserver
Suspended
rantanplan:~/slide/sys4> bg
[1] ./timeserver &
rantanplan: ~/slide/sys4>
rantanplan: ~/slide/sys4>
rantanplan: ~/slide/sys4> ./timeclient
delai moyen : 0.001172 (seconde)
temps du serveur : 843685406.588
temps local : 843685406.588
rantanplan:~/slide/sys4> ./timeclient
delai moyen : 0.001157 (seconde)
temps du serveur : 843685410.728
temps local : 843685410.728
rantanplan: /slide/sys4>
___________________________________________________________________
DI GALLO Frédéric Page 168/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
SNA
&
OSI / DSA
___________________________________________________________________
DI GALLO Frédéric Page 169/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
SNA ET OSI/DSA
Architectures propriétaires
I. SNA
La plus utilisée dans le monde il y a encore 2 ou 3 ans.
Usager
___________________________________________________________________
DI GALLO Frédéric Page 170/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Usager
- Les NAU sont les seules entités capables d’établir une connexion :
Æ LU (logical unit) : présentation et session.
Æ SSCP (System Service Control Point) : gère ressource d’un réseau ou d’un sous
réseau.
Æ PU (physical unit).
- Les usagers communiquent à travers des LU.
- Le responsable des ressources physiques et logiques du réseau est le centre directeur SSCP.
- Le SSCP (Mainframe) gère les ressources du domaine ainsi que toutes les connexions
(architecture centralisée, en étoile).
session LU
Demande d’un PLU (Primary Logical Unit) au SSCP, le SSCP vérifie et demande au SLU
(Secondary logical unit) la connexion. Etablissement (quand les deux sont d’accord).
___________________________________________________________________
DI GALLO Frédéric Page 171/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Les TP (Transaction Program) communiquent quand les deux LU sont en session. Le dialogue
entre TP est appelé « conversation ».
TP A TP Ω
Initiateur Agent
SYNCPT
RECEIVE
PREPARE
(Æ TAKE-SYNCPT)
SYNCPT
Commited
Forget
OK OK verbes émis
___________________________________________________________________
DI GALLO Frédéric Page 172/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Structure distribuée
Conclusion
II. DSA
- Dernière version des systèmes repartis proposes par BULL.
- Conforme au découpage du modèle OSI de la norme ISO
- Juin 1976.
- Construit autour des datanets : famille de machines réseau.
3) 1989 Æ
- Les normes ISO des 7 couches sont progressivement intégrées dans l’architecture.
___________________________________________________________________
DI GALLO Frédéric Page 173/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
2.4) Conclusion
Misé dès le départ sur l’ouverture des réseaux , évolution par remplacement des protocoles
propriétaires par équivalent OSI.
___________________________________________________________________
DI GALLO Frédéric Page 174/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
EXERCICE
R:
1) Non. L’usager ne voit que la LU qui lui permet de communiquer.
2) Au départ non, mais à terme oui car il y a entre les deux un arbitre (SSCP) qui lui
permet de le savoir.
EXERCICE
H G E F
1)
D C B A H
E F
___________________________________________________________________
DI GALLO Frédéric Page 175/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
ADMINISTRATION
DES
RESEAUX
___________________________________________________________________
DI GALLO Frédéric Page 176/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
ADMINISTRATION DE RESEAUX........................................................
I. PROBLEMATIQUE ............................................................................................................................... 178
II. LA GESTION VUE PAR L’ISO............................................................................................................. 178
2.1) Les 5 domaines fonctionnels : ............................................................................................................. 178
2.2) CADRE ARCHITECTURAL DE LA GESTION OSI ........................................................................... 179
III. GESTION DE RESEAU TCP/IP .......................................................................................................... 181
3.1) Introduction à SNMP .......................................................................................................................... 181
3.2) Architecture de la gestion SNMP ........................................................................................................ 182
3.3) Les informations de gestion................................................................................................................. 184
3.4) Le protocole SNMD............................................................................................................................. 185
3.5) Autres protocoles d’administration : .................................................................................................. 186
___________________________________________________________________
DI GALLO Frédéric Page 177/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
ADMINISTRATION DE RESEAUX
I. PROBLEMATIQUE
- Fiabilité du réseau de communication
Æ qualité de services (dimensions fonctionnelles, organisationnelles et technico-
économiques).
• Dimension organisationnelle :
- Niveau opérationnel : activité de « routine » des opérateurs pour la surveillance des
alarmes, configuration des routeurs, information des utilisateurs, rétablissement de
liaisons, sauvegardes de la comptabilité. Taches quotidiennes et répétitives.
- Niveau tactique : activités liées à l’évolution du réseau à moyen terme. Achats de
matériel, mesures de saturations.
- Niveau stratégique : schéma directeur (objectifs à long terme).
• Dimension technico-économique :
- Sous traitance ou non.
- Fournisseur unique ou non.
- Politique de sécurité du réseau, interconnexion, modèle d’architecture.
1) Gestion de la configuration :
Gestion des noms des ressources (ex : URL, noms des machines), gestion des paramètres
des matériels, collecte des matériels du réseau, collecte des informations sur la topologie et
les changements d’état des composants, routage, reconfigurer les ressources...
___________________________________________________________________
DI GALLO Frédéric Page 178/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Gestion des pannes, détection des pannes, actions manuelles ou automatiques, maintenir la
qualité de service offerte, collecte des anomalies (alarmes) Æ journalisation, activation de
tests pour localiser l’origine des pannes.
5) Gestion de la sécurité :
Sécurité d’intégrité des informations qui circulent sur le réseau : fiabilite des informations,
confidentialité, authentification, non répudiation. Attention à la compatibilité CNIL ! !
- Structure de la gestion
- Fonctionnalité de la gestion
- Base des informations
SM SM
SMAE SMAE
protocole de gestion
M M
7 7
LME LE LE LME
I protocole de gestion I
de couche n
B LME LE LE LME B
1 1
Processus Processus
Manager Agent
Réponses
SMAP SMAP
Evénements
Objets gérés
Les objets de gestion sont caractérisées par des propriétés et liés entre eux par des relations :
- Une relation de contenance exprime le fait qu’un objet d’une classe peut contenir un ou
plusieurs autres objets pouvant appartenir à la même classe ou à des classes différentes.
Ex : un objet « routeur » contient un « châssis » et une carte « x25 ».
- Une relation de nommage donne le moyen de nommer les objets.
Nom relatif (RDN : Relative Distinguished Name) : nom affecté à l’objet lors de sa création.
Nom global (GDN : Global Distinguished Name) : repérer de manière unique un objet.
Root
___________________________________________________________________
DI GALLO Frédéric Page 181/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Messages
La MIB (Management Information Base) regroupe l'ensemble des variables relatives aux
matériels et aux logiciels supportés par le réseau, et définit les objets de gestion dans
l'environnement TCP/IP. La SMI (Structure of Management Information), définit comment
sont représentées, dans la MIB, les informations relatives aux objets de gestion et comment
sont obtenues ces informations.
Les stations interrogent donc les agents pour observer leur fonctionnement et leur envoient
des commandes pour leur faire exécuter certaines taches. Les agents renvoient les informations
requises aux stations de gestion. Certains événements du réseau, tels que des erreurs de
transmission, peuvent déclencher des alarmes envoyées aux stations de gestion. Cependant,
l'envoi de messages de façon spontanée de l'agent vers le manager est limité. Les managers
effectuent une interrogation périodique des agents de manière à vérifier leur état. La structure
des paquets est définie en utilisant la syntaxe ASN1 (Abstract Syntax Notation).
SNMP a l'avantage d'être simple, cependant il a des capacités très limités au niveau sécurité,
principalement pour l'authentification. Tous les systèmes SNMP doivent également supporter
les protocoles DUPER et IP pour transporter les données entre les agents et les stations de
gestion.
___________________________________________________________________
DI GALLO Frédéric Page 182/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Ethernet
IP
UDP
SNMP
Champs
Version : numéro de version SNMP. Le manager et l'agent doivent utiliser le même numéro.
Communauté : ce champ sert à identifier auprès du manager l'agent avant de lui accorder un
accès.
PDU : il y a 5 types de PDU : GetRequest, GetNextRequest, GetResponse, SetRequest, et
TRAP.
Une description de ces PDU est données ensuite.
Un premier format est utilisé pour les PDU du genre GET, ou SET :
Type de ID de Statut Index Ojj 1, val 1
PDU requête d’erreur d’erreur
Champs
Type de PDU :
0 : GetRequest
1 : GetNextRequest
2 : GetResponse
3 : SetRequest
Type de Adresse
Entreprise Type générique Type spécifique Timestamp Obj 1, Val1
PDU Agent
___________________________________________________________________
DI GALLO Frédéric Page 183/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Champs
Type de PDU : dans ce cas toujours égal à 4.
Entreprise : identifie l'entreprise de management qui a défini la Trap .
Adresse Agent : adresse IP de l'agent.
Type Générique : décrit quel type de problème est survenu. (7 valeurs sont possibles).
Type Spécifique : est utilisé afin d'identifier une TRAP spécifique à une entreprise.
Timestamp : contient la valeur de l'objet sysUptime représentant le temps écoulé depuis la
dernière initialisation..
Obj/Val : association du nom de la variable à transmettre avec sa valeur.
La définition se fait par un langage de macros. RFC 1155 Chaque objet de la MIB SNMP est
identifié de manière unique par un OBJECT IDENTIFIER.
Root
org(3)
DoD(6)
Internet
Directory(3) Private(4)
Management(2)
MIBII(2)
MIB II :
Autres MIB :
Tout éditeur de logiciel réseau peut définir ses propres objets. Le sous arbre « private » est
prévu à cet effet. RFC 1304, RFC 1289, RFC 1286, RFC 1284, RFC 1285… décrivent
comment faire cela (le mode d’emploi).
CMOT (CMIP Over TCP/IP) : Implémentation au dessus du protocole UDP d’une couche
présentation LPP (Light Weight Protocol Presentation)
OMG (Object Managment Group) : Groupe indépendant de 200 industriels du logiciels pour
promouvoir les logiciels Objets distribués.
Architecture CORBA (Common Object Request Architecture) : Intéêt général pour des
applications distribués (ex : jeux en réseaux).
X/OPEN et les API XMP/XOM : XMP est une interface en langage C qui décrit les en-têtes et
spécifie le mode et la syntaxe d’appel.
___________________________________________________________________
DI GALLO Frédéric Page 186/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
LA
SECURITE
DANS
LES
RESEAUX
___________________________________________________________________
DI GALLO Frédéric Page 187/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
De tout temps, on a mis en place des dispositifs pour protéger des ressources. L'information est
quelque chose de nouveau qui est impalpable et qui a pris de la valeur. On peut parler du piratage de
logiciel qui va nuire à l'éditeur. Mais les distributeurs sont au courant de ces agissements et sans servent
pour inonder le marché et pousser les utilisateurs "pirates" à faire acheter ces logiciels à leur entreprise.
Tout ceci fait apparaître des risques et des menaces concernant la sensibilité, la vulnérabilité et
l'intégrité des données.
Principaux concepts : - risques et menaces
- sensibilité et vulnérabilité
- intégrité des données, authenticité des correspondants
Niveaux de compétence: le débutant devine les mots de passe, le professionnel les décrypte.
___________________________________________________________________
DI GALLO Frédéric Page 189/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
V. Normalisation ISO
Emetteur: envoie le message
Récepteur: reçoit le message
Réseau de transport: infrastructure
Emetteur:
¾Le message émis ne peut être compris ou utilisé que par le destinataire désigné.
¾Le destinataire ne peut pas nier avoir reçu le message s'il a vraiment reçu (non répudiation).
¾Le message parvient bien au destinataire désigné.
¾L'identité du destinataire n'est pas déguisé.
¾Le destinataire ne peut pas prétendre avoir reçu un message non envoyé.
Récepteur:
¾Le message provient de l'émetteur déclaré et authentifié.
¾Le message n'a pas été modifié pendant le transfert.
¾Le message n'a pas été intercepté ou dévoilé pendant le transfert.
¾L'émetteur ne peut pas nier avoir effectivement envoyé un message s'il a été reçu.
¾Le récepteur ne veut pas recevoir de messages d'émetteurs non autorisés.
Réseau:
¾L'émetteur est authentifié et ne peut pas nier avoir émis le message.
¾Le récepteur est authentifié et ne peut pas nier avoir reçu le message.
¾Les copies des messages transmis sont détruites après leur livraison au destinataire.
___________________________________________________________________
DI GALLO Frédéric Page 190/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
3.1) Authentification
Il empêche l'utilisation (lecture, écriture, création, suppression) non autorisée des ressources
(utilise l'authentification).
Elle empêche les données d'être consultées par identités non autorisées. La plupart du temps,
ce sont des fraudes passives (consultation sans modification ou altération).
Quatre secteurs possibles à protéger:
¾Mode orienté connexion,
¾Mode datagramme (non connecté),
¾Champ spécifique (ex: code d'accès)
¾Secret du flux.
___________________________________________________________________
DI GALLO Frédéric Page 191/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Opération qui transforme le codage d'une formation en un autre codage (sans perte
d'informations). Opération très proche du compactage (dans ce cas, la clé est contenue dans
l'algorithme). Les données sont brouillées.
réseau
liaison
physique
Réseau
___________________________________________________________________
DI GALLO Frédéric Page 192/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Principe du chiffrement
Message en clair
La solidité ici dépend de la longueur de la clef. L'idéal c'est qu'il n'y ai pas de répétitions de
motifs, en général on compacte avant de chiffrer.
- Création
- Affectation
- Distribution : Manuelle (guichet, pistolet chargeur…)
Automatique : skey (affectation de clé à usage unique)
CDC (centre de distribution des clés)
- Révocation.
___________________________________________________________________
DI GALLO Frédéric Page 193/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
¾Principe de fonctionnement
¾Chiffrement
Message
Bloc de 64 bits
Permutation initiale
32 bits Gi 32 bits Di
Itération 1
.
C . + 32 bits
L Itération i 32D’i : F(Ki,32Di)
E .
.
Itération 16 32 bits Gi+1 32 bits Di+1
Ki
Permutation finale
Bloc chiffré
___________________________________________________________________
DI GALLO Frédéric Page 194/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
TELEPASS
Conçu par Bull pour les cartes à microprocesseur (cartes bancaires).
Telepass 1 : principe :
R = f (E, C, I)
R = résultat
E = nombre ou message provenant de l’extérieur (64 bits)
C = clé secrète de 92 bits
I = information interne ou externe de 32 bits
Carte Bancaire B1
Cela fonctionne avec une clé de fabrication qui autorise l’écriture de la clé banque qui à son
tour permet d’écrire la clé client + déblocage.
déblocage
EXEMPLE D’UTILISATION :
___________________________________________________________________
DI GALLO Frédéric Page 195/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
¾Principe de fonctionnement
Selon la théorie des nombres, d existe toujours (avec une condition sur e) mais son calcul est
impossible si on ne connaît pas p et q.
Donc l’envoi d’un message m se fait en calculant me (modulo n). Et la lecture du message x se fait en
calculant (me (modulo n))d (modulo n).
La signature du message se fait en envoyant md (modulo n). Et le test de la signature(publique) se fait
en envoyant (md (modulo n))e (modulo n).
Le temps de réponse de cet algorithme étant important (temps de chiffrement de la fonction D), on
ne peut pas l’utiliser pour des applications temps réel mais plutôt pour de l’authentification / signature.
EXEMPLE D’UTILISATION :
Un utilisateur A a rendu sa clé (e, n) publique = (11, 11023). Il garde sa clé secrète d = 5891
et n = 73 * 151 . L’utilisateur B veut envoyer un message à A (par exemple son code de carte
bleue x=2814) et souhaite protéger son message.
Le chiffrement se fait avec y = E(x) = 281411 modulo 11023 = 1473
A est le seul à pouvoir lire le message en appliquant sa clé secrète
x = D(y) = 14735891 mod 11023 = 2814. (très long !)
Ce système est vulnérable car il existe probablement une autre forme mathématique du
message qui donne la même signature…
___________________________________________________________________
DI GALLO Frédéric Page 196/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Ceci consiste à vérifier que la donnée n’a pas été modifiée. Pour cela, sur un réseau non
sécurisé, on effectue un chiffrement des données avec en général le rajout d’un horodatage pour
ne pas pouvoir rejouer les codes une fois chiffrés. Sur un réseau sécurisé, les données sont en
clair mais on effectue un contrôle d’accès aux ressources.
Sur un réseau sécurisé, cela peut se faire par mot de passe (login + password). Mais sur un
réseau non sécurisé, on utilise un notaire avec des certificats. Le notaire décide si l’on peut
accéder à la ressource (et il faut fournir un certificat pour y accéder). On peut par exemple
utiliser une carte à puce pour stocker l’identité.
Cela consiste à noyer une information sensible dans un flux d’informations peu sensibles
(camouflage). Aussi bien sur des liaisons (usine qui transmet en permanence) ou des fichiers
(image d’un million de pixel contenant l’information). Il faut quand même que l’alphabet
utilisé soit le plus proche possible de message sensible.
E R
___________________________________________________________________
DI GALLO Frédéric Page 197/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
4.8) Récapitulatif
Mécanismes
Intégrité Bourrage Contrôle de
Chiffrement Signature Contrôle notarisation
d’accès de flux routage
Services
Authentification de
l’entité homologue S S S
Contrôle d’accès S S
Confidentialité Y S
Confidentialité
d’un champ Y S S
Secret de flux Y
Intégrité sans
connexion S Y Y
Intégrité avec
connexion S
Authentification de
l’origine S S S S
Non répudiation S S S
Case blanche : le service n’est jamais rendu par le mécanisme.
Y : le mécanisme suffit à assurer le service (service rendu).
S : aide à assurer le service (service rendu partiellement).
Kerberos (cerbère) est un système d'authentification conçu par Miller et Neuman [KAAS]
pour les environnements réseaux ouverts dans le cadre du projet Athena du MIT (partie
sécurité du projet - années 1978-80). Il met en jeu 3 types d'acteurs : le serveur Kerberos, des
serveurs qui fournissent des services comme telnet, ftp, mail..., et des clients qui veulent
accéder à ces services. Un scénario type est un client qui pour accéder aux services d'un serveur
S doit utiliser le serveur Kerberos pour s'identifier auprès du serveur S.
Toute cette architecture repose donc sur la confiance accordée par les clients et les serveurs
à Kerberos en matière d'authentification. Kerberos repose sur l'utilisation de clé privée. Il utilise
un chiffrement basé sur DES (Data Encryption Standard). Les clients sont des programmes ou
bien des utilisateurs, les serveurs sont des machines qui fournissent un ensemble de services
(qui sont eux-mêmes des clients pour Kerberos). Kerberos possède une base de donnée pour
établir la correspondance Client-Clé Privée. Cette clé privée est connue seulement du client et
de Kerberos. Dans le cas où le client est un utilisateur, la clé privée est en fait le mot de passe
de l'utilisateur crypté (comme ce que l'on peut trouver dans /etc/passwd ou /etc/shadow). Les
services des serveurs doivent eux aussi s'enregistrer auprès de Kerberos.
Kerberos fournit aussi des clés de session (session key) qui permettent à deux clients de
dialoguer ensemble en chiffrant leurs messages.
___________________________________________________________________
DI GALLO Frédéric Page 198/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Ainsi Kerberos peut fournir trois niveaux de sécurité entre lesquels le programmeur de
l'application pourra choisir :
• Une authentification à l'établissement de la connexion
• Une authentification pour chaque message envoyé
• Une authentification et un chiffrement de chaque message
Le serveur Kerberos se compose en fait de deux serveurs. D'une part, un serveur
d'administration (KDBM server = Kerberos Data Base Managment) qui fournit un accès en
lecture/écriture sur la base de donnée de Kerberos. Ce serveur permet en autre la mise à jour
des clients. D'autre part, un serveur d'authentification (Kerberos server) qui fournit un accès
en lecture seul à la base de donnée Kerberos. Ce serveur est celui auquel s'adresse les clients. Il
est parfaitement envisageable d'avoir plusieurs Kerberos server avec chacun une copie de la
base de données Kerberos. Les copies sont mises à jour par le KDBM server lorsque cela est
nécessaire.
Il existe un ensemble de programmes pour l'utilisateur final permettant de se connecter à
Kerberos et notamment de changer un mot de passe Kerberos. Kerberos fournit aussi une API
pour être utilisé à partir d'un programme (pour « kerberiser un service »). Enfin, le système
Kerberos doit pouvoir nommer ses clients, pour cela la convention suivante est utilisée :
name.instance@realm. ex : [email protected]
service.machine@…………royaume
Il s'agit du service rlogin de l'hôte priam du realm ATHENA.MIT.EDU. Un realm est
l'ensemble des machines protégées par Kerberos (royaume).
5.2.1) Abréviations
Pour alléger textes et schémas un certain nombre d'abréviations seront utilisées par la suite :
C client
S serveur
Addr adresse réseau du client
Life durée de vie du ticket
Tgs serveur de ticket
Kerberos serveur d'authentification
KDBM serveur d'administration
Kx clé privée de x
Kx,y clé de session entre x et y
{abc}Kx abc crypté avec la clé de x
Tx,y ticket de x pour utiliser y
Ax authentifieur de x
WS station de travail
___________________________________________________________________
DI GALLO Frédéric Page 199/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
c, tgs
client Kerberos
client Kerberos
{Kc,tgs,{Tc,tgs}Ktgs}Kc
L'utilisateur utilise le programme de login sur le serveur Kerberos. On lui demande son nom.
Une fois celui-ci entré, une requête est envoyée auprès du serveur Kerberos contenant le nom
du client et le nom du service TGS. Si le client est connu, le serveur Kerberos renvoie une clé
de session Kc,tgs, et le ticket d'accès au TGS {Tc,tgs}Ktgs, le tout crypté par la clé du client.
Lorsque la réponse est reçue par le client, on demande à l'utilisateur son mot de passe, ce qui
permet de décrypter la réponse et de récupérer ainsi la clé de session et le ticket.
___________________________________________________________________
DI GALLO Frédéric Page 200/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
{AC}KC,S, {TC,S}KS
client Serveur
{timestamp + 1}KC,S
client Serveur
___________________________________________________________________
DI GALLO Frédéric Page 201/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
S,{TC,tgs}Ktgs,{AC}KC,tgs
client TGS
{{TC,S}KS,KC,S}KC,tgs
client TGS
On envoie une requête contenant le serveur auquel il veut s'adresser, le ticket permettant
d'accéder au TGS {Tc,tgs}Ktgs ainsi qu'un authentifieur crypté par la clé de session. Le TGS se
base sur les même critères pour s'assurer de l'identité du client, puis il lui envoie le ticket pour
le serveur demandé ainsi qu'une clé de session encodée par la clé de session entre le TGS et le
client. Tout est basé sur la sécurité du serveur de ticket (Kerberos).
___________________________________________________________________
DI GALLO Frédéric Page 202/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
1
User /
Admin
Comme nous l'avons vu la base de donnée peut être répliquée. Il faut donc assurer la
cohérence entre la copie maître et les copies esclaves. La cohérence des données est assurée
automatiquement par des démons kpropd, les mises à jour sont transférées sur le réseau de
façon chiffrée avec la clé de la base de donnée. Pour éviter qu'un site pirate n'envoie des mises
à jour de la base de donnée (par exemple des anciennes mises à jour) un checksum (crypté avec
la clé privée de la base de donnée) est d'abord envoyé. Ainsi, le checksum des données reçues
est comparé à celui précédemment envoyé.
• Utilisation de DES (Data Encryption Standard) pour crypter les messages. Or l'exportation
de DES est limitée hors des Etats-Unis à l'acceptation du gouvernement américain.
• Utilisation d'adresses IP seulement.
• L'ordre des bits des messages est dépendant de la plate-forme (pas de couche présentation).
• Pas de possibilité de propager l'authentification d'hôte en hôte. Si un client authentifié fait un
rlogin sur une machine, de celle-ci il n'est pas authentifié pour accéder à une autre.
• Restriction du système de nommage : name.instance@realm (3x39 caractères).
• L'authentification inter-realm (royaume) est possible mais coûteuse: O(n2) échanges de clé.
___________________________________________________________________
DI GALLO Frédéric Page 203/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Kerberos utilise les authentifieurs pour se protéger contre les attaques basées sur la
réutilisation des tickets (il suffit de sniffer le réseau pour récupérer un ticket). Les
authentifieurs reposent sur l'utilisation de timestamps, ceci est problématique pour plusieurs
raisons. L'utilisation des timestamps suppose que l'attaque ne se produira pas pendant la durée
de vie de l'authentifieur (typiquement 5 minutes), or ce délai de 5 minutes est relativement
long. De plus, le serveur devrait stocker ces authentifieurs, or dans les implémentations de
Kerberos cela n'est pas fait. En effet, cela est techniquement difficile à faire notamment dans le
cas de connexion TCP. Le serveur TCP crée un processus fils pour chaque nouvelle connexion,
et ces processus fils n'ont pas de mémoire partagée avec leur père, il leur est donc difficile de
tenir à jour l'ensemble des authentifieurs déjà utilisés. Il existe des solutions pour faire
communiquer les processus entre eux, mais toutes ont des failles et certaines soulèvent à leurs
tours des problèmes d'authentification.
___________________________________________________________________
DI GALLO Frédéric Page 204/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Une solution à ce problème pourrait être les One-time passwords, mais ceux-ci sont
difficiles à mettre en oeuvre avec Kerberos. En effet, la base de données contenant les mots de
passes devrait tenir compte du fait que ceux-ci changent à chaque fois. Il s'agit d'une faille très
importante dont la solution réside principalement dans l'utilisation de périphérique de sécurité
comme des cartes à puces qui permettent de protéger le mot de passe de façon plus efficace.
___________________________________________________________________
DI GALLO Frédéric Page 205/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
5.6) Références
[KAAS] S. P. Miller, B. C. Neuman, J. I. Schiller, and J. H. Saltzer, Section E.2.1 : Kerberos
Authentication and Authorization System, M.I.T. Project Athena, Cambridge, Massachusetts
(December 21, 1987).
[LKAS] Steven M. Bellovin, Michael Merritt : Limitations of the Kerberos Authentication
System AT&T Bell Laboratories
J. G. Steiner, C. Neuman, J.I. Schiller : Kerberos: An Authentification Service for Open
Network Systems M.I.T Project Athena, Cambridge, Massachusetts
J. T. Kohl, B. C. Neuman, T. Y. Ts'o : The Evolution of the Kerberos Authentification Service
• Ce cours : http://sirac.imag.fr/~riveill/cours/ensimag3-GL-SI/1998-99/gr15/index.html
___________________________________________________________________
DI GALLO Frédéric Page 206/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
LILLE METZ
Production PARIS Production
Siège social
Centre d’études
TOULOUSE LYON
Production Centre de
recherches
1. Tous les cadres ont accès au réseau pour utiliser les applications mais la messagerie est
réservée aux cadres supérieurs.
2. Pas de communication entre centre de recherche et usines, ni entre usines directement.
3. Un ordre de fabrication envoyé à l’usine ne peut provenir que du centre d’études.
Destiné au directeur de production, il est diffusé pour information aux membres de
direction de l’usine.
4. Le directeur du centre d’études définit le prix de revient et le communique au directeur
commercial du siège (c’est le prix de vente qu’il voit avec le responsable marketing).
5. La connexion vers l’extérieur à l’entreprise est uniquement réservée aux directeurs des
six établissements.
Question : Trouver les services de sécurité pour que chaque règle soit satisfaite.
1. Contrôle d’accès par ACL (Access Control List = liste nominative pour l’accès).
2. Contrôle d’accès au niveau du routage avec une gestion centralisée (siège).
3. Il faut assurer l’authentification, la non répudiation, et l’intégrité des données donc on
assure ce service par un mécanisme de signature chiffré à clé asymétrique (clé privé pour
chiffrer et clé publique pour déchiffrer).
4. Même chose que le 3 + la confidentialité donc les données aussi doivent être chiffrées.
5. Même chose que le 1 (par contrôle d’accès).
___________________________________________________________________
DI GALLO Frédéric Page 207/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Expliquer pourquoi le chiffrement implémenté sur chaque lien du réseau est plus difficile à
mettre en œuvre que le chiffrement de bout en bout ?
Il entraîne un trou de sécurité au niveau de chaque routeur car si l’un des routeurs est sniffé,
le codage peut être connu. En plus, il faut diffuser les codes du chiffrement/déchiffrement de
manière automatique aux routeurs. On retombe donc sur un mécanisme du type « notaire ».
Par contre si l’on chiffre de bout en bout, le routage se passe exactement comme si les
messages n’avaient pas été chiffrés. Mais il faut donc des clés générées de façon aléatoire et
transmettre les clés de façon autre (voyage par avion par exemple).
P P P
SF
Serveur de
fichier
Toutes les stations de SEG4 ont accès à SF (le serveur de fichier) et seulement certaines
stations des autres segments ont accès à SF. Quelle solution fiable faut-il mettre en œuvre pour
mettre en place une politique fiable de sécurité ?
Il faut déjà remplacer les ponts par des ponts filtrants et fixer la table des adresses MAC
(filtrage de niveau 2). De plus en plus, les routeurs sont capables de filtrer au niveau 3 voir 4 du
modèle OSI. On peut aussi installer un wrapper à l’entrée du SF (qui intercepte les appels selon
une table).
___________________________________________________________________
DI GALLO Frédéric Page 208/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
« Un seul pirate peut faire beaucoup de dégât sur un réseau même s’il y a beaucoup plus de machines ».
Réseau local
M1 P
M2 INTERNET
Mn
Boite à
outils +
base de
données
(ex : port UUCPC ou TFTPD
=trous de sécurité)
¾1ère idée : sécuriser le routeur 1 en autorisant seulement les services utiles.
¾Journaliser les transactions (on a le droit d’avoir l’émetteur + l’adresse distante mais pas les
données). L’objectif est là aussi de s’assurer des traces pour les recours administratifs.
¾Contrôler l’accès (l’idéal est que le routeur ne soit pas configurable à distance par le réseau).
Routage (adresse). Ports : filtrage sur l’adresse, le port ou les données (car certains protocoles
ne sont reconnaissable que sur les données). Ceci est fait dans le noyau du système.
___________________________________________________________________
DI GALLO Frédéric Page 209/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Afin qu'un firewall soit effectif, tout le trafic de et vers Internet doit passer par le firewall.
Malheureusement, il est important de signaler que le firewall n'offre plus aucune protection une
fois celui-ci contourné. Un pare-feu n'est pas seulement un routeur, un bastion host ou une
combinaison de composants sécurisant le réseau. Le firewall est une part intégrante d'une
politique de sécurité qui crée un périmètre de défense autour des informations de l'organisation.
Cette politique doit inclure un guide de sécurité destiné à informer les utilisateurs de leurs
responsabilités, ainsi que des mesures plus classiques de définition d'accès au réseau, aux
services, d'authentification des utilisateurs locaux ou non, d'encryptage de données et de
protection contre les virus.
___________________________________________________________________
DI GALLO Frédéric Page 210/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
3. Il ne prévient pas contre les applications du type Cheval de Troie : le Cheval de Troie
est un programme à l'apparence sans dangers, mais qui se révèle, une fois exécuté, une
véritable menace pour l'organisation. Par exemple, un Cheval de Troie exécuté sur une
station hôte peut modifier les fichiers relatifs à la sécurité, rendant l'accès plus aisé pour
un intrus désirant s'introduire dans le système.
Le rôle principal du routeur filtre de paquets est de permettre ou d'empêcher le passage des
paquets de données reçus. Le routeur examine tous les datagrammes afin de déterminer s'ils ne
contiennent pas d'informations dérogeant aux règles de filtrage, règles basées sur le contenu
informationnel de l'en-tête du datagramme. L'en-tête contenant entre autre l'adresse IP source et
destination, le protocole source et destination TCP/UDP (Transmission Control Protocol/User
Datagram Protocol), ainsi qu'un message de type ICMP (Internet Control Message Protocol), il
est aisé de vérifier si le paquet est destiné ou provient d'une localisation qui ne serait pas
autorisée. Le routeur se positionne au niveau 3 du modèle OSI et le filtrage s'effectue
généralement sur les datagrammes TCP, UDP et IP.
___________________________________________________________________
DI GALLO Frédéric Page 211/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
• La règle 1 se lirait donc : "Router (permettre) le trafic en entrée dont les adresses sources débuteraient par
155.547 et dont l'adresse destination serait 195.874.12.5, dont le protocole serait TCP et dont le port
source serait 14 avec un port destination supérieur à 512."
• Notons que la création de règles de filtrage est un moment important dans la mise en place d'un routeur et
est directement tributaire de la politique de sécurité de l'entreprise. Si les règles définies sont insuffisantes
ou mal conçues, le risque d'intrusion est grand, les méthodes de pénétration ne manquant pas. A titre
d'illustration, évoquons le spoofing et la fragmentation de paquets.
2. La fragmentation de paquet : cette technique vise principalement à contourner les règles de filtrage
définies par l'utilisateur. Elle consiste à utiliser la propriété de fragmentation de IP afin de créer de
tout petits fragments et de forcer l'en-tête TCP à être fragmentée elle aussi, l'espoir étant que seul le
premier fragment sera analysé par le routeur, laissant alors passer tout le reste. Ce genre d'attaque peut
être contournée en bloquant tout paquet dont le protocole est IP et dont la taille est inférieure à une
taille déterminée.
Les avantages du routeur filtre de paquets
Les firewalls, dans leur grande majorité, sont basés sur l'emploi unique de routeurs filtrants. Cela s'explique pour:
1. Le gain de temps
2. Le coût généralement faible d'un routeur filtrant
3. Les performances généralement bonnes
4. La transparence aux utilisateurs et aux applications
___________________________________________________________________
DI GALLO Frédéric Page 212/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
1. L'élaboration de règles de filtrage peut être une opération complexe et pénible à partir du moment où
l'administrateur réseau doit avoir une compréhension détaillée des différents services Internet et du format
des en-têtes des paquets.
2. Le routeur filtre de paquets ne protège pas contre les applications du type Cheval de Troie.
3. Les performances du routeur diminuent avec le nombre de régles à appliquer. Il faut trouver un équilibre
entre performance et sécurité.
4. Le routeur filtrant n'est pas capable de comprendre le contexte du service qu'il rend : il ne peut par
exemple pas bloquer l'importation de mail, de newsgroup concernant certains sujets.
___________________________________________________________________
DI GALLO Frédéric Page 214/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
M1 Proxy
M2
Mn
Un proxy est une machine et du logiciel (par service). Il y a une différence avec le cache.
L’idée du cache est d’économiser de la bande passante par mutualisation des transferts pour un
groupe de machines. Mais cela peut poser un problème avec les pages dynamiques (contenu qui
change à chaque fois).
INTERNET
M1 Proxy
M2 cache
Mn
Données partagées
consultées récemment.
------------------------------------------ ------------------------------------------
100 Mb/s 4 Mb/s
NB: les services privilégiés sont ceux dont le n° de port < 1024 (les autres ont leur port >1024).
___________________________________________________________________
DI GALLO Frédéric Page 215/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Concevoir une architecture de réseau local sécurisé en plaçant les différents composants :
o 50 postes de travail,
o 1 serveur WWW (Web),
o 1 serveur FTP anonyme (serveur de distribution de fichiers)
o 1 serveur SAMBA / NFS (fichiers partagés)
o 1 serveur DNS (de noms)
o 1 serveur NIS (de configuration)
o 1 serveur NTP (de temps)
o 1 serveur XDM (de terminaux X11)
Doivent être visibles de l’extérieur : serveurs FTP, DNS (peut être 2 serveurs), NTP mais
unidirectionnel et le WWW.
Réseau privé
Le DNS n’est habilité à communiquer qu’avec le DNS du domaine supérieur (ex : ftp.mit.ai.edu).
___________________________________________________________________
DI GALLO Frédéric Page 216/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Avant toute chose pour bien comprendre où se situe le problème, il faut commencer par définir précisément
chacun des termes protocoles, transport et sécurisé. Si on cherche dans un dictionnaire Larousse, on trouve les
définitions suivantes.
• Protocole : ensemble de règles observées en matière d'étiquette, de présence...
• Transport : action de transporter : c'est à dire de porter d'un lieu à un autre.
• Sécurité : situation où on n'a rien à craindre.
Un protocole de transport sécurisé permet donc de porter quelque chose (ici il s'agit d'information) d'un lieu à un
autre suivant des règles prédéfinis sans que l'objet transporté ne soit jamais en danger. A priori on peut traiter le
problème dans tous les domaines (transport ferroviaire, bancaire...). Dans cet exposé nous allons présenter
quelques techniques (liste non exhaustive) permettant de répondre à certaines exigences que nous allons préciser
dans la section suivante : Exigences de la sécurité informatique.
Etant donné que la majorité des réseaux utilisés à travers le monde sont de type TCP/IP et que le choix des
entreprises se portent souvent vers ce type de réseaux lorsqu'elles décident de se connecter à l'Internet, nous avons
choisi de présenter les solutions proposées pour ces types de réseaux.
2. L'authentification : lorsque deux entités dialoguent à travers le réseau il faut qu'elles soient sûres de
l'identité de l'autre, ceci pour éviter toute usurpation. Une telle exigence se fait particulièrement sentir lors
de transactions commerciales.
3. La non-répudiation : elle concerne les signatures. Il faut être sûr qu'un client qui passe une commande
ne va pas se rétracter au dernier moment.
4. Le contrôle d'intégrité : il faut pouvoir être sûr que l'information n'a pas été modifiée par une tierce
personne lors d'un transfert d'informations.
Il faut bien voir que toutes ces exigences ne sont pas disjointes. Mais il n'est cependant pas nécessaire de toutes
les remplir. En effet dans le cas où seule l'authentification est nécessaire, on peut s'affranchir de la confidentialité
qui peut être coûteuse à mettre en oeuvre (les algorithmes de cryptage peuvent être lents).
Nous allons voir rapidement comment, théoriquement ces exigences peuvent être satisfaites.
1.1 Confidentialité
Ce problème peut être résolu en utilisant des techniques de cryptographie. La cryptographie est un ensemble de
techniques qui permettent de transcrire dans une écriture secrète un texte clair. Les algorithmes les plus utilisés
sont les suivantes :
• DES : algorithme à clé secrète développé par IBM en 1977.
• IDEA algorithme à clé secrète.
• RSA inventé par Rivest, Shamir et Adleman en 1978.
___________________________________________________________________
DI GALLO Frédéric Page 217/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
1.2 Authentification
Elle peut être garantie par grâce à différentes techniques. Une première consiste à utiliser un algorithme à clé
publique. On rappelle qu'un tel algorithme possède deux clés une est publique c'est à dire que tout le monde peut y
avoir accès et l'autre est secrète : c'est à dire qu'elle n'est connue que par une seule personne ou une seule
organisation. Ce type d'algorithme vérifie les trois conditions suivantes :
• Décryptage(Cryptage(Texte clair, clé publique), clé privée) = Texte clair
• La clé privée est très difficile à déduire de la clé publique.
• La clé privée ne peut pas être cassée par une attaque de type "texte clair choisi".
On peut utiliser ce type de cryptographie pour avoir un moyen authentifié de s'échanger des informations entre
deux entités A et B de la façon suivante :
1. A crypte un nombre aléatoire RA de son choix avec la clé publique de B et lui envoie le tout.
2. B crypte RA, un autre nombre RB et une clé KS avec la clé publique de A et lui envoie le tout.
3. Finalement A renvoie RB chiffré avec la clé KS
Cet échange a ainsi permis à A et B d'obtenir une clé commune (à priori secrète) KS. Une autre approche consiste
à utiliser le protocole Kerberos. On peut aussi construire une clé secrète partagée grâce au protocole d'échange de
clé de Diffie Hellman.
Ce type d'échange rempli les trois propriétés précédemment énoncées : B pourra décrypter le résumé de
message (avec la clé publique de A) et le comparer avec celui qu'il calculera lui-même, il pourra ainsi être sur que
le message provient bien de A et qu'il n'a pas été modifié. Cela garantit également la non répudiation puisque A est
la seule entité qui possède DA. Les deux algorithmes les plus connu dans ce domaine sont les algorithmes MD5 et
SHA.
___________________________________________________________________
DI GALLO Frédéric Page 218/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Dans cette partie nous allons décrire différentes solutions pour protéger un réseau. Etant donne que les
communications sur les réseaux sont organisées en couche (Cf. modèle OSI et modèle TCP/IP) il est tout naturel
de retrouver des solutions a chacun de ses niveaux. Dans la suite de cet exposé nous allons détailler des solutions
de niveaux réseaux (IPsec), transport (SSL) et application (S-HTTP, HTTP 1.1).
Voici un petit schéma récapitulatif des solutions sécurisées:
Figure 1
2.1 IPSec
Comme son nom l'indique, il s'agit d'une solution de niveau réseau. Dans cette partie nous allons étudier
l'architecture de IPSec et trois de ses principaux composants : AH (Authentication Header), ESP (Encapsulating
Security Payload) et IKE (Internet Key Exchange). IPSec est totalement compatible avec les infrastructures IP
existantes. Lorsqu'il est correctement implémenté, il n'affecte en rien les réseaux ou les hôtes qui ne le supporte
pas. IPSec est indépendant des algorithmes courants de cryptographie. Il fonctionne avec Ipv4 et Ipv6.
Deux concepts majeurs de IPSec doivent être détaillés avant d'entrer dans les détails: SA (Security Associations)
qui rend compte d'une connexion avec un hôte distant :
<Security Parameter Index, IP Destination Address, Security Protocol [AH ou ESP]>
Le deuxième concept est l'encapsulation et elle consiste à enfermer un paquet IP classique dans une autre paquet :
| Champ de données | Entête IP | Nouvelle entête IP |
|<---------------------------------------->|
Datagramme originel
Ces deux concepts ne sont pas nouveaux, en fait ils sont juste utilisés par IPSec.
___________________________________________________________________
DI GALLO Frédéric Page 219/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
Ce mode est systématiquement utilisé entre deux firewalls. En mode tunnel, l'adresse IP de l'entête extérieure peut
être différente de celle intérieure. Ainsi deux passerelles de sécurité peuvent réaliser un tunnel AH qui servira à
authentifier le trafic entre les réseaux auxquels elles sont toutes deux reliées. Ceci est un exemple d'utilisation
typique.
L'avantage de ce mode est qu'il assure une totale protection du datagramme IP encapsulé et la possibilité d'utiliser
des adresses privées. Néanmoins, un lourd traitement des entêtes est associé à ce mode et une augmentation de la
taille des paquets.
___________________________________________________________________
DI GALLO Frédéric Page 220/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
• La deuxième phase permet d'échanger des informations concernant les Associations Sécurisées (AS
défini plus haut) ainsi que les clés qui seront utilisées par la suite.
La première phase à lieu une fois sur une période assez longue (une journée, une semaine), tandis que la deuxième
peut avoir lieu toutes les 3 ou 4 minutes.
2.2 SSL
Ce protocole a été développé par Netscape. Comme l'indique la figure 1, il s'agit d'une solution de niveau
transport dans la pile TCP/IP. Le principal but de cette couche est de remplacer une couche transport classique de
façon transparente dans les applications utilisant HTTP, FTP, TELNET... Il remplit les trois contraintes expliquées
plus dans ce document : confidentialité (assurée par l'utilisation d'algorithme d'un algorithme de cryptage DES ou
IDEA ou triple DES...), authentification (du serveur et du client), l'intégrité (grâce à l'utilisation d'un résumé de
message qui protège les données).
Elle est principalement constituée de deux protocoles : le protocole d'échange de données (SSL Record
Protocol) et le protocole de "poignée de main" (SLL Handshake Protocol). Ce dernier est utilisé au début du
dialogue entre les deux entités qui communiquent à travers SSL. Il permet l'authentification des deux parties : c'est
une étape d'initiation du dialogue. Le protocole d'échange de données permet d'échanger des informations de
façon confidentielle et authentifiée après l'étape d'initiation.
Le protocole d'échange de données définit le format des informations transmises lors d'échanges de données
entre deux entités sur le réseau. Les données échangées sont séparées en deux parties : un entête et une partie de
données. Le format simplifié se présente de la façon suivante :
• Entête
o La longueur de la partie concernant les données
o Un champ taille de complétion qui contient la taille du champ complétion (padding) de la partie
données (cf. deuxième point).
• Données
o Une partie résumé de message qui permet de garantir l'intégrité des informations véhiculées.
o Une partie dédiée aux données (cryptées)
o Une partie de complétion (car les algorithmes de hachage impose parfois que la longueur du
texte soit un multiple d'une certaine quantité ex : 512 octets pour MD5).
Le protocole "handshake" est composé de deux phases. La première permet l'établissement d'un canal de
communication sécurisé tandis que la deuxième permet d'authentifier l'identité du client.
SSL est concrètement implanté dans la navigateur Netscape Communicator et par les serveurs du site de Netscape.
Pour pouvoir utilisez ce type de service les URLs utilisée sont de la forme https://... Si vous possédez Netscape
Communicator et que vous cliquez sur https://developer.netscape.com/docs/manuals/security.html
alors vous accéderez à une page obtenu grâce à SSL (un message vous préviens que les données qui vont être
échangées entre le serveur et votre navigateur seront cryptées : on peut obtenir des informations complémentaire
sur cette page en cliquant sur le menu View puis Page Info).
___________________________________________________________________
DI GALLO Frédéric Page 221/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
2.4 Autres
TLS : il s'agit d'un protocole sensiblement identique à SSL 3.0.
SET : il s'agit d'un protocole utilisé pour les transactions bancaires (Secure Electronic Transactions) qui est né
d'un accord entre MasterCard International. Il a été conçu dans le but d'uniformiser les transactions bancaires par
carte de crédit. En effet avant cela chacune de ces entreprises possédait son propre protocole sécurisé.
IV. Conclusion
Tout au long de ce document nous avons vu différentes solutions qui permettent d'échanger des informations à
travers Internet de façon sécurisé. Une question semble se poser : quelle solution adopter pour quels besoins ?
IPSec semble être une solution lourde à mettre en oeuvre car elle nécessite souvent des traitements spécifiques des
entêtes supplémentaires au niveau des routeurs. Elle est donc plus destinée pour des grandes entreprises ou de
grands organismes. La solution SSL quant à elle semble plus simple à mettre en oeuvre : en effet cette technologie
est accessible à tous à travers Netscape et l'interface de programmation ressemble à l'interface des Sockets Unix(
en fait il est battit au dessus de ces sockets).
Les solutions de niveau application quant à elles semblent plus marginales et moins utilisées. Elle commencent
à être intégrés petit à petit dans le protocole HTTP.
___________________________________________________________________
DI GALLO Frédéric Page 222/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
EVALUATION
DE
RESEAUX ET
P RO T O CO L E S
___________________________________________________________________
DI GALLO Frédéric Page 223/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
EVALUATION DE RESEAUX ET DE
PROTOCOLES DE COMMUNICATION
Se réecrit en variables
<message> ::= <entête> <texte> <fin> | <fin de transfert>
<entête> ::= 0 | SOH <bloc>
<texte> ::= STX <bloc> ETX (terminaux ou jeton)
<fin> ::= <caractère> <caractère>
<bloc> ::= <caractère> <bloc> (récursif)
<fin de transfert> ::= EOT
<caractère< ::= SOH |….| EOT |….| |….|a|….|Z| DEL
(256 codes possibles)
b) Description de machines
Description des machines + interaction entre elles.
Modèle « flow charts » - Description des flux.
e i
i’=f(e,i)
i’
___________________________________________________________________
DI GALLO Frédéric Page 224/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
C • * ) autre
1 2 - - - -
2 - - 3 - -
1 2
3 3 3 5 3 3
4 1 3 1 1 1 3
5 - - - 4 -
5 4
f1
A M B
f2
Station S1 station S2
W C
f3
f4
D K E
___________________________________________________________________
DI GALLO Frédéric Page 225/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
EXAMEN DU 13/09/1997
Machine parallèle
a)
- Faire des liaisons entre tous les PCs (si 16 Pcs Æ 15 interfaces par PC et 120 liaisons en
tout ! !) Erreur !
- Switch à 100 Mbits
___________________________________________________________________
DI GALLO Frédéric Page 226/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
EXAMEN DU 06/06/1998
a)
• 1 réseau local
- adresser une machine
- ouvrir un canal de communication
• 1 protocole de communication
- établir un liaison
- transmission des paramètres par valeur (dans les deux sens)
• synchronisation
- sémaphores ou jetons/tubes (plus pratique)
description de la solution
• parallele_d (daemon)
- attente de connexion
- récupération de :
- tube
- calcul
- paramètre
- lancer le calcul
- renvoyer les paramètres
- déposer un jeton dans le tube
c)
- remettre un jeton dans le tube
- arrêter le calcul complet
- relancer le sous calcul sur une autre machine
- lancer en parallèle et attendre la première réponse
la fiabilité va être de recommencer un calcul qui s’est mal passé ou de donner un maximum de
tentatives possibles.
d) SNMP Æ informations collectées par une station sur toutes les machines du réseau.
___________________________________________________________________
DI GALLO Frédéric Page 227/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
EXAMEN DU 19/09/1998
1.3 entête etc…(56 bits à zéro pour indiquer le début) cf. P48
1.6 Répéter plusieurs fois de suite le fichier ou répéter plusieurs morceaux du fichier de suite…
1492 12154
débit utile
ÖErreur != 41 trame/sec
Ö41 * 1492 = 61 Ko/s
Ösoit 16 secondes pour 1 Mo
1.9 On réutilise ces champs pour numéroter les paquets (3 octets du numéro et 3 octets du
nombre total de trames à transmettre). On envoi des infos directement affichables sur
l’écran du micro.
___________________________________________________________________
DI GALLO Frédéric Page 228/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
EXAMEN DU 31/05/1997
1)
application, nb jetons, liste d’accès
SL serveur de licence
C C C SA serveur application
Client
Application
A
Libérer la licence
4)
cf au dessous en rouge
Connexion à un port socket de la machine cliente par le serveur de licence pour vérifier que la
connexion est toujours OK.
5)
Chiffrage des transactions, par utilisation de clés à usage unique par exemple. Utilisation de clé
publique (pour coder) par les clients et de clé privée pour le serveur de licence (pour décoder) +
retour du serveur vers le client (clé asymétrique).
___________________________________________________________________
DI GALLO Frédéric Page 229/230 01/04/01
Réseaux et Systèmes.doc
______________________________________________________________________________
___________________________________________________________________
DI GALLO Frédéric Page 230/230 01/04/01