A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||||||||||||||||
2 | Part 0: Introduction. | Introduction to Distributed Systems | List 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/lectures | Articles: | 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 Concepts | Youtube 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-tolerance | M7: 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 |