Date
|
Topic(s)
|
Reading(s)
|
Assignment(s)
|
Mon 1/27
|
Introduction
[pptx]
[pdf]
|
|
PA 1 Out
|
Wed 1/29
|
The Internet in 2 Hours --- 1
[pptx]
[pdf]
|
Parts of Sections 3.1 and 3.2
(Optional)
The Design Philosophy of the DARPA Internet Protocols
|
|
Fri 1/31
|
The Internet in 2 Hours --- 2
[pptx]
[pdf]
|
Parts of Sections 3.3 and 3.4
(Optional)
Brief
History of the Internet
(Optional)
End-to-End
Arguments in System Design
|
|
Mon 2/3 |
Android Programming
[pptx]
[pdf]
|
Android Guide: API Guides & Training
|
PA 1 Due
|
Wed 2/5 |
Failure Detection
[pptx]
[pdf]
|
Sections 2.4.2 and 15.1
|
|
Fri 2/7 |
Time and Synchronization
[pptx]
[pdf]
|
Sections 14.1 - 14.3
|
|
Mon 2/10 |
Logical Time
[pptx]
[pdf]
|
Section 14.4
(Optional)
Time,
Clocks, and the Ordering of Events in a Distributed System
|
|
Wed 2/12 |
Global States
[pptx]
[pdf]
|
Section 14.4
(Optional)
Distributed
Snapshots: Determining Global States of Distributed
Systems
|
|
Fri 2/14 |
Reliable Multicast --- 1
[pptx]
[pdf]
|
Section 15.4
|
PA 2 Out
|
Mon 2/17 |
Reliable Multicast --- 2
[pptx]
[pdf]
|
|
|
Wed 2/19 |
DNS
[pptx]
[pdf]
|
Sections 13.1 & 13.2
|
|
Fri 2/21 |
Peer-to-Peer Systems
[pptx]
[pdf]
|
Sections 10.1-10.3 & 10.5.3
|
|
Mon 2/24 |
Distributed Hash Tables
[pptx]
[pdf]
|
Chord:
A Scalable Peer-to-Peer Lookup Service for Internet
Applications
|
|
Wed 2/26 |
Remote Procedure Call
[pptx]
[pdf]
|
Sections 5.1 - 5.3 & 21.4
|
|
Fri 2/28 |
Consensus
[pptx]
[pdf]
|
Impossibility
of Distributed Consensus with One Faulty Process
Sections 15.5.2 & 15.5.4
|
|
Mon 3/3 |
Mutual Exclusion
[pptx]
[pdf]
|
Section 15.2
|
|
Wed 3/5 |
Leader Election
[pptx]
[pdf]
|
Section 15.3
|
|
Fri 3/7 |
Mid-Semester Overview
[pptx]
[pdf]
|
|
PA 2 Due
|
Mon 3/10 |
Concurrency Control --- 1
[pptx]
[pdf]
|
Sections 16.1 - 16.4
|
|
Wed 3/12 |
Midterm (Cancelled due to the weather)
|
|
|
Fri 3/14 |
No Class
|
|
|
Mon 3/17 - Fri 3/21 |
Spring Break
|
|
PA 3 Out
|
Mon 3/24 |
Concurrency Control --- 2
[pptx]
[pdf]
|
Sections 16.2 - 16.4
|
|
Wed 3/26 |
Concurrency Control --- 3
[pptx]
[pdf]
|
Section 16.4 & 17.1 - 17.3
|
|
Fri 3/28 |
View Synchronous Group Communication
[pptx]
[pdf]
|
Sections 18.1 - 18.3
|
|
Mon 3/31 |
Midterm
|
|
|
Wed 4/2 |
Consistency --- 1
[pptx]
[pdf]
|
Section 18.5
|
|
Fri 4/4 |
Consistency --- 2
[pptx]
[pdf]
|
|
|
Mon 4/7 |
Consistency --- 3
[pptx]
[pdf]
|
|
|
Wed 4/9 |
Gossiping
[pptx]
[pdf]
|
Section 18.4
|
|
Fri 4/11 |
Case Study: Amazon Dynamo
[pptx]
[pdf]
|
Dynamo:
Amazon's Highly Available Key-Value Store
(Optional)
Eventually
Consistent
|
PA 3 Due
|
Mon 4/14 |
Transactions on Replicated Data
[pptx]
[pdf]
|
|
|
Wed 4/16 |
Distributed File Systems
[pptx]
[pdf]
|
FAWN:
A Fast Array of Wimpy Nodes
|
PA 4 Out
|
Fri 4/18 |
Paxos --- 1
[pptx]
[pdf]
|
Section 21.5.2
Paxos
Made Simple
The
Part-Time Parliament
(Optional) Paxos Made Moderately
Complex
(Optional) Paxos
Made Practical
|
|
Mon 4/21 |
Paxos --- 2
[pptx]
[pdf]
|
|
|
Wed 4/23 |
Case Study: Google Chubby
[pptx]
[pdf]
|
The
Chubby Lock Service for Loosely-Coupled Distributed Systems
|
|
Fri 4/25 |
Security --- 1
[pptx]
[pdf]
|
Sections 11.1 - 11.3
|
|
Mon 4/28 |
Security --- 2
[pptx]
[pdf]
|
Section 11.6
|
|
Wed 4/30 |
Google Spanner
[pptx]
[pdf]
|
Spanner:
Google's Globally-Distributed Database
|
|
Fri 5/2 |
Byzantine Fault Tolerance --- 1
[pptx]
[pdf]
|
Relevant Discussions in Section 15.5
The Byzantine Generals Problem
Practical
Byzantine Fault Tolerance
|
|
Mon 5/5 |
Byzantine Fault Tolerance --- 2
[pptx]
[pdf]
|
|
|
Wed 5/7 |
Wrap-up
[pptx]
[pdf]
|
|
|
Fri 5/9 |
No Class
|
|
PA 4 Due
|
Wed 5/14 |
Final Exam
|
Time: 3:30PM - 6:30PM
Location: Norton 112
|
|