B.1 Contexte, motivations, objectif, proposition
B.1.1 Contexte
La connexion à grande échelle des ordinateurs aux réseaux de communication et les mécanismes qui permettent leur interopérabilité motivent la création d’applications scientifiques ou grand public véhiculant et stockant de très grandes masses de données. Les quantités de données considérés pour ces systèmes s’échelonnent jusqu’à l‘ordre du PetaOctet en stockage (ex : 1 Million de machines stockant chacune 1 Go de fichiers multi-media) et du TeraOctet/seconde en débit agrégé moyen (ex : 1 Million de machines transférant chacune 1 Mb/s de fichiers multi-media).
Actuellement les infrastructures logicielles envisagées pour véhiculer, traiter et stockées ces masses de données sont les systèmes de Grid et des systèmes Pair à Pair (P2P) dont les propriétés restent mal connues. Les domaines scientifiques pour lesquels des recherches sont nécessaires sont classiques : sécurité, stockage et mouvement des données, ordonnancement, protocoles de communication, optimisation réseau, tolérance aux pannes. Cependant, par rapport aux systèmes répartis classiques, ces nouveaux systèmes possèdent deux caractéristiques fondamentales : a) l’échelle du nombre de ressources (x1000) et b) la complexité des ressources qui sont toutes des ordinateurs capables d’exécuter des programmes complexes et possédant une caractéristique forte d’autonomie.
Clairement la problématique des systèmes de GRID est multi-disciplinaire. Les communautés de recherche du calcul et stockage à grande échelle, des systèmes réparties et des réseaux sont clairement partie prenante dans cette recherche. L’ambition de ce projet est d’être un catalyseur permettant l’émergence d’une synergie interdisciplinaire sur cette thématique importante. Cette synergie devrait être facilité par la participation d’équipes de recherche importante dans chacune de ces communautés dans ce projet.
Depuis les premières expériences du projet I-WAY aux états unis qui ont donné naissance à Globus, l’étude expérimentale des Grilles s’est essentiellement concentrée sur des déploiements à échelle réelle impliquant l’étude et le développement de logiciels système et d’intergiciels. L’approche orientée déploiement pose du point de vue scientifique plusieurs problèmes : a) la méthodologie suivie consiste à résoudre l’ensemble des problèmes simultanément (sécurité, recherche de ressource, allocation de ressource, communication entre les ressources, ordonnancement, stockage et transfert de données), b) chaque déploiement est unique et les résultats d’expériences sont difficilement généralisables. Enfin, le coût d’un déploiement est tel qu’il est souvent justifié par une perspective de mise en production et qu’il utilise comme nœuds de la Grille des machines déjà en production. Cette approche interdit pratiquement l’expérimentation informatique pour des problèmes de sécurité, de partage de ressources, de conditions expérimentales et de reproductibilité des résultats.
Pour étudier scientifiquement les Grid et les systèmes P2P dans le cadre des grandes masses de données et comprendre/contrôler les phénomènes nouveaux qui apparaissent, il est nécessaire de d’associer trois techniques complémentaires : l’expérimentation in-situ (sur les GRID et systèmes déployés), la simulation à partir de modèles mathématiques et l’expérimentation par un nouveau moyen dans le domaine des GRID : l’émulation.
B.1.2 Pour un grand émulateur
En plus des testbed réalistes (VTHD, XtremWeb, etc.), et des simulateurs, il y a un besoin d’émulateurs de GRID / P2P à grande échelle permettant de conduire des expériences dans des conditions reproductibles. Il faut percevoir un Emulateur comme un “ grand instrument ” à destination des informaticiens. A terme, une telle plate-forme devrait recevoir une charge expérimentale pour l’étude de mécanismes de Grille/P2P. Il s’agirait aussi de tester des systèmes d’exploitation, des middlewares, des applications, des techniques d’observation/maintenance.
La construction d’un tel instrument correspond donc a une problématique émergente répondant à un besoin de compréhension et de maîtrise des phénomènes à grande échelle. En France de nombreuses initiatives ont été lancées récemment à propos d’expérimentation in-situ (projet EuroGRID, projet DataGRID, projets ACI GRID, etc.) et d’analyse théorique (tolérance aux pannes dans les systèmes P2P). La simulation et l’émulation à grande échelle restent pour le moment largement inexploitées. La notion de grande échelle commence à être étudiée par exemple dans le projet “ Petascale Virtual Machine ” à Oak Ridge National Laboratory par l’équipe d’Al Geist. Ce projet vise à l’étude d’algorithmes parallèles et distribués de traitement de structures de données à grande échelle associant 100 000 machines. Cette étude est étroitement liée à celle d’un simulateur fonctionnant sur un cluster linux et capable de simuler 100 000 noeuds.
Il existe déjà plusieurs émulateurs qui visent à recréer les conditions des systèmes à large échelle. Dummynet, développé par Ribio Rizzo à l'Université de Pise, est un outils de base permet d'émuler des liaisons longues distance. Le principe est de faire passer le trafic réseau par un nœud intermédiaire qui permet d'ajouter de la latence, réduire le débit, ajouter des taux de perte etc. Cet outil est intéressant et est couramment utilisé pour les expérimentations de protocoles. Cependant, le noeud intermédiaire représente très rapidement un goulot d'étranglement et le nombre de sites participants à l'expérience doit rester réduit. D'autres Universités comme celle de Stuttgart propose des émulateur de réseau via le projet NET (Network Emulation Tested -http://www.informatik.univ-stuttgart.de/ ipvr/vs/en/projects/net/). Leur infrastructure configurable permet d'émuler différents types de liaison. Cependant le nombre de nœuds reste limité à 32.
Les deux projets les plus aboutis dans le domaine sont Emulab.net et modelnet. Le projet Emulab.net (http://www.emulab.net) est proposé par l'équipe de Jay Lepreau à l'Université de l'Utah. Cette plate-forme a pour objectif d'émuler internet. Emulab.net regroupe 168 nœuds de calcul (des PCs) et 160 routeurs configurables. Les configurations réseaux sont décrites en script NS et dummynet est utilisé pour dégrader les communications. Emulab.net accueille plus de 70 projets de recherche issus essentiellement des grandes universités américaines. Cependant, si emulab est particulièrement efficace pour émuler efficacement différentes configurations réseau, l'émulation de la large échelle en nombre de sites reste limitée. Ainsi le nombre est sites est simulé et non émuler. De fait, la plupart des projets accueillis sont des projets de protocoles réseaux.
Modelnet de l'Université de Duke vise aussi à émuler différentes configurations réseau en utilisant dummynet. Pour éviter un goulot d'étranglement, le projet défini, de manière similaire à emulab un ensemble de nœuds routeurs chacun exécutant dummynet permettant de répartir la charge et donc d'émuler plus de connexions. Les principales limitations sont similaires à celles d'emulab. L'aspect émulation rigoureuse sur un même site de plusieurs machines est peu pris en compte.
En tant qu’instrument scientifique, un émulateur pose des questions importantes comme la réalisation d’une expérience, l’injection et la maîtrise de conditions expérimentales, la mesure et ses moyens, les conditions et les limites de la reproductibilité des résultats, l’intégration et l’interprétation des résultats. Il pose aussi des questions structurelles : ordonnancement des expériences, mise en place de sondes et recueil de traces d’activité/performance, stockage des conditions expérimentales et des résultats, moyen pour l’observation (visualisation) et l’analyse.
En tant qu’outil expérimental, “ Data Grid Explorer ” servira à l’exécution expériences liées aux grandes masses de données. Ces expériences émuleront des systèmes de GRID/P2P et aborderons des questions liées à la sécurité des serveurs de données, la sécurité des applications, l’organisation de grands mouvements de données, l’étude de mouvements de données non coordonnées, la recherche de données à grande échelle, le stockage de masses de données non structurées et structurées, le traitement (tri, calcul) sur des masses de données réparties, etc.
Le projet “ Data Grid Explorer ” propose donc deux contributions : 1) l’étude et la mise en place d’un grand émulateur et 2) un ensemble d’expériences liées à la gestions de grandes masses de données dans les systèmes de GRID/P2P.
B.1.3 Un Projet Multi-communautaire
Les équipes partenaires de ce projet sont toutes des équipes reconnues dans leurs propres communautés de recherche. La thématique des GRIDs a une forte dimension multi-disciplinaire qui nécessite une collaboration poussée entre chercheurs d’horizons divers. Un des défis de ce projet est la mise en place de cette collaboration. Le principal atout que le projet a en main afin d’atteindre cet objectif est le fait que les principales équipes de recherche des principales thématiques liées au projet sont présentes en temps que partenaires. Ces équipes de recherche peuvent servir de relais afin de diffuser les résultats obtenus ainsi que de point d’entrée afin de faciliter l’émergence d’une synergie entre ces différentes thématiques. Pour faciliter la coordination et l’interaction multi-disciplinaire, le projet est structuré en thèmes transversaux :
-
TT1 : Infrastructure système et matérielle
-
TT2 : Emulation de réseaux
-
TT3 : Réseaux
-
TT4 : Application
La plupart des partenaires du projet participent à plusieurs TT. Cette structuration en thèmes devrait permettent l’interaction entre les partenaires et faciliter l’échange d’idées.
B.1.3 Objectifs et proposition
L’objectif de ce projet est double :
-
mettre en œuvre, pour la communauté des chercheurs en informatique une plate-forme d’émulation des systèmes à grande échelle GRID, P2P systèmes répartis en général : Data Grid Explorer.
-
réaliser des expériences utilisant la plate-forme sur les systèmes à grande échelle en étudiant notamment la problématique des données massives (sécurité, fiabilité, performance).
Il s’agit de permettre aux chercheurs sur les GRID/P2P de configurer virtuellement les nœuds de la plate-forme de taille significative pour en faire des Grilles virtuelles et tester leurs systèmes, algorithmes, applications dans des conditions expérimentales reproductibles (performance, sécurité, pannes, dynamicité). Cela permettrait aussi de dériver des simulateurs et des modèles théoriques réalistes. Par exemple pour le P2P, l’objectif serait d’émuler des systèmes à 10 000 voire 100 000 nœuds. Pour les expériences GRID, il serait possible d’émuler un réseau haut débit connectant 3 ou 4 machines parallèles à 128 et 256 processeurs (chacune recevant une charge propre réaliste). L’émulateur pourrait servir à tester les premiers prototypes de systèmes fusionnant GRID et P2P. Branchée à Renater3, cette plate-forme pourrait participer à des Testbeds de plus grande envergure à l’échelle nationale (connexion avec le cluster de Grenoble par exemple). Par exemple, l’intégration de l’émulateur dans une plate-forme Grid expérimentale de plus grande taille (Grid 5000) reliant plusieurs clusters de plusieurs centaines de processeurs permettrait de combiner l’émulation et l’expérimentation dans des conditions réelles. Des sondes placées sur la plate-forme Grid permettraient d’alimenter l’émulateur en valeurs réalistes pour les paramètres d’émulation. Inversement des mécanismes développés et testés en émulation pourraient être évalués en conditions réalistes. Elle pourrait aussi être reliée au futur cluster de 20 Tflops qui sera construit au Japon dans le cadre du Labo GRID de Sekigushi. En quelques sortes, comme pour les grands instruments de physiques, plusieurs types d’expériences pourraient s’associées à la plate-forme.
En ce qui concerne les données massives, le projet aura pour objectif d’étudier des techniques pour leur stockage, leur mouvement, leur sécurisation, leur tolérance aux pannes et leur traitement. Il s’agira notamment d’étudier des systèmes de recherche de ressources, des systèmes de stockage à grande échelle et des systèmes de calcul à grande échelle…+ un résumé des expériences associées au projet
Un émulateur de système à grande échelle d’envergure nationale devrait comporter 3 composants : une base de données stockant les conditions expérimentales à utilisées lors des expériences, un grand cluster permettant d’émuler un système à grande échelle et un ensemble d’outils logiciels permettant de préparer, lancer, contrôler, visualiser et évaluer les résultats d’expériences.
La figure ci-dessous présente comment les trois composants de Data Grid Explorer s’organisent (ou s’intègrent) par rapport à un environnement existant.
Error: Reference source not found
Les senseurs sont des éléments de mesurant des paramètres d’éléments influençant les performances ou le fonctionnement du système. Typiquement on va chercher à mesurer les caractéristiques des nœuds et du réseau d’un système réel en termes de performance de communication, performance de calcul, capacité de stockage, mécanisme de sécurité, etc. On cherchera aussi à caractériser l’activité des utilisateurs, soit en termes d’utilisation du système réel soit en termes de présence.
La base de données de conditions expérimentales sert à stocker les mesures réalisées par les sondes. Elle stocke aussi des conditions expérimentales synthétiques générées automatiquement (topologie, trafic, profil d’activité d’utilisateur, etc.)
La plate-forme expérimentale comprend 2 composantes : les matériels et les logiciels. En termes de matériel, il s’agit de réunir de l’ordre de 1000 nœuds ainsi que différents types de réseaux. Idéalement, il devrait être possible d’émuler des conditions de communication de type SAN, LAN, MAN et WAN. Du point de vue logiciel, il faut réunir les mécanismes systèmes permettant de gérer le cluster ainsi que ceux nécessaires à la préparation, le lancement, le contrôle de l’exécution d’une expérience. Il s’agira d’abord d’injecter des conditions expérimentales dans le cluster, c'est-à-dire configurer les éléments matériels et logiciels de la plate-forme de sorte à plonger (avec une limite de réalisme connue), les caractéristiques d’une infrastructure réelle ou à réaliser dans le cluster. Ensuite le logiciel à étudier (application, middleware, module système, protocole) est réellement exécuté. Un ensemble de mesures rapporteront les valeurs dynamiques de paramètres choisis.
Les résultats seront stockées dans une base de données et étudiés avec des logiciels de visualisation, d’étude statistique, etc.
Un point très important de cette organisation est la validation des résultats. Pour cela des expériences seront réalisées en grandeur nature sur des systèmes existants (Grid 5000, XtremWeb) pour comparer les mesures obtenues par émulation à celles obtenues par exécution sur des systèmes réels. On cherchera à comprendre l’origine des imprécisions et à les caractériser.
Pour être pertinente, la plate-forme expérimentale devrait être équipée de 1024 processeurs avec un réseau à définir (Myrinet ou Ethernet en fonction des coûts, voir Rhinet si collaboration avec les Japonais). Deux types de nœuds (biprocesseurs) peuvent être considérés : des nœuds Athlon/Pentium 4 de génération actuelle ou des Intel/AMD 64 bits. Ces derniers seront disponibles à la fin de l’année 2003. Nous estimons qu’une plate-forme de 1024 processeurs devrait avoir un coût de l’ordre de 2M€.
La plate-forme serait située dans un des centres de calcul nationaux (IDRIS ou CEA), relié à Renater 3 et aux réseaux internationaux de façon favorable. L’installation dans un centre existant est importante pour bénéficier de l’infrastructure réseau, électrique, climatisation, personnel de maintenance.
Il semble très important que la réalisation de la plate-forme soit conduite en collaboration étroite avec les autres grandes plates-formes existantes ou en cours de montage dans le monde. Il est notamment important de partager le savoir faire matériel et logiciel. Au Japon 2 machines à 1024 processeurs NEC équipées de réseaux Myrinet sont déjà en opération. Un cluster de 4000 processeurs (20 Tflops), équipe du processeur Athlon 64 bits sera mis en œuvre fin 2003 dans le cadre du laboratoire GRID de Tsukuba. Aux Etats Unis, la NSA installe actuellement une machine à 8000 processeurs Itanium II. Le laboratoire LLNL va recevoir un cluster de 2000 processeurs Pentium Xeon à 2,4 Ghz d’une puissance crête de l’ordre de 10 Tflop. Plus modestement, l’Angleterre (Compagnie Générale de Géophysique) dispose déjà de plusieurs clusters à 1024 processeurs, l’Allemagne (Universitaet Heidelberg) et le Danemark (Syddansk Universitet) disposent aussi de clusters de 512 processeurs d’une performance crête dépassant le Teraflop.
B.1.4 Structuration thématique
La taille du projet en nombre d’équipes, de participants et l’objet du projet qui vise à construire un instrument et de l’utiliser pour des expériences implique une organisation structurelle permettant l’animation et la coopération entre les participants. Nous proposons d’organiser le projet en quatre Thématiques Transversales dans lesquels les participants des expériences pourront interagir avec des membres d’autres communautés. Chaque expérience prendra pour cadre un ou plusieurs TT (voire le tableau ci-dessous).
Les Thématiques Transversales (TT) retenues sont :
-Infrastructure (matérielle et système),
-Emulation,
-Réseau et
-Applications
La thématique infrastructure concerne l’organisation de la plate-forme et les logiciels développés pour permettre les expériences. Il s’agira notamment de définir l’organisation matérielle et système, d’établir les modalités d’accès et les modalités de partages des ressources. Ce thème tiendra informés ses participants de l’état des plates-formes équivalentes dans le monde et de leur évolution.
La thématique émulation concerne la définition de plates-formes permettant d’émuler des configurations de grande taille. Cette thématique est composée de deux sous projets orthogonaux: l’émulation de liaisons réseaux longues distances et l’émulation d’un grand nombre de sites. Ce thème aura une relation étroite avec les thèmes infrastructure et réseau.
La thématique réseau concerne les
La thématique applications concerne l’étude de l’adaptation des applications aux infrastructures de Grilles et P2P. Il s’agit de permettre d’étudier le portage d’applications de domaines vairés (Bioinformatique, base de données) et d’anticiper les problèmes de performance qui seraient rencontrés sur des plates-formes réelles. Inversement, les membres des autres thématiques pourront connaître plus précisément les problèmes de portage et essayer de développer des solutions (évolution structurelle, augmentation des performances réseaux) pour y répondre.
Chaque TT sera animée par un responsable qui aura pour rôle d’animer son thème (d’organiser les réunions) de faciliter les interactions des participants du thèmes avec ceux des autres thèmes, d’être à l’écoute des difficultés rencontrés par les participants et d’essayer d’agir pour limiter les points de blocage. Il aurra aussi pour rôle de représenter l’ACI auprès de sa communauté de rattachement et des institutions (RTP du CNRS par exemple). Il faut concevoir un animateur de thème comme un responsable d’une ACI de taille plus classique.
L’animation de l’ACI est conçue autour d’une rencontre annuelle et de réunion thématiques. La réunion annuelle aura pour objectif de préparer le rapport annuel et réunira l’ensemble des participants. Il s’agira d’une réunion sur 2 journées organisée à Orsay, lieu où est installée la plate-forme Grid Explorer, avec des présentations concernant les 4 thèmes. Les réunions thématiques seront organisées sur 1 journée dans des sites répartis géographiquement (Lyon, Grenoble, Toulouse, Amiens, etc.). Les animateurs de sites seront responsables de l’organisation de ces journées possiblement en collaboration avec les responsables de sites.
Le tableau suivant présente comment chaque expérience se positionne par rapport au Thématiques Transversales.
Expériences
|
Infrastructure
|
Emulation
|
Réseau
|
Application
|
I.1 Plate-forme
|
X
|
X
|
X
|
X
|
II.16
|
|
|
|
|
B.1.5 Apports attendus
Cette plate-forme devrait permettre :
-aux chercheurs en informatique de réaliser des simulations/émulation de systèmes de GRID ou P2P à grande échelle (sécurité, ordonnancement, évaluation de performance, tolérance aux fautes, test de configurations multiples).
-aux chercheurs sur les GRID de connecter des grandes grappes entre elles (grappe de l’INRIA à 256 processeurs, grappe du LRI à 100 processeurs),
-aux chercheurs des autres disciplines (physiques, biologie) de tester l’application des GRID dans leur domaine de recherche.
L’existence de cette plate-forme et son utilisation par les chercheurs en informatique devrait contribuer à :
-maintenir la recherche et le savoir-faire sur les GRID/P2P en France au niveau du Japon et des Etats-Unis,
-introduire la notion de simulation / émulation à grande échelle dans l’éventail des techniques de recherche dans les systèmes distribués complexes.
Un tel projet n’a de sens que si de nombreuses autres équipes au niveau national utilisent cette plate-forme. Il intéresse plusieurs communautés de chercheurs en informatique : celles issues du calcul scientifique, des systèmes répartis, des réseaux et des bases de données.
B.1.6 Résumé de la demande budgétaire
Il s’agit essentiellement d’une demande de matériel et fonctionnement, les salaires étant ou devant être obtenus de façon séparée.
Il s’agit de construire une plate-forme de 1024 processeurs avec un réseau Ethernet commuté :
-1024 nœuds Pentium 4 à 3 Ghz, avec mémoire 1 Go DDR-SDRAM ECC, 1 disque de 36 Go SCSI, une carte réseau Ethernet 1 Gb/s
-un ensemble de commutateurs Ethernet 1 Gb/s reliés entre eux pour connecter les 1024 noeuds
Le coût d’une telle plate-forme est estimé à 2 M€.
Des demandes budgétaires complémentaires seront lancées vers l’INRIA, le SESAME d’ile de France (demande de l’Inria Rocquencourt).
La demande de contribution matérielle pour ce qui concerne l’ACI “ Masse de données ” serait de 1,5 M€.
Cette somme pourrait être revues (probablement à la baisse) en fonction des résultats des appels d’offre.
La demande de fonctionnement (missions pour se rendre aux réunions) se monterait à :
60 participants, 1000 € /an par participant (60000€/an).
3 ans 180000 €
Dostları ilə paylaş: |