Vous êtes sur la page 1sur 5

0 = 0, c’est le truc du noyau !

Application aux files


d’attente
Anne Bouillard, Céline Comte, Élie de Panafieu, Fabien Mathieu

To cite this version:


Anne Bouillard, Céline Comte, Élie de Panafieu, Fabien Mathieu. 0 = 0, c’est le truc du noyau !
Application aux files d’attente. ALGOTEL 2019 - 21èmes Rencontres Francophones sur les Aspects
Algorithmiques des Télécommunications, Jun 2019, Saint Laurent de la Cabrerisse, France. �hal-
02118156�

HAL Id: hal-02118156


https://hal.archives-ouvertes.fr/hal-02118156
Submitted on 2 May 2019

HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est


archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents
entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non,
lished or not. The documents may come from émanant des établissements d’enseignement et de
teaching and research institutions in France or recherche français ou étrangers, des laboratoires
abroad, or from public or private research centers. publics ou privés.
0 = 0, c’est le truc du noyau !
Application aux files d’attente
Anne Bouillard1 et Céline Comte12 et Élie de Panafieu1 et Fabien Mathieu1 †
1 Nokia Bell Labs France, Nozay, France
2 Télécom ParisTech, Paris, France

Le calcul réseau stochastique est un outil de calcul de bornes d’erreur sur la performance des réseaux de files d’attente.
Obtenir des bornes précises pour des réseaux constitués de plusieurs files ou soumis à des arrivées non-indépendantes est
un exercice délicat. Dans ce papier, nous évaluons la pertinence des outils de combinatoire analytique pour aborder ce
problème. Nous appliquons en particulier la méthode du noyau pour exprimer les fonctions génératrices des distributions
des états des files, ce qui nous permet de calculer des bornes d’erreur d’une précision arbitraire sur le comportement à
l’état stationnaire. Dans ce travail préliminaire, nous nous focalisons sur des exemples simples mais représentatifs des
difficultés que la méthode du noyau permet de surmonter. Ces résultats sont validés par des simulations.
Cet article est une version condensée de l’article [BCdPM18].
Mots-clefs : files d’attente, combinatoire analytique, méthode du noyau, calcul réseau stochastique

1 Introduction
Le développement des nouvelles technologies de communication sans fil (5G) a jeté un nouvel éclairage
sur la théorie des files d’attente, avec de fortes exigences en termes d’occupation du tampon, de latence et
de fiabilité. Dans beaucoup de scénarios, les paquets arrivent groupés et sont traités par un serveur à taux
constant. La file G/D/1 apparaı̂t donc comme un modèle naturel. Le calcul réseau stochastique [FR15]
a été développé pour analyser de telles files, et en particulier pour calculer des bornes d’erreur sur leur
performance en intégrant des outils probabilistes dans le formalisme du calcul réseau. Malheureusement, si
les bornes sont très précises pour une file isolée [PC14, CP15], elles deviennent très grossières lorsqu’elles
sont appliquées à un réseau de plusieurs files [CBL06, NS17]. Les fonctions génératrices, elles, sont au cœur
de la combinatoire analytique [FS09], un sous-domaine de la combinatoire. Cette communauté a développé
des outils mathématiques tels que la méthode du noyau [BF02, BMM10] pour étudier les marches aléatoires
[FG00], dont les liens avec la théorie des files d’attente ont déjà été identifiés et exploités [FIM17]. Dans
cet article, nous montrons comment utiliser les séries génératrices et la méthode du noyau pour obtenir des
bornes d’erreur précises sur les systèmes de files d’attente.

2 Présentation de la méthode sur une file simple


