La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Calcul Global Pair à Pair :

Présentations similaires


Présentation au sujet: "Calcul Global Pair à Pair :"— Transcription de la présentation:

1 Calcul Global Pair à Pair :
classification, problèmes techniques et scientifiques  Franck Cappello CR CNRS Responsable groupe Clusters et Grilles LRI, Université Paris sud. 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

2 Tutoriel GRID2/RenPar Hammamet
Sommaire Introduction Rationalisation/classification des systèmes P2P Le système XtremWeb I La recherche dans les systèmes P2P Pour en savoir plus 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

3 Différents types de GRID
Caractéristiques des nœuds : Grands sites de calcul, Clusters <100 Stables Identification individuelle Confiance Les Grilles de calcul ou « GRID » 2 types de grands systèmes distribués Les systèmes distribués à grande échelle PC Windows, Linux ~ Volatiles Pas d’ident individuelle Pas de confiance Les systèmes de Calcul Global ou « Mega Computing » ou « Internet Computing » Les systèmes Pair à Pair 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

4 Tutoriel GRID2/RenPar Hammamet
Calcul numérique à grande échelle Historique Applications pionnières (connues) : craquer des clés de cryptage RC5 et DES trouver des nombres premiers de Mersenne craquer des codes RSA Premiers résultats SuperWeb, Javelin, Atlas, Charlotte, etc. en 96. Nombre de stations utilisées : 250, 3500, ~14000 PCs (Ppro 200) en 97 35 k personnes dans la mailing list de en 97 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

5 Systèmes de Calcul Global Applications dédiées Projet de production
Définition Pragmatique : Calcul Maître-esclave Par vol de cycles sur Internet Un serveur centraliser ordonnance des calcul sur des PC volontaires Applications dédiées distributed.net, Décrypthon Projet de production Exodus, Peer review, Plates-formes de recherche Javelin, Bayanihan, JET, Charlotte (based on Java), Ninf (ECL), XtremWeb (LRI), Plates-formes commerciales Entropia, Parabon, United Devices, Application Cliente Params. /résults. serveur Paramètres Internet PC Volontaire PC Volontaire PC Volontaire Télécharge et exécute l’application 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

6 Tutoriel GRID2/RenPar Hammamet
Calcul Global : Un exemple : le décrypthon Objectif : lutter contre les maladies génétiques -Maître d’œuvre : IBM (USA) -Environnement de Calcul Global : Platform (Canada) -Application : Genomining (France) Nombre d’inscrits : Puissance potentiel : 40 x 10^12 Flops Comparaison de séquences de Protéines (Smith-Waterman) protéines provenant d’espèces différentes à comparées (chacune contre toutes les autres) Application Cliente Params. /résults. Serveurs IBM Paramètres Système Platform PC Volontaire PC Volontaire Application SWC PC Volontaire Application SWC 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

7 Tutoriel GRID2/RenPar Hammamet
Système Pair à Pair (Peer to Peer) Toutes les ressources (PC) sont égales, les opérations se font à parité, de pair à pair. Applications dédiées Napster, Gnutella, Freenet, KaZaA, Music-city, Jabber, Projets de recherche Globe (Tann.), Cx (Javalin), Farsite, OceanStore (USA), XtremWeb (LRI), Pastry, Tapestry/Plaxton, CAN, Chord, Autres projets Cosm, Wos, peer2peer.org, JXTA (sun), PtPTL (intel), PC volontaire Participant à la mise en relation entre Pair Volontaire Internet req. Client Volontaire Application Provider 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

8 Tutoriel GRID2/RenPar Hammamet
Système Pair à Pair : Un exemple Gnutella Objectif : partager des ressources (fichiers audio/vidéo) -Spécifications du protocole ouvertes (permet d’écrire des clients) -Système totalement distribué PC PC PC PC PC Diffusion PC Diffusion PC PC Table des voisins : @IP 1 @IP 2 @IP x Diffusion PC PC Ressource Table des voisins : @IP a @IP b @IP z -Diffusion de la requête au voisins directes, propagation par inondation -Durée de vie de la requête, évitement de boucles -Transfert du résultat par requête HTTP (avec possibilité d’inversion) 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

