FR3043480A1 - Procede et systeme pour la constitution de grappes d'equipements d'un nuage informatique avec allocation de ressources distribuee et correction de faisabilite centralisee - Google Patents
Procede et systeme pour la constitution de grappes d'equipements d'un nuage informatique avec allocation de ressources distribuee et correction de faisabilite centralisee Download PDFInfo
- Publication number
- FR3043480A1 FR3043480A1 FR1560717A FR1560717A FR3043480A1 FR 3043480 A1 FR3043480 A1 FR 3043480A1 FR 1560717 A FR1560717 A FR 1560717A FR 1560717 A FR1560717 A FR 1560717A FR 3043480 A1 FR3043480 A1 FR 3043480A1
- Authority
- FR
- France
- Prior art keywords
- equipment
- resources
- remote execution
- cluster
- computer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000012937 correction Methods 0.000 title description 2
- 238000013468 resource allocation Methods 0.000 title description 2
- 238000012545 processing Methods 0.000 claims abstract description 68
- 238000012986 modification Methods 0.000 claims abstract description 15
- 230000004048 modification Effects 0.000 claims abstract description 15
- 238000012795 verification Methods 0.000 claims abstract description 5
- 230000008569 process Effects 0.000 claims description 8
- 238000004891 communication Methods 0.000 claims description 4
- 230000001186 cumulative effect Effects 0.000 claims description 3
- 238000007726 management method Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 7
- 238000013459 approach Methods 0.000 description 6
- 230000015572 biosynthetic process Effects 0.000 description 6
- 238000005265 energy consumption Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000010267 cellular communication Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 101710190597 Uroporphyrinogen decarboxylase 1, chloroplastic Proteins 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000032258 transport Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Computer And Data Communications (AREA)
Abstract
L'invention porte notamment sur un procédé de regroupement d'équipements (4-10) d'un nuage informatique, comprenant les étapes suivantes : traitement indépendant de chaque requête d'une pluralité de requêtes d'exécution déportée d'une tâche informatique pour former des grappes d'équipements (N1, N2, N3) regroupant chacune des équipements du nuage informatique qui offrent des ressources pour le traitement distribué entre les équipements de la grappe d'une tâche informatique faisant l'objet d'une requête d'exécution déportée ; - vérification de faisabilité de l'exécution déportée de chacune des tâches informatiques par les grappes d'équipements formées à l'issue dudit traitement indépendant ; - modification des ressources offertes pour le traitement de tâches informatiques d'exécution déportée non faisable, - suite à ladite modification des ressources, réitération de l'étape de traitement indépendant pour les requêtes d'exécution déportée correspondant aux tâches informatique d'exécution déportée non faisable.
Description
PROCÉDÉ ET SYSTÈME POUR LA CONSTITUTION DE GRAPPES D'ÉQUIPEMENTS D'UN NUAGE INFORMATIQUE AVEC ALLOCATION DE RESSOURCES DISTRIBUÉE ET CORRECTION DE FAISABILITÉ CENTRALISÉE
DESCRIPTION
DOMAINE TECHNIQUE
Le domaine de l'invention est celui du traitement déporté de tâches informatiques par lequel certaines tâches sont déportées d'un appareil électronique à un nuage informatique où elles sont exécutées de manière distribuée par différents équipements du nuage. L'invention concerne plus particulièrement le partage des ressources informatiques du nuage entre différents appareils sollicitant une exécution déportée d'une tâche informatique par le nuage.
ÉTAT DE LA TECHNIQUE ANTÉRIEURE
Les équipements sans fil, tels que par exemple des équipements mobiles d'usager ou encore des capteurs sans fil, sont de plus en plus capables d'exécuter des applications logicielles complexes qui nécessitent des capacités de traitement informatique importantes dont résultent notamment des besoins en termes de ressources mémoire et énergétiques.
Ces ressources sont toutefois limitées, et venir déporter l'exécution de certaines tâches informatiques de l'équipement sans fil vers un équipement tiers distant du système de communication radio cellulaire offre la possibilité d'étendre les capacités de l'équipement sans fil ainsi que la durée de vie de sa batterie.
Avec l'émergence d'équipements mobiles d'usager avancés de type « smartphone » et l'arrivée de nouvelles applications consommatrices de trafic de données, les opérateurs de réseaux de télécommunication cellulaire doivent faire face à une montée exponentielle du trafic de données. Ceci a pour conséquence une congestion de plus en plus accrue des cellules du réseau d'accès, et donc une dégradation de la qualité de service offerte aux usagers du réseau. Une évolution de ces réseaux visant à répondre à ce problème de congestion consiste à y introduire des points d'accès locaux de faible puissance offrant une couverture radio limitée, généralement dédiée pour un usage résidentiel ou en entreprise. Ainsi l'adjonction, aux côtés des stations de base classiques couvrant une macro-cellule de plus de 2 km de rayon, de points d'accès locaux de faible puissance couvrant une petite cellule telle qu'une micro-cellule (rayon inférieur à 2 km), une pico-cellule (dont la portée est inférieur à 200 m), ou une femto-cellule (portée de l'ordre de 10 à 50 m) permet de répondre à cette croissance du trafic.
Si de tels points d'accès locaux permettent d'amener des ressources radio à proximité des usagers, ils amènent également à proximité des usagers des ressources en termes de mémoire et de capacités de traitement qui peuvent être exploitées pour déporter une partie des tâches informatiques devant être exécutées par les équipements mobiles d'usager. De la même manière, une passerelle de collecte de données de capteurs sans fil dispose de ressources pouvant être exploitées par les capteurs.
Il est ainsi envisagé que de tels équipements puissent former un nuage informatique en venant mettre en commun leurs ressources informatiques (capacités de calcul et de stockage) et les rendre disponibles à distance pour permettre le traitement déporté d'une tâche informatique dont l'exécution est requise par un appareil électronique. Se pose alors le problème de déterminer combien d'équipements et lesquels doivent être associés pour réaliser ce traitement déporté, et comment planifier leur coopération.
Le regroupement d'équipements du nuage pour former une grappe d'équipements à même de réaliser le traitement d'une tâche informatique dont l'exécution déportée est sollicitée par un appareil électronique peut être réalisé de manière statique ou dynamique.
Dans un regroupement statique, une grappe d'équipements prédéfinie est associée à chaque appareil électronique. Cette stratégie n'est pas efficace notamment lorsque le nombre d'appareils électroniques ayant accès au nuage informatique augmente. Elle ne tient en outre pas compte des besoins en termes de ressources pour l'exécution déportée d'une tâche informatique.
Dans un regroupement dynamique, la configuration des grappes change au cours du temps. On connaît ainsi de Oueis, J.; Calvanese Strinati, E.; Barbarossa, S., "Small Cell Clustering for Efficient Distributed Cloud Computing," Personal Indoor and Mobile Radio Communications (PIMRC), 2014 IEEE 25th International Symposium on, 9-12 Sept. 2014, une technique de regroupement dynamique basée sur des critères de consommation d'énergie et de délai d'exécution qui permet de répondre à une qualité d'expérience attendue par l'usager de l'appareil électronique.
Cette technique ne permet de résoudre que le cas mono-utilisateur où un seul appareil électronique souhaite accéder aux ressources offertes par les équipements du nuage informatique. Or de multiples appareils électroniques peuvent solliciter l'exécution déportée d'une tâche informatique et ainsi concourir pour les ressources offertes par les équipements du nuage informatique.
Une solution répondant à ce cas multi-utilisateurs est présentée dans Oueis, J; Calvanese Strinati, E.; Sardelliti, S; Barbarossa, S., "Small Cell Clustering for Efficient Distributed Fog Computing: A Multi-user Case," IEEE 82nd Vehicular Technology Conférence, VTC 2015-Fall, 6-9 Sept. 2015. Cette solution propose de déterminer conjointement les grappes à former pour répondre aux requêtes d'exécution déportée émanant simultanément de plusieurs appareils électroniques. Cette détermination est réalisée en solutionnant un problème d'optimisation visant à minimiser la consommation énergétique tout en respectant les contraintes de délai d'exécution de chacune des requêtes.
On connaît par ailleurs de Oueis, J; Calvanese Strinati, E.; Barbarossa, S., "The Fog Balancing: Load Distribution for Small Cell Cloud Computing," IEEE 81st Vehicular Technology Conférence, VTC 2015-Spring, 11-14 May, 2015, une solution algorithmique qui permet également de répondre au cas multi-utilisateurs, mais de manière moins complexe en réalisant un ordonnancement des requêtes d'exécution déportée et en ne formant des grappes d'équipements que lorsqu'une requête ne peut être traitée directement par le point d'accès local de l'appareil ayant émis la requête.
Ces solutions aux cas multi-utilisateurs s'avèrent plus performantes qu'un regroupement statique. Elles nécessitent toutefois d'être implémentées de manière centralisée au niveau d'une entité de gestion. Or de telles solutions centralisées nécessitent que l'entité de gestion collecte les informations nécessaires. Elles présentent également des limitations, notamment en termes de délai et de complexité, en présence d'un nombre important d'appareils électroniques sollicitant une exécution déportée et d'équipements dans le nuage.
Une solution distribuée selon laquelle l'approche mono-utilisateur serait exploitée indépendamment pour chacune des requêtes d'exécution déportée n'est quant à elle pas en mesure de garantir une qualité d'expérience suffisante pour l'ensemble des utilisateurs.
EXPOSÉ DE L'INVENTION L'invention a pour objectif d'apporter une prise de décision pour la formation de grappes applicable au cas multi-utilisateurs qui soit rapide et peu complexe, tout en garantissant une qualité d'expérience suffisante à l'ensemble des utilisateurs. Pour ce faire, l'invention propose un procédé de regroupement d'équipements d'un nuage informatique, comprenant les étapes suivantes : traitement indépendant de chaque requête d'une pluralité de requêtes d'exécution déportée d'une tâche informatique pour former des grappes d'équipements regroupant chacune des équipements du nuage informatique qui offrent des ressources pour le traitement distribué entre les équipements de la grappe d'une tâche informatique faisant l'objet d'une requête d'exécution déportée ; vérification de faisabilité de l'exécution déportée de chacune des tâches informatiques par les grappes d'équipements formées à l'issue dudit traitement indépendant ; modification des ressources offertes pour le traitement de tâches informatiques d'exécution déportée non faisable, suite à ladite modification des ressources, réitération de l'étape de traitement indépendant pour les requêtes d'exécution déportée correspondant aux tâches informatique d'exécution déportée non faisable. L'invention propose ainsi une stratégie hybride avec à la fois une approche distribuée où chaque requête d'exécution déportée est traitée de manière indépendante des autres, ce qui apporte un gain de temps et de simplicité par rapport à un traitement centralisé des requêtes, et une approche centralisée où les contraintes du nuage sont prises en considération pour vérifier la faisabilité et éventuellement corriger l'allocation de ressources issue du traitement indépendant de chacune des requêtes, ce qui permet de garantir une qualité d'expérience pour l'ensemble des utilisateurs.
Certains aspects préférés mais non limitatifs de ce procédé sont les suivants : - la vérification de faisabilité comprend la vérification, pour chacune des grappes formées suite à une requête d'exécution déportée d'une tâche informatique, que l'offre de ressources de l'ensemble des équipements de la grappe est suffisante pour permettre l'exécution de la tache informatique ; - l'étape de modification des ressources consiste à ne plus offrir de ressources pour le traitement une tâche informatique d'exécution non faisable, et à permettre d'offrir les ressources qui ne sont plus offertes au traitement de ladite tâche informatique d'exécution non faisable au traitement d'au moins une autre tâche informatique d'exécution non faisable ; - la détermination de faisabilité comprend la vérification qu'un équipement du nuage est en excès lorsque le cumul de l'offre de ressources de l'équipement dans chacune des grappes d'équipements excède un seuil d'offre, l'exécution d'une tâche informatique n'étant pas faisable lorsque la grappe d'équipements correspondant à ladite tâche inclut un équipement en excès ; - l'étape de modification des ressources consiste à faire offrir, pour le traitement de la ou des tâches informatiques d'exécution déportée non faisable, les ressources en excès dudit seul d'offre par les équipements de la ou des grappes incluant ledit équipement en excès ; - chaque grappe comporte au moins un équipement destinataire d'au moins une requête d'exécution déportée émise par un appareil électronique ; - l'étape de traitement indépendant de chacune des requêtes d'exécution déportée est réalisée de manière décentralisée, chacun des équipements destinataires d'une requête d'exécution déportée traitant de manière indépendante l'au moins une requête d'exécution déportée émise par un appareil électronique pour former au moins une grappe d'équipement ; - la vérification de la faisabilité de l'exécution déportée des tâches informatiques est réalisée par une unité de gestion centrale. L'invention s'étend à un système apte à mettre en oeuvre le procédé.
BRÈVE DESCRIPTION DES DESSINS D'autres aspects, buts, avantages et caractéristiques de l'invention apparaîtront mieux à la lecture de la description détaillée suivante de formes de réalisation préférées de celle-ci, donnée à titre d'exemple non limitatif, et faite en référence aux dessins annexés sur lesquels : - la figure 1 est un schéma illustrant les équipements d'un nuage participant à un système de traitement déporté de tâches informatiques conforme à l'invention ; - la figure 2 est un schéma illustrant l'approche hybride, distribuée puis centralisée, d'un procédé de constitution de grappes d'équipements conforme à l'invention ; - la figure 3 illustre les différentes opérations réalisées de manière distribuée dans le cadre du procédé de constitution de grappes d'équipements conforme à l'invention ; - la figure 4 illustre les différentes opérations réalisées de manière centralisée dans le cadre du procédé de constitution de grappes d'équipements conforme à l'invention ; - la figure 5 est un schéma comparant le taux de satisfaction d'utilisateur en fonction du nombre d'utilisateurs par cellule pour différentes stratégies d'exécution déportée de tâches informatiques.
EXPOSÉ DÉTAILLÉ DE MODES DE RÉALISATION PARTICULIERS
En référence à la figure 1, l'invention porte sur un procédé de regroupement d'équipements 4-10 formant un nuage informatique en vue de former des grappes d'équipements NI, N2, N3 regroupant chacune des équipements 4, 6-8 ; 4, 6, 9 ; 5, 8 qui offrent chacun des ressources informatiques pour réaliser un traitement distribué entre les équipements de la grappe d'une tâche informatique dont l'exécution déportée est requise par un appareil électronique 1, 2, 3. L'appareil électronique 1, 2, 3 est typiquement un appareil sans fil, tel que par exemple un appareil mobile d'usager ou encore un capteur sans fil, relié à un réseau de communication cellulaire par l'intermédiaire d'un point d'accès local 4, 5, en particulier un point d'accès de faible puissance couvrant une petite cellule telle qu'une micro-cellule, une pico-cellule, ou une femto-cellule. Dans l'exemple de la figure 1, les appareils électroniques 1, 2 disposent du même point d'accès local 4.
Les équipements 4-10 pouvant être regroupés pour former les grappes NI, N2, N3 sont typiquement des points d'accès locaux au réseau de communication cellulaire. On retrouve dans chaque grappe un équipement source qui est chargé, dans un premier temps du procédé selon l'invention, de former la grappe et un ou plusieurs équipements cibles. Dans l'exemple de la figure 1, on retrouve une première grappe NI constituée de l'équipement source 4 et des équipements cibles 6-8 pour l'exécution déportée d'une tâche informatique d'un premier appareil 1, une deuxième grappe N2 constituée de l'équipement source 4 et des équipements cibles 6, 9 pour l'exécution déportée d'une tâche informatique d'un deuxième appareil 2, et une troisième grappe N3 constituée de l'équipement source 5 et de l'équipement cible 8 pour l'exécution déportée d'une tâche informatique d'un troisième appareil 3.
Un équipement source correspond typiquement à un point d'accès local 4, 5 auquel un appareil électronique 1, 2, 3 est connecté, sans pour autant que cela ne soit limitatif.
Les équipements cibles 6-10 peuvent être les points d'accès locaux directement dans la portée de l'équipement source, ou encore des points d'accès locaux pouvant être atteint par plusieurs sauts depuis l'équipement source. Et un équipement cible peut lui-même participer au procédé selon l'invention en agissant en tant qu'équipement source pour la constitution d'une grappe, par exemple une sous-grappe au sein d'une grappe formée par l'équipement source 2 servant de point d'accès local à l'appareil électronique.
Dans le cadre de l'invention, chaque grappe est formée dynamiquement et les équipements qui la forment, ainsi que la manière dont ils y coopèrent, sont amenés à changer au cours du temps. Le procédé selon l'invention peut notamment être mis en œuvre suite à une étape préalable de transmission par chaque appareil électronique 1, 2, 3 à destination de l'équipement source 4, 5 auquel il est associé d'une requête d'exécution déportée d'une tâche informatique. Cette requête peut prendre la forme d'une description de la tâche informatique, à savoir un ensemble d'instructions à exécuter avec une contrainte de latence donnée (par exemple pour un appareil k, Wk instructions à exécuter dans un temps maximal de Ak secondes).
La figure 2 illustre la stratégie hybride selon l'invention consistant à réaliser de manière distribuée des opérations D pour chacune des requêtes d'exécution déportée d'une tâche informatique afin de former une grappe d'équipements correspondante, et à réaliser de manière centralisée des opérations C pour vérifier la faisabilité et éventuellement corriger l'offre de ressources issue du traitement distribué de chacune des requêtes.
Reprenant l'exemple de la figure 1, les appareils 1, 2, 3 requièrent l'exécution déportée d'une tâche informatique auprès de l'équipement source 4, 5 auquel ils sont associés (équipement source 4 pour les appareils 1 et 2, équipement source 5 pour l'appareil 3). Au cours d'une première étape du procédé selon l'invention, chacune de ces requêtes d'exécution reportée est traitée de manière indépendante des autres requêtes par l'équipement source destinataire de la requête. Ainsi l'équipement source 4 traite la requête issue de l'appareil 1 indépendamment des requêtes concurrentes issues des appareils 2 et 3. De la même manière, l'équipement source 4 traite la requête issue de l'appareil 2 indépendamment des requêtes concurrentes issues des appareils 1 et 3, et l'équipement source 5 traite la requête issue de l'appareil 3 indépendamment des requêtes concurrentes issues des appareils 1 et 2. L'objectif du traitement distribué d'une requête est de former une grappe d'équipements regroupant des équipements du nuage qui offrent des ressources pour le traitement distribué entre les équipements de la grappe d'une tâche informatique faisant l'objet d'une requête d'exécution déportée. L'offre de ressources d'un équipement dans une grappe correspond typiquement à l'exécution d'un nombre donné d'instructions de la tâche, à un taux d'exécution (nombre d'instructions par seconde) donné. Toujours en référence à la figure 1, le résultat de ce traitement distribué est la formation de la première grappe NI pour l'exécution d'une tâche requise par l'appareil 1, de la deuxième grappe N2 pour l'exécution d'une tâche requise par l'appareil 2, et de la troisième grappe N3 pour l'exécution d'une tâche requise par l'appareil 3.
Le traitement indépendant de chacune des requêtes consiste à considérer un cas mono-utilisateur pour la formation de chacune des grappes, en négligeant l'existence de requêtes issues d'autres appareils qui concourent pourtant pour l'accès aux mêmes ressources informatiques offertes par le nuage. Ce traitement indépendant recherche une solution qui peut être qualifiée d'égoïste puisqu'elle ne prend en compte que les propres intérêts du mono-utilisateur (par exemple sa propre minimisation de délai, de consommation d'énergie, etc.) lors de la constitution de la grappe d'équipements à même d'exécuter la tâche informatique qui est déportée vers le nuage. Ainsi chaque équipement source détermine la grappe préférée pour chacune des requêtes d'exécution déportée qu'il reçoit, chaque requête étant considérée isolément sans prise en considération de l'existence de requêtes concurrentes.
La recherche d'une solution égoïste peut par exemple être mise en oeuvre comme rapporté dans les travaux déjà mentionnés précédemment de Oueis, J.; Calvanese Strinati, E.; Barba rossa, S., "Small Cell Clustering for Efficient Distributed Cloud Computing," Personal Indoor and Mobile Radio Communications (PIMRC), 2014 IEEE 25th International Symposium on, 9-12 Sept. 2014.
On considère dans ce qui suit un nuage informatique constitué par un ensemble N = {1, ...,N} d'équipements. Chaque équipement n£N dispose d'une capacité de calcul de Fn instructions/seconde.
On considère par ailleurs un ensemble K = {1, ...,K} d'appareils électroniques susceptibles de requérir l'exécution déportée de tâches informatiques dans le nuage. Chaque appareil k G K est associé à un équipement source. L'ensemble S = {1, ...,S} correspond à l'ensemble des équipements source avec S < K and S <= N . Le sous-ensemble KscK représente l'ensemble des appareils qui sont associés avec l'équipement source s.
Chaque appareil déporte l'exécution de tâches informatiques en envoyant des requêtes d'exécution déportée à l'équipement source auquel il est associé. Une requête d'exécution déportée est envoyée par un appareil k G K et consiste à requérir le calcul de Wk instructions dans un temps maximal de Ak secondes.
Lors de l'étape de traitement indépendant des requêtes d'exécution déportée, les équipements sources forment des grappes devant permettre le traitement de ces requêtes en choisissant les équipements à inclure dans la grappe et la manière de répartir la charge de calcul entre ces équipements. A l'issue de cette étape de traitement indépendant, chaque équipement n G N offre, pour la grappe formée pour le traitement d'une requête issue d'un appareil k, de prendre en charge le calcul de Wkn instructions à un tauxfkn.
Les équipements peuvent notamment communiquer entre eux par l'intermédiaire d'une liaison sans fil point à point, par exemple de type OFDMA. On considère que le nombre de bits devant être transmis est proportionnel à la taille du bloc d'instructions Wkn, soit wknQuL en liaison montante et WknQDL en liaison descendante, avec Qul et Qdl des constantes qui permettent de tenir compte respectivement de la surcharge due aux communications montantes et descendantes et du ratio entre le nombre de bits de sortie et d'entrée associés à l'exécution du bloc d'instruction par un équipement.
Le traitement indépendant, égoïste, de chacune des requêtes d'exécution déportée pour former une grappe d'équipements peut notamment viser à rechercher une solution minimisant la consommation d'énergie dans la grappe formée pour une requête issue d'un appareil k correspondant à Wk instructions dans un temps maximal de Ak secondes. La consommation d'énergie associée à un équipement n dans la grappe formée pour l'appareil k par l'équipement source s est notée p£n. Cette consommation correspond à l'exécution de Wkn instructions à un taux fkn. La durée nécessaire à cette exécution Δ^η vaut pour l'équipement source lorsque celui-ci participe au calcul, et fkn pour un équipement cible participant au calcul. Le problème d'optimisation peut s'exprimer comme suit :
Vw v» V»
Vn
La deuxième condition garantit que toutes les Wk instructions sont exécutées. La troisième condition garantit que la consommation d'énergie associée à chaque équipement de la grappe est inférieure à une valeur limite Pmax. La quatrième condition garantit que la capacité de calcul allouée par un équipement de la grappe reste inférieure à la capacité de calcul totale de l'équipement. Enfin la cinquième condition garantit que le délai de traitement associé à l'équipement n est inférieur à la contrainte de latence Ak imposée pour le traitement de la tâche informatique.
Le délai de traitement Δ*η associé à l'équipement n est plus précisément :
où Θ = 0UL + 0DL, et RsniPsn) est Ie débit qui peut être obtenu en utilisant une puissance de transmission ρ£η sur les liaisons montante et descendante entre l'équipement source s et l'équipement cible n.
Sur la figure 3 qui illustre les différentes opérations réalisées de manière distribuée dans le cadre du procédé selon l'invention, l'étape de traitement indépendant des requêtes d'exécution déportée pour former les différentes grappes porte la référence « DET-CLST ». Cette étape peut être précédée d'une étape préalable « INT » au cours de laquelle chaque équipement source met à jour sa connaissance des capacités de calcul des équipements cibles qui sont offertes au nuage informatique. Elle peut être succédée par une étape postérieure « REP-CLST » de notification à une entité de gestion centrale du résultat de l'étape de traitement indépendant de chacune des requêtes d'exécution déportée. Cette notification est réalisée par chacun des équipements source ayant participé au traitement d'au moins une requête d'exécution déportée pour former au moins une grappe d'équipement. Pour chaque requête k, cette notification fait état de la distribution de la charge (quels sont les équipements regroupés dans la grappe) et des ressources alloués par chacun des équipements de la grappe (VP^n,/fcn), le cas échéant accompagné de la métrique ayant servi à former la grappe (p^n dans l'exemple présenté ci-dessus).
Dans une variante de réalisation, le résultat de l'étape de traitement indépendant de chacune des requêtes d'exécution déportée peut être diffusé aux différents équipements sources pour les informer des intentions des appareils quant aux ressources locales des équipements sources qu'ils comptent (temporairement ou constamment) exploiter.
En référence à la figure 4, l'unité de gestion centrale est chargée, au cours d'une étape « FSB ? », de vérifier la faisabilité de l'exécution déportée de chacune des tâches informatiques par les grappes d'équipements formées à l'issue dudit traitement indépendant. Selon leur faisabilité, l'unité de gestion centrale vient départager les tâches informatiques entre tâches dont l'exécution déportée peut être réalisée par la grappe correspondante formée par le traitement indépendant égoïste (tâches faisables) et tâches dont l'exécution déportée ne peut être réalisée par la grappe correspondante formée par le traitement indépendant égoïste (tâches non faisables). L'analyse de faisabilité vise à vérifier si le système dans sa globalité peut satisfaire l'exécution des tâches par les grappes issues du traitement indépendant. Elle peut prendre en considération la pertinence des solutions égoïstes (par exemple si elles amènent à réduire la consommation énergétique). Cette analyse de faisabilité peut par ailleurs être biaisée, via la diffusion d'un paramètre de biais ou encore par les appareils électroniques eux-mêmes, par exemple sur la base d'une connaissance statistique des solutions égoïstes élaborées pour les requêtes d'exécution déportée précédentes issues d'un appareil. Les appareils électroniques peuvent par ailleurs appartenir (ou estimer appartenir, par exemple à un moment donné, à une localisation donnée, à un besoin donné) à différentes classes de services chacune associée à un niveau de priorité venant biaiser la vérification de faisabilité. Des exemples de vérification de faisabilité sont les suivants.
Il est tout d'abord possible que la recherche d'une solution égoïste pour la formation d'une grappe associée à une requête d'exécution déportée ne conduise pas à une solution viable (type d'infaisabilité noté FL1 sur la figure 4), notamment en ce que l'offre de ressources de l'ensemble des équipements de la grappe est insuffisante pour permettre l'exécution de la tâche informatique. L'exécution déportée n'est alors pas faisable. Dans un mode de réalisation possible, ce type d'infaisabilité est directement notifiée à l'unité de gestion centrale par l'équipement source en charge de former la grappe.
Un autre type d'infaisabilité (noté FL2 sur la figure 4) est une infaisabilité résultant de l'union des différents grappes formées de manière indépendante. En particulier, un équipement, dit équipement en excès d'offre, peut se retrouver inclus dans différentes grappes, et le cumul de l'offre de ressources de cet équipement dans chacune des grappes d'équipements excède un seuil d'offre. Typiquement, un équipement peut offrir d'exécuter dans l'ensemble des différentes grappes un nombre d'instructions supérieur à un nombre d'instructions qu'il peut (ou qu'il est habilité à) exécuter. Il en découle que l'exécution déportée des tâches informatiques comptant cet équipement en excès d'offre dans leurs grappes d'équipements n'est pas faisable.
Pour chacune des tâches dont l'exécution est déterminée par l'unité de gestion centrale comme étant faisable par la grappe correspondante formée par le traitement indépendant égoïste, les ressources offertes par les différents équipements de la grappe sont alors effectivement allouées au traitement distribué de la tâche.
Pour les autres tâches, à savoir celles dont l'exécution est déterminée comme n'étant pas faisable, on procède à une modification des ressources offertes pour le traitement de ces tâches, et on réitère, sur la base de cette offre de ressources modifiée, l'étape de traitement indépendant de chacune des requêtes d'exécution déportée correspondant à l'une de ces tâches non faisables. La modification des ressources offertes aux tâches non faisables tient compte des ressources effectivement allouées aux tâches d'exécution déportée faisable et qui ne peuvent dont plus être offertes pour les tâches d'exécution déportée non infaisable.
La modification des ressources peut également prendre en compte des valeurs correctives de l'offre de ressources déterminées de manière à tenter de résoudre l'infaisabilité d'exécution de certaines tâches. En référence à la figure 4, la modification des ressources peut ainsi tenter de résoudre le type d'infaisabilité FL1 (tâche infaisable du fait d'une offre de ressources insuffisante par les équipements de la grappe), et/ou le type d'infaisabilité FL2 (équipement en excès d'offre affectant l'ensemble des tâches associées à une grappe dans laquelle on retrouve l'équipement en excès).
Dans un mode de réalisation possible, une modification des ressources visant à résoudre le type d'infaisabilité FL1 consiste à modifier une répartition au sein des équipements entre ressources dédiées à l'exécution d'instructions déportées depuis les appareils ayant l'équipement comme équipement source, et ressources pouvant être offertes dans une grappe où l'équipement forme un équipement cible. Notamment, les ressources dédiées aux appareils ayant l'équipement comme équipement source peuvent être temporairement augmentées afin d'éviter qu'une requête d'exécution déportée issue de l'un de ces appareils soit déterminée comme présentant une infaisabilité de type FL1.
Dans un autre mode de réalisation possible, une modification des ressources visant à résoudre le type d'infaisabilité FL1 consiste à ne plus offrir de ressources pour le traitement de l'une des tâches informatiques présentant une infaisabilité de type FL1, et à permettre d'offrir les ressources qui ne sont plus offertes à ladite tâche informatique au traitement d'au moins une autre tâche informatique présentant une infaisabilité de type FL1.
En d'autres termes, on procède à une élimination « ELIM » de la requête d'exécution déportée de la tâche à qui on n'offre plus de ressources, et on met à jour « UPD1 » les capacités de calcul des différents équipements pour tenir compte de la libération de ressources préalablement offertes à la requête éliminée.
Ainsi, la modification des ressources offertes par les équipements conduit à une mise à jour de la capacité de calcul F'n disponible au niveau de chacun des équipements et à une mise à jour de la charge W'n de chacun des équipements selon
, Vn, où j est l'index de la requête éliminée et
L'offre de ressources ainsi modifiée W'n, F'n est communiquée au cours d'une étape « REP-UDP » aux équipements source associés aux requêtes d'exécution déterminés comme non faisables. Ces requêtes font alors de nouveau chacune l'objet d'un traitement indépendant égoïste sur la base de l'offre de ressources modifiée.
Dans le cadre de ce mode de réalisation, la tâche informatique à qui la modification des ressources n'offre plus de ressources (sa requête d'exécution déportée est supprimée) peut être celle des tâches informatiques présentant une infaisabilité de type FL1 qui requiert une rapidité d'exécution — la plus élevée.
La requête à éliminer peut toutefois être sélectionnée de manière différente, par exemple via une sélection aléatoire, ou encore en utilisant une métrique alternative à la rapidité d'exécution, par exemple une métrique de type proportionnelle équitable ou une métrique de type échéance proche consistant à ne pas supprimer les requêtes présentant les contraintes temporelles les plus élevées.
Dans un mode de réalisation possible, une modification des ressources pouvant être offertes visant à résoudre le type d'infaisabilité FL2 où un équipement est en excès d'offre consiste à faire offrir, pour le traitement de la ou des tâches informatiques d'exécution déportée non faisable, les ressources en excès dudit seuil d'offre par les équipements de la ou des grappes incluant ledit équipement en excès.
Avant modification des ressources, la charge de calcul au niveau de chaque équipement s'exprime selon Wn = Σ/Li wnfc. Le seuil d'offre d'un équipement est noté Thn. Un équipement est en excès lorsque Wn > Thn ce qui est déterminé au cours d'une étape « CAL-EXC » représentée sur la figure 4. On note Xn les ressources offertes en excès, soit Xn=Wn — Thn. Dans le cadre de ce mode de réalisation, on cherche à ce que cette charge de calcul en excès soit offerte par d'autres équipements, et plus particulièrement par les équipements de la ou des grappes incluant ledit équipement en excès.
On vient ensuite mettre à jour au cours d'une étape « UDP2 » la capacité de calcul disponible au niveau de chaque équipement, selon
Puis on procède à la redistribution des ressources en excès au cours d'une étape « DISTR ». Dans ce qui suit, bptnk correspond au temps de traitement minimal d'un bit (transmission et calcul) qu'un équipement peut offrir à une requête d'index k :
OU Rmax est le débit maximal pouvant être atteint.
La redistribution des ressources offertes en excès par un équipement d'index b (Xb>0) peut suivre les règles suivantes pour déterminer les charges de calcul w'nk pouvant être offertes après modification des ressources en cherchant à optimiser le temps de traitement des différentes tâches informatiques.
La première condition ci-dessus garantit que la redistribution de la charge en excès n'excède pas la charge offerte par l'équipement en excès. La deuxième condition garantit que la redistribution de la charge vise à assurer le traitement des requêtes associées à une grappe incluant l'équipement en excès. La troisième condition garantit que
la redistribution de la charge n'est pas réalisée vers des équipements ne disposant plus de capacités de calcul. Enfin, la dernière condition garantit que toute la charge en excès est bien redistribuée.
La redistribution des ressources n'est pas limitée à cet exemple, et s'étend par exemple au cas où la redistribution tient compte d'un niveau de priorité (associé à un appareil ou un équipement source) pour qu'un équipement, sur lequel la charge en excès est distribuée, offre plus ou moins de de capacité de calcul. L'offre de ressources ainsi modifiée W'n, F'n est communiquée au cours d'une étape « REP-UDP » aux équipements source associés aux requêtes d'exécution déterminés comme non faisables car étant associées à des grappes qui incluent l'équipement en excès. Ces requêtes font alors de nouveau chacune l'objet d'un traitement indépendant égoïste sur la base de l'offre de ressources modifiée.
Suite au traitement indépendant égoïste des requêtes non faisables sur la base de l'offre de ressources modifiée, leur faisabilité est de nouveau évaluée pour allouer l'offre de ressources du traitement indépendant aux requêtes désormais faisables et procéder à un nouveau traitement indépendant des requêtes toujours non faisables prenant en considération des valeurs correctives de l'offre de ressources pour ces requêtes, etc.
Cet algorithme itératif se poursuit jusqu'à ce que les requêtes soient toutes faisables ou toutes éliminées, ou encore jusqu'à ce qu'un critère d'arrêt soit vérifié (par exemple un nombre maximal d'itérations, un délai maximal pour la formation des grappes, un nombre maximal d'instructions calculées, ou encore lorsque le gain de performance entre des itérations successives reste inférieur à un seuil).
La figure 5 est un schéma comparant le taux de satisfaction d'utilisateur QoE en fonction du nombre d'utilisateurs N par cellule pour différentes stratégies d'exécution déportée de tâches informatiques. Sur cette figure, la courbe A correspond à une implémentation avec résolution totalement centralisée d'un problème d'optimisation multi-utilisateur, la courbe B correspond à une implémentation totalement distribuée de l'approche mono-utilisateur, la courbe C correspond au traitement déporté de tâches informatiques par les équipements sources, sans formation de grappes pour associer des équipements cibles aux équipements source, et la courbe D correspond à une implémentation de l'invention. L'invention offre un gain de 20-30% du taux de satisfaction utilisateur par rapport à une implémentation sans formation de grappes (courbe C). L'invention s'accompagne d'une perte de 15-20% du taux de satisfaction utilisateur par rapport à l'implémentation l'approche multi-utilisateur centralisée (courbe A), au bénéfice de la simplicité et d'un gain de temps dans la formation des grappes. L'invention n'est pas limitée au procédé tel que précédemment décrit, mais s'étend à un système de traitement déporté d'une tâche informatique dans un nuage informatique configuré pour mettre en œuvre ce procédé, et en particulier à un système comprenant au moins un équipement destinataire configuré pour traiter de manière indépendante au moins une requête d'exécution déportée émise par un appareil électronique pour former au moins une grappe d'équipements regroupant des équipements du nuage informatique qui offrent des ressources pour le traitement distribué de la tâche informatique faisant l'objet de la requête d'exécution déportée, et une unité de gestion centrale configurée pour vérifier la faisabilité de l'exécution déportée d'au moins une tâche informatique par l'au moins une grappe d'équipement formée par l'au moins un équipement destinataire.
Claims (12)
- REVENDICATIONS1. Procédé de regroupement d'équipements (4-10) d'un nuage informatique, comprenant les étapes suivantes : traitement indépendant de chaque requête d'une pluralité de requêtes d'exécution déportée d'une tâche informatique pour former des grappes d'équipements (NI, N2, N3) regroupant chacune des équipements du nuage informatique qui offrent des ressources pour le traitement distribué entre les équipements de la grappe d'une tâche informatique faisant l'objet d'une requête d'exécution déportée ; vérification de faisabilité (FSB ?) de l'exécution déportée de chacune des tâches informatiques par les grappes d'équipements formées à l'issue dudit traitement indépendant ; modification des ressources offertes pour le traitement de tâches informatiques d'exécution déportée non faisable, suite à ladite modification des ressources, réitération de l'étape de traitement indépendant pour les requêtes d'exécution déportée correspondant aux tâches informatique d'exécution déportée non faisable.
- 2. Procédé selon la revendication 1, dans lequel la vérification de faisabilité comprend la vérification (FL1), pour chacune des grappes formées suite à une requête d'exécution déportée d'une tâche informatique, que l'offre de ressources de l'ensemble des équipements de la grappe est suffisante pour permettre l'exécution de la tache informatique.
- 3. Procédé selon la revendication 2, dans lequel l'étape de modification des ressources consiste à ne plus offrir de ressources (EUM) pour le traitement une tâche informatique d'exécution non faisable, et à permettre d'offrir (UDP1) les ressources qui ne sont plus offertes au traitement de ladite tâche informatique d'exécution non faisable au traitement d'au moins une autre tâche informatique d'exécution non faisable.
- 4. Procédé selon la revendication 3, dans lequel la tâche informatique à qui la modification des ressources n'offre plus de ressources est celle des tâches informatiques bénéficiant d'une offre de ressources insuffisante qui requiert une rapidité d'exécution la plus élevée.
- 5. Procédé selon la revendication 1, dans lequel la détermination de faisabilité comprend la vérification (FL2) qu'un équipement du nuage est en excès lorsque le cumul de l'offre de ressources de l'équipement dans chacune des grappes d'équipements excède un seuil d'offre, l'exécution d'une tâche informatique n'étant pas faisable lorsque la grappe d'équipements correspondant à ladite tâche inclut un équipement en excès.
- 6. Procédé selon la revendication 5, dans lequel l'étape de modification des ressources consiste à faire offrir, pour le traitement de la ou des tâches informatiques d'exécution déportée non faisable, les ressources en excès dudit seul d'offre par les équipements de la ou des grappes incluant ledit équipement en excès.
- 7. Procédé selon l'une des revendications 1 à 6, dans lequel chaque grappe comporte au moins un équipement destinataire (4, 5) d'au moins une requête d'exécution déportée émise par un appareil électronique (1, 2, 3).
- 8. Procédé selon la revendication 7, dans lequel l'étape de traitement indépendant de chacune des requêtes d'exécution déportée est réalisée de manière décentralisée, chacun des équipements destinataires (4, 5) d'une requête d'exécution déportée traitant de manière indépendante l'au moins une requête d'exécution déportée émise par un appareil électronique pour former au moins une grappe d'équipement.
- 9. Procédé selon l'une des revendications 7 et 8, dans lequel l'appareil électronique est un terminal mobile et l'équipement destinataire est un point d'accès local à un réseau de communication.
- 10. Procédé selon l'une des revendications 1 à 9, dans lequel la vérification de la faisabilité de l'exécution déportée des tâches informatiques est réalisée par une unité de gestion centrale.
- 11. Procédé selon la revendication 10, comprenant une étape de notification à l'unité de gestion centrale du résultat de l'étape de traitement indépendant des requêtes d'exécution déportée.
- 12. Système de traitement déporté d'une tâche informatique dans un nuage informatique, comprenant au moins un équipement destinataire (4, 5) configuré pour traiter de manière indépendante au moins une requête d'exécution déportée émise par un appareil électronique (1, 2, 3) pour former au moins une grappe d'équipements (NI, N2, N3) regroupant des équipements du nuage informatique qui offrent des ressources pour le traitement distribué de la tâche informatique faisant l'objet de la requête d'exécution déportée, et une unité de gestion centrale configurée pour vérifier la faisabilité de l'exécution déportée d'au moins une tâche informatique par l'au moins une grappe d'équipement formée par l'au moins un équipement destinataire.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1560717A FR3043480B1 (fr) | 2015-11-09 | 2015-11-09 | Procede et systeme pour la constitution de grappes d'equipements d'un nuage informatique avec allocation de ressources distribuee et correction de faisabilite centralisee |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1560717A FR3043480B1 (fr) | 2015-11-09 | 2015-11-09 | Procede et systeme pour la constitution de grappes d'equipements d'un nuage informatique avec allocation de ressources distribuee et correction de faisabilite centralisee |
Publications (2)
Publication Number | Publication Date |
---|---|
FR3043480A1 true FR3043480A1 (fr) | 2017-05-12 |
FR3043480B1 FR3043480B1 (fr) | 2017-12-15 |
Family
ID=55345975
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR1560717A Active FR3043480B1 (fr) | 2015-11-09 | 2015-11-09 | Procede et systeme pour la constitution de grappes d'equipements d'un nuage informatique avec allocation de ressources distribuee et correction de faisabilite centralisee |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR3043480B1 (fr) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2502266A (en) * | 2012-05-21 | 2013-11-27 | Vodafone Ip Licensing Ltd | Controlling availability of a pool of surplus resource capabilities of control units associated with one or more base stations |
US20140287754A1 (en) * | 2013-03-24 | 2014-09-25 | Mariana Goldhamer | Offloading mobile applications to base stations |
-
2015
- 2015-11-09 FR FR1560717A patent/FR3043480B1/fr active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2502266A (en) * | 2012-05-21 | 2013-11-27 | Vodafone Ip Licensing Ltd | Controlling availability of a pool of surplus resource capabilities of control units associated with one or more base stations |
US20140287754A1 (en) * | 2013-03-24 | 2014-09-25 | Mariana Goldhamer | Offloading mobile applications to base stations |
Non-Patent Citations (2)
Title |
---|
JESSICA OUEIS ET AL: "The Fog Balancing: Load Distribution for Small Cell Cloud Computing", 2015 IEEE 81ST VEHICULAR TECHNOLOGY CONFERENCE (VTC SPRING 2015) : GLASGOW, SCOTLAND, UNITED KINGDOM, 11 - 14 MAY 2015, 1 May 2015 (2015-05-01), Piscataway, NJ, pages 1 - 6, XP055292054, ISBN: 978-1-4799-8088-8, DOI: 10.1109/VTCSpring.2015.7146129 * |
OUEIS JESSICA ET AL: "Small Cell Clustering for Efficient Distributed Fog Computing: A Multi-User Case", 2015 IEEE 82ND VEHICULAR TECHNOLOGY CONFERENCE (VTC2015-FALL), IEEE, 6 September 2015 (2015-09-06), pages 1 - 5, XP032857347, DOI: 10.1109/VTCFALL.2015.7391144 * |
Also Published As
Publication number | Publication date |
---|---|
FR3043480B1 (fr) | 2017-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3066565B1 (fr) | Procédé et programme d'ordinateur pour l'exécution déportée de tâches informatiques d'un équipement sans fil | |
US9955290B2 (en) | Opportunistic offloading of tasks between nearby computing devices | |
US10244023B2 (en) | Active offline storage management for streaming media application used by multiple client devices | |
US11212778B2 (en) | Facilitation of channel selection within a wireless network | |
EP2198644A2 (fr) | Mesure radio dans un reseau de radiocommunication | |
FR3096204A3 (fr) | Plafonnement du rythme de transactions entrantes dans des échanges avec état entrants établis dans un environnement informatique distribué | |
EP3923138A1 (fr) | Contrôle de déport de tâches de calcul en informatique en périphérie multi-accès | |
CN103780693B (zh) | 一种利用用户视图协作感知的最佳副本服务器选择方法和*** | |
EP3100582B1 (fr) | Procédé de communication entre un terminal alimenté par batterie et une station de base et réseau de communication associé | |
FR3045859A1 (fr) | Procede et dispositifs associes de formation d'un nuage informatique stockant le resultat de l'execution deportee d'une tache informatique | |
FR3043480A1 (fr) | Procede et systeme pour la constitution de grappes d'equipements d'un nuage informatique avec allocation de ressources distribuee et correction de faisabilite centralisee | |
US9621486B2 (en) | System and methods for assigning communication requests to range of transmission control protocol ports | |
Rawat et al. | A critical analysis on integration of fog computing and cloud computing | |
FR2966684A1 (fr) | Procede, dispositifs et programme d'ordinateur de selection dynamique de bandes de frequences pour la communication montante de terminaux de type ofdma ou sc-fdma controles en puissance | |
US11800343B2 (en) | Emergency monitoring application mobility management | |
FR3042618A1 (fr) | Procede, dispositifs et systeme pour la constitution d'un nuage informatique avec signalisation par delai de reponse | |
WO2023203718A1 (fr) | Procédé et système de communication sans fil | |
EP2875687A1 (fr) | Procede de gestion de la configuration d'un reseau de telecommunication | |
FR3126828A1 (fr) | Procédé d'intégration dynamique mis en oeuvre au cours de la fédération de réseaux de radiocommunication et produit programme d'ordinateur | |
FR3124619A1 (fr) | Méthode de calcul en périphérie de réseau utilisant un modèle génératif de données | |
FR3107974A1 (fr) | Procédé et dispositif d’allocation de ressources réseau à un véhicule | |
CN117201614A (zh) | 资源分配方法及装置、数据下载方法及装置、电子设备 | |
WO2024141371A1 (fr) | Procédé de routage de messages dans un réseau maillé | |
WO2020128246A1 (fr) | Procédé de détermination d'un chemin de transmission de données, et dispositif correspondant | |
FR3015813A1 (fr) | Procede de mise en veille d'un systeme de communications comprenant plusieurs antennes d'emission |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PLFP | Fee payment |
Year of fee payment: 2 |
|
PLSC | Publication of the preliminary search report |
Effective date: 20170512 |
|
PLFP | Fee payment |
Year of fee payment: 3 |
|
PLFP | Fee payment |
Year of fee payment: 5 |
|
PLFP | Fee payment |
Year of fee payment: 6 |
|
PLFP | Fee payment |
Year of fee payment: 7 |
|
PLFP | Fee payment |
Year of fee payment: 8 |
|
PLFP | Fee payment |
Year of fee payment: 9 |