Dans cette partie, nous présentons l’exemple d’une file à un serveur et un flot de paquets, comme
représentée en F IGURE 1. Les résultats présentés ici ne sont pas nouveaux (nous finissons par redécouvrir
la formule de Pollaczek-Khinchine et appliquons les résultats développés par [BF02]) mais notre objectif
est de présenter la méthode. Des résultats nouveaux seront présentés dans la partie 3.
Modèle de file d’attente La file est initialement vide. À chaque unité de temps t ≥ 1, un paquet est servi
(si la file est non-vide) puis At paquets arrivent. La suite (At )t≥0 est i.i.d. de fonction génératrice A et de
moyenne λ < 1. On note Xt le nombre de paquets dans la file à la fin du temps t. L’évolution du système
est décrite par les équations suivantes :
X0 = 0 et Xt+1 = (Xt − 1)+ + At+1 , ∀t ≥ 0, où (·)+ = max(·, 0). (1)
† Les auteurs sont membres du LINCS, voir https://www.lincs.fr.
Anne Bouillard et Céline Comte et Élie de Panafieu et Fabien Mathieu

Xt ∼ Φ
At ∼ A
1

F IGURE 1: Une file à un serveur traversée par un unique flot de paquets. Le traitement d’un paquet par le
serveur nécessite une unité de temps.

Méthode symbolique On définit la fonction génératrice [FS09] de l’état de la file par


Φ(u, z) = ∑ ∑ P(Xt = n)un zt . (2)
n≥0 t≥0

Pour chaque t ∈ N, extraire le coefficient de zt donne la fonction génératrice de la variable aléatoire Xt :


 t
z Φ(u, z) = ∑ P(Xt = n)un . (3)
n≥0

En utilisant la méthode symbolique [FS09], on peut traduire l’équation (1) en l’équation suivante vérifiée
par la fonction génératrice Φ :
Φ(u, z) = 1 + zA(u) (Φ(u, z) − Φ(0, z))u−1 + Φ(0, z) .
 
(4)
Bien que cette équation caractérise complètement la fonction Φ, en tirer une formule explicite pour Φ(u, z)
n’est pas immédiat puisque cela nécessiterait de connaı̂tre une expression pour Φ(0, z). Nous présentons
maintenant une méthode systématique pour contourner ce problème.
Méthode du noyau L’équation (4) peut se ré-arranger en
Φ(u, z) 1 − zA(u)u−1 = 1 − Φ(0, z)zA(u) u−1 − 1 .
   
(5)
Lorsque le membre de gauche de (5) s’annule, le membre de droite s’annule aussi : 0 = 0. La méthode du
noyau [BF02, BMM10] exploite cette remarque simple en choisissant u = U(z) tel que le second facteur
du membre de gauche s’annule. Ici, U(z) est implicitement défini par l’égalité U(z) = zA(U(z)), qui se
trouve aussi être l’équation qui caractérise la fonction génératrice TA du nombre de nœuds dans un arbre
de Galton-Watson dont la distribution du nombre d’enfants par nœud admet A comme fonction génératrice.
L’annulation du membre de droite de (5) permet de calculer Φ(0, z) en fonction de U(z) = TA (z), puis de
trouver Φ(u, z). On obtient ainsi

1 + 1−T1 (z) zA(u) 1 − u−1



1 A
Φ(0, z) = et Φ(u, z) = . (6)
1 − TA (z) 1 − zA(u)u−1
Performances asymptotiques Nous souhaitons calculer des bornes d’erreur, c’est-à-dire la probabilité
qu’une variable aléatoire X, distribuée selon la distributon stationnaire de la chaı̂ne de Markov (Xt )t≥1 ,
dépasse une valeur R. On calcule d’abord la fonction génératrice Π de la distribution stationnaire, puis on
obtient le comportement asymptotique de la borne d’erreur à partir de Π.
La fonction génératrice Π(u) est la limite de [zt ]Φ(u, z) quand t tend vers +∞, et cette limite se calcule en
étudiant Φ(u, z) au voisinage de z = 1. En effet, on vérifie aisément que z = 1 est la singularité dominante
de Φ(u, z). En utilisant le développement TA (z) = 1 + (z − 1)TA0 (1) + o(z − 1), l’égalité TA0 (1)(1 − E[At ]) = 1
et le résultat de [FS09, p. 294, Th. V.1], on retrouve la formule de Pollaczek-Khinchine
A(u)(u − 1)
Π(u) = (1 − λ) .
u − A(u)
La fonction génératrice de la borne d’erreur est
 
