La conception d'applications distribuées doit faire face à de nouveaux défis que constitue l'émergence d'infrastructures réseau à très grande échelle, au caractère souvent dynamique et pouvant s'appuyer sur des communications sans fil. C'est notamment le cas des grilles de calcul (Condor, Globus, etc.), des systèmes pair à pair (Gnutella, BitTorrent, etc.) ou encore des réseaux de capteurs. Ces caractéristiques nouvelles font qu'il est nécessaire de construire de nouvelles architectures, de nouvelles abstractions ou encore de nouveaux algorithmes adaptés à l'environnement d'exécution de ces applications.
Ce cours est spécifiquement dédié à la présentation d'architectures et d'algorithmes pour les systèmes pair à pair.