11.07.2015 Views

Chapitre 1. - La Recherche - ENAC

Chapitre 1. - La Recherche - ENAC

Chapitre 1. - La Recherche - ENAC

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

FILES D’ATTENTELionel BANEGEbanege@recherche.enac.frOctobre 2004


Table des Matières<strong>Chapitre</strong> <strong>1.</strong> Généralités sur les files d’attente 1<strong>1.</strong> Introduction 12. Modèle de Files d’attente 23. Mesures de performance 64. Propriétés des files d’attente 95. Modélisation fluide 156. Exercices 17Bibliographie 193


4 TABLE DES MATIÈRES


CHAPITRE 1Généralités sur les files d’attenteNous abordons dans ce chapitre le formalisme des files d’attente dans sa généralité,en nous efforçant de ne pas faire intervenir le calcul des probabilités.Il n’y a pas de théorie des files d’attente en tant que tel. <strong>La</strong> théorie des filesd’attente est un formalisme mathématique qui permet de mener des analyses quantitativesà partir de la donnée des caractéristiques du flux d’arrivées et des temps deservice.Il est possible d’étudier ce formalisme de plusieurs manières, en le considérantsoit comme une discipline abstraite de mathématique appliquées, soit comme un outilmathématique utile pour analyser ou évaluer le comportement d’un système d’attente.C’est bien entendu ce second aspect que nous développons dans ce cours.<strong>1.</strong> IntroductionUne file d’attente est un modèle mathématique d’un phénomène d’attente. Comptetenu de l’importance des phénomènes d’attente dans notre univers quotidien, des outilsd’analyse de ses phénomènes se sont naturellement développés au fil des ans.Les exemples de phénomènes d’attente dans les sociétés dites modernes sont nombreux.Cela va des phénomènes les plus visibles, par exemple dans le domaine destransports (terrestre, aérien, . . . ) ou des services (banque, poste, . . . ) aux phénomènesd’attente plus discrets que l’on retrouve dans certains systèmes tels les réseaux téléphoniques,les systèmes informatiques, ou les réseaux informatiques.Le formalisme des files d’attente et les résultats associés ont été introduits puisse sont développés comme une discipline très pratique dont l’objectif était de construiredes modèles permettant de prédire le comportement des systèmes fournissantun service à des demandes aléatoires.Les origines du formalisme des files d’attente datent du début du XXème siècle etprincipalement des travaux de deux mathématiciens : le mathématicien danois A.K.Erlang avec ses travaux sur les réseaux téléphoniques et le russe A.A. Markov avec lacréation des modèles markoviens.C’est en 1909 que les bases ce ce formalisme sont jetées, grâce à l’article dumathématicien danois A.K. Erlang “The theory of probabilities and telephone conversations”.Les premiers résultats sont variés : Erlang observe le caractère poissonniendes arrivées des appels à un central téléphonique, et le caractère exponentiel desdurées des appels; il réussit à calculer de manière relativement simple la probabilitéd’avoir un appel rejeté. <strong>La</strong> notion d’équilibre stationnaire d’un système d’attente estintroduite.1


2 <strong>1.</strong> GÉNÉRALITÉS SUR LES FILES D’ATTENTEÀ partir des années 30, les travaux de plusieurs mathématiciens tels que Molina,Fry, Pollaczek aux États-Unis, Kolmogorov et Khintchine en Russie, Palm en Suède,ou Crommelin en France permettent à la théorie des files d’attente de se développerlentement. Ce sont ensuite les années 50 qui verront l’essor important de la théorie.Les applications de ces travaux sont alors très pratiques, et concernent les disciplinesde recherche opérationnelle et génie industriel. On peut citer les flux de trafic(véhicule, avion, personnes, télécommunications), l’ordonnancement (“scheduling” enanglais), c’est-à-dire la planification, par exemple les patients dans les hôpitaux, lesprogrammes d’un ordinateur, etc . . . , ou encore le dimensionnement (banque, poste,réseaux, téléphonie, ordinateur).Dans les années 80, cette discipline devient beaucoup plus mathématique, et lalittérature regorge d’articles décrivant des techniques ou des astuces mathématiquespermettant de trouver des solutions exactes aux modèles.Au cours de la décennie suivante, les chercheurs s’intéressent d’avantage à lacréation de modèles, et au calcul scientifique associé pour résoudre ces modèles. Eneffet, le développement de la puissance des ordinateurs permet maintenant d’obtenirdes solutions approchées des modèles suffisamment fiables pour être utilisées.Actuellement ce sont les applications dans le domaine de l’analyse de performancedes réseaux (téléphonie mobile, Internet, multimédia, . . . ) qui suscitent le plus detravaux.2. Modèle de Files d’attenteTous les exemples de phénomènes d’attente ont des caractéristiques communesque l’on peut résumer ainsi : Des entités circulent dans un système et utilisent desressources communes. Le système, les entités ou les ressources peuvent avoir un comportementimprévisible, c’est-à-dire dans le contexte d’une modélisation mathématique,aléatoire.Une file d’attente se compose des éléments suivants :• des clients (qui demandent un service);• un ou plusieurs serveurs (qui fournissent le service);• une salle d’attente, c’est-à-dire un lieu où les clients attendent quand aucun desserveurs n’est disponible pour les servir.Six caractéristiques permettent de décrire complètement une file d’attente :• Le processus d’arrivées des clients;• Le processus de service;• <strong>La</strong> discipline de service de la file d’attente, c’est-à-dire la manière dont les clientssont choisis pour recevoir leur service;• <strong>La</strong> capacité du système, c’est-à-dire le nombre total de clients pouvant se trouverdans le système à un instant donné;• Le nombre de serveurs;• Le nombre d’étages de service.


