Styles architecturaux
Transcription
Styles architecturaux
Styles architecturaux Styles distribués – Peer to Peer Peer to Peer (P2P) • Réseau de pairs • Aucune structure particulière (loosely coupled) • Chacun peut agir comme client ou serveur • Communication par un protocole de communication • Parfois spécialisé (ex. Napster, Gnutella) • Décentralisation de l’information et du contrôle • Style souvent utilisé pour le partage de fichiers - musique, films, images • Autres applications possibles : • Commerce électronique • Le clavardage (chat) • Capteurs distribués (remote sensors) 2 Peer to Peer (P2P) 3 Style Peer to Peer • Peers – Composantes indépendantes – Chacune ayant chacun son état et sa boucle de contrôle (thread). • Connecteurs: – Protocole réseau, souvent propriétaire. • Éléments de données: – Messages réseaux • Topologie – En réseau – Peut avoir des connections redondantes entre les peers – Peut varier arbitrairement et dynamiquement • Support au traitement décentralisé par – Flot de contrôle et ressources distribués parmi les peers – Fortement robuste en cas de défaillance d’un nœud – Extensible en terme d’accès aux ressources et de puissance de traitement 4 Peer to Peer (P2P) • Découverte de ressources • L’absence de centralisation rend la localisation de ressources difficile • Application P2P pure • Requête d’information envoyé dans tout le réseau • Elle se propage jusqu’à ce que: • l’information soit trouvé; ou • On dépasse un seuil de propagation • Si l’information est localisée • Le demandeur obtient l’adresse directe du peer • Il le contacte directement 5 Peer to Peer (P2P) • Applications hybrides • Approche pour contourner les difficultés du modèle pure • Certain peers jouent des rôles spéciaux • Ex. : localisation de peer • Ex. : répertoire pour localiser l’information • Exemple – Napster • Pas une vraie application P2P • Un serveur centralisé pour indexer la musique et localiser les peers. 6 Architectures Peer to Peer • Exemples de systèmes P2P – Systèmes de partage et de découverte de ressources décentralisées • Napster • Gnutella – Skype • Une approche P2P qui fonctionne bien. 7 Napster 8 Gnutella (original) 1 1 2 2 5 4 2 3 3 9 Skype 10 Intuition de Skype • Une combinaison d’architecture client-serveur et peer-to-peer – permet d’aborder le problème de découverte • La réplication et la distribution de répertoires, sous la forme de super-noeuds, – permet d’aborder le problème extensibilité (scalability) et de robustesse rencontré par Napster. • La promotion de peers ordinaires en super-noeuds basé sur les capacités de traitement et de communication • Permet d’aborder un autre aspect de la performance du système: on ne peut pas compter sur tous les peers pour les services importants. • Un protocole propriétaire employant l’encryption permet la confidentialité d’appels acheminé par l’intermédaire de supernoeuds • Restreindre les participants aux clients de Skype, et rendre ces clients résistants aux inspections et modifications, aide à prévenir les clients malicieux d’entrer dans le réseau 11 Conclusion • Le style peer-to-peer est une généralisation du modèle clientserveur. • Le modèle P2P pure offre une forte robustesse. • Cependant il présente quelques problèmes – – – – Localisation des ressources Localisation des peers lorsqu’un peer se joint au système. Engorgement du réseau Problèmes de sécurité • Un combinaison des approches client-serveur et P2P semble être le meilleur compromis. 12