Principles of Distributed Systems

Lectures, Wednesday 12:20 - 13:50, S6, Malá Strana, 2025


Contact

  • In person: Room S203, 2nd floor
  • Mattermost
    • Invite link in SIS/notice-board
    • Channel: 2526/nswi035-distrib-en
    • Private message: @faltin.tomas
  • email

Books

  • Van Steen, Tanenbaum - Distributed Systems
    • Download for free
  • Chow, Johnson - Distributed Operating Systems & Algorithms
  • Antonopoulos - Mastering Bitcoin, Mastering Lightning Network
  • Santoro - Design and Analysis of Distributed Algorithms
  • Mullender - Distributed Systems
  • Wu - Distributed System Design

Sylabus

  1. Introduction: [1, 2.1, 2.2, 2.3]
  2. Interprocess communication
    • messages, RPC - [4.2], [8.3]
    • group communication - [8.4]
  3. Synchronization algorithms
    • physical and logical clocks
    • mutual exclusion
    • election
    • causal ordering
    • delivery protocols
    • virtual synchrony
  4. Consensus
    • global state detection
    • armies and generals
    • Paxos
    • RAFT
  5. Distributed shared memory
    • consistency models
  6. Resource and process management
    • distributed deadlocks
    • process migration
    • load balancing
  7. Technical principles of cryptocurrencies

Lectures

Lab 01 - 01.10.

  • Lecture: :heavy_check_mark:
  • Slides: pdf
  • Study::
    • chapter 1 (entire chapter) - Introduction
    • chapter 2.1 - Architectural styles
    • chapter 2.2 - Middleware and distributed systems
    • chapter 2.3 - Layered-system architectures

Lab 02 - 08.10.

  • Lecture: :heavy_check_mark:
  • Study:
    • chapter 4.2 - RPC
    • chapter 8.2 - client-server communication
    • chapter 8.3 - group communication

Lab 03 - 15.10.

  • Lecture: :x: (home study)
  • Study: tbd

Lab 04 - 22.10.

  • Lecture: :x: (home study)
  • Study: tbd

Lab 05 - 29.10.

  • Lecture:: :heavy_check_mark:

Lab 06 - 05.11.

  • Lecture:: :question:

Lab 07 - 12.11.

  • Lecture: :x: (all lectures cancelled - ‘‘dean’s day’’)

Lab 08 - 19.11.

  • Lecture: :question:

Lab 09 - 26.11.

  • Lecture: :question:

Lab 10 - 03.12.

  • Lecture: :question:

Lab 11 - 10.12.

  • Lecture: :question:

Lab 12 - 17.12.

  • Lecture: :question:

Lab 13 - 07.01.

  • Lecture: :heavy_check_mark: