First semester

Distributed Systems

Objectives

This course aims to provide students with basic knowledge of distributed architectures spread across different sites around the world. The three most common large-scale distributed architectures will be presented: grids, peer-to-peer systems, and cloud. The assumptions, concepts, and algorithms will be detailed for each of them. The objective is to gain an understanding of the distributed systems currently available and to point out the future directions of these architectures.

Course outline

1. Introduction to distributed architecturesrn2. Foundational concepts (synchronization, mutual exclusion, etc.)rn3. Centralized and semi-centralized approaches (cloud, grids, etc.)rn4. Decentralized approaches (P2P systems—structured, unstructured, and hybrid)rn5. Application to file-sharing systems and epidemic protocols