Syst.èmes et algorithmes répartis
Objectives
This class aims at providing a state of the art about principles of distributed computing and some examples of their application through distributed services : distributed file systems, dependable systems, distributed replicated memories, distributed transactional systems, etc
Description
Principles and concepts of distributed computing are described and their use in distributed systems. After a short introduction, the standard model of distributed computing based upon the causality relation is pointed out. Then, a survey of generic distributed algorithms is performed : datation, causally ordered and atomic protocols, mutual exclusion, consensus, termination, global snapshots and checkpointing, memory consistency, etc
Some distributed system examples are especially emphasized : distributed file systems (NFS, AFS), atomic multicast protocols (Ensemble, Java Groups, etc), distributed memories and their various consistency semantics, distributed simulation (HLA standard), etc
Current trends and/or more specific applications close this survey of distributed computing foundations : peer-to-peer computing, sensor networks, mobility, ambient systems, etc
Bibliography
Ajay D. Kshemkalyani and Mukesh Singhal, Distributed Computing : Principles, Algorithms and Systems, Cambridge University Press, 2008
Pradeep K. Sinha, Distributed Operating Systems, Concepts and Design, IEEE Press, 1997
Georges Coulouris, Jean Dollimore and Tim Kindberg, Distributed Systems, Concepts and Design, , 4ième Edition, Addison-Wesley, 2005.
Andrew S. Tanenbaum and Maarten van Steen, Distributed Systems, Principles and Paradigms, Seconde Edition, Prentice Hall, 2006.
Pre-requisites
A practical programming experience and fundamental knowledge about operating systems, parallel computing, middlewares and networks are required. Basic knowledge of formal methods such (temporal) logic and transitions systems are also worthwhile.
Contact(s)
QUEINNEC PHILIPPEPlaces
- Toulouse