Schedule

Tentative: subject to change

DateTopicReadingDeadlines
1/21BasicsIntroduction
1/23Logical clocks
1/28ConsensusPaxos
1/30Paxos (contd), RaftDeadline to form project groups.
2/4Raft (contd)
2/6Raft (contd) + VR
2/11Paxos optimizationsSpecPaxos, Optional: FastPaxos
2/13CURP, Optional: Generalized Paxos
2/18Byzantine consensusByzantine Generals and PBFT
2/20PBFT contd., Zyzzava
2/25Consenus: PracticeConsensus: Gaios, Chubby
2/27Consistency modelsConsistency models; CAP theoremProject proposal + related work survey due
3/4Models (contd.) Implementing strong consistency: RIFL
3/6Implementing eventual consistency: Bayou
3/11Consistency: PracticeDynamo
3/13Distributed transactionsTransactions basics: 2PL, OCC
3/18Spring break
3/20Spring break
3/252PC and variants
3/27Transactions: PracticeTransactions: Spanner
4/1Shared logsCorfu, Scalog
4/3-4/29Student paper presentations (2 papers every class)
4/3New hardwareMicrosecond Consensus, SWARM Project checkpoint meetings
4/8Carbink, CXL-SHM
4/10Virtual Machine Fault-ToleranceVMware FT, Remus
4/15Fault-tolerant Computing Lineage stash, DARQ
4/17No class; work on your project
4/22Beldi, Boki
4/24Fault-tolerant TrainingCheck-N-Run, Gemini
4/29Oobleck, ReCycle
5/1Project presentations
5/6Project presentations
5/9Project report due