2. MODÈLE DE FILES D’ATTENTE 3Très souvent les arrivées et les durées de service de chaque clients sont imprévisibles.Elles sont donc modélisées par des processus stochastiques, et sont alors caractériséespar les lois marginales du processus.Une notation, dite notation de Kendall est communément utilisée pour décrire cinqde ces six caractéristiques. Elle se présente sous la forme d’un symbole A/S/P/K/D,où chacune des lettres désigne une caractéristique de la file, comme précisée ci-dessous :A: loi des inter-arrivées (durée entre deux arrivées successives);M: distribution exponentielle (M=Markov);E n : distribution de Erlang à n phases;D: distribution déterministe;U: distribution uniforme;G: distribution quelconque (G=General);GI: distribution quelconque, avec inter-arrivées deux à deux indépendantes.S: loi des durées de service des clients; Classification identique à celle des interarrivées;P : nombre de serveurs, P ∈ {1, 2, . . . , ∞};K: capacité du système, c’est le nombre maximum de clients qui peuvent êtreprésents simultanément dans le système, c’est-à-dire les clients en attente et lesclients en service; On a K ≥ P et K ∈ {1, 2, . . . , ∞}; Par défaut, K = ∞.D: Discipline (ou politique) de service, précisant comment les clients sont servis;FIFO: First In First Out, service dans l’ordre des arrivées;LIFO: <strong>La</strong>st In First Out, service inverse de l’ordre des arrivées;PS: Processor Sharing, serveur partagé entre tous les clients présents;RSS: Random Selection for Service, sélection aléatoire de service (ou SSA);Priorité: plusieurs classes de clients de priorité différente; le client avecpriorité la plus haute est servi en premier, et la discipline de service estFIFO au sein d’une même classe; Par défaut, D=FIFO.Pour la discipline “Priorité”, on distingue deux variantes, selon que le client enservice est interrompu lorsqu’un client plus prioritaire arrive ou non. <strong>La</strong> discipline estune discipline de priorité non préemptive si le client en service n’est pas interrompulorsqu’un client plus prioritaire entre dans le système. Dans le cas contraire, le clienten service est interrompu lorsque qu’un client plus prioritaire arrive, afin que ce dernierpuisse commencer son service aussitôt. Une fois le service du client prioritaire terminé,le client interrompu reprend son service, et on distingue deux politiques :Priorité préemptive avec recommencement: le client interrompu reprend sonservice au début;Priorité préemptive avec continuation: le client interrompu reprend son servicelà où il avait été interrompu.<strong>La</strong> file la plus simple que l’on étudiera plus tard est la file M/M/1, c’est-à-dire unefile M/M/1/∞/F IF O, constituée d’un serveur, d’une salle d’attente de taille infinie,avec des arrivées suivant un processus de Poisson, des durées de service exponentielles,et une discipline de service FIFO.


