Академический Документы
Профессиональный Документы
Культура Документы
Introduction Gnrale
31
45
55
Bibliographie
68
ii
Chapitre 1
Introduction Gnrale
Sommaire
1.1
Panorama gnral . . . . . . . . . . . . . . . . . . .
1.2
La Qualit de Service . . . . . . . . . . . . . . . . .
1.3
1.2.1
1.2.2
La Modlisation
. . . . . . . . . .
. . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
3
4
Introduction Gnrale
gnralement des services qu'ils orent. Ces phnomnes sont gouverns par
le hasard de l'apparition des requtes, et s'tudient indpendamment des choix
de technologie mis en uvre. Ils sont justiciables du formalisme du calcul des
probabilits, et donnent naissance la notion de
trac,
central dans leur apprhension. Ainsi, les phnomnes de trac conditionnentils pour une large part la structure eective des rseaux modernes.
Ce cours prsente les lments de la thorie du trac, en en montrant l'impact
sur les architectures des rseaux et des systmes, et en introduisant les grands
problmes que doit aronter l'Ingnieur charg du trac.
Les notions dveloppes ici trouvent leur application dans les domaines de
conception des rseaux, dans les techniques de la planication, du dimensionnement des quipements, de la caractrisation et de la mesure de la Qualit de
Service, et de la gestion en temps-rel de leur comportement.
la
1.1
Panorama gnral
On crit
trac en trac
anglais
La Qualit de Service (QoS) est une autre notion importante. Il faudra tout
l'abrviation anglaise
s'est impose
Quality of Service
dimensionnement).
simulation, qu'il
planication.
1.2
La Qualit de Service
La notion de Qualit de Service veut rendre compte, de faon chire, du niveau de performances que l'utilisateur attend du rseau. La notion de QoS, son
mesure, sa vrication sont des tendances modernes c'est dire que l'appari-
en couches, l'utilisateur
tion des mcanismes de la drgulation leur donne une importance croissante. de la couche de niveau
La signication prcise de la notion de Qualit de Service dpend videmment
du
service
quelle est sa sensibilit aux erreurs de transmission; etc. Une dnition complte
se rfrera souvent au mode de transport de l'information circuit ou paquet,
bien que la solution adopte par le rseau pour rendre le service doive rester
transparente l'utilisateur.
1.2.1
n est un processus
couche n + 1
de
Introduction Gnrale
lectrique continu, ou intervalle de temps d'une trame MIC) pour toute la dure
de la connexion. La QoS est dnie en premier lieu par la possibilit de ne pas
obtenir de circuit lors de la demande. On la mesure par la
probabilit d'chec.
1.2.2
quantile.
Pour introduire cette notion, supposons qu'on ait pu mesurer les temps d'attente des paquets qui traversent un commutateur. On trace l'
histogramme qui
x et
x.
0.02
0.1
Proba (attente > x)
Proba (attente = x)
0.015
0.01
0.005
0.01
0.001
au-dessus de x
1e-05
0
6
8
10
Temps dattente x
12
14
Fig. 1.1
6
8
10x
Temps dattente
12
Une lecture directe du graphique donne le quantile cherch. Dans une cam-
14
1.3 La Modlisation
et
(le
F (x)
f (x)
le quantile pour la valeur
=
=
P fX xg
dF=dx
(1.1)
Z1
xp
F (xp )
= 1
f (x)dx = p
telle que:
Exercice: essayer de
trouver des
moyenne, grandeur thorique que personne ne ressent. Ils sont en ralit insen-
circonstances o la
sibles aux dlais courts, dont ils n'auront pas conscience; l'inverse ils seront
moyenne d'une
sensibles des grandes valeurs du dlai, qu'ils peroivent. Par exemple, dans le
cas o un paquet subit un retard trop important, une temporisation (qui teste le
retour d'un acquittement) va expirer, provoquant sa rmission (l'metteur interprtant le retard comme une perte). La temporisation joue le rle d'un seuil,
et seule la probabilit que le retard dpasse ce seuil est importante. Le quantile
mesure la valeur du dlai que le rseau assure dans
p des cas.
1.3
La Modlisation
grandeur aurait un
sens pour le client d'un
service
Introduction Gnrale
Repres bibliographiques
L'introduction du Calcul des Probabilits et donc du Hasard, est invitable.
Il faut donc au lecteur qui dsire rellement approfondir ce domaine acqurir
de bonnes notions de probabilits. L'ouvrage classique [Fel 71] peut tre utile
mais il en existe beaucoup d'autres. Il lui faudra aussi de bonnes notions en
thorie des les d'attentes une discipline part entire. Pour les besoins de ce
cours, le Chapitre qui suit en expose les lments ncessaires. Pour une tude
plus approfondie, le lecteur pourra se reporter aux rfrences [Kle 76, Gros 85,
Bay 00] la liste n'est pas limitative.
Pour changer de registre, sur un plan rsolument pistmologique, la lecture
de [Rue 91] est trs enrichissante. L'auteur y dveloppe des considrations stimulantes sur la faon dont le hasard s'introduit dans la physique considrations
applicables au trac.
Chapitre 2
. . . . . . . . .
2.2
2.3
2.4
2.5
2.6
2.2.1
Processus de Renouvellement . . . . . . . . . . . . .
2.2.2
Processus de Poisson . . . . . . . . . . . . . . . . .
10
2.2.3
. . . .
. . . . . . . . . . . . . . . .
10
11
2.3.1
11
2.3.2
La loi exponentielle . . . . . . . . . . . . . . . . . . .
11
2.3.3
Lois d'Erlang . . . . . . . . . . . . . . . . . . . . .
12
13
2.4.1
La notion d'tat
. . . . . . . . . . . . . . . . . . . .
13
2.4.2
Chanes de Markov . . . . . . . . . . . . . . . . . .
13
2.4.3
. . . . . . . .
14
15
2.5.1
La Notation de Kendall
. . . . . . . . . . . . . . .
16
2.5.2
Rsultats gnraux . . . . . . . . . . . . . . . . . . .
16
2.5.3
File M/M/1 . . . . . . . . . . . . . . . . . . . . . . .
18
2.5.4
La le M/M/c
. . . . . . . . . . . . . . . . . . . . .
19
2.5.5
20
2.5.6
La notion de Trac
. . . . . . .
. . . . . . . . . . . . . . . . . .
20
21
2.6.1
22
2.6.2
24
2.1
qui les traitent. Lorsque plusieurs clients tentent simultanment d'obtenir un service, certains doivent patienter et attendre dans des
Discipline de
service
Loi du
service
Attente
Sjour
Fig. 2.1
2.2
Pour aller plus avant dans l'tude des proprits du trac, il va tre ncessaire
de passer en revue les deux composantes dont il dpend. A savoir, les arrives
de clients , et leur service.
On observe les arrives de clients l'entre du systme. Pour dcrire le
phnomne, la premire ide venant l'esprit sera d'utiliser l'intervalle du temps
entre arrives successives, ou bien le nombre des arrives dans un intervalle
donn.
Pendant la dure
T , n(T )
lim n(TT )
(2.1)
T !1
2.2.1
Processus de Renouvellement
Chaque fois qu'une arrive se produit, je tire au sort, selon une loi donne, l'intervalle jusqu' la prochaine arrive, de telle sorte que les intervalles
successifs soient indpendants.
On est alors dans le cas trs particulier d'un processus de renouvellement.
Il faut comprendre l'intrt d'une telle notion, mais aussi ce qu'elle a de rare.
Soit par exemple un processus d'arrive qui rsulterait de la superposition de
deux processus de renouvellement, indpendants.
Processus A
Processus B
Superposition A & B
Fig. 2.2
? ?
La superposition de A et B
n'est pas
un renouvellement
n'est pas
10
2.2.2
Processus de
Poisson
(intensit du pro-
cessus).
Voir pour une preuve
les ouvrages classiques
de les d'attente
Exercice: calculer la
variance de cette
quantit
A(t) = 1 e t
La moyenne de cet intervalle vaut 1=:
Z1
E (t) =
t:dA(t)
(2.3)
Noter que le nombre moyen d'arrives observ dans tout intervalle de longueur
t est t. Noter aussi que le processus de Poisson est un processus de renouvellement.
2.2.3
Poisson ?
Quand on ne sait rien d'un processus d'arrives, il est assez tentant de lui
attribuer les deux proprits nonces ci-dessus, et qui conduisent aux formules
du processus de Poisson, tant elles semblent gnrales et raisonnables pour
de nombreux systmes. En ralit, il n'en est rien et la vrication de ces
hypothses n'ira gnralement pas de soi. Le plus souvent, la justication du
recours l'hypothse poissonnienne repose sur le rsultat suivant.
i ;i = 1; ;k).
i le taux d'arrive global du processus rsultant de leur super-
=
lorsque
augmente indni-
.
(Remarque: l'emploi de
i
2.3
11
xg
la n de ce service (notons
Dbut de service
Fin du service
=y
X
Observation
Fig. 2.3
X >x
y + x, et savoir que Y = y
sachant que la dure totale est suprieure y:
c'est une probabilit conditionnelle. On a alors pour la distribution de X :
P (X > xjY
= y) =
=
(2.4)
P (X 2 [x;x + dx[jY ) =
2.3.2
b(x + y)dx
1 B (y )
(2.5)
La loi exponentielle
La loi de service la plus populaire est la loi exponentielle, qu'il est traditionnel
d'crire en utilisant comme taux de service la lettre
B (x) = P (service x) = 1 e
la densit correspondante est
b(x) = e
x
:
x
(2.6)
12
e
b(xjy) =
indpendamment de
y.
(x+y)
y
= e
= b(x)
x
que la probabilit d'une n de service dans l'instant qui vient (dans l'intervalle
1=.
1=( )
Moyenne de la variable :
Variance de la variable :
On introduit le
Est-il besoin de le
rappeler l'cart-type
est la racine carre de
la variance ?
2.3.3
Lois d'
Erlang
k ser),
et indpendants les uns des autres. Le temps du service est la somme des temps
passs dans chaque serveur.
Supposons
2:
P fX xg = P fX
Evidemment,
et
et
de
+ X xg =
2
x
u=0
convolution
de
et
B (x u)dB (u)
1
P fX xg
=
u
= 1
=0
1
x
(x u)
xe
e
x du
x
bution:
B (x) = P fX
+ X + + Xk xg = 1
2
k
X
(x)j
j =0
j!
x
(2.7)
et la loi de pro-
babilit (2.7) est la loi d'Erlang- . Puisqu'il s'agit d'une somme de variables
alatoires indpendantes, moyenne et variance s'obtiennent facilement, comme
la somme de la moyenne et de la variance de chaque variable exponentielle:
Moyenne de la variable :
k=.
Variance de la variable :
k=(
)p
1= k.
2.4
13
2.4.1
La notion d'tat
La notion d'tat a une base intuitive: dcrire l'tat d'un systme, c'est donner la liste des caractristiques qu'il possde, et aussi donner les lments qui
permettent de prvoir son volution. En mcanique, par exemple, on dcrit
l'tat d'un point matriel par ses coordonnes
x;y;z
vx ;vy ;vz .
via les
et par sa vitesse
Il en est de mme pour un systme stochastique, la dirence que la prvision du futur y prend un caractre probabiliste: on ne saura prvoir l'tat exact
dans quelques secondes, mais seulement sa distribution de probabilit.
2.4.2
Chanes de
Markov
exemple, les instants d'arrive et de dpart dans le tampon. Dans le cas gnral,
l'tude de l'volution de
qui est la base de tous les dveloppements qui suivent: Dans le cas gnral, la
Andrei Andreyevich
valeur de
Markov,
+1
+1
+1
+1
pj;k = P [X (tn
+1
) = Ek j X (tn) = Ej ]
P [X (tn
+1
) = Ek ] =
X
j
pj;k P [X (tn ) = Ej ]
pnj;k ).
La
(2.8)
chane de
mathmaticien russe
(1856-1922)
14
2.4.3
L'tude des processus de Markov les plus gnraux est un des grands chapitres du Calcul des Probabilits. Pour les besoins trs limits de ce rappel,
nous nous limitons au cas trs particulier et trs utile o le processus ne
peut faire de sauts que vers ses voisins les plus proches. Les seuls mouvements
Ek
vers
+1
traditionnellement not
1
Le problme est simple: nous cherchons driver la distribution de probabilit de l'tat, c'est dire la fonction
Pk (t) = P [X (t) = k]
Nous allons procder en utilisant la dynamique des quation de Chapman-
l'instant
Pk (t + t)
= Pk (t)(1 k t k t) +
+ Pk (t)k t +
+ Pk (t)k t +
+ o(t)
1
+1
+1
Pk (t + t) Pk (t)
t
t)
= (k + k )Pk (t) + Pk (t)k + Pk (t)k + o(
t
1
+1
+1
dPk (t)
dt
dP (t)
dt
0
P (t) + P (t)
+1
+1
(2.9)
(2.10)
15
Nous nous limiterons au cas de systmes l'quilibre. Pour un systme dynamique l'quilibre, un
(k + k )Pk =
P =
0
Pk k
P
1
+ Pk
+1
k
Pk .
(2.11)
+1
(2.12)
P en fonction de P , puis P en
P et P , et ainsi de suite. On achve le calcul par la condition de
normalisation, qui dit que le systme doit bien se trouver quelque part:
Systme que l'on rsout par rcurrence:
fonction de
X
k
Pk = 1
(2.13)
par le taux de dpart montant (sachant qu'on s'y trouve, si l'on veut). La mme
interprtation vaut pour les autres termes. L'quation dit alors que, pour que
les probabilits gardent des valeurs constantes, il doit y avoir galit entre les
ux entrant et sortant des dirents tats.
k-1
k-1
k
k
k
Fig. 2.4
k+1
k+1
On met prot cette interprtation pour crire trs rapidement les quations,
partir d'un diagramme analogue celui de la Figure 2.4.
2.5
16
2.5.1
La Notation de
Kendall
2.5.2
Rsultats gnraux
Rsoudre un systme de les d'attentes consistera, en fonction des paramtres (taux d'arrive
= =
=1
Les nombres moyens et les temps d'attente sont relis par la clbre
for-
mule de
Little:
L'indice
E (Nx ) = E (Wx )
17
Cette dernire formule est trs importante. Une preuve intuitive peut en tre
donne, base sur un raisonnement graphique trs simple.
Observons l'occupation du systme (noter qu'on ne fait
aucune hypothse
sur celui-ci). Chaque fois qu'un client entre ou sort, on met jour le nombre
des prsents, et l'volution de
N (t),
T
1
N(t)
xxxxxxx
xxxxxxx
xxxx
xxxxxxx
xxxx
xxxx
xxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxx
xxxxxxxxxxxxxxx
xxxxxxxxxxxxxxx
xxxxxxxxxxxxxxx
xxxxxxxxxxxxxxx
t
2 31
Fig. 2.5
54
La formule de
Little
Dk , Dk
N (t):
E (N ) =
lim
T !1
Dk
T
(en eet, la moyenne est dnie traditionnellement comme une limite). Maintenant, la somme peut se r-crire, en introduisant le nombre
dans la dure
T:
Dk
T
Dk
n
n de clients concerns
Tn
Sous des conditions assez gnrales, la limite du produit est gale au produit
18
exemple, la formule relie aussi bien le nombre moyen des clients verts au temps
moyen qu'ils passent dans le systme, etc.) .
2.5.3
File M/M/1
,
), la le d'attente de capacit innie. Les
clients pourront tre supposs servis dans l'ordre de leur arrive si cela peut ai-
n>0
1 en attente) un instant t,
la n de service du client en cours se produit dans l'intervalle (t;t + t) avec
une probabilit t + o(t): proprit fondamentale de la loi de service exponentielle. De mme, une arrive se produira dans l'intervalle, avec probabilit
t + o(t). On applique ce systme le formalisme et les rsultats obtenus
der l'intuition mais cette hypothse n'est en fait pas ncessaire. Lorsque
clients sont dans le systme (un en service,
plus haut sur le processus de naissance et de mort. L'tat est dcrit par
n, qui
reprsente cette fois le nombre total des clients dans le systme. Il volue selon
un processus de Naissance et de Mort trs simple (gure 2.6).
....
Fig. 2.6
....
P
( + )Pk
=
=
P
Pk + Pk
+1
Pn = Pn
+1
soit
Pn
+1
+1
0.
La normali-
19
Pn = P
k =
=1
Finalement:
= n(1 )
PW =
E (n) =
1
E (nW ) =
1
n0
Pn
=
(2.14)
PW
dduit,
=
.
1
via
=
et de sjour
2.5.4
La le M/M/c
k < c.
c de serveurs
Le lecteur dbutant
clients sont
qui vient, chacun des services en cours peut se terminer, avec la probabilit
t + o(t)
service est la somme des probabilits que chacun des services s'achve, diminue
de la probabilit de 2 ou plus ns de services
o(t)
vnement de probabilit en
P (k) =
P (0) Ak
c
P (k) = P (0) Ac ()k
!
avec
P (0) =
"c k
XA
1
kc
k>c
Ac 1
+
k! c! 1
(2.15)
(2.16)
(2.17)
20
PW
(2.18)
On connat cette
formule sous le nom de
Formule d'Erlang
E (W ) =
avec attente ou
Erlang-c
2.5.5
PW
c(1 )
E (s)
(2.19)
K clients. Atten-
P (n) =
n (1 )
1 K
(2.20)
+1
K
= 1 (1K )
(2.21)
+1
conduit une dicult sur la formule. C'est qu'en ralit elle est arrange, et
il faudrait lire par exemple
= 1 + + + + K
2
2.5.6
Erlang)
.
A leur arrive, les clients sont servis immdiatement tant qu'un serveur au
moins est libre; si les serveurs sont tous occups, le client qui arrive est rejet,
et est suppos disparatre dnitivement. On parle de modle perte.
Il est ais d'adapter le modle de la le M/M/c, en tronquant le diagramme
d'tat au rang
On trouve:
R. On note A = =.
P (k) =
Ak
PRk! Ak
0
k!
0kR
(2.22)
2
Pour d'obscures
....
Fig. 2.7
k
....
R
AR
anglo-saxons la
nomment formule
(2.23)
k!
E (R;A)
sique. Il est possible de prouver que le rsultat prcdent est valide mme pour
un service de type quelconque (systme M/G/R/R).
Le calcul eectif de la formule de la perte pose problme sous la forme cidessus: il serait vain d'valuer une factorielle par une mthode directe! Il vaut
mieux utiliser une rcurrence:
X := 1
pour j de 1 a R faire
X := 1 + X*j/A
fin pour
E(R,A) := 1/X
On pourra aussi souvent utiliser une approximation (remplacer la somme
au dnominateur par l'exponentielle, et utiliser la formule de Stirling pour les
factorielles), qui donne une prcision assez spectaculaire:
E (R;A)
A R
R
e A=
2R
(2.24)
Anticipant sur les dnitions des tracs couls, le calcul du trac coul
permet de vrier la concordance des dnitions:
Ae =
jP (j ) = A[1 E (A;R)]
(2.25)
2.6
et.
raisons, les
d'Erlang-b
La notion de Trac
Les mcanismes d'occupation des ressources constituent le phnomne fondamentalement responsable de la dgradation possible de QoS; en eet, le rseau
21
22
ore des ressources en commun ses utilisateurs, que ceux-ci doivent se partager. Le terme de trac rend compte de la quantit de travail prsente dans
un serveur, sous forme d'occupation de ce serveur. Le terme dsigne la fois la
notion de travail qu'un rseau va traiter (on parle ainsi du trac routier, par
exemple) et la grandeur numrique qui mesure ce travail.
2.6.1
conditions de stationnarit).
ZT
1
Ae E (N ) = Tlim
N (t)dt
!1 T
(2.26)
di
T
(en toute rigueur, il faudrait augmenter T indniment, ce qui liminera tout
eet de bord : la quantit ci dessus est un estimateur du trac coul). La
preuve de l'identit entre les deux expressions de Ae est, l encore, dans le
Ae
d la dure moyenne
de service (supposant, encore une fois, l'existence de toutes les limites ncessaires). Soit
Ae =
di
T
di
n
Tn
n,
(0;T ).
T,
et
acceptes (nombre par unit de temps). Il faut faire la distinction entre les clients
arrivs et ceux qui sont accepts, puisque des rejets peuvent s'observer.
23
3
2
1
N (t)
? ?
2
4
t
1
Fig. 2.8
?
-
Ae
du service.
En rsum, le
formule de Little):
Comparer avec la
dmonstration de la
formule de Little
de service.
Le produit du taux d'arrive par la dure moyenne du service.
Le nombre moyen des serveurs occups.
Ae coul par
Ae R. Pour
trac
0
un groupe de
B,
n (ne
B=
n ne
n
= A AAe
Agner Krarup
(2.27)
mathmaticien danois,
pre de la thorie du
tltrac (1878-1929)
24
2.6.2
N (t); 0 N
Si l'on suppose une le d'attente de capacit innie, aucun rejet ne se produit, et les notions de trac oert et de trac coul se confondent. Puisqu'il
n'y a qu'un seul serveur, le nombre moyen de serveurs occups se rduit
la probabilit d'observer le serveur occup (moyenne de l'indicatrice de l'vnement {serveur occup}). Les dnitions quivalentes mentionnes plus haut
conduisent la relation classique:
= E (s) = 1 P
(2.28)
E (s)
dsigne le taux des arrives (c'est la notation tra est le trac oert (c'est aussi
serveur libre (proportion du temps d'inactivit. Les clients qui arrivent peuvent
mesurer une probabilit d'inactivit dirente, on y reviendra).
Les systmes attente sont cependant, de faon invitable,
capacit limite,
Soit une distribution de probabilit sur les entiers (borne ou non). Notons-la
plexe:
P (z ) =
existe (
il s'agit
z k Pk
jz j < 1
(2.29)
Puisque la variable
P (z )
fondamentale).
25
P (z ):
P 0 (z )
P 00 (z )
X
k
X
k
P 0 (1)
P 00 (1)
X
k
X
k
kz k Pk
1
k(k
1)zk
Pk
z = 1, il vient:
kPk = E (k)
k (k
(2.30)
1)Pk = E (k )
E (k )
(2.31)
X
n
z nn (1 ) =
1
1
z
Notons qu'on aurait pu, partir du jeu des quations, calculer la forme
de la fonction gnratrice. Dans ce cas simplissime, on multiplie chacune des
quations de rang
=
=
P
Pk + Pk
1
+1
conduit
P
( + )zk Pk
=
=
P
z k Pk
1
+ zk Pk
+1
z
)
=
P
z
z
P (z )( + z
soit, nalement
En
P (z ) =
z
=1
.
De cette expression trs synthtique, on dduit les drives premire et seconde, et donc les deux premiers moments, et la variance du nombre de clients
dans la le.
Le lecteur dbutant est invit refaire ce calcul avec soin. Dans ce cas
trs simpliste la justication peut en paratre fallacieuse. Vois cependant les
rfrences (par exemple [Kle 76]) pour des usages plus justis.
26
des ux entrants conduit des performances pires que le cas poissonnien.
La population des sources a une taille limite. Le processus d'arrive est
alors fonction de l'tat de celles-ci (une source active ne gnre pas de nouvelle
demande). Une source devenant active et trouvant tous les serveurs occups
n'attend pas, et retombe immdiatement dans l'tat de repos. Elle aura subi un
chec, et le problme principal sera de calculer la probabilit de cet vnement.
C'est le systme M(n)/M/R/R.
On rcrit les quations. Cette fois, les vnements lmentaires sont:
n
= (N
n en n + 1 si n < R. Le
N n sources au repos
(N-2)
reste
(N-1)
Fig. 2.9
n) : il
(N-R+1)
...
R-1
(R-1)
1.
R
R
n serveurs
occups s'crit:
8
>
< (N nN)Pn = (n + 1)Pn
X
Pn = 1
>
:
n = 0; : : : ;N
+1
1
(2.32)
n=0
L'approche par
La solution s'crit:
fonctions gnratrices
s'applique aussi, mais
rclame du doigt
Pn = P
j
j R
N
n
N
j
Rappel :
N
n
= n!(NN ! n)!
(2.33)
27
La Probabilit de Rejet
Attention!
gnrale,
indpendamment de l'tat.
Comment alors calculer la probabilit de rejet? La manire la plus simple de
l'obtenir est de l'crire comme le quotient du taux d'arrive dans l'tat de rejet
B P (Rejet) =
(N
R)PR
B=P
j R
On constate que
= PRN
(
1)
R
1
1
(2.34)
A titre d'exemple,
usagers sur un
donne sans pour autant utiliser des circuits dont le rendement serait trop faible.
La gure suivante montre ce que donne la formule, selon les valeurs de
de
, pour R = 10.
N
N
et
constant), le taux de
! 1)
5:10
5:10
).
28
0.1
Taux de Perte
0.01
0.001
Na=4
Na=5
Na=6
Na=7
Na=10
0.0001
1e-05
1e-06
10
100
Nombre de sources
X ; ;Xn
1
de transformes. La
F~ (s) =
Z1
sx f
(x)dx
Fn (t) la distribution:
L(Fn ) = + s
n
29
fn (t) =
(t)n e
(n 1)!
1
t
Fn (t) = P fX
+ + Xn tg =
n
X
(t)k
k=0
k!
t
(2.35)
30
N=1
0.1
N=2
Probabilite de Rejet
0.01
0.001
N=3
N=4
0.0001
N=7
10
15
20
N=5
25
1e-05
30
35
1e-06
40
45
50
1e-07
0.1
10
Trafic Offert
100
Chapitre 3
Mcanismes de partage de
ressources
Sommaire
3.1
Un serveur de messagerie
3.1.2
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
32
32
33
3.2
34
3.3
35
3.4
3.5
3.6
35
37
La discipline HOL . . . . . . . . . . . . . . . . . . .
37
39
. . . . . . . . . .
3.5.1
Introduction
. . . . . . . . . . . . . . . . . . . . . .
39
3.5.2
Un exemple numrique . . . . . . . . . . . . . . . . .
41
3.5.3
D'autres politiques . . . . . . . . . . . . . . . . . . .
31
42
43
32
3.1
3.1.1
Un serveur de messagerie
Considrons une machine, utilise par les services de messagerie vocale (un
serveur vocal): rpondeurs, boite aux lettres, jeux, annonces, etc. Fonctions du
serveur: stocker et grer les messages, les restituer sur demande. Le dialogue
usager-service est vocal ou utilise les touches du combin.
La gure 3.1 donne un exemple d'architecture d'une telle machine.
Stockage
des messg
Scripts
Bus local
Processeurs
Brasseur
Lignes reseau
Fig. 3.1
33
le service" dsigne un processeur particulier charg du pilotage du dialogue; c'est lui qui contient le service eectif, on parle de
script;
drouleur de
active (processeur) devant lequel s'accumuleront les clients; chaque communication est reprsente par un client qui chemine entre les ressources au gr des
direntes tapes du script.
A ce stade, c'est la question de
3.1.2
L'examen de l'exemple prcdent met en valeur les caractristiques du fonctionnement des systmes informatiques temps-rel.
Plusieurs "usagers" sont actifs simultanment - mme si un seul reoit un
instant le service du processeur. Il y a ainsi meilleure utilisation du temps
processeur (celui-ci pouvant se consacrer d'autres tches). On parle de
systmes
multiprogramms.
Plusieurs tches sont gnralement en attente devant chaque serveur (processeurs, disques, etc). Plutt que de laisser le hasard seul dcider de
l'ordre des services, on prfre dnir des mcanismes d'ordonnancement
ce chapitre y est consacr.
Notamment, on utilisera des
introduit la notion de
34
occupent des positions proches les unes des autres, et la lecture d'un lment de
donne se fait en mmoire centrale. Plus rarement, il faut aller lire sur disque
un bloc de donnes. La frquence de ces
dfauts de pages
augmente quand la
3.2
Considrons la le d'attente simple (M/G/1, si on veut). A la n d'un service, comment le serveur choisit-il son prochain client? Les possibilits qu'on
dcrit s'appliquent un "vrai" systme le et serveur, aussi bien qu' un
modle conceptuel de fonctionnement complexe. Description des disciplines habituellement rpertories:
FIFO ("First-In, First-Out") c'est dire "premier entr, premier servi" le mcanisme habituellement considr, qu'on a toujours suppos jusqu'ici.
LIFO ("Last-In, First-Out"): le dernier arriv sera servi le premier. Intrt:
diminue l'eet pervers des impatiences pendant le service, cf. ESS4; utilis
aussi en "gestion des stocks" (mme motif: eet du vieillissement);
au hasard: cas o on ne peut garder trace de l'ordre d'arrive;
Round Robin: on dnit un "quantum de temps de service"; le serveur
traite tour de rle chaque client pour une portion du temps gale au
quantum; il accomplit ainsi une sorte de cycle sur les clients en attente.
Ds qu'un client a reu, en plusieurs fois, le service qu'il rclame, il quitte
le serveur;
Processor Sharing (PS): version asymptotique du "round robin": le quantum tend vers 0; si
Ces mcanismes ordonnancent les choix sans discrimination; pour les suivants,
on attache chaque client une
une vritable discrimination, qui permet de tirer parti des caractristiques des
clients.
priorit simple HOL ("Head of the Line") les clients de classe 1 viennent
se ranger en le devant ceux de classe 2 (extension immdiate N classes);
moyen usuel de favoriser un ux;
Serveur Cyclique ("Polling"): dans ce mcanisme, chaque classe se voit
allouer une le particulire, que le serveur explore de faon cyclique;
Tout autre algorithme peut tre imagin. Par exemple, choix bas sur le
temps de service demand (les temps courts d'abord).
On parle de "classe" pour direncier les ux: selon leur priorit, selon la
premptives. Dans ce cas, le client prioritaire interrompt le service en cours pour tre
distribution des temps de service, etc. On distingue aussi les priorits
servi sans attente. Le client interrompu reprendra son service aprs celui du
35
3.3
On conoit que dans certains cas le choix du client soit indirent au serveur,
c'est dire que ce choix ne change pas le travail total qu'il devra traiter. Consquence: chaque instant, le serveur est capable de comptabiliser la quantit de
travail qui lui est oerte (on parle de son "travail restant", "unnished work" en
anglais): temps de service restant fournir au client en cours, augment de la
somme des services des clients en attente cet instant. On peut (presque) toujours valuer cette quantit un instant x, mais elle n'a de sens que lorsque
le travail restant ne dpend pas de la dcision prochaine! Pour donner une autre
signication cette quantit: soit
t. Stoppons
Remarque prliminaire:
et
Wj
W
X j
Wj
L'importance de la notion de temps moyen pondr rside dans le fait que peut
ne pas savoir mesurer une autre quantit supposons par exemple un processus
de mesure incapable de direncier entre les classes.
36
conservation suivante:
i Wi =
= Cste
(3.1)
X E (si ) X E (si )
=
i
2E (si )
(3.2)
.
W
E (s
i Esi =2;
i).
prend la forme
= 2EE(s(s))
2
On a alors, puisque il n'y a plus qu'un seul temps moyen d'attente, qu'on
note simplement
W
W
W:
0 , soit
E (s)
= 2(1
E (s )
) (E (s))
2
(l'introduction du dernier terme est justie par le fait qu'il est sans dimension, il vaut 1 pour un temps constant et 2 pour une exponentielle).
C'est la trs clbre formule de
Pollaczek-Khinchine
(PK).
=W = 1 1
2
X E (si )
i
W
( vrier).
X i
Wi =
X i E (si )
1 2E (si )
2
37
XX
n(j )
U (t) = x0 +
On a not
xi;j
i=1
la moyenne,
E (U ) = W0 +
X X
E[
xi;j ]
fois le
E (U ) = W0 +
j Wj
Maintenant, le travail restant est indpendant du mcanisme d'ordonnancement (systme conservatif ). On prend la valeur pour FIFO: dans
ce cas, tous les
Wj
sont gaux et
E (U ) = W0 =(1
)
3.4
La discipline HOL
Dans toute la suite, "priorit 1" plus forte que "priorit 2". On
reprend le cas gnral (services dirents), serveur de type conservatif, N classes.
On note
k
que "voit" la classe k (qui double k+1, k+2,.. et ne les voit pas). Remarque: la
classe 1 voit quand mme la classe 2, en eet un client 2 peut gner un client 1
38
Wk =
W
k )(1 k
0
(1
avec
o
k =
k
X
i=1
(3.3)
i
+
> 1).
Wj
W0 +
Esi (N ij + M ij )
i<j
N ij
i Wi ,
M ij
i Wj ,
X
j
Wj
W0 +
X
1
i Wi +
i=1
i Wj
i=1
X
j
soit
Wj (1
j
1)
W0 +
i Wi
i=1
Un exemple numrique
1
2
= 0:4
W1 , puis W2 , etc.
'$
&%
E (s1 ) = 0:8
Expo
E (s2 ) = 1:
Cst
= 0:5
On a
priorit au ux 1, on a
soit
(Rappel:
= 2:35
0 506
1
0 32
39
= 0:74, et W =
2
(1
0 506
0 32)(1
0 82)
= 4:13
3.5
3.5.1
Introduction
Modle de serveur trs utilis, srement l'un des plus importants par l'tendue de ses usages. Description: N tampons d'attente sont visits priodiquement
par un serveur. Celui-ci accomplit un itinraire x: il visite la le 1, puis la le
2, etc, jusqu' la le
Le passage d'une le la suivante cote un temps non nul (le "temps de
basculement" - "changeover time"). Lors de la visite la le
i,
le serveur y
passe un temps nul si elle est vide. Sinon, il peut vider totalement la le avant
40
Controleur
. . . Stations . . .
Station
Controleur
Fig. 3.2
Analyse mathmatique
On notera 1, 2, ...
i
i la le i + 1);
si le temps de service la le i - de moyenne E (si ); on P
adopte la convention
N + 1 = 1 (!). On notera les tracs: i = i E (si ), et = i .
oert chacune,
i
Le temps de cycle
Le temps de cycle (intervalle entre deux passages successifs une mme le)
est le paramtre-cl. On le note
qu'un rgime permanent existe, il faut qu'il en soit servi autant (en moyenne).
C'est dire que le cycle
de servir (en moyenne) autant de clients qu'il en arrive. Le temps de cycle est
la somme des temps de basculement et du temps pass dans chaque le - donn
par la remarque prcdente. Donc:
C=
C=
i +
i E (si )C
P
P
Pi = i
1 i 1
41
Le temps de basculement
Que se passerait-il si on faisait
i =0 ?
On voit qu'alors
= 0. En ralit,
pour que le systme soit stable, il faut qu'il existe des instants o les les sont
vides. Mais alors si le temps de basculement est nul, en un temps innitsimal le
serveur eectuera une innit de cycles: cela correspond bien un cycle moyen
nul, mais fait perdre tout sens physique au modle. Il existe des exemples o
i
peut tre dicile estimer. Nanmoins on le prendra non nul, pour viter les
complications.
Dans les exemples donns ci-dessus,
i
Le temps de rponse
Le calcul du temps de rponse vu d'une le est beaucoup plus complexe. Il
n'existe pas de formule exacte; la complexit provient de la corrlation qui s'installe invitablement entre toutes les les. On fait appel des approximations.
La plus simple consiste reprsenter tout le systme par une le M/G/1,
comme si toutes les les taient confondues. Mais il faut tenir compte du caractre cyclique, qui oblige attendre le serveur; celui-ci peut tre dans l'une
quelconque des les l'arrive du client test. Des analyses plus ou moins convaincantes mais trs bien valides par la simulation conduisent la formule suivante
pour le dlai moyen
W
Le terme
= C2 :(1
E (s )
)
+
N
2(1 )
"demi-tour" pour rejoindre la le). Le second terme est simplement celui d'une
le M/G/1.
3.5.2
Un exemple numrique
Une compagnie de rservation arienne gre un ensemble de terminaux distants, relis un serveur central par une liaison de "polling". On prendra l'application numrique suivante:
Il y a
= 10 terminaux.
E (s) = 0:5
42
i = N (10 + 20) + t
+ t + + tN
2
(comme
2 300
80000
la somme ci-dessus vaut environ 710 ms. D'o l'application numrique suivante:
= 0
= 0.4
= 0.8
Cycle = 0.71 s
E(dlai) = 0.36 s
Cycle = 1.2 s
E(dlai) = 0.73 s
Cycle = 3.5 s
E(dlai) = 2.63 s
Une autre faon, employer un "vrai" jeton, qui circule entre les terminaux:
on conomise le temps de l'interrogation par la station-matre. On conomise
aussi de la bande passante, le message de polling (le "jeton") tant incorpor la
= 0
= 0.4
= 0.8
3.5.3
i = 20+10+7:5
Cycle = 0.37 s
E(dlai) = 0.19 s
Cycle = 0.62s
E(dlai) = 0.47 s
Cycle = 1.87s
E(dlai) = 1.86 s
D'autres politiques
On a suppos un polling
exhaustif,
passer la suivante. L'inconvnient majeur de ce mcanisme rside dans sa mauvaise rsistance aux surcharges: il sut qu'une le soit sature pour paralyser
toutes les autres. On peut imaginer d'autres mcanismes, par exemple limitation
du nombre servi chaque passage.
Une autre politique consiste fermer l'accs au serveur ds que celui-ci
arrive devant une le. Autrement dit, il ne servira que ceux dja en attente
son arrive; les clients arrivant pendant le service devront attendre le prochain
gated. On a alors:
) i + E (s )
2(1 )
(1 +
N
= 0
= 0.4
= 0.8
Cycle = 0.71 s
E(dlai) = 0.36 s
Cycle = 1.2s
E(dlai) = 0.86 s
Cycle = 3.5s
E(dlai) = 6.6 s
43
6
@
X (t)
@
@
@
@
@ ee
@
@
e
Sk
@
Sk
@
@
6@
?
@
@
@
@
d'observation
Fig. 3.3
Intervalle
3.6
servis, de telle sorte que le temps restant volue de faon analogue au graphique
de la Figure 3.3.
Notons
dbut de service, le temps restant est le temps de service total), puis de pentes
1 Z T X (t)dt = 1 NXT 1 s
T
T
2i
(
N (T )
si
la suite
des temps de service. Tous les clients sont statistiquement identiques, le passage
44
la limite donnera:
NX
T
1
1
E (X ) = Tlim
!1 T
2 si
N (T )
= 21 Tlim
E (s )
!1 T
= E2(s )
(
(3.4)
2
1
(3.5)
(3.6)
cette quantit.
Repres bibliographiques
Les systmes avec priorits sont tudis dans les ouvrages classiques [Gel 82,
Kle 76]. Pour le cas des approximations du "polling", voir [Tak 91].
L'tude des modles de calculateurs a donn lieu une littrature fournie.
Voir [Lav 83], et [Hebu 85] pour le cas particulier des systmes tlphoniques
temps-rel.
Chapitre 4
La Congestion: les
phnomnes
Sommaire
4.1
Capacits Limites . . . . . . . . . . . . . . . . . . .
4.1.1
4.2
4.3
4.4
L'Importance du Phnomne
. . . . . . . . . . . . .
Un modle de rptition . . . . . . . . . . . . . . . .
4.2.2
Un exemple de consquence . . . . . . . . . . . . . .
. . . . . . . . . . .
46
47
47
48
48
50
4.3.1
4.3.2
Un commutateur . . . . . . . . . . . . . . . . . . . .
Moralit . . . . . . . . . . . . . . . . . . . . . . . . .
45
51
52
46
contrle de surcharge.
4.1
Capacits Limites
> 1). Remarque: tous les systmes sont capacit limite. On parle
de systme capacit limite lorsque celle-ci fait sentir son eet pendant le
S1
1
2
N1
N2
Fig. 4.1
A
A
AA
S2
S3
N3
pu tre propose:
47
4.1.1
L'Importance du Phnomne
C'est dans cet eet que rside la source des engorgements du trac routier
- qu'on peut comparer au
deadlock
AH
HH
j
H
*
P
Fig. 4.2
4.2
C
*
HH
j
HH
Tentative: tout client qui se prsente devant le service constitue une tentative, qui est un 1er essai ou un renouvellement. On notera
demandes (tentatives fraches), et
1. M. Irland,
le ux de 1res
48
= =
0,
la
probabilit qu'une tentative qui choue se reprsente une nouvelle fois (Ra-
nement: prendre
etc).
Il faut bien raliser qu'on ne peut pas, la plupart du temps, percevoir les
quantits originelles, telles que
Essayer d'imaginer des
0.
de
.
protocoles de mesure
pour les exemples de
ce chapitre
4.2.1
Un modle de rptition
0
-+
6
Systme"
ec
Rejets
?
HH
Attente
HHH
Fig. 4.3
On notera
ec
4.2.2
Clients
traits
Normalement
- Abandon
ec
soit encore:
=
Hp
= (1 p)
= + Hp
0
ec =
(1
p)
Hp
(4.1)
Un exemple de consquence
Supposons que le systme soit une le M/M/1/N. On injecte une charge
H = 0:9:
pour
pour
0 =1.2,
on mesure
49
0.
Remarque
Peut-on mettre le systme en quations ? Voici une mthode approche, qui
consiste supposer que le ux rsultant des rebouclages conserve son caractre
poissonnien ce qui est faux, en toute rigueur. On crira une quation reliant
(
et p (c'est dire ,
p :
0
p, et
et
on estimera
reliant
=
et
Hp
N (1 )
1 N
+1
p=
M/M/1/N,
5
Trafic Ecoule
0.8
0.6
Trafic observe
Perte
0.4
0.2
0
0
0.2
0.4
0.6
0.8
1
Trafic Offert Frais
Fig. 4.4
0
1.2
1.4
0.2
0.4
0.6
0.8
1
Trafic Offert Frais
(p)
e
1.2
1.4
50
1
Trafic Ecoule
0.8
0.6
Perte
0.4
Trafic observe
0.2
0
0
0.2
0.4
0.6
0.8
Trafic Offert Frais
1.2
1.4
4.3
Ce qui est gnant c'est que ce temps va crotre. Les phnomnes physiques
qui provoquent cette variation sont chaque fois spciques du systme tudi.
On en donne qq exemples.
4.3.1
scabreuse), alors il y a:
une mission, soit 1 temps de service, avec probabilit
(hypothse
51
S1
Fig. 4.6
S2
S3
1=(1
avec le rejet.
Ct entre, on note
B (1 B )
B (1 B ), etc
2
B=
aN (1 a)
1 aN
+1
avec
a=
E (s)
1 B
4.3.2
Un commutateur
Les demandes des usagers sont dtectes par un explorateur qui place une
requte dans la le du processeur principal. Celui-ci traite en permanence un
certain nombre de tches en concurrence (admission de nouvelles tches, E/S,
avancement de tches en cours). L'ordonnancement des tches est le plus souvent
complexe (mlange d'interruptions, de scheduling cyclique, de tranches de temps
priodiques, etc). Le mcanisme d'admission doit examiner les requtes, pour
distinguer les appels prioritaires, puis rejeter les appels qu'il ne peut traiter
faute de ressource (de temps). Un appel rejet n'est jamais ject": il vaudrait
mieux le dire ignor. On note:
52
Loff
= Ltot demandes.
+ sLec 1
Lec = Loff
Mais en surcharge,
=
=
1 =
Ltot
Ltot
Lrej + Lec
Loff + H:Lrej
+ sLec + Lrej
0
La premire relation exprime la conservation des appels (ils sont soit traits,
soit rejets), la seconde est, encore une fois, la caractristique du rebouclage de
rptition; la dernire relation exprime que, en surcharge, le processeur travaille
100% de son temps. De ces relation, on limine
Lec =
(1
Lrej
et
Ltot , et:
H )(1 ) Loff
s(1 H )
0
ce qui montre que dans cette zone, le trac coul dcroit quand le trac oert
augmente... Pour la valeur-charnire
Loff
= (1
H,
et que lorsque
4.4
Moralit
4.4 Moralit
donn les principes: pour chaque application il faudra chercher les mcanismes
particuliers dans lesquels ces principes s'incarnent. Retenons de ce chapitre la
conclusion suivante:
Reste tudier les mcanismes de contrle. Mais a, c'est une autre histoire...
Repres bibliographiques
L'tude des phnomnes de surcharge dans les commutateurs tlphoniques
est reprise de la rfrence [Hebu 85]. D'autres formes de tels phnomnes s'observent dans tous les systmes. Par exemple, le mauvais contrle du degr de
multiprogrammation provoque un croulement des performances des systmes
informatiques [Gel 82, Lav 83]. L'analyse de ces phnomnes de surcharge est
assez tolrante: il faut trouver des modles qualitatifs de fonctionnement, observer l'allure du phnomne, plus que des quantications prcises.
53
54
Chapitre 5
Mcanismes de contrle de
congestion
Sommaire
5.1
56
5.2
59
5.3
5.4
. . . . . . . . .
5.2.1
. . . . . . .
59
5.2.2
59
L'allocation de crdits . . . . . . . . . . . . . . . . .
59
5.2.3
60
5.2.4
. . . . . . . .
61
5.2.5
Priorits l'accs . . . . . . . . . . . . . . . . . . . .
61
5.2.6
Mcanismes de notication
62
5.2.7
. . . . . . . . . . . . . .
63
63
63
5.4.1
Fonctionnement de la procdure
. . . . . . . . . . .
64
. . . . . . . . . . . . . . . . . .
65
65
67
55
. . . . . . . . . .
56
trac oert au rseau, les mcanismes de contrle vont avoir comme tche
de mesurer et de limiter ce trac. Une autre contrainte qu'on leur impose est
d'accomplir cette limitation de la manire la plus rentable, c'est dire de permettre au rseau de fonctionner au plus prs de sa capacit maximale.
Enn, la contrainte
d'quit
situation de pnurie, celle-ci doit tre partage quitablement entre les sources.
Si une source voit son trac augmenter, il ne faut pas qu'elle puisse craser les
autres sources, mme si, vu du rseau, l'croulement typique de la congestion
ne se manifeste pas.
La dicult du contrle provient en majeure partie du
5.1
exhaustive et
On peut se reprsenter le systme temps-rel comme un rseau de les d'attentes, avec probablement des mcanismes d'ordonnancement complexes (voir
[Kle 76], volume 2). Quoiqu'il en soit, il existera, compte tenu du prol de trac trait, une ressource plus charge. C'est cette ressource qui va saturer en
premier, quand la charge va augmenter, et c'est donc elle qu'il faut surveiller.
En ralit, les prols du trac ne sont pas immuables, et par consquent la
ressource la plus charge pourra varier, et la surveillance sera le plus souvent
multiple.
Imaginons pour simplier que la ressource fragile est unique, et qu'il s'agit
d'un processeur central (c'est un cas assez frquent). Le principe du contrle
est fort simple: mesure de la charge de la ressource, c'est dire de son taux
d'occupation. Par exemple, on mesurera le temps pass par le processeur au
traitement des tches de priorit les plus faibles. La mesure se fait cycliquement;
de surcharge,
57
Le processus de mesure
Sous cette description simpliste se cachent de redoutables piges, qui vont
conduire complexier le schma. En premier lieu, la mesure est entache d'incertitude parce que les processus d'arrive des requtes et des services sont
alatoires. Si j'observe 2, 3 ou 4 secondes plusieurs reprises, l'tat stationnaire, je ne retirerai pas la mme information. Il faut tenir compte de l'imprcision inhrente au procd de mesure.
Pour illustrer le dilemme du processus de mesure, supposons une charge de
80 %, un processeur fonctionnant comme un systme M/M/1, avec une dure
moyenne de service de 30 ms. Le cycle de mesure opre en comptant le temps
d'inactivit sur 1 seconde, puis sur 3 ou 10 secondes. La moyenne de ce temps
est de 0.2 seconde. Voici la statistique des observations ralises (Figure 5.1).
Comme on le remarque, une valeur de cycle de 1 s conduit surestimer la
charge, dans 35 cas sur 100 elle sera estime suprieure 90%; mais dans 20 cas
sur 100 elle sera perue comme infrieure 65%.
On corrigera ce dfaut en allongeant le cycle de mesure. Un cycle de 10
secondes donne une valeur suprieure 0.9 pour 5% des mesures seulement.
Mais, en mme temps, l'allongement de la dure du cycle ne rgle pas la
question. Ou plutt, il introduit un autre dfaut, celui de l'allongement du temps
de raction. Dans notre exemple, il faut 10 secondes avant de dtecter de faon
sre une surcharge, temps pendant lequel elle pourra se propager et s'amplier.
C'est dire que le choix des paramtres d'un tel dispositif requiert un compromis
obtenu aprs des rglages assez minutieux.
Voir ce sujet un
exercice en n de
Section
58
0.8
Distribution
0.6
0.4
Intervalle de mesure =
0.2
1s
3s
10s
0
0
Fig. 5.1
au chapitre prcdent).
5.2
59
les aiguillent au travers des sous-rseaux (qui droulent les couches 1 et 2). Selon
la technologie mise en uvre (Ethernet, Frame Relay, ATM, etc.), ces couches
basses sont dotes de fonctionnalits plus ou moins labores, leur permettant
de participer au mcanisme de gestion de congestion. Dans la suite, nous supposerons essentiellement que nous nous trouvons dans le cas traditionnel de TCP
(protocole du niveau transport) tournant sur IP (niveau rseau).
5.2.1
contrle de ux
contrle de congestion
fait rfrence
5.2.2
L'allocation de crdits
Un mcanisme simple est celui du
se voit allouer un certain nombre
t, les paquets n
2;n 1;n ont t acquitts. Il peut envoyer le numro n +1, mais aussi anticiper
en envoyant n +2;:::;n + W . On dcrit souvent ce mcanisme du nom de fentre,
60
Go-back N,
par
5.2.3
dow)? Un modle classique par rseau de les peut aider. C'est un rseau ferm.
Paquets
-
Source
Rcepteur
W Clients
trs
le nombre de
61
paquet (
(1 )
Debit = LnLC
+ CT (1 )
5.2.4
augmente.
fentre glissante
(sliding window). Dans ce schma, la source ne doit pas envoyer plus d'un
nombre donn
tout intervalle
5.2.5
Priorits l'accs
Un mcanisme, appel
input-buer limiting
type tant un rseau en anneau. Prsentons l'argumentaire, dans un cadre simpli. On supposera un rseau homogne: tous les nuds sontidentiques, statistiquement. Le canal de sortie du nud type se prsente comme un serveur
Noter que
= (1
p) T
+ L
d'atteindre sa destination. Les paquets mis par le nud vont peut-tre se faire
bloquer au nud suivant. Par homognit
BT
, mais
(1 BT ). On supposera enn que chaque serveur est assimilable un systme
blocage. Cela revient dire que le dbit eectif du serveur est non pas
M/M/1/N.
BT
'
62
T
&
Rejets
Trac Local
L
Fig. 5.3
BL = B .On a :
B=
-
aN (1 a)
1 aN
+1
a=
NL ,
0
0
Voir aussi S. Lam, M.
nL NL
nL + nT N
(NL < N )
le rseau prvient les sources, celles-ci ragissent en modrant leur ux, pour le
bien commun.
5.2.7
63
5.3
(n).
L'inconvnient de cette mthode rside dans la latence inhrente l'utilisation du nud de contrle. Celui-ci opre sur une information ancienne et
donc caduque. C'est aussi une solution fragile (la panne du nud de contrle
paralyse le rseau entier) et non
scalable
(le terme de
scalability
est apparu r-
5.4
Avec le dveloppement irrsistible du mode IP, TCP tend devenir le protocole universel, au niveau transport, pour les ux de donnes (et plus gnralement les ux dbit contrlable).
64
Noeud de contrle
Noeuds du rseau
Fig. 5.4
Le protocole TCP est bti sur l'ide d'un mcanisme autonome, indpendant
du rseau et des fonctions de notication explicite. La source va observer le
rseau et son tat,
5.4.1
Fonctionnement de la procdure
slow start.
CWND = 1
CWND = 2
CWND = 3
CWND = 4
CWND = 5
CWND = 6
CWND = 7
etc.
Fig. 5.5
Les paquets qui suivent l'envoi perdu sont bien reu, et donnent lieu chacun
un acquittement qui acquitte le dernier paquet bien reu, c'est dire
1.
65
66
toujours
des paquets
Fentre
Perte
W*
Perte
slow
start
W*
Congestion avoidance
Wm
Wm
t
1
Fig. 5.6
Remarque 2. Ceci dcrit la version de base. On peut songer des mcanismes plus sophistiqus (par exemple, ne pas repartir 1 pour la phase de
congestion avoidance. De telles mthodes ont t implantes (elles direncient
entre les mthodes de dtection de la perte).
5.4.2
estimera, au bout de
Pas simple estimer : il faut garder en mmoire toutes les valeurs prcdentes ! Heureusement, on sait remplacer cette estimation par une autre, quivalente mais plus maniable :
ART T (k + 1) =
k
RT T (k + 1
ART T (k) +
k+1
k+1
Il faut noter que tout ceci est empirique, et rsulte d'un compromis entre
67
68
Repres bibliographiques
Sur le sujet d'actualit de ce chapitre, il faut consulter les revues pour avoir
IEEE Transactions on Communications, IEEE Journal of Selected Areas in Communications (JSAC) [par exemple, le numro spcial: valuation des performances des
une prsentation jour des solutions et des tendances. Notamment,
BIBLIOGRAPHIE
69
Bibliographie
[Bay 00]
Bruno Baynat:
Hermes, collection r-
Ehran Cinlar:
1975.
[Fel 71]
[Gel 82]
[Gros 85]
tateurs.
1985.
[Kle 76]
Grard Hbuterne.
Leonard Kleinrock:
[Rue 91]
David Ruelle:
[Sch 87]
Misha Schwartz:
[Sys 86]
[Tak 91]
Queueing Analysis. Vol. 1, vacations and priority systems. North Holland, 1991.
H. Takagi:
Cette bibliographie essaie de couvrir toutes les rfrences aux sujets abords
dans ce cours. Elle dborde largement les savoirs attendus des auditeurs.