Chapitre 4 - Réseaux de files d`attente

Transcription

Chapitre 4 - Réseaux de files d`attente
B.A. Ferrif
4-Réseaux de files d’attente
24/07/01
152
B.A. Ferrif
153
Prérequis et Objectifs
Ce que vous devez au minimum maîtriser pour aborder ce chapitre :
∑
Probabilités : Concepts d’espace probabilisable et d’espace probabilisé, de
variable aléatoire, de moments d’une variable aléatoire, de dépendance et
d’indépendance (en théorie des probabilités); la formule de Bayes. Les lois de
Bernoulli, exponentielle, de Poisson, ainsi que leurs principales
caractéristiques. Les fonctions génératrices.
Ce que vous devez maîtriser pour tirer pleinement profit de ce chapitre :
En plus des éléments précédents :
∑
Informatique: des éléments d'algorithmique et des éléments de
programmation sous Mathematica ou sous un autre langage pour réaliser les
simulations.
∑
Analyse : Transformation de Fourier , en Z.
∑
Probabilités : Les fonctions génératrices.
∑
Systèmes stochastiques : Les processus de naissance et de disparition.
Ce que vous devez savoir faire à la fin de cette leçon :
∑
Savoir reconnaître et utiliser les concepts de files d'attente et de réseaux de
files d'attente dans des cas simples.
∑
Savoir modéliser et simuler des problèmes qui relèvent de ces concepts.
24/07/01
B.A. Ferrif
154
Ce qui vous est proposé dans ce chapitre :
∑
Aborder les concepts généraux,
∑
Se familiariser avec la modélisation de files d'attente ou de réseaux de files
d'attente dans des cas simples
∑
S’exercer sur des applications immédiates,
∑
Réfléchir sur des problèmes concrets et de synthèse,
∑
S’évaluer par tests de connaissance et de savoir-faire.
24/07/01
B.A. Ferrif
155
1-Système à files d'attente
1-1- Schéma général
Un système à files d'attente est constitué :
∑
d'un ensemble de clients pris dans une population donnée (client est un mot
générique pour désigner aussi bien un individu qu'une requête à un système
informatique ...),
∑
d'un ensemble d'équipements de service (équipement de service = serveur
destiné à répondre à la demande du client).
∑
d'un ensemble de files d'attente (si tous les serveurs sont occupés lorsqu’un
client arrive, celui-ci doit rejoindre la ou les files d'attente).
1-2- Description des caractéristiques d'un système à files d'attente (SAFA).
Parmi les éléments qui permettent de caractériser un SAFA on trouve :
24/07/01
156
B.A. Ferrif
∑
La population ou source : celle-ci peut être finie ou infinie. Il est clair qu'une
population infinie est plus simple à décrire qu'une population finie en ce sens
que le nombre de clients dans le système n'affecte pas le modèle d'arrivée
des clients dans ce dernier.
∑
Le modèle des arrivées : La capacité d'un SAFA à fournir un service à un flot
de clients dépend non seulement du taux moyen des arrivées mais également
du modèle de ces arrivées. Ainsi supposons que les clients arrivent aux
instants
("k ΠN )
*
0 < t0 < t1 < t2 < ... < tn < ... . Les variables aléatoires Tk = tk - tk -1
appelées temps d'inter-arrivée, seront usuellement supposées
indépendantes et équidistribuées. Le modèle de ces arrivées sera donné par
la distribution de probabilité des temps d'inter-arrivées. Un modèle fréquent
est le modèle exponentiel; la densité de probabilité est alors d ( t) = l .e -l .t sur
R+ , où l
désigne le taux moyen des arrivées. On parle alors de modèle
poissonnien. Les modèles d'Erlang et hyperexponentiel sont également
fréquents (cf exercices).
∑
La distribution de la durée des services :
Il est fréquent que l'on utilise une distribution exponentielle car cette distribution
est "sans mémoire" [propriété de Markov : le temps moyen pour le client, pour
recevoir le service qu'il attend, est indépendant du service déjà fourni par le
serveur].
∑ Systèmes multiserveurs à distribution de service exponentielle :
24/07/01
157
B.A. Ferrif
Supposons le système à plusieurs serveurs identiques, chacun possédant
une distribution exponentielle de durée de service égale à µ, et supposons de
plus qu'à l'instant présent, n serveurs soient occupés. Désignons alors par Ti
le temps pendant lequel le serveur i (i=1,..,n) va demeurer occupé par le
service en cours. Il résulte de la propriété de Markov que chaque variable
aléatoire Ti a pour loi une loi exponentielle de paramètre µ . Si T désigne la
durée s'écoulant jusqu'à l'achèvement de la première tâche en cours, cette
durée est égale à Min (T1 , T2 ,..., Tn ) ; il s'ensuit que la distribution de T est une
distribution exponentielle de paramètre n.m .
∑
Fonction de répartition du service aléatoire :
Dans toute la théorie des files d'attente, la distribution de la durée des services
s'appelle le service aléatoire et la fonction de répartition est donnée par :
W s ( t) = P ( s < t) = 1 - e
∑
- m .t
= 1- e
-
t
Ws
où W s =
1
.
m
Capacité maximum d'un système à files d'attente :
Dans certains systèmes, la capacité de la file d'attente est supposée infinie :
ainsi tout client arrivant dans le système est autorisé à attendre jusqu'à ce que
le service désiré puisse lui être fourni.
Pour d'autres systèmes, la capacité de la file d'attente est nulle: tout client
arrivant dans le système alors que les serveurs sont occupés est rejeté (appel
téléphonique).
D'autres systèmes enfin autorisent un nombre de clients fini K dans la file
d'attente.
24/07/01
158
B.A. Ferrif
∑
Nombre de serveurs
Le système le plus simple a un seul serveur, il ne peut servir qu'un seul client
à la fois.
Un système multiserveur a c serveurs habituellement indentiques , un tel
système peut servir c clients simultanément.
Un système est dit à un nombre infini de serveurs si tout client pénétrant dans
le système est immédiatement traité.
∑
Discipline de file d'attente ( ou discipline de service) :
Plusieurs règles de sélection existent pour sélectionner le client à traiter; les
plus courantes sont :
FIFO (first-in, first-out) encore dite FCFS (first-come, firstserved),
LCFS (last-come, first-served), encore dite LIFO (last-in, firstout),
RSS (random-selection-for-service), encore dite SIRO (servicein-random- order).
1-3- Notation de Kendall.
Cette notation est souvent utilisée pour décrire un système à files d'attente; elle
se présente sous la forme suivante :
A/B/c/K/m/Z où :
∑
A désigne la distribution des temps entre deux arrivées,
∑
B désigne la distribution des durées de service,
24/07/01
B.A. Ferrif
∑
c le nombre de serveurs,
∑
K la capacité du système,
∑
m la taille de la population,
∑
Z la discipline de service.
159
Les symboles habituellement utilisés pour A et B sont :
GI (general independent interarrival time),
G (general service time),
Hk (k-stage hyperexponential interarrival or service time distribution),
Ek (Erlang-k interarrival or service time distribution),
M (exponential interarrival or service time distribution),
D (deterministic (constant) interarrival or service time distribution),
U (uniform interarrival or service time distribution).
La notation abrégée A/B/c est d'usage fréquent; elle suppose: qu'il n'y a pas de
limite à la longueur de la file d'attente, que l'ensemble des clients est infini et que
la discipline de file est FCFS.
Ainsi par file d'attente de type M/G/1 nous entendrons que les équations du
modèle sont valables en général, donc par exemple pour un système M/M/1.
1-4- Notations et définitions de base pour les systèmes à files d'attente.
Les notations suivantes sont courantes :
24/07/01
160
B.A. Ferrif
c
Nombre de serveurs identiques.
L
Nombre moyen de clients dans le système à l'équilibre L = E ( N ) .
Lq
Nombre moyen de clients dans la file d'attente à l'équilibre,
( )
Lq = E N q .
Ls
Nombre moyen de clients recevant un service dans le système à
l'équilibre, Ls = E ( N s ) .
l
Taux moyen des arrivées dans le système.
m
Taux moyen de service par serveur.
N ( t)
Variable aléatoire décrivant le nombre de clients dans le système
à
l'instant t.
N
Variable aléatoire décrivant le nombre de clients dans le système à
l'équilibre.
N q ( t)
Variable aléatoire décrivant le nombre de clients dans la file
d'attente à l'instant t.
Nq
Variable aléatoire décrivant le nombre de clients dans la file à
l'équilibre.
N s ( t)
Variable aléatoire décrivant le nombre de clients recevant un
service à l'instant t.
Ns
Variable aléatoire décrivant le nombre de clients recevant un
service dans le système à l'équilibre.
pn ( t)
Probabilité de la présence de n clients dans le système à l'instant
t.
pn
Probabilité de la présence de n clients dans le système à l'état
d'équilibre.
24/07/01
161
B.A. Ferrif
Variable aléatoire décrivant le temps passé par un client dans la file
q
d'attente (avant de recevoir un service).
l
E (N s )
=
.
cm
c
r
Utilisation de serveurs r =
s
Variable aléatoire décrivant le temps de service E ( s) =
t
Variable aléatoire décrivant le temps d'inter-arrivée E(t ) =
w
Variable aléatoire décrivant le temps total qu'un client passe dans
1
.
m
1
.
l
le système w = q + s .
Temps moyen passé par un client dans le système à l'équilibre
W
W = E (w) = Wq + Ws .
Temps moyen passé par un client dans la file d'attente à l'équilibre
Wq
W q = E (q) = W - W s .
Temps moyen passé en traitement par un client dans le système à
Ws
l'équilibre W s = E ( s) .
1-5- Loi de Little
Désignons par :
L le nombre moyen de consommateurs dans le système,
W le temps moyen passé par un consommateur dans le système,
l le taux moyen d'arrivée dans le système.
La loi de Little dit que , dans un système en équilibre, L = lW .
24/07/01
162
B.A. Ferrif
Une autre version de ce résultat est le :
Théorème de Little : Soit L(x) le nombre de consommateurs présents dans le
système à l'instant x. Définissons :
L par L = Limt Æ+•
l
par
1 t
L( x ) dx ,
t Ú0
l = Limt Æ+•
N ( t)
où N ( t) est le nombre de consommateurs arrivant
t
dans le système dans l'intervalle de temps [0,t],
désignons par W i le temps passé dans le système pour le i-ème consommateur
et définissons le temps moyen passé dans le système par W = Limn Æ+•
1 n
ÂW .
n i =1 i
Si l et W existent et sont finis, il en est de même de L et on a : L = lW .
2- Processus de naissance et de disparition considérés
comme systèmes à files d'attente.
Un grand nombre de systèmes à files d'attente se modélisent comme des
processus de naissance et de disparition. Dans ce cas l'interprétation est la
suivante : le système sera dans l'état n à l'instant t si et seulement si le nombre
de consommateurs dans le système est n, c'est-à-dire N ( t) = n . Une naissance
est l'arrivée d'un consommateur, une disparition correspond au départ d'un
consommateur après que celui-ci ait reçu un traitement complet. Nous ne
considérerons que les SAFA à l'état d'équilibre.
24/07/01
163
B.A. Ferrif
Ainsi, étant donnés l’ensemble {l n } des taux de naissances et l’ensemble {m n }
des taux de disparition, on sait que si on pose Pn ( t) = P ( X t = n ) et si pour tout n,
Pn ( t) = pn (c’est-à-dire si Pn ( t) ne dépend pas de t) on a :
Èl ˘
pn +1 = Í n ˙. pn , n ≥ 0 soit
Î m n +1 ˚
È l .l ...l ˘
pn = Í 0 1 n -1 ˙. p0
Î m1 .m 2 ...m n ˚
Èl ˘
p1 = Í 0 ˙. p0 ,
Î m1 ˚
Èl ˘
p2 = Í 1 ˙. p1 ,
Î m2 ˚
…
n ≥ 1.
La probabilité que le système soit dans l'état e o est donnée par
Âp
n
=1 .
n ŒN
È Êl ˆ
˘
Ê l .l ...l ˆ
On a donc p0 .Í1 + Á 0 ˜ + ... + Á 0 1 n -1 ˜ + ....˙ = p0 .S = 1 ,
Ë m1 .m 2 ...m n ¯
Î Ë m1 ¯
˚
et l'équilibre statistique existe si S < +• .
☺
3- Etude d’une file d’attente de type M/M/1
3-1- Rappel de quelques notations et définitions de base pour les systèmes à
files d'attente.
L
Nombre moyen de clients dans le système à l'équilibre L = E ( N ) .
Lq
Nombre moyen de clients dans la file d'attente à l'équilibre,
( )
Lq = E N q .
Ls
Nombre moyen de clients recevant un service dans le système à
l'équilibre, Ls = E ( N s ) .
l
24/07/01
Taux moyen des arrivées dans le système.
164
B.A. Ferrif
m
Taux moyen de service par serveur.
N
Variable aléatoire décrivant le nombre de clients dans le système à
l'équilibre.
Variable aléatoire décrivant le nombre de clients dans la file à
Nq
l'équilibre.
Variable aléatoire décrivant le nombre de clients recevant un
Ns
service dans le système à l'équilibre.
Probabilité de la présence de n clients dans le système à l'état
pn
d'équilibre.
r
Utilisation de serveurs r =
l
E (N s )
=
.
cm
c
( c représente le nombre de serveurs identiques).
Temps moyen passé par un client dans le système à l'équilibre
W
W = E (w) = Wq + Ws .
Temps moyen passé par un client dans la file d'attente à l'équilibre
Wq
W q = E (q) = W - W s .
Temps moyen passé en traitement par un client dans le système à
Ws
l'équilibre W s = E ( s) .
3-2- Caractéristiques des systèmes à files d'attente de type M/M/1
Dans un système de type M/M/1 :
∑
le modèle des arrivées est poissonien; si nous désignons par l le taux des
arrivées , il est indépendant du nombre de consommateurs dans le système,
24/07/01
165
B.A. Ferrif
le temps de service est exponentiel de moyenne m ; cette moyenne est
∑
indépendante du nombre de consommateurs dans le système.
∑
le nombre de serveurs est égal à 1.
Les caractéristiques les plus utilisées des systèmes à files d'attente de type
M/M/1 sont données par le théorème suivant :
T h é o r è m e : Un système à files d'attente de type M/M/1 possède les
caractéristiques suivantes:
r = lW s ;
pn = P ( N = n ) = (1 - r) r n , n=0,1,2, ... ;
P (N ≥ n) = rn , n Œ N ;
L = E ( N ) = lW =
r2
E (N q ) =
1- r
s N2 =
;
r
;
(1 - r) 2
r2
Lq = lW q =
1- r
s
2
Nq
=
;
r 2 (1 + r - r 2 )
;
(1 - r) 2
W = E (w) =
Wq =
r
1- r
rW s
1- r
24/07/01
Ws
1- r
.
;
;
166
B.A. Ferrif
On sait, par définition d’un processus de Poisson, que la probabilité pour qu’un
unique événement se produise dans un intervalle de longueur h est donnée par
l .h + o( h ) .
Nous avons donc ici "n ΠN * , l n = l .
Quand un client reçoit un service, la probabilité que ce dernier soit terminé dans
un intervalle de temps de longueur h est donnée par
"n ΠN * , m n = m . Comme r =
m .h + o( h ) et on a
l
, on a :
m
Êl ˆ
Ê l .l ...l ˆ
Ê ln ˆ
Ê lˆ
1
1 + Á 0 ˜ + ... + Á 0 1 n -1 ˜ + ... = 1 + Á ˜ + ... + Á n ˜ + ... = 1 + r + r 2 + ... + r n + ... =
1- r
Ë m¯
Ëm ¯
Ë m1 ¯
Ë m1 .m 2 ...m n ¯
Il en résulte :
"n ΠN , pn = P ( N = n ) = (1 - r).r n .
+•
De plus P ( N ≥ n ) =  (1 - r)r i , n Œ N ; il s'ensuit :
i=n
1 - r) r n
(
P ( N ≥ n ) = Â (1 - r)r = Â r =
= rn
(1 - r)
i=n
i=0
+•
+•
i
i
La loi PN de N est donc une loi géométrique de paramètres p = 1 - r , q = r , donc
de moyenne : E ( N ) =
q
r
r
q
et de variance s N2 = 2 =
=
.
p (1 - r)
p
(1 - r)2
Il en résulte que L = E ( N ) =
Comme W s =
L
Ws
l
.
, la loi de Little permet d’écrire W = E ( w ) = =
r
l 1- r
W q = E (q) = W - W s =
24/07/01
r
.
(1 - r)
r.W s
.
1- r
167
B.A. Ferrif
En appliquant la loi de Little on obtient :
( )
Lq = E N q
r2
.
= l .W q =
1- r
La probabilité que le serveur soit occupé est : 1 - P ( N = 0) = 1 - (1 - r) = r .
Loi de N q :
On a :
(
)
P N q = 0 = P ( N = 0) + P ( N = 1) = (1 - r) + (1 - r).r
et
(
)
"n ΠN * , P N q = n = P ( N = n + 1) = (1 - r).r n +1
La
fonction
génératrice
+•
(
(transformée
en
Z)
de
Nq
est
+•
)
GN q ( z) = E ( z x ) = Â P N q = i .z i = (1 - r) + (1 - r).r + Â (1 - r).r i +1 .z i
i=0
i=0
+•
= 1 - r + (1 - r).r r i .z i = 1 - r 2 +
2
i=0
(1 - r).r
1 - r.z
Il s'ensuit que
1 - r).rˆ (1 - r).r 2
dÊ
d
(
2
G ( z) = Á1 - r +
=
dz Ë
dz N q
1 - r.z ˜¯ (1 - r.z) 2
et comme
( )
E N q = Lim
z Æ1
( )
E N q = Lim
z Æ1
d
G ( z) ,
dz N q
on a :
d
(1 - r).r2 = r2
GN q ( z) = Lim
z Æ1
dz
(1 - r.z)2 1 - r
2
Comme on sait que s
s
2
Nq
=
r 2 (1 + r - r 2 )
(1 - r) 2
☺
24/07/01
2
Nq
d
d2
Êd
ˆ
= 2 GN q (1) + GN q (1) - Á GN q (1)˜ , on obtient :
Ë dz
¯
dz
dz
donc
168
B.A. Ferrif
On montre également que :
T h é o r è m e - Un système à files d'attente de type M/M/1 possède les
caractéristiques suivantes:
(
)
E Nq Nq > 0 =
(
r
1- r
)
Var N q N q > 0 =
r
(1 - r) 2
Ê -t ˆ
W ( t) = P ( w £ t) = 1 - expÁ ˜
ËW ¯
Ê -t ˆ
P ( w > t) = expÁ ˜ .
ËW ¯
s w2 = W 2
Ê -t ˆ
W q ( t) = P (q £ t) = 1 - r expÁ ˜
ËW ¯
Ê -t ˆ
P (q > t) = r expÁ ˜ .
ËW ¯
s
2
q
2 - r) rW s2
(
=
(1 - r)2
☺ La démonstration est laissée au lecteur amateur d'analyse ☺
4 - Réseaux de files d’attente
4-1- Réseaux à commutation de paquets
Un réseau à commutation de paquets – Internet par exemple – transporte des
blocs de symboles binaires. Pour transporter les paquets émis par un utilisateur,
24/07/01
B.A. Ferrif
169
le réseau utilise une route constituée d’une suite de canaux de transmission
reliant la source à la destination. Entre deux canaux successifs sont situés des
commutateurs munis de mémoires, les nœuds du réseau. Un canal donné
apparaît dans plusieurs routes. Le commutateur en amont d’un canal sert à
mettre en attente les paquets qui ne peuvent pas être émis immédiatement. Un
tel réseau peut donc être vu comme un réseau de files d’attente.
4-2- Systèmes informatiques
Les systèmes informatiques peuvent fréquemment s’imaginer comme des
réseaux de files d’attente. Ainsi par exemple dans un « Personal Computer » on
trouve la mémoire principale, la mémoire virtuelle et aussi les mémoires et
caches d’entrée – sortie, de périphériques d’entrée – sortie, l'unité centrale,… ; il
peut y avoir une file d’attente associée à chacune de ces ressources. Nous
supposerons dans la suite que les ressources sont interconnectées. Ainsi la sortie
d’une file d’attente peut être considérée comme l’entrée d’une autre file d’attente.
Très peu de résultats sont accessibles directement de manière analytique.
Heureusement ,il existe quelques modèles de réseaux de files d’attente qui
permettent de modéliser les systèmes informatiques.
Un réseau de files d’attentes est ouvert si les « clients » arrivent de l’extérieur,
sont traités par le système et en repartent.
Dans un réseau de files d’attentes fermé un nombre fini de « clients » circulent
indéfiniment dans le système. (Ce modèle convient bien aux systèmes de
maintenance).
Il existe bien entendu des réseaux de files d’attente mixtes.
24/07/01
170
B.A. Ferrif
Nous désignerons par :
-
K le nombre de nœuds (centres de service) du réseau ;
-
Sk le temps moyen de service par visite au centre k ;
-
Vk le nombre moyen de visites d’un client au centre k ,
-
Dk = Vk * S k la demande de service totale au centre k pour un client (en unités de
temps de service).
Si le système a une capacité de traitement moyenne (on dit également un débit
moyen) l alors on a la relation Vk =
lk
qui porte souvent le nom de loi du flux
l
forcé.
Un des concepts fondamentaux quand on étudie un système informatique est le
concept de saturation. Par système saturé on entend un système dont l’une au
moins des ressources est saturée. Ressource ou serveur sont dit saturés
lorsqu’ils fonctionnent à 100%. Il est clair que la saturation est dépendante de la
demande. Il faut noter que suivant la nature de la charge de travail, la nature de la
saturation est modifiée. Ainsi pour les traitements en calcul scientifique la
saturation provient généralement du CPU et pour les traitements de gestion elle
se situe en général au niveau des entrées – sorties.
4-3- Les Réseaux de Jackson.
Les réseaux de Jackson sont décrits dans le théorème suivant :
Théorème de Jackson :
Soit un réseau de files d’attente formé de k nœuds satisfaisant les conditions
suivantes:
24/07/01
171
B.A. Ferrif
1) Chaque nœud k consiste en ck serveurs ou ressources identiques de loi
exponentielle, de taux moyen de service m k pour chacun d’eux;
2) Le modèle des arrivées des clients qui viennent de l’extérieur au nœud k du
système est poissonnien avec un taux moyen des arrivées l k . Les clients
arrivent également au nœud k à partir des autres nœuds à travers le réseau.
3) Une fois servi au nœud k, un client va instantanément au nœud j (j=1, 2, …,m)
K
avec la probabilité pkj ; ou quitte le réseau avec la probabilité 1 - Â pkj .
j =1
Alors pour chaque nœud k, le taux moyen L k des arrivées au nœud k est donné par
K
L k = l k + Â p jk .L j .
j =1
De plus, si nous posons p( n1, n 2 ,.., n K ) pour désigner le fait qu’à l’équilibre la
probabilité pour qu’il y ait n k clients au kème nœud pour k = 1, 2, ….K , et si de plus
L k < c k .m k pour k = 1, 2, ….K alors p( n1, n 2 ,.., n K ) = p1 ( n1 ) p2 ( n 2 )... pK ( n K ) où pk ( n k ) est
la probabilité pour qu’à l’équilibre il y ait n k clients au kème nœud s’il est traité comme
une M/M/ ck file d’attente de taux moyen d’arrivée L k et de temps moyen de service
1 / m k pour chacun des ck serveurs.
De plus chaque nœud k se comporte comme s’il était un système à files d’attente
indépendant de type M/M/ ck de taux moyen d’arrivée L k .
4-4- Test
On considère le système bouclé de type M/M/1 (dans la notation de Kendall abrégée)
suivant :
4/07/02
172
B.A. Ferrif
Bouclage
q=1-p
l
L
Serveur
File
l
d'attente
1/m
Entrée
p
Sortie
Ce système représente, par exemple, une installation qui reçoit des messages
(entrée) et les oriente vers une destination appropriée (sortie). Lorsque le
message arrive à destination, un accusé de réception parvient au système et lui
indique si la transmission est correcte (en utilisant un code détecteur d'erreur). Si
la transmission n'a pas été correcte, ce qui arrive avec une probabilité q=1-p, il
est nécessaire de retransmettre le message donc de le renvoyer au serveur
(bouclage) ; le message est transmis correctement avec la probabilité p.
L'intensité des arrivées sur le serveur par l'entrée est notée l , l'intensité des
arrivées sur le serveur (entrée + bouclage) est notée L.
Le temps moyen de service du serveur est 1 / m
Application numérique :
-
On pose l = 4 messages par seconde,
-
Le temps moyen passé dans le serveur est W s = 0, 22 seconde,
-
La probabilité qu'un message soit transmis correctement est p=0,99.
1- Trouver l'intensité L.
24/07/01
B.A. Ferrif
173
2- Trouver le niveau d'utilisation r du serveur.
3- Trouver le nombre moyen L de messages dans le système.
4- Trouver le temps moyen W passé par un message dans le système.
4-5- Modèle du serveur central
Ce réseau de files d’attente est utilisé pour modéliser certains systèmes
informatiques à multiprogrammation. Il apporte, en particulier, des réponses à
certaines questions concernant l’utilisation de la mémoire centrale du calculateur.
Un système informatique multiprogrammé est caractérisé par un ensemble de K
ressources interconnectées (unités centrales, disques, unités d’entrée – sortie
etc..) et par un ensemble de programmes qui doivent recevoir certains services
de ces ressources lors de leur exécution. Ainsi, par exemple, un programme peut
avoir besoin d’un service de l’unité centrale (exécution de lignes de code sans
accès mémoire), puis d’un service de l’un des disques, puis à nouveau de l’unité
centrale…Chaque ressource doit traiter un flux de demandes de services
émanant des divers programmes en cours de traitement. Si plusieurs
programmes demandent la même ressource à un instant donné, un mécanisme
de file d’attente est activé.
Nous allons nous intéresser à un réseau fermé (cf. schéma). Le serveur central
est l’unité centrale (le CPU). On dispose de K-1 ressources d’entrée-sortie de
taux moyen de service m k (k = 2, ….K) et de discipline de file d’attente FCFS. Le
nombre de programmes en circulation sera fixé égal à N. Un programme sera
considéré comme étant une entité (certains disent un jeton) circulant
« interminablement » dans le système. À l’issue d’un traitement complet dans le
24/07/01
174
B.A. Ferrif
serveur central (CPU) un programme peut retourner dans la file d’attente du
serveur central avec une probabilité p1 ou dans la file d’attente de l’une des E/S
avec la probabilité p k
(k = 2, ….K). Après passage dans la ressource, il retourne
dans le serveur central pour un nouveau traitement…
Les algorithmes ci-dessous permettent d’analyser en valeur moyenne l’évolution
du système.
Algorithme 1.
On considère le système à serveur central schématisé ci-dessous. On suppose
donnée la valeur D k pour chaque nœud k ainsi que le niveau de
multiprogrammation N. Nous pouvons mesurer les performances du système
par :
1ère étape (Initialisation) : Lk [0] = 0 , k = 1, 2, ….K .
2ème étape (Calcul) : Pour n = 1, 2, ….N calculer :
W k [ n ] = Dk (1 + Lk [ n - 1]) , k = 1, 2, ….K ;
K
W [n] = Â Wk [n] ;
k =1
l[n] =
n
;
W [n]
Lk [ n ] = l[ n ]W k [ n ] , k = 1, 2, ….K .
3ème étape (Mesure de performance) :Temps de réponse
W = W [N ] ,
Débit
24/07/01
175
B.A. Ferrif
l = l[N ]
Utilisation des serveurs
rk = lDk , k = 1, 2, ….K .
Algorithme 2.
On considère le système à serveur central schématisé ci-dessous. L’algorithme 2
permet de construire les paramètres nécessaires à l’utilisation de l’algorithme 1.
1ère étape (Initialisation) : Fixons le taux de visite V1 pour l’unité CPU à :
V1 =
1
p1
2ème étape (Calcul) : Pour k = 2, ….K calculer :
Vk = pkV1 ,
3ème étape (Calcul de Dk) :
Dk = Vk Sk , k = 1, 2, ….K .
4-6- Schéma d’un modèle du serveur central
24/07/01
176
B.A. Ferrif
N programmes en circulation
p2
p3
2
3
CPU
p1
Nouveau programme
pk-1
pK
K-1
K
Organes d'entrée-sortie
Modélisation et Simulation
4-7- Test
Un ingénieur de la société NetSouris est chargé de réaliser l’étude de
performance d’un système informatique architecturé autour d’une unité centrale
(nœud 1), d’une unité d’entrée-sortie (nœud 2) et d’un niveau de
multiprogrammation N=2. La demande D1 est estimée à 0,4 s ; la demande D 2 est
estimée à 0,4 s et les modèles de chacun des deux temps de service sont des
modèles exponentiels.
Le cahier des charges prévoit la fourniture de :
1) Lk [n] pour k=1,2 et n= 0, 1, 2 ;
24/07/01
B.A. Ferrif
177
2) Lk pour k=1,2 ;
3) Wk[n] pour k=1,2 et n= 1, 2 ;
4) W[n] , pour n= 1, 2 ;
5) rk = rk [2] pour k=1,..,2 ;
6) l = l[2] ,
performances qu’il est demandé de chercher.
4-8- Etude et simulation
Il est demandé d’étudier le modèle de Jackson, puis de concevoir et
d’implémenter un simulateur écrit en Mathematica permettant de mesurer les
performances d’un système à serveur central.
Données qui seront fournies :
1) Le niveau de multiprogrammation N,
2) La demande de service total Dk (unité de mesure : la seconde).
Le simulateur MVA doit retourner :
1) Le temps de réponse moyen du système W=W[N],
2) La capacité de traitement l = l[ N ] ,
3) Les rk pour k=1,..,K ,
4) Les Lk pour k=1,..,K .
24/07/01
178
B.A. Ferrif
4-9- Exercice : Un système à file d'attente
Des clients se présentent à un guichet tenu par un seul serveur. On fait, sur le
système, les hypothèses suivantes:
H1) Arrivée des clients : les clients peuvent se présenter au guichet aux
seuls instants t = 0, 1, ..., n, ...
A chaque valeur entière du temps, la probabilité pour qu’un client se
présente au guichet est
a (0 < a < 1) .
On suppose, de plus, que la
probabilité pour que deux clients au moins se présentent au même instant
est nulle.
La population est supposée infinie.
H2) Durée de service et comportement du serveur : les durées des
services effectués sont des variables aléatoires entières (à valeurs dans
N * ) indépendantes, de même loi caractérisée par la propriété suivante :
tant qu’un client est pris en charge, à chaque valeur entière du temps, la
probabilité pour que le service se termine est b (0 < b < 1) . Désignons par
S la variable aléatoire représentant la durée d'un service.
Dès que le serveur est libre, il prend en charge le premier client de la file d’attente
; lorsqu’il n’y a pas de file d’attente, il attend l’arrivée du premier client suivant et
le prend immédiatement en charge.
H3) Comportement des clients : ils se placent dans la file d’attente selon
l’ordre d’arrivée et acceptent d’attendre quel que soit leur rang.
La capacité de la file d’attente est infinie.
24/07/01
179
B.A. Ferrif
∑
Quelle est la loi de probabilité de la durée d’un service et quelle est son
espérance mathématique?
∑
Quelle est la loi de probabilité de l’intervalle de temps séparant deux arrivées
consécutives et quelle est son espérance mathématique?
∑
Le système risque-t-il de s’engorger (en d’autres termes la file d’attente peutelle devenir infinie)?
A chaque instant t , l’état du système constitué par les clients en attente , ou se
faisant servir, est caractérisé par leur nombre Q ( t) .
Les changements d’état du système ne peuvent se produire qu’aux valeurs
entières du temps ; par conséquent, l’état du système reste le même sur tout
intervalle ouvert
] n - 1, n [
; on le note Q ( n _ ) et on parlera abusivement de
« l’instant ( n _ ) » .
∑
Déterminer la matrice de transition T du système, c’est-à-dire la matrice des
probabilités conditionnelles des états à l’instant
l’instant
(n + 1_) connaissant l’état à
(n _) . On pose pi, j (n) = P (Q(n + 1 _) = j Q(n _) = i) .
∑
Quelle est la distribution stationnaire p = (p 0 ,p1,p 2 ,....,p i ,....) ?
∑
Quel est, en régime stationnaire, le nombre moyen de clients se trouvant dans
le système ?
∑
Quel est, en régime stationnaire, le nombre moyen de clients se trouvant dans
la file d’attente ?
24/07/01
B.A. Ferrif
∑
180
Quel est, en régime stationnaire, le temps moyen passé dans la file d’attente
par un client ?
5- ETUDE ASSISTEE PAR ORDINATEUR
On se trouve confronté au problème suivant :
Dans une station-service où les automobilistes arrivent suivant un processus de
Poisson non-homogène d’intensité l (t ) , l ≥ 0 , il y a un seul pompiste. Lorsqu’un
automobiliste arrive, il est servi immédiatement par celui-ci s’il est libre, dans le
cas contraire, il gagne la file d’attente. Lorsque le pompiste a terminé un service
en cours, il traite le client qui a attendu le plus longtemps dans la file, s’il y a un
client ; s’il n’y a pas de client, le pompiste devient libre jusqu’à l’arrivée du
prochain véhicule. La durée du service d’un client est une variable aléatoire de loi
G. De plus, en fin de journée après l’heure T aucun automobiliste n’est admis
dans la station ; les clients se trouvant déjà dans le système seront servis. Nous
souhaitons maîtriser deux éléments :
-Le temps moyen passé par un client dans le système (afin de savoir s’il y a un
intérêt à avoir un second pompiste) ;
-L’heure moyenne de départ du dernier client, en d’autres termes l’heure de
départ du pompiste.
L’objet du travail est d’étudier ce problème, d’en décrire un modèle, de spécifier le
logiciel permettant de le simuler et d’obtenir la réponse aux questions posées et
24/07/01
B.A. Ferrif
181
éventuellement à d’autres qui n’ont pas été explicitées. Le test de validation sera
fait en prenant pour loi G une loi exponentielle.
24/07/01

Documents pareils