4 <strong>1.</strong> GÉNÉRALITÉS SUR LES FILES D’ATTENTE<strong>La</strong> file G/G/1 est le modèle le plus simple d’une file d’attente quelconque : unserveur, une salle d’attente de taille infinie, des arrivées et des durées de service quelconques.2.<strong>1.</strong> Processus des arrivées. Dans le formalisme des files d’attente, les arrivéesdes clients sont caractérisées par l’ensemble des instants ou dates d’arrivée de chaqueclient. Cette collection des dates d’arrivée s’appelle le processus des arrivées. Lorsqueles dates d’arrivées sont imprévisibles, elles sont modélisées par des variables aléatoires,et le processus des arrivées est alors une collection de variables aléatoires, c’est-à-direun processus stochastique.Soit a n la date (“epoch” en anglais) d’arrivée du n-ième client. Le processus desarrivées est alors la collection {a n , n = 1, 2, . . . } de variables aléatoires. Lorsque lesarrivées sont déterministes, ces variables aléatoires sont des constantes, le processusdes arrivées devient une collection de réels positifs.On appelle inter-arrivée la différence entre deux dates d’arrivées successives. Onnote en général la n-ième inter-arrivée τ n qui s’exprime commeτ n = a n+1 − a n , n = 1, 2, . . . . (2.1)Remarquons que le processus des arrivées peut être complètement défini par ladonnée de la suite des inter-arrivées {τ n , n = 1, 2, . . . }, si la date d’arrivée du premierclient a 1 est connue. En effet, en sommant l’équation (2.1) pour i = 1 à n − 1, onobtientn−1∑a n = a 1 + τ i .Définition 2.<strong>1.</strong> On appelle taux d’arrivée des clients, ou intensité des arrivées,le nombre moyen de client qui arrivent dans le système par unité de temps.Lorsque les arrivées sont aléatoires, le nombre moyen de clients est à interprétercomme une espérance mathématique.Pour conclure avec ce paragraphe, signalons deux comportements particuliers desarrivées:Arrivées par groupe: Aux instants d’arrivée, plusieurs clients arrivent simultanément.On parle alors d’arrivées par groupe (“batch” ou “bulk arrival” enanglais). <strong>La</strong> donnée de la loi caractérisant la taille du groupe est alors nécessairepour déterminer complètement le processus des arrivées.Clients impatients: Les clients sont dits impatients lorsqu’ils quittent le systèmeavant d’être servis. Cela peut arriver soit dès l’arrivée, s’ils jugent la file trop importante,on parle alors de découragement (“balked customer” en anglais), soitaprès avoir attendu (“reneged customer” en anglais), et c’est alors un abandon.Remarquons que lorsque des clients quittent la file dès leur arrivée de manièresystématique pour une taille donnée de la file, le système devient équivalent à une filed’attente à capacité finie.Signalons enfin les phénomènes de changement de files lorsque le système possèdeplusieurs files d’attentes parallèles et que les clients vont de l’une à l’autre en fonctionde leur évolution.i=1


2. MODÈLE DE FILES D’ATTENTE 5Lorsque des caractéristiques ne changent pas avec le temps, elles sont dites stationnaires.En particulier lorsque la distribution des inter-arrivées est indépendantedu temps, les arrivées sont dites stationnaires, et le processus stochastique associé esteffectivement stationnaire au sens probabiliste du terme. Très souvent, on s’intéresseau régime permanent du système, c’est-à-dire à l’état du système après un temps suffisammentlong pour que ses caractéristiques ne varient plus avec le temps. On parlealors de régime stationnaire. Nous aurons l’occasion de revenir ultérieurement sur cesnotions.2.2. Processus de service. Un client entre dans une file d’attente pour utiliserdes ressources qui sont modélisées par un serveur. Chaque client entrant dans une filed’attente va donc utiliser le serveur pendant une certaine durée qui dépend du client.À chaque client est donc associée une demande de service. Cette demande n’est pasnécessairement la durée effective de service, comme le montre le cas d’une file d’attentede discipline de service priorité préemptive avec recommencement, où un client dontle service est interrompu devra le reprendre au début. Néanmoins, dans la plupart descas, la demande de service correspond à la durée de service effectivement réalisée parle client.Soit σ n le service demandé par le n-ième client de la file (n-ième arrivée). Les duréesde service de tous les clients sont donc décrits par le processus de service {σ n , n =1, 2, . . . } qui peut être déterministe ou aléatoire.Comme pour les arrivées, le service peut être fourni par groupe (“batch service”en anglais), comme par exemple dans le cas d’un ordinateur avec traitement parallèle,ou encore un modèle de visite guidées ou d’embarquement dans un train.Le processus de service peut dépendre du nombre de clients en attente, par exempleplus rapide si la file grossit, on parle alors de service dépendant de l’état du système.Le processus de service peut être stationnaire ou non. Souvent les durées de serviceσ n sont deux à deux indépendantes.<strong>La</strong> date de départ ou date de sortie est la date de fin de service des clients. Elleest en général notée d n et peut s’exprimer en fonction de la date d’arrivée, le tempsd’attente et la durée de service effectivement reçue. Si w n dénote le temps d’attentedu n-ième client et si le service reçu est le service demandé, on a pour chaque client,d n = a n + w n + σ n .Lorsque l’on modélise un phénomène d’attente, le choix du modèle est important,et la bonne compréhension du système réel est donc primordiale. Par exemple, deuxmodèles simples peuvent convenir pour modéliser K guichets de poste :• un premier modèle consistant à modéliser l’ensemble des K guichets par K filesd’attente à serveur unique indépendantes, les clients choisissant un guichet demanière aléatoire et ne changeant plus de files ensuite;• un second modèle possible est obtenu par une file d’attente commune avec Kserveurs, où le premier client a être servi prend le premier serveur libre.C’est le premier modèle qui est le plus proche du phénomène réel, à ceci près quele choix de la file par le client n’est pas totalement aléatoire, et les clients peuvent


