Learn more about our new program
Distributed Systems
Announcements


Distributed Systems

The objective of this course is to provide students with a strong background on aspects of the theory, design and implementation of distributed systems (principles and concepts, components, design approaches, programming issues), to allow them to understand the capabilities offered and the problems faced by contemporary distributed systems.

1st Part: Theory

Distributed system models. Real and logical time, consistent global states, global predicate evaluation. Basic algorithms: deadlock detection, distributed termination, mutual exclusion, leader election. Fault tolerance and replication: replica consistency protocols (finite state machines and primary-backup replication), hybrid protocols, checkpoints and recovery. Distributed transactions and atomic commit, non-blocking atomic commit and atomic multicast. Distributed agreement with fail-stop and Byzantine faults.

2nd Part: Implementation

Client-server model, peer to peer model. Remote procedure call and remote object invocation. Threads and processes. Processor and server organization, code migration. Entity naming, distributed naming systems and locating mobile entities. Distributed file systems (design and implementation aspects, case studies). Distributed object systems (basic approaches, examples of distributed object systems). Distributed hash tables and their applications.  Peer-to-peer file exchange protocols.

 

 


Learn more about our new program!
Learn more about our requirements for participating.

Learn More
AUEB - M.Sc. in Computer Science
Copyright 2024 - All Rights Reserved