|
Topics |
Class Notes |
week 1 |
Introduction |
01_intro.pdf |
|
Communication |
02_communication.pdf
(Update: 2022-Dec-28) |
week 2 |
|
|
week 3 |
- Message Queuing Systems
- Messaging patterns (pub/sub, broker, pipeline,
...)
- MPI
- Distributed Shared Memory
|
|
week 4 |
- Broadcast & Multicast
- Epidemic Broadcast
- Gossiping
- Rumor Spreading
|
|
|
Distributed Coordination |
03_coordination.pdf
(Update: 2022-Dec-28)
|
week 5 |
- Basic Concepts
- Time Synchronization algorithms
|
|
week 6 |
- Logical Clock
- Totally Ordered Multicast
|
|
week 7 |
- Vector Clock
- Casually Ordered Multicast
|
|
week 8 |
- Distributed Mutual Exclusion
- Distributed Leader Election
|
|
week 9 |
- Global States & Snapshots
- Distributed Debugging
|
|
|
Naming |
04_naming.pdf
(Update: 2022-Dec-28)
|
week 10 |
- Flat & Hierarchical Naming Methods
- Consistent Hashing
- Distributed Hash Table (DHT)
- CDN (Content Distribution Networks)
|
|
week 10-11 |
- Peer-to-Peer Networks
- Bit-torrent Networks
- Chord
- Pastery
- CAN
- Tapestry
- Named-data Networking (Content-Centric Networks)
|
|
|
Midterm |
|
|
Consistency |
05_consistency.pdf
(Update: 2022-Dec-28)
|
week 12 |
- Consistency Models
- Data-centric Consistency Models
- Client-centric Consistency Models
- Consistency Protocols
|
|
|
Fault Tolerant Systems |
06_fault_tolerance.pdf
(Update: 2022-Dec-28)
|
week 13 |
- Definitions
- Surviving from faults
- Fault Types
- Flooding Consensus
|
|
week 14 |
- Distributed Commit
- 2PC algorithm (2-phase commit)
- 3PC algorithm (3-phase commit)
- Paxos
- Raft
|
|
|
Byzantine Fault Tolerant Systems |
07_fault_tolerance_2.pdf
(Update: 2022-Dec-28)
|
week 15 |
- Byzantine Faults
- Byzantine Generals Problem
- Synchronous Oral Message solution
- Synchronous Signed Message solution
- PBFT Algorithm
|
|
|
Distributed File Systems |
08_dfs_gfs.pdf |
week 16 |
- Distributed File Systems
- NFS
- Andrew File System
- Coda File System
- Google File System (gfs)
|
|
|
NoSql Databases |
09_nosql_dynamo.pdf
(Update: 2022-Dec-28) |
week 17 |
- NoSql Database Types
- Amazon Dynamo
|
|
|
Blockchain & Crypto-Currencies |
10_blockchain.pdf
(Update: 2022-Dec-28) |
week 18 |
- Blockchain Concept
- Cryptocurrency concepts
- Consensus algorithms in public blockchains
- Bitcoin proof-of-work consensus
- Proof-of-Stake consensus
|
|