6 <strong>1.</strong> GÉNÉRALITÉS SUR LES FILES D’ATTENTEchanger de files. Suivant le comportement des clients (plus ou moins de changementsde files), c’est l’un ou l’autre des deux modèles qui sera le plus fidèle. Souvent lemodèle réel correspond à un mélange de plusieurs modèles théoriques.3. Mesures de performanceNous venons de voir ce qu’était un modèle mathématique de file d’attente autravers de ses caractéristiques physiques. Nous allons maintenant nous intéresser àl’efficacité d’une file d’attente, dont les mesures sont très importantes dans les applications.L’efficacité d’une file d’attente est déterminée par un certain nombre de mesures deperformance qui sont calculées ou évaluées à partir de ses caractéristiques physiques.De manière générale on peut identifier trois familles de mesures de performanceintéressantes à calculer lors de l’analyse d’une file d’attente :• Une mesure du temps d’attente subit par un client quelconque;• Une indication sur la manière dont les clients peuvent s’accumuler dans lesystème;• Une mesure de la durée de repos (ou d’activité) des serveurs.Comme les caractéristiques de base des files sont souvent aléatoires, ces élémentsde mesure de performance sont également aléatoires, et leur caractérisation nécessitela détermination des lois associées ou au moins des valeurs moyennes.Nous allons maintenant passer en revue un certain nombre d’indicateurs de laperformance d’une file d’attente.3.<strong>1.</strong> Nombre de clients. Le nombre de clients dans une file d’attente est lamesure principale qui permet d’étudier le comportement de la file.Sot N(t) le nombre de clients présents dans la file d’attente (donc en attente eten service) à l’instant t. Alors N(t) est à valeur entière, avec N(t) ∈ {0, 1, . . . , K} oùK est la capacité de la file.Lorsque l’une au moins des caractéristiques de la file est aléatoire, N(t) est aléatoire,c’est-à-dire pour tout instant t, N(t) est une variable aléatoire. <strong>La</strong> collection {N(t), t ≥0} est alors un processus stochastique, ce qui complique l’analyse du système.Pour fixer les idées, supposons que la file d’attente soit déterministe. Si elle nel’est pas, on pourra se ramener au cas précédent en considérant une trajectoire desprocessus stochastiques.<strong>La</strong> courbe t → N(t) est alors une courbe en escalier. Considérons par exemple unefile d’attente G/G/1/∞/FIFO avec un serveur, une capacité illimitée et une disciplinede service FIFO, dont les dates d’arrivées et les durées de service des cinq premiersclients sont résumées dans le tableau <strong>1.</strong>Il est alors aisé de construire la courbe représentant le nombre de clients dans lesystème N(t) en fonction du temps. <strong>La</strong> technique consiste à représenter les durées deservice sur l’axe du temps. On obtient le graphe de la Figure <strong>1.</strong>3.2. Temps de réponse ou temps de séjour.Définition 3.<strong>1.</strong> On appelle temps de réponse (ou de séjour) d’un client dans unefile d’attente la différence entre sa date de départ et sa date d’arrivée.


3. MESURES DE PERFORMANCE 7Client date d’arrivée durée de servicen a n σ n1 0 42 2 83 6 44 8 45 15 2Table <strong>1.</strong> Exemples d’instants d’arrivée et de durée de service3N(t)N(t) fonction de t21t0 2 4 6 8 10 12 14 15 16 18 20 22σ 1 σ 2σ 3σ 4σ 5σ n= duree de service du client nFigure <strong>1.</strong> Nombre de clients en fonction du tempsLe temps de réponse se décompose généralement en un temps d’attente passé dansla salle d’attente, et un temps de service passé dans le serveur. Suivant la politiquede service, un client peut alterner plusieurs fois entre la salle d’attente et le serveur,au gré des interruptions de service. Le temps de réponse est alors le temps total passédans le système.Suivant le système étudié et la mesure de performance recherchée, on utilise l’unou l’autre de ces temps. Par exemple, dans un parc d’attraction, le client n’est sensiblequ’au temps d’attente, le temps de service ne compte pas. À l’inverse, dans le


