Proposition et Validation d’une solution d’allocation de ressource hiérarchisé
Ce chapitre destiné à la phase d‘implémentation des stratégies d‘allocation des ressources proposées dans les réseaux nationaux d’éducation et de recherche (NREN). Il permettra d‘évaluer et de valider notre stratégie proposée dans les NRENs. Sur ce fait, nous avons réalisé plusieurs simulations en utilisant l’environnement de simulation « EdgeCloud-sim », pour effectuer des expérimentations dont les résultats et les interprétations font l’objet de ce chapitre. V.1°) Proposition de la solution et fonctionnement Tableau 10 Tableau Comparatif de solution étudiée et de la solution proposée Article1(Lei Zhao, Jiadai Wang, Jiajia Liu, and Nei Kato) Article2(ShuChing, Wang , Kuo-Qin, Yan, Shun-Sheng, Wang, Ching-Wei, Chen Article3(Kebir Fatima Zohra) Button-Up Type d’algorithme EOERA,CHERA et GERA (Based-Load Balancing and SLA) OLB,EOLB,MinMin,EMM (Based-Load Balancing) FCFS, RR, SJF, Min-Min, Max-Min (Based-Load Balancing and Quality of Service) Min-Min(BasedLoad Balancing and Quality of Service) Nature Dynamique Dynamique Dynamique Dynamique Temps de Réponse Peu de temps Moyen Plus de temps pour certaines taches Très peu de temps Niveau d’hiérarchisation Sur tous les niveaux Sur tous les niveaux Sur le nuage central Sur tous les niveaux Architecture A trios(3) niveau 3-Tiers A deux(2) niveaux 3-Tiers
Architecture proposée
Figure 34Architecture hiérarchisée pour NREN Notre architecture est basée sur trois niveaux : Le niveau premier (1-Tiers) est appelé le centre informatique national, dans lequel toutes les tâches de grande capacité (simulations) seront traitées à ce niveau selon certains critères. Ensuite, le niveau intermédiaire ou le deuxième niveau (2-Tiers) est constitué par un cluster de serveurs dans chaque université. A ce niveau, toutes les tâches provenant des facultés des départements, des laboratoires situés dans les universités, seront exécutées à ce second niveau. Notez que le système exécute au niveau de première toute demande dont les besoins en ressources supérieure à celle du groupe de deuxième niveau. Enfin, le troisième niveau sera situé dans les laboratoires de recherche permettant aux chercheurs d’effectuer leur tâche nécessitant le minimum de ressources. Ce qui nous permettra de gagner du temps de réponse (latence) parce que nous n’aurons plus besoin d’aller au centre informatique ou dans le groupe de l’université pour le traitement de ce genre de tâches.
Fonctionnement
Figure 35 Algorithme de Simulation Pour la mise en place de notre algorithme, l’algorithme basique utilisé est le Min-Min. Ce dernier est une technique de planification qui a la priorité de l’exécution d’une tâche qui nécessite un temps d’exécution minimum. Il peut être considéré comme l’allocation des ressources au niveau de la file d’attente donnant la priorité à la tâche qui nécessite le moins de temps d’exécution. Cependant, l’algorithme peut créer un déséquilibre de charge, car il prévoit d’abord les petites tâches. Certains chercheurs ont mis l’accent sur l’amélioration de l’algorithme Min-Min sur le retard en jouant sur la segmentation de la charge de travail pour augmenter le temps de la performance et de l’exécution. Dans notre processus d’exécution hiérarchique, une tâche de l’utilisateur est classifiée à trois niveaux selon certains critères à savoir, l’ID de la tâche (ID), la charge de calcul de la tâche, l’espace de stockage nécessaire (pour le stockage et le traitement) et la durée du traitement de la tâche. La méthode de planification est la méthode de planification ascendante (Button-Up). D’une manière générale, le processus de planification de ressource dans un système hiérarchisé se fait comme suite : D’abord, l’utilisateur envoie une demande de ressource, le courtier (planificateur) effectue le processus de découverte des ressources existantes dans le système et son statut actuel en termes de disponibilité. De plus, le Service d’information Cloud (CIS) vérifie les accords de services de se conformer au contrat entre le client et le fournisseur. Ensuite, le planificateur décide de choisir sur quel centre de données (ressources) doit-il exécuter la tâche de prendre à certains critères des ressources disponibles et éventuellement les besoins en terme d’une machine virtuelle de la demande, la qualité du service, le temps de réponse, etc., Enfin, après le choix de la ressource disponible, la dernière étape constitue la soumission de la demande de cette ressource. Ainsi pour notre algorithme le fonctionnement se fait de la manière suivante : Dès réception de la demande de ressource, le planificateur utilisera les paramètres de demande de la tâche et de prendre une décision. Si les ressources du troisième niveau (3 niveaux), soit au centre informatique local, sont suffisantes alors la tâche sera exécutée à ce niveau. Sinon, la demande est redirigé vers le niveau supérieur, à savoir le deuxième niveau (2-niveau) et le même traitement est exécuté. Mais dans le cas où les deux premiers niveaux ne disposent pas de ressources suffisantes pour exécuter la tâche, il sera redirigé vers le niveau premier (1-TIERS) qui est le centre informatique national, que l’on suppose toujours aux ressources nécessaires pour exécuter la tâche.
Environnement et paramètres de simulation
Environnement de simulation Éclipse
Éclipse est un environnement de développement intégré (Integrated Développent Environnement) écrit en Java, extensible multi-langages et multi-plates-formes dont le but est de fournir une plate-forme modulaire pour permettre de réaliser des développements informatiques. Il est d’abord conçu pour le langage Java mais ses nombreux greffons en font un environnement de développement pour de nombreux autres langages de programmation (C, C++, Python, PHP). Toutes les fonctions qu’on peut attendre de ce genre de logiciel sont présentes ou existent sous forme de greffons (coloration syntaxique, complétion, debuggé, gestion de projets, intégration aux gestionnaires de versions, …). I.B.M. est à l’origine du développement d’Éclipse qui est d’ailleurs toujours le cœur de son outil Web Sphère Studio Workbench (WSW), lui-même à la base de la famille des derniers outils de développement en Java d’I.B.M. Tout le code d’Eclipse a été donné à la communauté par I.B.M afin de poursuivre son développement. Éclipse utilise énormément le concept de modules nommés « plug-ins » dans son architecture. Hormis le noyau de la plate-forme nommé « Runtime », tout le reste de la plate-forme est développé sous la forme de plug-ins. Ce concept permet de fournir un mécanisme pour l’extension de la plate-forme et ainsi fournir la possibilité à des tiers de développer des fonctionnalités qui ne sont pas fournies en standard par Eclipse. Les principaux modules fournis en standard avec Éclipse concernent Java mais des modules sont en cours de développement pour d’autres langages notamment C++, Cobol, mais aussi pour d’autres aspects du développement (base de données, conception avec UML, …). Ils sont tous développés en Java soit par le projet Éclipse soit par des tiers commerciaux ou en open source. EdgeCloud-Sim EdgeCloud-Sim fournit un environnement de simulation spécifique aux scénarios Edge Computing dans lequel il est possible de mener des expériences prenant en compte les ressources de calcul et les ressources de réseau. EdgeCloud-Sim est un outil open source et est basé sur CloudSim mais ajoute des fonctionnalités considérables pour qu’il puisse être utilisé efficacement dans les scénarios Edge Computing. Les points particuliers de EdgeCloudSim Mist Computing (Exécution de tâches sur un appareil mobile) Intégration du modèle de réseau d’accès cellulaire dans EdgeCloudSim (3G / 4G / 5G) Migration de tâches entre les machines virtuelles Edge ou Cloud Modèle de consommation d’énergie pour les appareils mobiles et périphériques ainsi que pour les centres de données en nuage Ajouter un modèle probabiliste de défaillance du réseau en prenant en compte l’encombrement ou d’autres paramètres tels que la distance entre l’appareil mobile et le point d’accès Wifi. Page – 61 – Outil visuel pour afficher la topologie du réseau Architecture de la relation entre les modules EdgeCloudSim EdgeCloud-Sim fournit une architecture modulaire permettant de prendre en charge diverses fonctionnalités essentielles, telles que la modélisation de réseau spécifique au WLAN et au WAN, le modèle de mobilité de périphérique, le générateur de charge réaliste et paramétrable.