9 Tutoriel GRID2/RenPar Hammamet
Sommaire Introduction Rationalisation - classification Le système XtremWeb I La recherche dans les systèmes P2P Pour en savoir plus 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

10 Tutoriel GRID2/RenPar Hammamet
Rationalisation des systèmes P2P Caractéristiques fondamentales Extensibilité : jusqu ’à 100 k voire 1 M machines Hétérogénéité : différents matériels et OS Dynamicité : nombre de clients et de serveurs évoluent constamment Disponibilité : le propriétaire d ’une ressource doit pouvoir définir une politique de partage de sa ressource Tolérance aux pannes : le système (et peut être les applications) doivent supporter l ’existence d ’éléments défaillants Utilisabilité : malgré les propriétés précédentes, le système doit rester facilement programmable et maintenable Sécurité : le système doit être sécurisé pour les participants, les serveurs et l ’applications. Un comportement malicieux ne doit pas pouvoir corrompre l ’application. Un agent externe ne doit pas pouvoir se faire passer pour un serveur. 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

11 Rationalisation des systèmes P2P Composants fondamentaux
Gateway @IP d’un Nœud P2P 1) Gateway pages Web, mail, etc.) Permet au PC de connaître au moins un nœud du système P2P ? P2P Système P2P 2) Composant client de publication (permet à l’utilisateur de spécifier les ressources qu’il souhaite partager) Internet, Intranet ou LAN PC Fichiers CPU Espace disque PC 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

12 Rationalisation des systèmes P2P Composants fondamentaux
3) Mécanisme mise en relation Recherche de résultats Recherche de clés. (CAN, PASTRY, TAPESTRY, CHORD, etc.) Internet, Intranet ou LAN PC PC Ressource Requête Requête Requête Ressource : -fichier -service Ressource PC 4) Mécanisme de Transport (transfert de résultats) Internet, Intranet ou LAN Firewall PC Firewall PC Ressource Ressource Ressource Internet Ressource Tunnel 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

13 Basic components of P2P systems for computing: coordination
The role of the 4 previous components was A) to setup the system and B) to discover a set of resources for a client 5) Coordination sys.: - Receives Client computing request (virtual cluster - Configures/Manages a platform (collect manager) service proposals and attribute roles) - Schedules tasks / data distribution-transfers - Detects/recovers Faults Internet, Intranet or LAN Coordination system Centralized or Distributed Request PC Resource Request PC Request PC Resource PC 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

14 Classification des systèmes P2P A) Mode d’interaction
Tous les nœuds peuvent-ils jouer les rôles de Client et de Server ? PC Requête Ressource Internet, Intranet ou LAN Oui Non Gnutella, FreeNet, Fastack Napster, eDonkey2000 XtremWeb, Jabber Décrypthon, Entropia, United Devices, 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

15 Classification des systèmes P2P B) Mode de communication
Après la phase de mise en relation, la communication est elle directe entre l’émetteur de la requête et le possesseur de la ressource ? Système de mise en relation PC PC Ressource Ressource Ressource : -fichier -service Ressource Internet Ressource Non (favorise l’anonymat) Oui Freenet, OceanStore, XtremWeb (serveur central) Pourquoi ne pas utiliser un mécanisme spécialisé ??? Gnutella, Fastack Napster, eDonkey2000 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

16 Classification des systèmes P2P C) Architecture du MMR
Architecture du Mécanisme de Mise en Relation : recherche centralisée, distribuée ou hybride ? Central server Gnutella, Fasttrack peer GET file Search query Peer ID Mécanisme de découverte de ressources totalement distribué Indexation par catalogues hiérarchiques Distribué Centralisé Hybride Chord CAN PASTRY Farsite Tapestry Gnutella Freenet, OceanStore Napster, Décrypthon Fasttrack, BearShare 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

