Version classiqueVersion mobile

Abécédaire des architectures distribuées

 | 
Cécile Méadel
, 
Francesca Musiani

4. Architecture distribuée/répartie/décentralisée/P2P

Francesca Musiani

Texte intégral

1Depuis quinze ans, la notion d’architecture de réseau décentralisée, distribuée, répartie, P2P est devenue l’un des termes les plus largement discutés dans le domaine des technologies de l’information et de la communication (Schoder & Fischbach, 2003 ; Shirky et al., 2001). Ces mots renvoient à une forme d’organisation particulière : un réseau d’égaux ou de pairs qui, à l’aide de systèmes de communication et d’échange appropriés, permet à deux ou plusieurs individus de collaborer spontanément, sans nécessairement avoir besoin d’une coordination centrale (Schoder & Fischbach, 2003 ; Schollmeier, 2001). Sont également associés à ces mots le fait que la responsabilité des échanges ou des communications se trouve aux marges ou à la périphérie du système, et que l’ensemble des ressources du système ne se trouve pas dans un même endroit physique, mais est réparti entre plusieurs machines. Avec les architectures décentralisées ou P2P, sont en jeu la possibilité d’un passage à l’échelle plus souple, la coordination auto-organisée et décentralisée de ressources précédemment sous-utilisées ou limitées, la tolérance aux pannes/redondance, le renforcement de réseaux ad-hoc ; ainsi que les possibilités d’organisation et d’inclusion des utilisateurs qui peuvent plus difficilement être mis en œuvre en utilisant les approches client/serveur « traditionnels ».

2S’il n’existe pas de définition univoque de ces architectures, on peut identifier certains éléments communs que ces différents termes sous-tendent.

  1. de multiples unités de calcul composent le réseau (souvent appelées nœuds, elles sont dotées chacune de mémoire locale, et communiquent par échanges).

  2. les objectifs de l’application sont obtenus par le moyen d’un partage de ressources (qui peuvent être de plusieurs types), pour servir un but commun (par exemple résoudre un problème de calcul à large échelle) ou des besoins individuels grâce à une coordination de ressources partagées.

  3. le système est tolérant vis à vis de la défaillance de nœuds individuels, ce qui a pour conséquence l’absence de point unique d’échec.

  4. le passage à l’échelle se fait de manière souple, puisque les ressources à disposition du réseau augmentent avec le nombre d’utilisateurs.

  5. la structure du système peut être constamment modifiée du point de vue de la topologie et latence du réseau, et le nombre d’ordinateurs qui y sont connectés, puisque une pluralité de parcours pour un même paquet de données est possible ;

  6. chaque nœud peut n’avoir qu’une vision incomplète ou limitée du système.

3Ces caractéristiques font, comme on va le voir, qu’une architecture distribuée n’est pas nécessairement décentralisée (il peut y avoir délégation au réseau distribué d’une tâche qui est ensuite recentralisée), tandis qu’une architecture décentralisée est nécessairement distribuée.

Trois principes

4Le partage des ressources et des services distribué(e)s, la décentralisation et l’autonomie sont généralement reconnus comme les trois principes caractéristiques des réseaux décentralisés ou P2P.

5En premier lieu, dans un réseau P2P, chaque nœud peut fournir à la fois les fonctionnalités de client et de serveur, c’est-à-dire, il peut agir à la fois comme fournisseur et consommateur de services ou de ressources (tels des informations, photos, bande passante, de la capacité de stockage et de calcul…). Parfois, ces nœuds du réseau sont dénommés servents, mot composé dérivé des termes client et serveur.

6Deuxièmement, il n’y a pas d’autorité centrale de coordination pour l’organisation du réseau pendant sa phase de configuration ; une autorité n’est pas non plus présente dans l’utilisation subséquente des ressources et de la communication par et entre les pairs du réseau. Aucun nœud n’exerce donc un contrôle central sur un autre. La communication entre pairs se fait directement. La distinction est souvent faite entre les réseaux P2P purs et ceux qui sont dits hybrides. Lorsque tous les composants du réseau ont des droits égaux et des fonctions équivalentes, on les considère comme « purs » et ils représentent en quelque sorte l’idéal-type de la conception de ces systèmes. Dans de telles structures, il n’existe aucune entité qui a une vision globale du réseau (Barkai, 2001 ; Yang & Garcia-Molina, 2001). Dans les réseaux P2P hybrides, en revanche, des fonctions telles que l’indexation ou l’authentification sont attribuées à un sous-ensemble de nœuds qui, en conséquence, assume le rôle d’une entité de coordination. Ce type d’architecture de réseau combine les principes du P2P et du client6 ; ce qui fait que les réseaux hybrides sont plus largement développés aujourd’hui, mais cela n’empêche pas le développement de quelques exemples emblématiques de réseaux P2P purs.

7En troisième lieu, chaque nœud dans un réseau P2P peut déterminer de façon autonome quand et dans quelle mesure il met ses ressources à la disposition d’autres entités.

