15-640/440 Tentative Schedule

Week 1

  • Introduction and Administrivia
  • Introduction to Distributed Systems, Representing Work, Making Work Portable and the Challenges of Files and Communication

  • Project #1: Process Migration -- Assigned (Thursday)

Week 2

  • Networking in a day: Physical, Link, Network and Transport Layers
  • Higher-level abstractions: RPC and RMI

Week 3

  • Concurrency Control Review, Intro to Distributed Concurrency Control
  • Distributed Concurrency Control Continued, Coordinator Election

  • Project #1: Process Migration -- Due (Thursday)

Week 4

  • Time in distributed systems: Physical and Logical
  • 2PC/Multicast, Distributed Transactions, ACID, BASE, CAP

  • Project #2: RPC/RMI -- Assigned (Tuesday)

Week 5

  • Consistency and Replication: Consistency Models
  • Consistency and Replication: Quorums and Management, Best-Effort Management

Week 6

  • Fault Tolerance: Agreement (Two Armies, Generals)
  • Fault Tolerance: Logging

Week 7

  • Fault Tolerance: Checkpointing
  • Fault Tolerance: A Systemic Look

  • Project #2: RPC/RMI -- Due (Thursday)

Week 8

  • Review/Slack
  • Midterm Exam

Week 9

  • Programming models: Map-Reduce, Model, System Design
  • Programming models: Map-Reduce, Algorithms

  • Project #3: Distributed Computing Framework -- Assigned (Tuesday)

Week 10

  • Programming models: MPI and OpenMP
  • Programming models: Condor, OpenPBS

Week 11

  • Processor Allocation and Process Migration
  • Distributed File Systems (DFS): NFS, AFS, Coda

Week 12

  • Distributed File Systems with non-Posix-like semantics (Lustre, HDFS, MogileFS, HDFS, etc)
  • Distributed File Systems with non-Posix-like semantics, cont.

  • Project #3: Distributed Computing Framework -- Due (Tuesday)
  • Project #4: MPI and OpenMP -- Assigned (Thursday)

Week 13

  • Security: Threats, Policies, and Models
  • Cryptography, Security Protocols, and Secure System Design

Week 14

  • Anonymous routing and Tor, Distributed Hashing
  • Thanksgiving -- No class

Week 15

  • Virtualization
  • Wrap-up

  • Project #4: MPI vs Hadoop -- Due (Thursday)

Final Exams

  • Enjoy!