17 Pair à Pair VS client-serveur
Quelles sont les paramètres qui motivent le choix d’une organisation P2P au lieu d’un système Client-Serveur classique ? Nombre d’utilisateurs ?  (Google P2P ?, Napster P2P ?) Resitance aux défaillances ?  à priori meilleure pour le P2P (Oceanstore) Performance (latence d’accès) ?  Client Serveur Performance (débit document) ?  P2P (Gnutella, Fasttrack) Service complexe (extensible) ?  Client Multiserveurs  P2P Cohérence ?  plus facile en Client Serveur Droit, copyrigth ?  P2P (Freenet) Petits documents + pas de problème de droit, copyright + service simple (ou non extensible)  Client serveur dans les autres cas, le P2P peut être intéressant. Citeseer (service de référence/citation et archivage de publications en informatique)  Gros documents mais peu d’utilisateurs 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

18 Tutoriel GRID2/RenPar Hammamet
Sommaire Introduction Rationalisation - classification Le système XtremWeb I La recherche dans les systèmes P2P Pour en savoir plus 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

19 Tutoriel GRID2/RenPar Hammamet
Une plate-forme de rechercher opensource pour étudier : Le Calcul Global (extensibilité ,organisation des serveur,…) Le Calcul Pair à Pair (volatilité, communication inter noeud, sécurité) Fusion des systèmes de Calcul Global et Pair à Pair  Plate-forme de Recherche (étudier de nouveaux mécanismes)  Plate-forme de Production (identifier les problèmes des utilisateurs) System CGP2P Mon PC requête résultat un PC accepte fournit PC Un autre PC Communications Potentielles pour les Applications parallèles Accepte concerne des Calculs ou des données Les requêtes peuvent être relatives à des données ou des calculs 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

20 Architecture Générale
L’architecture actuelle est centralisée Global Computing et Peer to Peer (modèles d’interaction) 3 entités : client/server/worker XW Serveur hiérarchique PC Serveur Peer to Peer PC Serveur Global Computing (client) Architecture centralisée/hiérachisée. centralisée signifie que que tout le contrôle se fait sur les serveurs. Par exemple les workers ne peuvent directement lancer un calcul sur un autre worker. Hiérarchisée signifie que le contrôle est distribué sur un ensemble de serveur organisé de manière hiérarchique. Nous distinguons trois entités CSW. client soumet des requetes de calcul, le serveur les assigne à des worker, et les worker les exécutent. CG on a un serveur qui se comporte comme un client et qui contient une très grosse somme de calcul et qui les soumet aux worker. en mode pair à pair, des clients soumettent à un serveur des calculs qui les répartie sur l ’ensemble des workers. PC Client/worker Internet ou LAN PC Worker PC Worker PC Client/Worker 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

21 Architecture du Worker
Applications  Binaire (codes CHP en Fortran ou C)  Java (codes récents, codes objet) Systèmes d’exploitation  Linux  Windows Mode d’opération  Screen saver  contrôle à distance du serveur (on/off) Protocol: traverser les pares feux (firewalls) hostRegister Worker Server WorkRequest workResult XML RPC et SSL authentification and cryptage 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet workAlive

22 Architecture du Client
Une API Java  soumission de tâches  collection de résultats  contrôle du serveur Applications  Multi-paramêtres, sac de tâches  Maître-esclave (iteratif), EP Contrôle du serveur  configuration de la plate-forme (nombre de Workers, type de Workers, etc.) Client Configure experiment Server Worker Get work Launch experiment Put result Collect result 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

23 XW1 Coordinator Architecture First version: centralized
Data base set Task selector Priority manager Tasks Applications Tasks Results Statistics Results Scheduler Volatility Detect. Result Collector Request Collector Communication Layer XML-RPC SSL TCP Worker Requests Client Requests 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

24 Software Technologies
Database SQL PerlDBI Java JDBC Server Java Communication XML-RPC SSL http server PHP3-4 Worker Client GNU autotool Java Installation Installation prerequisites : database (Mysql), web server (apache), PHP, JAVA jdk1.2. 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

25 Tutoriel GRID2/RenPar Hammamet
Sommaire Introduction Rationalisation - classification Le système XtremWeb I Applications La recherche dans les systèmes P2P Pour en savoir plus 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

