Lectures
Lecture Schedule (may be updated as needed)
| Week | Date | Topic | Readings | Assignments |
|---|---|---|---|---|
| 1 | 1/23 | Course overview. Introduction to distributed systems. | slides | Homework 1 released. |
| 1 | 1/25 | Internet architecture and principles | slides | |
| 2 | 1/30 | Link layer: reliable transmission, Ethernet, 802.11. | slides | |
| 2 | 2/1 | IP: Internet address management | slides | |
| 3 | 2/6 | BGP: inter-domain routing | slides | |
| 3 | 2/8 | TCP: reliable end-to-end transmission | slides | |
| 4 | 2/13 | Peer-to-peer systems | slides | |
| 4 | 2/15 | RPC: remote procedure calls | slides | project #1 due on 2/18 |
| 5 | 2/20 | Midterm #1 | ||
| 5 | 2/22 | Circumventing Internet censorship | ||
| 6 | 2/29 | DNS: Domain Name System | slides | |
| 7 | 3/5 | CDNs: content distribution | slides | |
| 7 | 3/7 | MapReduce | slides | |
| 8 | 3/12 | Spark | slides | |
| 8 | 3/14 | Time in distributed systems | slides | |
| 9 | 3/19 | State machine replication | slides | project #2 due |
| 9 | 3/21 | Introduction to consensus | slides | |
| 10 | 3/26 | Paxos | slides | |
| 10 | 3/28 | Federated learning | slides | |
| 11 | 4/9 | Raft | slides | |
| 11 | 4/9 | Dynamo | slides | |
| 12 | 4/16 | GFS | slides | project #3 due |
| 12 | 4/18 | Chubby and BigTable | slides | |
| 13 | 4/25 | Distributed commit | slides | |
| 14 | 4/30 | Spanner | slides | |
| 14 | 5/2 | Distributed systems for machine learning | slides |