Questions de « couches », questions de terminologie

8De quoi parle-t-on quand on parle de P2P, ou plus précisément, de quel P2P parle-t-on selon les cas ? En nous appuyant sur deux contributions récentes (Schoder, Fischbach & Schmitt, 2005 ; Oram, 2001), on propose ici un modèle à trois niveaux ou « couches », se composant d’infrastructures P2P, des applications P2P, et des communautés ou collectifs P2P (tableau 1), qui peut aider à éclairer la terminologie à l’œuvre dans la théorie et la pratique du P2P.

Table 1. Modèle à trois niveaux d’après Schoder, Fischbach & Schmitt, 2005 et Oram, 2001

Communautés P2P

Communautés virtuelles qui se servent de plateformes d’interaction pour favoriser des activités de communication et collaboration entre personnes

Applications P2P

Programmes qui utilisent les services des infrastructures P2P, visant à permettre la communication et la collaboration des entités en absence de contrôle central

Infrastructures P2P

Mécanismes et techniques qui assurent les fonctions de communication, intégration et traduction entre les composants informatiques (les applications en particulier)

9Le premier niveau concerne les infrastructures P2P. Celles-ci sont positionnées au-dessus des réseaux de télécommunications existants, et agissent comme une base pour tous les niveaux. Les infrastructures P2P assurent les fonctions de communication, intégration et traduction entre les composants du réseau. Ils fournissent à chacun d’entre eux des services qui permettent de localiser et de communiquer avec leurs pairs dans le réseau et d’identifier, utiliser et échanger des ressources, ainsi que de lancer des processus de sécurité comme l’authentification et l’autorisation.

10Le deuxième niveau concerne les applications P2P, qui utilisent les services des infrastructures P2P. Elles visent à permettre la communication et la collaboration des entités en absence de contrôle/supervision central/e.

11Le troisième niveau se concentre sur les phénomènes d’interaction sociale, en particulier, la formation de communautés/collectifs et leurs dynamiques internes. Les auteurs du modèle notent donc comment dans celui-ci, le terme peer (pair) se réfère pour les deux premiers niveaux essentiellement à des entités techniques, tandis que pour le troisième niveau il est interprété dans un sens non technique : le pair est alors une personne.

Des systèmes controversés, une pluralité de termes

  • 7  Voir Communiquer en P2P*.

12L’identification des trois principes fondateurs des architectures distribuées montre comment, loin d’être un développement relativement récent qui n’aurait commencé qu’avec Napster, le P2P peut être considéré comme une des plus anciennes architectures dans le monde des télécommunications (Oram, 2001). En ce sens, l’Usenet7, avec ses groupes de discussion, et l’Internet à ses débuts, ou ARPANET, peuvent être classés en tant que réseaux P2P. En conséquence, certains auteurs soutiennent que le P2P est en voie de ramener l’Internet à ses origines, à l’époque où chaque ordinateur avait des droits égaux dans le réseau (Minar & Hedlund, 2001). La baisse des coûts d’un côté, et la disponibilité croissante de l’autre des capacités de calcul (cycles processeur), de bande passante, de stockage, le tout accompagné par la croissance de l’Internet, ont créé de nouveaux champs d’application pour les réseaux P2P. Dans un passé récent, ceci a entraîné une augmentation spectaculaire du nombre d’applications P2P, et la démultiplication des discussions controversées concernant les limites et les performances de ses applications, ainsi que leurs implications économiques, sociales et juridiques (Schoder, Fischbach & Teichmann, 2002 ; Smith, Clippinger & Konsynski, 2003).

13Les chercheurs et les praticiens des architectures distribuées doivent par ailleurs gérer la pluralité et la versatilité du terme P2P et de ses « cousins », alors que ceux-ci recouvrent des configurations très variables, d’un « mythique » P2P pur qui rassemble une communauté, une application et une infrastructure – les trois décentralisés – à des services qui n’ont qu’une composante en P2P, en passant par une multiplicité de combinaisons de ces trois niveaux, décentralisés en tout ou en partie, qui constituent la richesse de l’univers des architectures distribuées aujourd’hui.

Notes

6  Minar, N. (2001). Distributed systems topologies : Part 1 http://www.openp2p.com/pub/a/p2p/2001/12/14/topologies_one.html And part 2 http://www.openp2p.com/pub/a/p2p/2002/01/08/p2p_topologies_pt2.html

7  Voir Communiquer en P2P*.

Auteur

Chargée de recherche au CNRS, chercheuse à l’Institut des sciences de la communication (CNRS/Paris-Sorbonne/UPMC), chercheuse associée au Centre de sociologie de l’innovation (MINES ParisTech-CNRS)

© Presses des Mines, 2015

Licence OpenEdition Books

Rechercher dans OpenEdition Search

Vous allez être redirigé vers OpenEdition Search