Calendar

This is the intended calendar with topics and readings.
Papers (except when tagged as Reference or Optional) may appear in homework/finals questions.

All papers are available in Canvas (Files → “Reading”), unless linked externally.


Week 1

Tue 03/31

Northwestern Monday schedule: classes scheduled to meet on Mondays meet on this day.

Thu 04/02 — Introduction

Readings

  • Google, Introduction to Distributed System Design (Canvas)
  • J. Dean and S. Ghemawat, MapReduce: Simplified Data Processing on Large Clusters, OSDI 2004 — PDF

Week 2

Tue 04/07 — Networking

Readings

  • (Reference) L. Peterson and B. Davie, Computer Networks: A Systems Approach, Chapter 5: End-to-End Protocols — Book

Thu 04/09 — Communication and Organization

Readings

  • K. Seemakhupt et al., A Cloud-Scale Characterization of Remote Procedure Calls, SOSP 2023 — PDF

Week 3

Tue 04/14 — Physical and Logical Clocks

Readings

  • L. Lamport, Time, Clocks, and the Ordering of Events in a Distributed System, CACM 1978 — PDF

Thu 04/16 — Global State

Readings

  • M. Chandy and L. Lamport, Distributed Snapshots: Determining Global States of Distributed Systems, TOCS 1985 — PDF

Week 4

Tue 04/21 — Coordination

Readings

  • P. Hunt et al., ZooKeeper: Wait-free coordination for Internet-scale systems, USENIX ATC 2010 — PDF

Thu 04/23 — Failure and Failure Detection

Readings

  • J. Leners et al., Detecting failures in distributed systems with the FALCON spy network, SOSP 2011 — PDF

Week 5

Tue 04/28 — Consistency and Replication

Readings

  • D. Scales et al., The Design of a Practical System for Fault-Tolerant Virtual Machines, ACM SIGOPS OSR 2010 — PDF
  • (Optional) R. van Renesse and F. Schneider, Chain Replication for Supporting High Throughput and Availability, USENIX OSDI 2004 — PDF

Thu 04/30 — Midterm


Week 6

Tue 05/05 — Eventual Consistency

Readings

  • D. Terry et al., Managing Update Conflicts in Bayou, a Weakly Connected Replicated Storage System, SOSP 1995 — PDF

Thu 05/07 — Overlay Networks

Readings

  • I. Stoica et al., Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications, SIGCOMM 2001 — PDF

Week 7

Tue 05/12 — Scaling Out Key-Value Stores

Readings

  • G. DeCandia et al., Dynamo: Amazon’s Highly Available Key-value Store, SOSP 2007 — PDF

Thu 05/14 — Consensus Problem and Impossibility of Consensus

Readings

  • M. Fischer, N. Lynch, M. Paterson, Impossibility of Distributed Consensus with One Faulty Process, JACM 1985 — PDF

Week 8

Tue 05/19 — Consensus

Readings

  • D. Ongaro and J. Ousterhout, In Search of an Understandable Consensus Algorithm (Raft), USENIX ATC 2014 — PDF

Thu 05/21 — Byzantine Fault Tolerance

Readings

  • M. Castro and B. Liskov, Practical Byzantine Fault Tolerance, OSDI 1999 — PDF

Week 9

Tue 05/26 — Distributed File Systems

Readings

  • S. Ghemawat, H. Gobioff, and S.-T. Leung, The Google File System, SOSP 2003 — PDF

Thu 05/28 — Content Distribution Networks

Readings

  • F. Chen et al., End-User Mapping: Next Generation Request Routing for Content Delivery, SIGCOMM 2015 — PDF
  • (Optional) W. Zheng et al., StarCDN: Moving Content Delivery Networks to Space, SIGCOMM 2025 — PDF

Week 10

Tue 06/02 — Distributed Transactions

Readings

  • J. Corbett et al., Spanner: Google’s Globally-Distributed Database, OSDI 2012 — PDF
  • (Optional) J. Geng et al., Tiga: Accelerating Geo-Distributed Transactions with Synchronized Clocks, SOSP 2025 — PDF

Thu 06/04 — New Distributed Systems

Readings

  • D. Trautwein et al., Design and Evaluation of IPFS: A Storage Layer for the Decentralized Web, SIGCOMM 2022 — PDF