8 <strong>1.</strong> GÉNÉRALITÉS SUR LES FILES D’ATTENTEcas de machines en réparation dans un atelier de maintenance, c’est le temps total,correspondant à la durée d’immobilisation de la machine, qui est important.Dans la même logique, on distingue parfois le nombre de clients en attente dunombre de clients en service. C’est par exemple le nombre de clients en attente quiest intéressant pour dimensionner une salle d’attente.3.3. Charge et courbe de charge.Définition 3.2. <strong>La</strong> charge d’un système à l’instant t, W (t) est la quantité detravail qui reste à effectuer par le ou les serveurs à l’instant t.Le terme anglais est “workload”. <strong>La</strong> charge se calcule à partir du nombre de clientsdans le système à l’instant t et de leur durée de service. C’est une mesure liée à laperformance des serveurs.<strong>La</strong> courbe de charge est un graphe de la charge W (t) en fonction du temps t. L’unitéutilisée pour sa construction dépend de l’application concernée. Cela sera par exempledes bits ou des octets pour les réseaux de données, ou un nombre d’instructions pourdes CPU.En général, on essaie de se ramener à l’unité de temps en utilisant la vitesse duserveur mesurée en unité de travail par unité de temps. Par exemple, pour un réseautransportant des paquets de N octets à la vitesse de c octets par seconde, on utilisera, soit des secondes. <strong>La</strong> Figure 2 représente la courbe decharge pour l’exemple précédent.Les principales propriétés de la charge W (t) peuvent se lire sur la courbe de charge.Remarquons que la forme d’une courbe de charge est toujours en dents de scie, puisquela pente est décroissante tant qu’un client est en service, avec un saut à chaque arrivéepour W (t) l’unité Noctetscoctets/sd’un client. L’amplitude du saut correspond au service demandé par le client quiarrive. <strong>La</strong> pente de décroissance est égale, en valeur absolue, à la vitesse du serveurmesurée en unité de charge par unité de temps. Lorsque la même unité est choisie,la pente est de −<strong>1.</strong> Lorsque la charge atteint 0, elle reste nulle jusqu’à la prochainearrivée, et la durée où elle reste nulle correspond à la période de repos du serveur.Plus intéressant dans la pratique, les dates de départ sont obtenues en prolongeantles sections décroissantes jusqu’à l’axe des temps, du moins lorsque la discipline deservice est FIFO. En effet, si le n-ième client arrive à l’instant a n , il trouve à cetinstant une quantité de travail dans la file de W (a − n ). Pour une discipline de serviceFIFO, ce client commencera son service lorsque le serveur sera libre, c’est-à-dire àl’instant a n + W (a − n ). Il finira donc son service à la dated n = a n + W (a − n ) + σ n .Or le saut de charge à l’instant a n s’écrit W (a + n ) = W (a − n ) + σ n , et on en déduitdonc qued n = a n + W (a + n ),autrement dit le prolongement de la n-ième section décroissante donne bien d n .Les graphes du nombre de clients N(t) et de la charge W (t) représentent deuxmanières complémentaires de décrire l’évolution d’une file d’attente. Les liens entreces deux graphes apparaissent clairement sur la Figure 3.


4. PROPRIÉTÉS DES FILES D’ATTENTE 9W(t) fonction de tW(t)1210864202 4 6 8 10 12 14 16 18 20 22tFigure 2. Courbe de charge3.4. Période d’activité et d’inactivité. Une file d’attente évolue suivant unesuccession de périodes d’activité et d’inactivité, selon l’occupation de son ou de sesserveurs.Définition 3.3. Une période d’activité (“busy period”) du ou d’un serveur est unintervalle de temps pendant lequel des clients sont servis continûment. Une périoded’inactivité ou de repos (“idle period”) est un intervalle de temps pendant lequel aucunservice n’est délivré.On appelle cycle d’activité la succession d’une période d’activité et d’une périoded’inactivité. Dans le cas d’une discipline de service FIFO, le serveur travaille si etseulement si il y a des clients dans le système, c’est-à-dire si et seulement si la chargedu système est strictement positive :période d’activité ⇔ N(t) > 0 ⇔ W (t) > 0.4. Propriétés des files d’attenteLes caractéristiques générales d’une file d’attente, ainsi que ses différentes mesuresde performance étant identifiées, nous allons chercher à relier ces quantités entre ellespour en déduire des propriétés génériques des files.Il existe tout d’abord une relation de récurrence simple entre les temps d’attentedes clients. Soient {a n , n = 1, 2, . . . } et {σ n , n = 1, 2, . . . } respectivement les processus


