partage de mémoire à très grande échelle sur des réseaux pair-à-pair

23
Partage de mémoire à très grande échelle sur des réseaux pair-à- pair Gabriel Antoniu , Luc Bougé, Thierry Priol IRISA/INRIA Rennes

Upload: chars

Post on 15-Jan-2016

21 views

Category:

Documents


0 download

DESCRIPTION

Partage de mémoire à très grande échelle sur des réseaux pair-à-pair. Gabriel Antoniu , Luc Bougé, Thierry Priol IRISA/INRIA Rennes. Plan. Pourquoi le P2P Introduction à JXTA Objectifs Concepts de base Protocoles Service de partage de mémoire dans JXTA Proposition d’architecture - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

Partage de mémoire à très grande échelle

sur des réseaux pair-à-pair

Gabriel Antoniu, Luc Bougé, Thierry Priol

IRISA/INRIA Rennes

Page 2: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

2

Plan

Pourquoi le P2P Introduction à JXTA

Objectifs Concepts de base Protocoles

Service de partage de mémoire dans JXTA Proposition d’architecture

Conclusion

Page 3: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

3

Pour quoi le pair-à-pair (P2P) ?

Client

Internet

serveur

Client

ClientClient

Client

Client

ClientClient

Client

Client

CacheProxy

serveur

Zone de congestion Client/Serveur

serveur serveur

Client/Serveur

Client/Serveur Client/

Serveur

Client/Serveur

Client/Serveur

Client/Serveur

Client/Serveur

Client/Serveur

Zone de congestion

Modèle client/serveur

Modèle pair-à-pair

Page 4: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

4

P2P: une définition

Objectif: exploiter les ressources disponibles à la périphérie d’Internet Puissance de calcul, espace de stockage, contenu

Définition Parité: tout nœud peut être client et serveur pour

des transactions différentes Comment reconnaître un système P2P ?

Connectivité variable et adresses IP temporaires = le cas standard!

Autonomie des nœuds périphériques

Page 5: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

5

P2P: caractéristiques

Dynamicité du réseau sous-jacent Composition et topologie

Découverte dynamique de pairs et de ressources

Extensibilité Plus de pairs=>plus de performance

Haute disponibilité Pairs interchangeables (réplication)

Fiabilité des répertoires de ressources

Page 6: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

6

JXTA: infrastructure génériquepour le P2P

Plate-forme ouverte de programmation P2P

Ensemble de protocoles interopérables (XML)

Indépendance des langages, systèmes, réseaux

Projet open source:

http://www.jxta.org

Page 7: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

7

Services et applications JXTA

Stockage distribué et partage de données Recherche, indexation et partage de fichiers

Calcul distribué à grande échelle Outils de collaboration Messagerie P2P Monitoring des pairs et des services

Page 8: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

8

Le réseau virtuel JXTA

Peer

Peer

Peer Peer

Peer

PeerPeer

Peer

PeerPeer

Peer

Peer

FirewallPeer

PeerTCP/IP

HTTP

Peer ID

Peer ID

Peer ID

Peer ID

Peer ID

Peer ID

Peer ID

Peer ID

Réseau physique

Firewall

Page 9: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

9

JXTA: pairs

Un pair = Un identifiant unique (UUID) Adressable indépendamment de sa localisation

(firewalls, NAT) Plusieurs points d’accès réseau (TCP, HTTP, etc.)

Plusieurs types de pairs Minimaux Simples Rendez-vous Routage

Page 10: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

10

JXTA: pairs de routage

Peer

Peer

Peer Peer

Peer

PeerPeer

Peer

PeerPeer

Peer

Peer

FirewallPeer

Peer

HTTP

Peer ID

Peer ID

Peer ID

Peer ID

Peer ID

Peer ID

Peer ID

Peer ID

Relay Peer

Relay Peer

Réseau physique

TCP/IP

Page 11: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

11

JXTA: groupes de pairs

Ensemble de pairs réunis par un intérêt commun Applications collaboratives Services de groupe Politique de sécurité

Peer ID

Peer ID

Peer ID

Peer ID

Peer ID

Peer ID

Peer ID

Peer ID

NetPeerGroup

PeerGroupA

PeerGroupB

Page 12: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

12

JXTA: annonces (advertisements)

Toute ressource est représentée par une annonce

Pair Groupe de pairs Canal de communication Point d’accès au pair Service Contenu Etat d’un pair