26 Tutoriel GRID2/RenPar Hammamet
XtremWeb: User projects 1 CGP2P ACI GRID (academic research on Desktop Grid systems), France Industry research project (Airbus + Alcatel Space), France 3 Augernome XtremWeb (Campus wide Desktop Grid), France IFP (French Petroleum Institute), France 5 EADS (Airplane + Ariane rocket manufacturer), France 6 University of Geneva, (research on Desktop Grid systems), Switzerland University of Winsconsin Madisson, Condor+XW, USA University of Gouadeloupe + Paster Institute: Tuberculoses, France Mathematics lab University of Paris South (PDE solver research) , France University of Lille (control language for Desktop Grid systems), France ENS Lyon: research on large scale storage, France 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

27 Tutoriel GRID2/RenPar Hammamet
Casper (Airbus, Alcatel Space) Building an open source Framework for sharing software and hardware resources Desktop Grid Component Execution Clusters Component Execution XtremWeb Numerical Component ASP Job submission Data Transfer Scheduler Java Data User management Data management Portal (pages web) Parallel Computers Job submission Data Transfer Java Job submission Data Transfer Pc or Station Client Component Execution Html SSL data Numerical Component 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet Data

28 Tutoriel GRID2/RenPar Hammamet
Augernome XtremWeb Particle Physics Laboratory (LAL-IN2P3) Understanding the origin of very high energy cosmic rays (10^20 ev) Air Shower Extended Simulator Typical execution time: 10 hours Number of simulations: Millions Proteins Modeling and Engineering Laboratory Structural Genomic: Numerical simulation of proteins conformation change Charm Molecular dynamic Various execution time Movie generation (large number of simulations) 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

29 Pierre Auger Observatory
Understanding the origin of very high cosmic rays: Aires: Air Showers Extended Simulation Sequential, Monte Carlo. Time for a run: 5 to 10 hours Air shower parameter database (Lyon, France) Traditional Super Computing Centers XtremWeb Server CINES (Fr) Estimated PC number ~ 5000 air shower PC worker Internet and LAN Fermi Lab (USA) PC Client PC Worker PC worker Aires 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

30 Tutoriel GRID2/RenPar Hammamet
French Petroleum Institute Gibbs Application Molecular modeling Monte-Carlo simulation Task duration : ~ 48 hours on a typical PC Senkin Application Computation of the auto-inflaming time for a gas Application to car Gasoline engines: multi-parameter execution, of parameter set for 1 study 10 minutes of computation, input file size: 200k, output file size 5 Mo 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

31 Tutoriel GRID2/RenPar Hammamet
EADS-CCR (Airbus, Ariane) Cassiope application: Ray-tracing 4 8 16 00:00:00 00:01:26 00:02:53 00:04:19 00:05:46 00:07:12 00:08:38 00:10:05 00:11:31 00:12:58 00:14:24 00:15:50 00:17:17 00:18:43 00:20:10 00:21:36 00:23:02 XtremWeb VS. MPI XtremWeb MPI Number of processors temps h:m:s 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

32 Lancer de rayons Pair à Pair
PC Client/Worker PovRay Internet ou LAN PC Serveur Soumission de scène PC Client/Worker PovRay Lancer de rayons P2P : à partir de l’application standard PovRay inchangée (binaire identique) Principe: n’importe qui peut soumettre un ordre de calcul d’images de synthèse 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

33 Tutoriel GRID2/RenPar Hammamet
Lancer de rayons Pair à Pair Source Worker Produire un film à partir d’une scène PovRay. Prototype réalisé au LRI Caméra Worker Worker Scène Film calculé avec Xtrem RayTracing Image originale : 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

34 Tutoriel GRID2/RenPar Hammamet
XW I sur ressources légères Personal multi-Computer (PmC) 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

35 Tutoriel GRID2/RenPar Hammamet
Sommaire Introduction Rationalisation - classification Le système XtremWeb I La recherche dans les systèmes P2P Pour en savoir plus 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

36 Calcul Global et de système Pair à Pair 26 chercheurs, 7 laboratoires
Fusion des concepts de Calcul Global et de système Pair à Pair 26 chercheurs, 7 laboratoires (ASCI, IMAG-ID, LAL, LARIA/LIP, LIFL, LRI, LIX-Polytechnique) + UCSD (USA) + EADS Approche : augmenter les fonctionnalité des systèmes de calcul global stockage communications entre les participants possibilité à n’importe quel participants de soumettre des requêtes Résultats visés : Trouver des réponses aux problèmes scientifiques posés Produire des logiciels interopérants qui assemblés forment une plate-forme CGP2P 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