10 <strong>1.</strong> GÉNÉRALITÉS SUR LES FILES D’ATTENTEa 1a 2a 3a 4a 512W(t)10864202 4 6 8 10 12 14 16 18 20 22tN(t)321t0 2 4 6 8 10 12 14 16 18 20 22σ 1 d σ σ 2 d 3σ 4σ 51 2d 3d 4d 5Figure 3. Relation entre nombre de clients et chargedes arrivées et de service d’une file d’attente. On note par (x) + le maximum de x etde 0, soit(x) + = max{x, 0} ={x si x > 0,0 si x ≤ 0.Proposition 4.<strong>1.</strong> Soit τ n = a n+1 − a n la n-ième inter-arrivée et W n le tempsd’attente du n-ième client, autrement dit le temps passé par ce client dans la salled’attente. Alors pour tout n = 1, 2, . . . , on a la relation de récurrence suivante appelée


formule de Lindley ou récursion de Lindley4. PROPRIÉTÉS DES FILES D’ATTENTE 11W n+1 = (W n + σ n − τ n ) + ={Wn + σ n − τ n si W n + σ n − τ n > 0,0 si W n + σ n − τ n ≤ 0.Preuve. <strong>La</strong> démonstration de cette proposition est immédiate. Deux cas seprésentent : Si le client précédent n’est plus en service (serveur libre) lorsque le(n + 1)-ième arrive, le temps d’attente est nul. Cette situation correspond au casW n + σ n ≤ a n+1 − a n , comme illustré sur le schéma ci-dessous.a nW n σ nτ na n+1tPar contre si le serveur est occupé (par le n-ième client ou des clients précédents) àl’instant où le (n+1)-ième arrive (soit à a n+1 ), le temps d’attente de ce dernier est égalau temps résiduel d’occupation du serveur. Celui-ci s’exprime aisément en fonctiondu temps d’attente et du temps de service du n-ième client, et s’écrit, comme on peutle constater sur le schéma ci-dessous,W n+1 = (W n + σ n ) − (a n+1 − a n ),puisque a n+1 − a n représente la fraction de la durée W n + σ n écoulée avant l’arrivéedu (n + 1)-ième client.W na na n+1σ ntCette situation ne se produit que lorsque le serveur est occupé à l’arrivée du (n + 1)-ième client, c’est-à-dire si W n + σ n > a n+1 − a n .<strong>La</strong> récursion de Lindley est alors aisément obtenue en regroupant les deux casétudiés et en se rappelant que la n-ième inter-arrivée est donnée par τ n = a n+1 −a n .Nous allons maintenant présenter un résultat très important bien qu’intuitivementtrès simple. Il s’agit de la loi de Little. Cette loi est très utilisée dans la pratique pourdimensionner un système ou analyser rapidement sa performance.Nous nous plaçons toujours dans un contexte déterministe pour aider à la compréhensiondes arguments. Dans le cas où la file d’attente est aléatoire, les résultatset les preuves restent valides en raisonnant sur une trajectoire des processus.<strong>La</strong> loi de Little relie de manière simple le nombre moyen de clients dans le systèmeavec le temps moyen passé dans le système. Elle reprend l’idée intuitive et malheureusementsouvent expérimentée que plus le nombre de clients dans une file d’attenteest élevé, plus le temps moyen passé par chaque client dans la file est important. Demanière similaire, pour un réseau admettant en moyenne 1000 paquets par seconde,chaque paquet restant en moyenne dans le réseau 5 secondes, on estime intuitivement


12 <strong>1.</strong> GÉNÉRALITÉS SUR LES FILES D’ATTENTEque le nombre moyen de paquets dans le réseau est de 5000 paquets. Et bien la loi deLittle justifie cette idée intuitive.On s’intéresse à une file d’attente sur l’intervalle de temps [0, t]. Soit A(t) et D(t)respectivement le nombre total d’arrivées et de départs du système dans l’intervalle[0, t]. Soit N(t) le nombre total de clients dans le système à l’instant t, et T i le tempspassé dans le système par le i-ème client.On définit le taux moyen d’arrivée à l’instant t comme la quantitéλ t= A(t) .t<strong>La</strong> somme ∑ A(t)i=1 T i représente le temps total passé dans le système par tous lesclients qui sont arrivés dans le système pendant l’intervalle [0, t]. <strong>La</strong> quantitéT t =∑ A(t)i=1 T i,A(t)peut alors être interprétée comme le temps moyen passé par chaque client dans lesystème jusqu’à l’instant t.Enfin, N(t) représentant le nombre de clients dans le système à l’instant t, l’intégraleN t= 1 t∫ t0N(s)dsreprésente la moyenne (temporelle) du nombre de clients dans le système jusqu’àl’instant t.Comme nous le verrons par la suite, c’est souvent le comportement en régimepermanent du système qui nous intéresse, c’est à dire après un temps suffisamment longpour que ce comportement ne dépende plus de l’instant où l’on considère le système.<strong>La</strong> loi de Little permet de relier les quantités N t , λ t et T t en régime permanent, c’està-direen régime limite (t → ∞), lorsque ce régime existe.Théorème 4.2 (Loi de Little). Si les limites quand t → ∞ de N t , λ t et T t existentet valent respectivement N, λ et T , alorsN = λ T . (4.1)Autrement dit, le nombre moyen de clients dans un système est égal au produit dutaux moyen d’arrivées par le temps moyen passé par chaque client dans le système.<strong>La</strong> force de la loi de Little est sa simplicité et sa validité pour tout type de système,y compris les files d’attente avec des arrivées et/ou des durées de services aléatoires.Le terme moyen représentera alors une moyenne ensembliste, c’est à dire une espérancemathématique. Nous reviendrons plus en détail sur la forme que revêt la loi de Littlepour des systèmes aléatoires au Paragraphe ?? du <strong>Chapitre</strong> ?? . Il existe de nombreusesdémonstrations de la loi de Little, plus ou moins complexes suivant le niveaude rigueur recherché et les hypothèse faites. Nous présentons ici une démonstrationsimple et intuitive, basée sur un argument graphique. Nous restons donc dans lecontexte d’une file d’attente déterministe.


4. PROPRIÉTÉS DES FILES D’ATTENTE 13Preuve. Pour simplifier la démonstration, supposons que le système soit vide àl’instant initial, soit N(0) = 0, et que la discipline de service soit FIFO, premier arrivé,premier servi. <strong>La</strong> figure 4 représente les graphes des fonctions A(t) et D(t) en fonctiondu temps t. Les fonctions A(t) et D(t) représentent respectivement le nombre totald’arrivées et de départs dans l’intervalle [0, t], et sont donc des fonctions en escaliercroissantes, d’incrément unité. Les sauts correspondent à une arrivée pour A(t) ou àun départ pour D(t). A tout instant t, la différence A(t) − D(t) représente le nombre8765A(t)43N(t)D(t)21T 1T 201 2 3 4 5 6 7 8t9 10 11Figure 4. Preuve de la loi de Little. Graphes de A(t) et D(t).de clients dans le système à cet instant. L’aire comprise entre les deux courbes A(t)et D(t) sur le graphe de la Figure 4 est l’intégrale de la fonction A(t) − D(t) = N(t),et s’exprime donc comme∫ t0N(s) ds .Pour tout instant t tel que N(t) = 0, (c’est-à-dire A(t) = D(t)), cette aire s’exprimeégalement comme la somme des aires de chacun des rectangles la constituant. Or lerectangle no i est de hauteur unité et de largeur, la différence entre la date de départd i et l’instant d’arrivée a i du client no i. Cette différence d i − a i n’est rien d’autre quele temps passé dans le système par le client no i, soit T i . On peut donc écrire∫ t0N(s) ds =A(t)∑T i , pour tout t tel que N(t) = 0,i=1


14 <strong>1.</strong> GÉNÉRALITÉS SUR LES FILES D’ATTENTEet on obtient finalement, pour tout t tel que N(t) = 0,N t= 1 t∫ t0N(s) ds = A(t)tA(t)1 ∑T i = λ t T t .A(t)Il reste maintenant à prendre la limite quand t → ∞ dans l’expression ci-dessouspour obtenirN = λT ,qui est l’expression désirée. Il est important de noter que le passage à la limite cidessusn’est possible que si l’on sait que le système se vide (soit N(t) = 0) infinimentsouvent et pour des temps t arbitrairement grand. Ceci est en fait vrai (et admis ici)pour une file d’attente à l’équilibre.Remarquons qu’en l’absence de cette propriété, il est possible, quelque soit l’instantt, de majorer l’aire ∫ t0 N(s) ds par ∑ A(t)i=1 T i et de la minorer par ∑ D(t)i=1 T i, et on endéduit alors pour tout t > 0,soitD(t)tD(t)T i1 ∑D(t)i=1D(t)t≤ 1 t∫ t0D(t)i=1N(s) ds ≤ A(t)tA(t)1 ∑T i ,A(t)i=11 ∑T i ≤ N t ≤ λ t T t . (4.2)D(t)i=1En admettant que pour une file d’attente à l’équilibre D(t)ttend vers le taux d’arrivéemoyen λ lorsque t → ∞ etlimt→∞D(t)1 ∑D(t)i=1A(t)1 ∑T i = limt→∞ A(t)i=1T i = T ,on obtient N = λT en prenant la limite lorsque t → ∞ dans (4.2).Signalons enfin que cette preuve graphique peut être facilement adaptée pourdémontrer la loi de Little sans l’hypothèse d’une discipline de service FIFO.L’importance de la loi de Little tient dans sa généralité. Elle est en fait valablepour quasiment tout système “stable”, c’est-à-dire tout système qui possède un régimepermanent.Exemple 4.<strong>1.</strong> On considère un réseau de transmission de donnée, où des paquetsarrivent à chacun des n routeurs avec un taux d’arrivée λ i , i = 1, . . . , n. Si N est lenombre moyen de paquet dans l’ensemble du réseau, alors d’après la loi de Little, ledélai moyen de transmission d’un paquet T , c’est-à-dire le temps moyen passé par unpaquet dans le réseau vérifien∑N = λ i T ,i=1


5. MODÉLISATION FLUIDE 15puisque le taux d’arrivée global des paquets dans le réseaux est la somme des tauxd’arrivées à chacun des routeurs du réseau. On en déduit alors le délai moyen detransmission d’un paquet,NT = ∑ ni=1 λ ,iqui est donc indépendant de la longueur des paquets, de leur distribution éventuelle,et de la technique de routage des paquets implémentée.De plus, si on applique maintenant la loi de Little au routeur no i, on obtientN i = λ i T i ,où N i et T i sont respectivement le nombre moyen de paquets et le délai moyen despaquets arrivant au routeur no i. ♦5. Modélisation fluideNous avons jusqu’à présent considéré des systèmes d’attente à événements discrets,où la charge (les clients) est apportée au système à des instants discrets. Il est tout afait concevable d’imaginer que la charge du système soit générée de manière continueau cours du temps.Par exemple dans un réseau, les bits peuvent être vus, en première approximation,comme un flux continu se présentant au routeur. <strong>La</strong> modélisation associée à ce typede phénomène est dit fluide en référence au modèle de barrage hydraulique.Le modèle fluide, représenté ci-dessous consiste d’une source émettant à un tauxλ(t), éventuellement aléatoire et d’un réservoir en amont d’un orifice de sortie laissantle fluide s’écouler à un taux c(t), qui peut également être aléatoire.λ(t)X(t)Soit X(t) le contenu du buffer (réservoir) à l’instant t. Pour déterminer l’équationgouvernant X(t) cherchons à évaluer le contenu du réservoir à l’instant t + dt. Entre tet t+dt, le contenu du réservoir augmente de ce que émet la source, λ(t)dt, et diminuede ce qui s’écoule, soit c(t)dt, à condition toutefois que le réservoir ne soit pas déjàvide à t, autrement dit que X(t) soit strictement positif.Il vient{ ( )X(t) + λ(t) − c(t) dt, X(t) > 0,X(t + dt) = ( ) +dt, λ(t) − c(t) X(t) = 0,où (x) + = max(x, 0).En passant à la limite lorsque dt → 0, on obtient l’équation différentielle suivantec(t)dX(t)dt={λ(t) − c(t), X(t) > 0,(λ(t) − c(t)) +, X(t) = 0. (5.1)


16 <strong>1.</strong> GÉNÉRALITÉS SUR LES FILES D’ATTENTELorsque les taux λ(t) ou c(t) sont aléatoires, le processus du contenu du réservoir{X(t), t ≥ 0} devient un processus stochastique, et l’équation (5.1) devient uneéquation différentielle stochastique (EDS), souvent complexe à résoudre.Dans les modèles fluides utilisés en analyse de performance des réseaux, les modèlesavec des sources ON/OFF sont très courants.Exemple 5.1 (Source ON/OFF). Pour ces modèles, l’émission du fluide se faitselon simplement deux états de la source,• source ON (période d’activité) : la source émet selon un taux constant λ(t) = rfixé;• source OFF (période d’inactivité) : la source n’émet pas, λ(t) = 0.L’écoulement du fluide se fait lui de manière continue et constante, avec u taux c(t) =c > 0 qui représente par exemple la capacité du réseau.Si r < c, le réservoir est bien sur toujours vide, ce modèle ne présente pas beaucoupd’intérêt, mais pour r > c, le contenu du réservoir évolue selon les périodes d’activitéset d’inactivité de la source, comme illustré par la Figure 5 où r = 2 et c = <strong>1.</strong>321ON ON ONt00 5 10 156W(t)54321t00 5 10 15Figure 5. Modèle fluide : Source ON/OFF déterministe, r = 2, c = 1Les durées des périodes d’activité et d’inactivité sont dans la pratique aléatoires eton peut les modéliser par des processus stochastiques. Un exemple célèbre est le modèled’Anick, Mitra et Sondhi [1], repris ensuite par bon nombres de chercheurs ([2, 3])qui utilise une chaîne de Markov à temps continu et à deux états pour modéliser cespériodes d’activité et d’inactivité. Ce modèle a été utilisé pour représenter l’activité


6. EXERCICES 17de réseaux de données dans les années 80. Son intérêt réside en partie dans le fait queles calculs s’effectuent dans ce cas relativement facilement, et que l’on peut déterminercomplètement le régime permanent du modèle. ♦6. ExercicesExercice <strong>1.</strong>1 (Formule de Little). On considère une portion d’un réseau detransmission de données comportant trois routeurs. Les routeurs no 1 et no 2 envoientdes fichiers de données au routeur no 3, avec des durées de transmission respectivesde R 1 et R 2 unités de temps. Le routeur no 3 traite les fichiers reçus des routeursno 1 et no 2 respectivement, en P 1 et P 2 (P i ≥ R i , i = 1, 2) unités de temps, avantde demander le fichier suivant (à l’un ou à l’autre des deux routeurs). Les fichiersreçus par le routeur no 3 lorsque celui-ci traite un fichier sont mis en attente dansun buffer de taille infini. Soit λ i , i = 1, 2, le nombre moyen de fichier émis par unitéde temps par le routeur no i. A l’aide de la formule de Little appliquée à différentssous-systèmes de cette portion de réseau, montrer que l’on a nécessairementλ 1 (P 1 − R 1 ) ≤ λ 2 R 2 ,λ 2 (P 2 − R 2 ) ≤ λ 1 R 1 ,1max(R 1 + P 1 , R 2 + P 2 ) ≤ λ 1 + λ 2≤et1min(R 1 + P 1 , R 2 + P 2 ) .


18 <strong>1.</strong> GÉNÉRALITÉS SUR LES FILES D’ATTENTE


Bibliographie[1] D. Anick, D. Mitra, and M. M. Sondhi. Stochastic theory of a data-handling system with multiplesources. The Bell System Technical Journal, 61(8):1871–1894, October 1982.[2] Anwar I. Elwalid and Debasis Mitra. Analysis and design of rate-based congestion control of highspeed networks, I: stochastic fluid models, access regulation. Queuing Systems, 9:29–64, 199<strong>1.</strong>[3] Anwar I. Elwalid and Debasis Mitra. Fluid models for the analysis and design of statistical multiplexingwith loss priorities on multiple classes of bursty traffic. pages 3C.4.1–3C.4.1<strong>1.</strong> IEEE GlobalTelecommunications Conference, December 199<strong>1.</strong>19

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!