PeerGroup Advertisement:

<?xml version="1.0"?><!DOCTYPE jxta:PGA><jxta:PGA>

<GID>urn:jxta: uuid-

BCBCDEABDBBBABEABBBABA000000</GID><MSID>

urn:jxta:uuid-BFEFDEDFBABAFRUDBACE00000001</MSID><Name>

My Group</Name><Desc>

This group is to be used for my own testing</Desc>

</jxta:PGA>

Page 13: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

13

JXTA: communication par canaux

Canaux Asynchrones Uni-directionnels 1-to-1, 1-to-N ou N-to-1

Localisation transparente des services

Pipeline de services Haute disponibilité

(reconfiguration transparente en cas de panne)

Peer Group A

Input Pipe Output Pipe

Peer

Peer

PeerPeer

PeerGroup B

Send

Receive

Point-to-Point

Pipe

Propagate

Pipe

Propagate

Page 14: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

14

JXTA: pile des protocoles

Peer Resolver Protocol

Peer Rendezvous

Protocol

Peer Endpoint

Protocol

Peer Discovery

Protocol

Pipe Binding

Protocol

Peer Info

Protocol

Page 15: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

15

JXTA: protocole de découverte

1

2

22

2

3

3

3

44

4

RdV RdV

RdV

Page 16: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

16

JXTA: architecture

Community JXTACommunity JXTAServicesServices

Community JXTA ApplicationsCommunity JXTA ApplicationsSunSun

JXTAJXTAApplicationsApplications

SecuritySecurity

Peer GroupsPeer Groups Peer PipesPeer Pipes PeerPeerMonitoring Monitoring

PeerPeerCommands Commands

Sun JXTASun JXTAServicesServices

IndexingIndexing SearchingSearching File sharingFile sharing

JXTAJXTAShellShell

JXTAJXTAApplicationsApplications

JXTAJXTAServicesServices

JXTAJXTACoreCore

SecuritySecurity

Any Peer on the Expanded WebAny Peer on the Expanded Web

Page 17: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

17

JXTA: services de base

Discovery Service PeerInfo Service Pipe Service Resolver Service

Membership Service Access Service

Page 18: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

18

Service de partage de mémoire

Point de départ: mémoire virtuellement partagée

Peer ID

Peer ID

Peer ID

Peer ID

Peer ID

Peer ID

Peer ID

Peer ID

Données communes

Espace d’adressage global

Page 19: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

19

Service de partage de mémoire P2P

Nouvelles hypothèses Dynamicité du réseau Hétérogénéité des processeurs et des réseaux Sécurité Cohérence hiérarchique Schémas d’accès aux données Nommage des nœuds Critères d’évaluation à revoir

Pas une DSM à grande échelle!

Page 20: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

20

Application: couplage de code

Une application = un assemblage de plusieurs codes de calcul

Mécanique des structures

Thermique

Optique

Dynamique

Conceptionde

Satellite

Application de couplage

Grappe de PC

SAN

SAN

Grappe de PC

LAN

WAN

SupercomputerVisualisation

Page 21: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

21

Application: metacomputing

Stockage des données Éviter les transferts

multiples entre client et serveurs

Gestion des données distribuées et redistribution

Modèle de déploiement P2P

AGENT(s)

S1 S2 S3 S4

Client

A, B, C

Réponse (C)

S2 !

Requête

Op1(C, A, B)

Serveur Serveur Serveur Serveur

Op2(C, A, B)

Service de gestion des données distribuéespersistantes

Page 22: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

22

Service de partage de mémoire:Architecture

ApplicationsApplications

SecuritySecurity

Peer GroupsPeer Groups Peer PipesPeer Pipes PeerPeerMonitoring Monitoring

Memory Sharing ServiceMemory Sharing Service

JXTAJXTAApplicationsApplications

JXTAJXTAServicesServices

JXTAJXTACoreCore

SecuritySecurity

Any Peer on the Expanded WebAny Peer on the Expanded Web

CommunicationsCommunications SuperpagesSuperpages

Consistency protocolsConsistency protocols

Page 23: Partage de mémoire  à très grande échelle  sur des réseaux pair-à-pair

23

Conclusion

Partage de mémoire pair-à-pair Principaux défis: dynamicité, hétérogénéité,

architecture hiérarchique Applications typiques

Couplage de code Persistance des données dans les

environnements de calcul sur grille JXTA: plate-forme ouverte pour des services

et applications P2P