Calendar

The following is our intended calendar with topics, slides (as they become available) and reference material. Note “MSAT #” refers to chapters/sections of (M. van Steen and A. Tanenbaum Distributed Systems 4th Ed., 2024). Papers, except when tagged as [ref], may be part of homework assignment/finals questions. All papers are available in Canvas (“Reading” folder in the “Files” section); some links in the Calendar point to those files.


Week 1

03/28 — Introduction

Readings

  • MSAT 1.1,1.2
  • Google’s Introduction to Distributed System Design [Local PDF]
  • J. Dean and S. Ghemawat, MapReduce: Simplified Data Processing on Large Clusters. Proc. of OSDI, 2004 [PDF]

Week 2

04/02 — Networking

Readings

  • MSAT 4.1

04/04 — Communication and Organization

Readings

  • MSAT 2.3, 4.2
  • K. Seemakhupt et al., A Cloud-Scale Characterization of Remote Procedure Calls, Proc. of SOSP, 2023 [PDF]

Week 3

04/09 — Physical and Logical Clocks

Readings

  • MSAT 6.1,6.2
  • L. Lamport. Time, Clocks, and the Ordering of Events in a Distributed System. Communications of the ACM, July 1978, pages 558-564. [PDF]

04/11 — Global State

Readings

  • M. Chandy and L. Lamport. Distributed Snapshots: Determining Global States of Distributed Systems. ACM Trans. Comput. Syst., 3(1):63-75, 1985. [PDF]

Week 4

04/16 — Coordination

Readings

  • MSAT 6.3-6.4
  • P. Hunt et al., ZooKeeper: Wait-free coordination for Internet-scale systems. Proc. of USENIX ATC, 2010. [PDF]

04/18 — Failure and Failure Detection

Readings

  • MSAT 8.1
  • J. Leners et al., Detecting failures in distributed systems with the FALCON spy network. Proc. of SOSP, 2011. [PDF]

Week 5

04/23 — No class (Fabián is away)

04/25 — Consistency and Replication

Readings

  • D. Scales et al., The Design of a Practical System for Fault-Tolerant Virtual Machines, ACM SIGOPS OSR, December 2010. [PDF]

Week 6

04/30 — Eventual Consistency

Readings

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

05/02 — Overlay Networks

Readings

  • MSAT 5.2
  • I. Stoica et al., Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications. Proc. of SIGCOMM, 2001. [PDF]

Week 7

05/07 — Scaling Out Key-Value Stores

Readings

  • G. DeCandia et al., Dynamo: Amazon’s Highly Available Key-value Store. Proc. of SOSP, 2007. [Online]

05/09 — Consensus Problem and The Impossibility of Consensus

Readings

  • M. Fischer, N. Lynch, M. Paterson, Impossibility of Distributed Consensus with One Faulty Process. Journal of the ACM, 32(2), April 1985.

[PDF]


Week 8

05/14 — Consensus

Readings

  • D. Ongaro and J. Ousterhout, In Search of an Understandable Consensus Algorithm. Proc. of USENIX ATC, 2014 (Extended version). [PDF]

05/16 — Byzantine Fault Tolerance

Readings

  • M. Castro and B. Liskov. Practical Byzantine Fault Tolerance. Proc. of OSDI, 1999. [PDF]

Week 9

05/21 — Distributed File Systems

Readings

  • S. Ghemawat, H. Gobioff, and S.-T. Leung. The Google File System. Proc. of SOSP, 2003. [PDF]

05/23 — Content Distribution Networks

Readings

  • F. Chen et al., End-User Mapping: Next Generation Request Routing for Content Delivery. Proc. of SIGCOMM, 2015. [PDF]

Week 10

05/28 — Transactions

05/30 — Distributed Transactions

Readings

  • J. Corbett et al., Spanner: Google’s Globally-Distributed Database. Proc. of OSDI, 2012. [PDF]

Due: Cross-Service Causal Consistency

Reading:

  • J. Ferreira Loff et al., Antipode: Enforcing Cross-Service Causal Consistency in Distributed Applications, Proc. of SOSP, 2023

[PDF]


Week *

06/06 — Take-home final (Due Thursday June 6, 11:59PM CST)