37 Tutoriel GRID2/RenPar Hammamet
Les thèmes de recherche CGP2P Architecture générale du système distribué Interface utilisateur / aide à la décision (Sous projet I) Sécurité (Sous projet II) Stockage/Fouille (Sous projet III) Communications inter-nœuds : MPICH-V (Sous projet IV) Ordonnancement (Sous projet IV) Vérification théorique des protocoles (Sous projet V) Interopérabilité avec les GRID (Sous projet V) Validation sur des applications réelles  Il y a un besoin d’outils pour l’étude scientifique des mécanismes des systèmes Pair à Pair 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

38 Communication inter nœuds : MPICH-V (Volatile)
Objectif : exécuter des applications parallèles prévues pour des machines parallèles à passage de messages (ratio cal/com très grand) Problèmes : 1) les noeuds sont volatiles (X peuvent disparaître à tous moments) 2) les nœuds sont protégés par des firewalls. Vue du programmeur : PC client MPI_send() PC client MPI_recv() Proposition pour résoudre le problème Utiliser une mémoire de canal : qui stocke tous les messages, est fiable, qui accepte les communications XW PC client Internet Ou LAN Get Put Mémoire de canal STABLE PC client 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

39 Communication inter nœuds : MPICH-V
PC client Get Internet ou LAN PC Mémoire de canal Put Que se passe-t-il en cas de défaillance ? Un nouveau PC reprend le calcul depuis le début* et rejoue toutes ses Communications *dernier checkpoint Intérêt  reprendre uniquement la (les) tâche(s) défaillante(s) Est ce que ça fonctionne vraiment ? théorique : modélisation, étude des cas limites Collaborations avec l’équipe Paral du LRI Vérification Expérimentale : réalisation, expérimentation, performance 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

40 Communication inter nœuds : MPICH-V
Vérification théorique : Dans le cas général, il faut reproduire les com. à l’identique !!  Problème du MPI_recv(any,…) Ordre initial : t1 mc1 t2 mc2 t3 À cause de l’asynchronisme des mémoires de canal, les ordres peuvent être inversés les nœuds numérotent tous les messages qu’ils envoient et avertissent les mémoires de l’ordre local de leurs réceptions 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

41 Communication inter nœuds : MPICH-V
Communications: un device MPICH avec mémoire de canal Run-time: une virtualisation des processus MPICH en tâches XW avec checkpoint Link de l’application avec libxwmpi au lieu de libmpich Mémoires de canal Serveurs de checkpoint Serveur de tâches «ordonnanceur » worker Internet ou LAN Worker Worker 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

42 Communication inter nœuds : MPICH-V
Device ‘ch_xw’ en remplacement du ‘ch_p4’ Réalisation des fonctions principales par-dessus les sockets ADI MPI_Send _xwbsend _xwbrecv _xwprobe - check for any message avail. - blocking send - blocking receive MPID_SendControl MPID_SendChannel Channel Interface Chameleon Interface PIbsend _xwfrom - get the src of the last message _xwInit - initialize the client XW device Interface _xwbsend _xwFinalize - finalize the client 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

43 Inter-node communication: MPICH-V (Volatile)
PC client Get Internet Or LAN Channel Memory Put Tous premiers résultats (RTT Ping-Pong) : 2 PIII 500, une mémoire de canal, 100base T Seuil Eager/rendez-vous Temps, sec ch_xw, mean 1 2,6 Mo/s ch_xw, min 1 ch_p4, mean ch_p4, min X ~2 Le facteur 2 par rapport à P4 est raisonnable puisque chaque message traverse de réseau 2 fois. X ~2,33 5,4 Mo/s 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet Taille de message (Octets)

44 Communication inter nœuds : MPICH-V
Checkpoint : bibliothèque existante  Condor Temps checkpoint (sec) Temps réseau TCP (min) 6 minutes 3 minutes PIII 500 3 minutes 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