1 − uΠ(u)
E(u) = ∑ ∑ π(n) uR = . (7)
R≥0 n≥R 1−u
0 = 0, c’est le truc du noyau ! Application aux files d’attente

L’analyse asymptotique de cette fonction est obtenue au voisinage de sa singularité dominante, qui est celle
de Π, à savoir le plus grand point fixe de u = A(u), noté β. Elle permet de trouver le comportement limite :

β
P(X ≥ R) ∼ (1 − λ) β−R . (8)
R→∞ A0 (β) − 1

3 Extensions
Nous listons ici quelques extensions obtenues dans [BCdPM18], sans détailler les calculs.
File multi-flots On considère une file d’attente avec deux flots de paquets. Le flot 1 (resp. 2) est prioritaire
(resp. non prioritaire) et son processus d’arrivée est décrit par la fonction génératrice A (resp. B) de moyenne
λA (resp. λB ), avec λA + λB < 1. Le nombre de paquets du flot 1 (resp. 2) à la fin du temps t est noté Xt
(resp. Yt ). Initialement, on a X0 = Y0 = 0. La dynamique du système est ensuite décrite par l’équation (9).
Xt , Yt ∼ Φ (
At ∼ A Xt+1 = (Xt − 1)+ + At+1 ,
(9)
1 Yt+1 = (Yt − 1{Xt =0} )+ + Bt+1 , ∀t ≥ 0.
Bt ∼ B
Soit δ la plus grande solution de l’équation v = TA (B(v)) (TA et B étant convexes, il y a exactement deux
solutions, dont la plus petite est 1). En effectuant le même raisonnement que précédemment, on obtient :

(1 − λA − λB )B(δ)(δ − 1) −R
P(Y ≥ R) ∼ δ . (10)
R→∞ (1 − B(δ))(1 − (TA ◦ B)0 (δ))

Files en tandem On considère un système de deux files d’attentes avec deux flots de paquets, comme
décrit par la figure ci-dessous. Le processus d’arrivée du flot 1 (resp. 2) est décrit par la fonction génératrice
A (resp. B). Le nombre de paquets dans la file 1 (resp. 2) à la fin du temps t est Xt (resp. Yt ). Initialement,
on a X0 = Y0 = 0. La dynamique du système est ensuite décrite par l’équation (11) pour tout t ≥ 0.
Bt ∼ B
Xt ∼ Φ Yt ∼ Φ 
Xt+1 = (Xt − 1)+ + At+1 ,
At ∼ A (11)
Yt+1 = (Yt − 1)+ + Bt+1 + 1{Xt >0} .
1 1

En notant à nouveau δ la plus grande solution de l’équation v = TA (B(v)), on obtient :

(1 − λA − λB )δ(δ − 1)
P(Y ≥ R) ∼ δ−R . (12)
R→∞ (1 − B(δ))(1 − (TA ◦ B)0 (δ))

4 Résultats numériques
Pour valider notre approche, nous comparons les résultats obtenus à des approximations plus simples
ainsi qu’à des simulations pour les trois scénarios présentés : la file simple, la file multi-flots, et les deux files
en tandem. Les simulations sont obtenues en calculant la distribution stationnaire par itérations successives
sur une ou deux file(s) tronquées G/D/1/L en utilisant les équations (1), (9) ou (11). La F IGURE 2 montre
un aperçu les résultats, en utilisant comme processus d’arrivée des distributions bimodales, de fonction
génératrice D p,M (u) = (1 − p) + puM . On prend A = D2/30,6 et B = D2/5,1 .
La F IGURE 2a illustre le cas de la file simple. La courbe β1−R est celle qui serait obtenue avec l’inégalité
de Doob [PC14]. La simulation confirme que nous calculons bien le comportement asymptotique, et montre
que nous améliorons l’inégalité de Doob d’un facteur 1.5. Le comportement irrégulier pour de petites va-
leurs de R est dû aux arrivées par groupes de 6 paquets. Il est possible d’obtenir l’erreur exacte à partir de
1 dR

l’équation (7) en développant les premiers termes de [uR ]E(u) = R! (du)R
E(u) u=0 .
La F IGURE 2b illustre le cas d’une file multi-flots, avec deux flots. Le flot 1 est prioritaire et on s’intéresse
à l’occupation de la file pour le flot 2. Ici aussi, nos résultats sont validés par les simulations. Il n’y a pas
Anne Bouillard et Céline Comte et Élie de Panafieu et Fabien Mathieu

100 100 100


β1−R δ−R δ−R
Eq. (8) 10−1 Eq. (10) 10−1 Eq. (12)
P(X ≥ R)

Sim. Sim. Sim.


10−1 10−2 10−2

10−3 10−3

10−2
0 5 10 15 0 20 40 60 80 0 20 40 60 80
Occupation R de la file Occupation R de la file Occupation R de la file
(a) File simple (b) Deux flots avec priorités (c) Deux files

F IGURE 2: Evaluation numérique. Paramètres A = D2/30,6 et B = D2/5,1 .

d’inégalité de Doob à laquelle nous comparer, mais nous traçons la courbe δ−R pour nous rendre compte de
ce qu’aurait donné une inégalité qui, comme Doob, ne tient pas compte du terme constant.
Enfin, la F IGURE 2c illustre le cas de deux files en tandem et montre l’occupation du tampon dans
la seconde file. Les bornes d’erreur ne diffèrent que d’un facteur constant par rapport au cas précédent.
Il apparaı̂t que le comportement asymptotique calculé dans ces deux cas, bien qu’exact, soit une borne
inférieure de la borne d’erreur. Pour encore plus de précision, les formules que nous obtenons permettent
de calculer des bornes d’erreur exactes des premiers termes en utilisant les développements de Taylor.

Références
[BCdPM18] Anne Bouillard, Céline Comte, Elie de Panafieu, and Fabien Mathieu. Of kernels and
queues : When network calculus meets analytic combinatorics. In 30th International Tele-
traffic Congress, ITC 2018, Vienna - Volume 2, pages 49–54, 2018.
[BF02] Cyril Banderier and Philippe Flajolet. Basic analytic combinatorics of directed lattice paths.
Theor. Comput. Sci., 281(1–2) :37–80, 2002.
[BMM10] Mireille Bousquet-Mélou and Marni Mishna. Walks with small steps in the quarter plane.
Contemp. Math., 520 :1–40, 2010.
[CBL06] Florin Ciucu, Almut Burchard, and Jörg Liebeherr. Scaling properties of statistical end-to-end
bounds in the network calculus. IEEE Trans. Inform. Theory, 52(6) :2300–2312, 2006.
[CP15] Florin Ciucu and Felix Poloczek. On multiplexing flows : Does it hurt or not ? In IEEE Conf.
on Comput. Commun., INFOCOM, pages 1122–1130, 2015.
[FG00] Philippe Flajolet and Fabrice Guillemin. The formal theory of birth-and-death processes,
lattice path combinatorics and continued fractions. Advances in Applied Probability,
32(03) :750–778, 2000.
[FIM17] Guy Fayolle, Roudolf Iasnogorodski, and Vadim Malyshev. Random Walks in the Quarter
Plane : Algebraic Methods, Boundary Value Problems, Applications to Queueing Systems
and Analytic Combinatorics. Springer Publishing Company, Incorporated, 2nd edition, 2017.
[FR15] Markus Fidler and Amr Rizk. A guide to the stochastic network calculus. IEEE Commun.
Surveys and Tutorials, 17(1) :92–105, 2015.
[FS09] Philippe Flajolet and Robert Sedgewick. Analytic Combinatorics. Cambridge University
Press, 1 edition, 2009.
[NS17] Paul Nikolaus and Jens B. Schmitt. On per-flow delay bounds in tandem queues under
(in)dependent arrivals. In IFIP Networking Conference, pages 1–9, 2017.
[PC14] Felix Poloczek and Florin Ciucu. Scheduling analysis with martingales. Perform. Eval.,
79 :56–72, 2014.

Vous aimerez peut-être aussi