A full list of planned lectures is shown below. Note that all URL links for future lectures have been disabled and lecture links will be activated on the day of each class. We will try to upload lecture slides prior to their corresponding classes. Videos and lectures notes will be made available after each class.

  • Lec 01: Introduction
    tl;dr: Introduction to Distributed Systems and class logistics
    [slides] [video] [notes]

    Readings:

  • Lec 02: System Architectures
    tl;dr: Distributed Systems architectures
    [slides] [video] [notes]

    Readings:

  • Lec 03: Communication in distributed systems
    tl;dr: Message oriented communication, remote procedure calls
    [slides] [video] [notes]
    • AST 4th ed, Ch 4.1, 4.2, 4.3, 8.3
    • Lablet 1 released (Due 2/19, 23:59)
  • Lec 04: Remote method invocation
    tl;dr: RPC models, RMI, gRPC, protoBuf, pyRO
    [slides] [video] [notes]
  • Lec 05: Concurrency Models
    tl;dr: Threading, dynamic thread pools, event loop model, thread/process scheduling
    [slides] [video] [notes]
    • AST 4th ed, Ch 3.1, 3.4
    • Lablet 2 released (Due 3/8, 23:59)
  • Lec 06: Distributed and cluster scheduling
    tl;dr: Distributed scheduling, cluster scheduling, Mesos, Borg
    [slides] [video] [notes]
  • Lec 07: Sustainable Computing (Guest Lecture)
    tl;dr: Sustainable computing
    [slides] [video] [notes]
  • Lec 08: Virtualization
    tl;dr: Virtualization, hypervisors
    [slides] [video] [notes]
    • AST 4th ed, Ch 3.2, 3.3
  • Lec 09: OS Virtualization
    tl;dr: OS virtualization, containers, fair scheduling, docker
    [slides] [video] [notes]
  • Lec 10: Code, Process and VM Migration
    tl;dr: Process and VM migration
    [slides] [video] [notes]
    • AST 4th ed, Ch 3.5
    • Problem Set 2 released (Due 3/15, 23:59)
  • Lec 11: Cloud Computing and Cloud Orchestration
    tl;dr: Cloud computing and Cloud Orchestration
    [slides] [video] [notes]
    • AST 4th ed, Ch 3.2.4
  • Lec 12: Clock synchronization
    tl;dr: Clock synchronization and Logical clocks
    [slides] [video] [notes]
    • AST 4th ed, Ch 5.1, 5.2, 5.7
  • Lec 13: Vector clocks and distributed snapshots
    tl;dr: Vector clocks, distributed snapshots
    [slides] [video] [notes]
    • AST 4th ed, Ch 5.2.2
  • Lec 14: Leader election, Distributed locks
    tl;dr: Leader election and Distributed locks
    [slides] [video] [notes]
    • AST 4th ed, Ch 5.3, 5.4
  • Lec 15: Distributed transactions
    tl;dr: Distributed Transactions, Two phase locks
    [slides] [video] [notes]
  • Lec 16: Consistency models and Replication
    tl;dr: Linearizability, serializability, eventual consistency, epidemic protocols
    [slides] [video] [notes]
    • AST 4th ed, Ch 5.5, 7.1, 7.2, 7.3
  • No Class - Eclipse Day
    tl;dr: No Class
    [slides] [video] [notes]
  • Lec 17: Replication in distributed systems
    tl;dr: Replicated write protocols, quorum protocols
    [slides] [video] [notes]
    • AST 4th ed, Ch 7.4, 7.4
  • Lec 18: Byzantine Fault Tolerance (BFT)
    tl;dr: BFT, Byzantine generals problem, reliable communication, distributed commit, 2PC, 3PC
    [slides] [video] [notes]
    • AST 4th ed, Ch 8
  • Lec 19: Distributed consensus, paxos, RAFT
    tl;dr: consensus, paxos, RAFT
    [slides] [video] [notes]
    • AST 4th ed, Ch 8
  • Lec 20: Distributed web services
    tl;dr: Web servers, web clusters, mluti-tier applications, micro-services
    [slides] [video] [notes]
  • Lec 21: Edge computing, web caching
    tl;dr: Edge computing, web caching, edge content delivery
    [slides] [video] [notes]
  • Lec 22: Distributed file systems
    tl;dr: Distributed file systems
    [slides] [video] [notes]
  • Lec 23: xFS, Coda, HDFS, GFS
    tl;dr: Distributed file systems: xFS, Coda, HDFS, GFS
    [slides] [video] [notes]
  • Lec 24: Distributed middleware
    tl;dr: Distributed objects, EJBs, blackboard architectures, distributed data processing, Hadoop, Spark
    [slides] [video] [notes]
  • Lec 25: Distributed systems security
    tl;dr: Authentication, cyptography basics, blockchain, electronic payments
    [slides] [video] [notes]
    • AST 4th ed, Ch 9