45 Communication inter nœuds : MPICH-V
Performances pour une application parallèle sur ressources Volatile ? n tâches, m > n machines, c checkpoints (période), un temps séquentiel ts et une accélération linéaire, p % de restarts, d minutes pour un checkpoint Tparv= (ts/n) + p * n * ((ts/n)/c) + c * d Plus le nombre de checkpoints est grand, moins le temps perdu par une tache non terminée est important. Plus le nombre de checkpoints est grand, plus le temps perdu pour La sauvegarde est important avec redondance r (p devient une probabilité de défaillance moyenne) : Tparv= (r*ts/n) + p^r * n * ((ts/n)/c) + c * d 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

46 Communication inter nœuds : MPICH-V (sans redondance)
ts= min (100 jours) tcom négligeable Tparv= (ts/n) + p *n * ((ts/n)/c) + c * d Minutes P=0,01, d=1min P=0,1, d=1min P=0,1 d=10min P=0,01, d=10min 1200 1100 Accélération 1000 900 700 800 600 700 500 600 400 300 500 400 200 300 100 200 Une nuit 100 100 200 300 Nombre de checkpoints (c) 1 10 100 1000 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

47 Communication inter nœuds : MPICH-V (avec redondance)
ts= min (100 jours) tcom négligeable Tparv= (r*ts/n) + p^r *n * ((ts/n)/c) + c * d en traits forts : P=0,01 r=1, d=1min r=2 d=1min r=1 d=10min r=2, d=10min Accélération 700 600 500 400 300 200 100 1 10 100 1000 Nombre de checkpoints (c) 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

48 Sécurité des ressources
PC agressif Exécution de codes natifs : Internet ou LAN Sans authentification utilisateur, garantir la sécurité des ressources ? (le code utilisateur ne doit pas pouvoir corrompre une ressource ) code agressive Ressource d’exécution “Sandboxing” du code natif (fondé sur ptrace): Janus, Subterfugue, Fork (ptracé) Processus Père contrôleur Vérification des arguments (pile) Autorisation Application Appel système Proc ptracé Interception Exécution Noyau Zone Susceptible d’attaques par « race condition » 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

49 Sécurité des ressources
Système virtuel avec contrôle fondé sur ptrace : UML Fork (ptracé) Application Application Appel système vérifié par le système émulé Appel système Système émulé « exécution » Noyau natif Système natif Linux Security Modules (LSM) : Noyau Write(…) Setparams nop nop nop Application Module sécurité Modifications Code de vérification Autorisation Appel système Hook 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

50 Tutoriel GRID2/RenPar Hammamet
Sécurité des ressources : Performance comparée des natifs et des natifs sandboxés Pentium 4 1,7 Ghz, 256 Mo, Linux 2.2.4 Performance d’opérations systèmes : Getpid, open/close, read, write Performance sur applications : Ralentissement par rapport au natif Ralentissement par rapport au natif 251 Sans sandbox LSM en us Subtergugue en us UML en us 2,5 201 2 151 1,5 101 1 51 0,5 1 gzip gunzip gcc getpid read write stat open/close fork+ /bin/sh LSM est + rapide car le patch du noyau enlève les « capabilities » Sub est + rapide qu’UML parce qu’il effectue moins de changements de contexte 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

51 Sécurité des ressources : Les limites de l’approche Ptrace
Pentium 4 1,7 Ghz, 256 Mo, Linux 2.2.4 Caractéristiques des applications : Répartition des appels systèmes dans le temps d’exécution 100% autre read/write open/close fork 90% 80% 70% 60% 50% 40% Ptrace intercepte tous les appels systèmes (malloc, mmap, etc.) 30% 20% 10% 0% 9 Avril 2002 gzip gunzip Tutoriel GRID2/RenPar Hammamet gcc

52 Sécurité des ressources
Un système intermédiaire entre Ptrace et les LSM Objectifs : 1) politique de sécurité user space, 2) ne vérifier que le nécessaire Processus Contrôleur Contrôle des politiques de sécurité générique Application User space Netlink Appel système LSM Netlink Noyau Write(…) Setparams nop nop nop Kernel space Module sécurité Générique Hook 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

