ABCDEFGHIJKLMNOPQRSTUVWXYZ
1
2
Part 0: Introduction.Introduction to Distributed SystemsList of references
3
-Brief history;
-Challanges;
-Motivations.
Books:
[1]: Introduction to Reliable and Secure Distributed Programming - C. Chacin, R. Guerraoui, and L. Rodrigues. 2011. (MAIN)
[2]: Distributed Algorithms - N. Lynch. 1998.
[3]: Distributed Computing - H. Attiya, J.L. Welch. 2004.
[4]: Distributed Systems v3.02 - M. van Steen, A. Tanenbaum. 2018.

4
References: See reading material on https://sites.google.com/view/distributed-sytems-2019/lecturesArticles:
Raft: https://www.google.com/url?q=https%3A%2F%2Fwww.usenix.org%2Fsystem%2Ffiles%2Fconference%2Fatc14%2Fatc14-paper-ongaro.pdf&sa=D
5
PART 1: Models, Abstractions, Time
and Basic Algorithms.
M1: Models, Abstractions, and Basic ConceptsYoutube videos:
6
7
-Processes, communication, traces and execution, I/O Automata;
-Failures: crash-stop, and byzantine;
-Event based programming: abstraction, specification and implementations;
-Links: fair-lossy, stubborn, point-to-point.
8
References: See reading material on the website
9
M2: Time in Distributed Systems
10
-Synchronous, asynchronous, and eventually synchronous systems;
-Clock Synchronization: Christian, Berkley, NTP;
- Clock sync. Tree based vs Fully-Distributed Algorithms, Local Skew vs Global Skew, The limits of ordering with timestamps
-Logical clocks and Vector Clock, Happened-before relationship.
-Encapusalating time in failure detectors: P, $\Diamond$-P;
-Leader election and Eventual Leader Election
-Distributed system models: fail-stop, fail-noisy, fail-silent.
11
References: See reading material on the website
12
M3: Basic Broadcast Primitives
13
- Best effort broadcast;
- Reliable broadcast;
- Uniform reliable broadcast;
- Causal broadcast.
14
References: See reading material on the website
15
M4: Shared Memories
16
- Consistency: regular, sequential consistency and linearizability;
- Regular (1,N) register: Message Passing and (1,1)-Regular implementation
- Atomic (1,1), (1,N) and (N,N) registers;
- Non composability of sequential consistency;
-Relationship between consistency properties;
1
17
References: See reading material on the website
18
PART 2: Consensus and Ordering.M5: Consensus
19
20
-Consensus specification;
-Hiearchical consensus: uniform and non-uniform;
-Paxos.
21
References: See reading material on the website
22
M6: Total Ordering and Replicated State Machine
23
24
-Total Order broadcast
-Replicated State Machine and Raft.
25
References: See reading material on the website
26
PART 3: Byzantine fault-toleranceM7: BFT
27
28
Intro:
- Byzantine failures.
- Authenticated Channel and crypto assumptions.
- Byzantine Broadcast, consistent and reliable.
Consensus:
-synchronous systems: an impossibility result: the necessity of 3f+1, the King's Algorithm
29
References: See reading material on the website
30
M8: Blockchains
31
32
-Permissionless: lottery-based blockchains;
-Permissioned: the PBFT re-branding and intel sawtooth;
33
References: See reading material on the website
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100