HOME SCHEDULE REVIEWS POLICIES PROJECTS

CS 3551: Schedule and Readings

Schedule (Tentative)

Class Date Topic Readings Presenter
1. Tue 8/27 Course Introduction Read only, no reviews: Back to the Building Blocks: A Path Toward Secure and Measurable Software, White House Report, February 2024
The Verification of a Distributed System, ACM Queue 2015
Amy
2. Thu 8/29 Reasoning about correctness: Consistency Models and Fault Tolerance Basics Read/explore only, no reviews: Consistency Models Map, Jepsen

Extras: CAP 12 years Later, Computer 2012
Impossibility of Distributed Consensus with One Faulty Process, JACM 1985
Amy
3. Tue 9/3 Intrusion-Tolerant Design and State Machine Replication Review: The Bedrock of Byzantine Fault Tolerance: A Unified Platform for BFT Protocols Analysis, Implementation, and Experimentation, NSDI 2024

Extras: Network-Attack-Resilient Intrusion-Tolerant SCADA for the Power Grid, DSN 2018
Amy
4. Thu 9/5 Testing Intrusion-Tolerant Systems Review: Randomized Testing of Byzantine Fault Tolerant Algorithms, OOPSLA 2023

Extras: Tyr: Finding Consensus Failure Bugs in Blockchain System with Behaviour Divergent Model, SP 2023
Twins: BFT Systems Made Robust, arxiv 2022
Amy
5. Tue 9/10 Memory Safety Review: Rudra: Finding Memory Safety Bugs in Rust at the Ecosystem Scale, SOSP 2021

Extras: Themis: An Efficient and Memory-Safe BFT Framework in Rust, SERIAL Workshop 2019, Themis slides, Themis code
6. Thu 9/12 Lab: Implementing and testing intrusion-tolerant systems
7. Tue 9/17 Formal Verification Review: Using Lightweight Formal Methods to Validate a Key-Value Storage Node in Amazon S3, SOSP 2021

Extras: How Amazon web services uses formal methods, CACM 2015
8. Thu 9/19 Formal Verification Review: Verdi: a framework for implementing and formally verifying distributed systems, PLDI 2015
9. Tue 9/24 Lab: Formal Specification and Verification TLA+
10. Thu 9/26 Lab: Formal Specification and Verification DistAlgo
11. Tue 10/1 Amy away at SRDS
12. Thu 10/3 Project Proposals Due
Amy away at SRDS
13. Tue 10/8 Testing Review: An Empirical Study on the Correctness of Formally Verified Distributed Systems, EuroSys 2017
14. Thu 10/10 Lab: Testing Jepsen
-- Tue 10/15 No class - Fall Break
15. Thu 10/17 Lab: Testing
16. Tue 10/22 Formal Specifications and Diversity Review: Algorithm Diversity for Resilient Systems, Data and Applications Security and Privacy 2019
17. Thu 10/25 Testing of Formal Specifications Review: IronSpec: Increasing the Reliability of Formal Specifications, OSDI 2024
18. Tue 10/29 Project Checkpoint Presentations
19. Thu 10/31 Project Checkpoint Presentations
20. Tue 11/5 Remote class - Election day
TBD
Review: Understanding and Detecting Software Upgrade Failures in Distributed Systems, SOSP 2021
21. Thu 11/7 TBD: Student Topic
22. Tue 11/12 TBD: Student Topic
23. Thu 11/14 TBD: Student Topic
24. Tue 11/19 TBD: Student Topic
25. Thu 11/21 TBD: Student Topic
-- Tue 11/26 No class - Thanksgiving
-- Thu 11/28 No class - Thanksgiving
26. Tue 12/3 TBD: Student Topic
27. Thu 12/5 TBD: Student Topic
28. Tue 12/10 Final Project Presentations
29. Thu 12/12 Final Project Presentations

Additional Reading Ideas and Resources

Distributed Systems Fundamentals and Impossibility Results

Formal Verification in Distributed Systems

Testing

State Machine Replication and Fault-Tolerant Replication Protocols

Intrusion-Tolerant Replication

Practical Security