53 Tutoriel GRID2/RenPar Hammamet
Nécessité d’un environnement expérimental complet Besoin d’outils théoriques : Modèles de performance, modèles de défaillance Mais aussi besoin d’outils expérimentaux (instruments) pour l’étude des systèmes complexes à grande échelle Observations / mesures : Plate-forme de tests en grandeur nature TestBed (CGP2P) Un collecteur de Traces de paramètres de ressources (XW-trace) Un ensemble de benchmarks et de sondes Expériences en environnement contrôlé (reproduire les conditions expérimentales) : Un(des) Emulateur(s) reproduisant avec des degrés de fidélité variable le système et les conditions expérimentales (XW-emulator) Des simulateurs (ex : ordonnancement totalement distribué) 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

54 Grid Explorer : une plate-forme nationale pour l’exploration des Grid
Un instrument pour l’expérimentation avec ces conditions reproductibles Co-initiateurs : O. Richard (ID), Pierre Sens (P6) Un outil pour l’émulation/simulation des systèmes distribués à grande échelle Pour les Grid, P2P, etc. Connectable aux testbed Grid (VTHD) Participation du CNRS/CEA/INRIA Potentiellement accueilli par l’IDRIS ou du CEA 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

55 Tutoriel GRID2/RenPar Hammamet
Conclusion Les systèmes distribués à grande échelle sont étudiés par de nombreux chercheur en particulier pour le calcul. XtremWeb constitue l’une des première plate-forme complète de recherche et de production. WWW. XTREMWEB.NET Le projet CGP2P a pour objectif d’étudier la prochaine génération de systèmes P2P fusionnant calcul et stockage. Il existe de nombreux problèmes à résoudre avant de pouvoir effectivement calculer sur un système P2P de façon sure et efficace. La recherche dans ce domaine doit nécessairement inclure les composantes théoriques et expérimentales. 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

56 Tutoriel GRID2/RenPar Hammamet
Pour en savoir plus [1] « Calcul Global Pair à Pair : extension des systèmes Pair à Pair au calcul », lettre de l’IDRIS, 12 pages, Février [2] Projet ACI GRID CGP2P, [3] Projet XtremWeb, [4] Deuxième Workshop International « Global P2P Computing », avec IEEE/ACM CCGRID 2002, Berlin, Mai 2002, [5] « Peer-to-Peer Computing », D. Barkai, Intel press, 2001, Octobre 2001. [6] « Harnessing the power of disruptive technologies”, A. Oram éditeur, edition O’Reilly, Mars 2001 [7] « Search in power-law networks », L. A. Adamic et al. Physical Review, E Volume 64, 2001 [8] « The Grid : Blueprint for a new Computing Infrastructure », I. Foster et C. Kesselman, Morgan-Kaufmann, 1998. 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet

57 2nd International Scientific Workshop on
IEEE International Symposium on Cluster Computing and the Grid (CCGrid'2002) Berlin-Brandenburg Academy of Sciences and Humanities May , 2002 Berlin, Germany A Framework for Classifying Peer to Peer Technologies, Krishna Kant, Ravi Iyer (Enterprise Architecture Lab, Intel Corporation), Vijay Tewari (E-Business Solutions Lab, Intel Corporation) Improving Data Availability through Dynamic Model-Driven Replication in Large Peer-to-Peer Communities, Adriana Iamnitchi, Kavitha Ranganathan, Ian Foster (Department of Computer Science, Chicago) NEVRLATE: Scalable Resouce Discovery, Ajay Chander (Computer Science Department, Stanford University) Steven Dawson, Patrick Lincoln, David Stringer-Calvert Maintaining Connectivity in a Scalable and Robust Distributed Environment, Mark Jelasity (Department of Artificial Intelligence, Free University of Amterdam), Mike Preuss (Department of Computer Science, University of Dortmund), Marten van Seen (Free University of Amsterdam), Den Paechter (Napier University) Motivating Computational Grids, D. Skillicorn (Computer Science Department, Queens University) JM: A Jini Framework for Global Computing, Zoltan Juhasz (Department of Information Systems, University of Veszprem and Department of Computer Science, University of Exeter), Arpad Andics, Szabolcs Pote (Department of Information Systems, University of Veszprem) 9 Avril 2002 Tutoriel GRID2/RenPar Hammamet


Télécharger ppt "Calcul Global Pair à Pair :"

Présentations similaires


Annonces Google