CSE 486/586
Distributed
Systems

Spring 2016

 
Course Info
Schedule
PAs
Practice Problems
Syllabus

Tentative Schedule

The schedule is tentative and subject to change. The lecture slides heavily contain the material developed and copyrighted by Prof. Indranil Gupta at Illinois. The material was originally developed for courses CS425/CSE424/ECE428 at Illinois.

Date
Topic(s)
Reading(s)
Assignment(s)
Mon 1/25 Introduction
[pptx] [pdf]
   
Wed 1/27 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/29 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/1 Android Programming --- 1
[pptx] [pdf]
Android Guide: API Guides & Training  
Wed 2/3 Android Programming --- 2
[pptx] [pdf]
   
Fri 2/5 Android Programming --- 3
[pptx] [pdf]
  PA 1 Due
Mon 2/8 Failure Detection
[pptx] [pdf]
Sections 2.4.2 and 15.1  
Wed 2/10 Time and Synchronization
[pptx] [pdf]
Sections 14.1 - 14.3  
Fri 2/12 Logical Time
[pptx] [pdf]
Section 14.4
(Optional) Time, Clocks, and the Ordering of Events in a Distributed System
 
Mon 2/15 Global States
[pptx] [pdf]
Section 14.4
(Optional) Distributed Snapshots: Determining Global States of Distributed Systems
 
Wed 2/17 Reliable Multicast --- 1
[pptx] [pdf]
Section 15.4  
Fri 2/19 Reliable Multicast --- 2
[pptx] [pdf]
  PA 2 Part A Due
Mon 2/22 Reliable Multicast (Remainder)    
Wed 2/24 Peer-to-Peer Systems
[pptx] [pdf]
Sections 10.1-10.3 & 10.5.3  
Fri 2/26 Distributed Hash Tables
[pptx] [pdf]
Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications  
Mon 2/29 Consensus
[pptx] [pdf]
Impossibility of Distributed Consensus with One Faulty Process
Sections 15.5.2 & 15.5.4
 
Wed 3/2 Mutual Exclusion
[pptx] [pdf]
Section 15.2  
Fri 3/4 Leader Election
[pptx] [pdf]
Section 15.3  
Mon 3/7 Mid-Semester Overview
[pptx] [pdf]
Gossiping
[pptx] [pdf]
Section 18.4  
Wed 3/9 In-Class Midterm    
Fri 3/11 No Class   PA 2 Part B Due
Mon 3/14 - Fri 3/18 Spring Break    
Mon 3/21 Concurrency Control --- 1
[pptx] [pdf]
Sections 16.1 - 16.4  
Wed 3/23 Concurrency Control --- 2
[pptx] [pdf]
Sections 16.2 - 16.4  
Fri 3/25 Concurrency Control --- 3
[pptx] [pdf]
Section 16.4 & 17.1 - 17.3  
Mon 3/28 Consistency --- 1
[pptx] [pdf]
Section 18.5  
Wed 3/30 Consistency --- 2
[pptx] [pdf]
   
Fri 4/1 No Class    
Mon 4/4 No Class    
Wed 4/6 Distributed File Systems
[pptx] [pdf]
   
Fri 4/8 Consistency --- 3
[pptx] [pdf]
  PA 3 Due
Mon 4/11 Consistency (Remainder)    
Wed 4/13 Case Study: Amazon Dynamo
[pptx] [pdf]
Dynamo: Amazon's Highly Available Key-Value Store
(Optional) Eventually Consistent
 
Fri 4/15 Remote Procedure Call
[pptx] [pdf]
Sections 5.1 - 5.3 & 21.4  
Mon 4/18 Web Content Distribution --- 1
(DNS & CDN)
[pptx] [pdf]
Sections 13.1 & 13.2  
Wed 4/20 Web Content Distribution --- 2
(Cast Study: Facebook Haystack)
[pptx] [pdf]
Finding a Needle in Haystack: Facebook's Photo Storage  
Fri 4/22 Web Content Distribution --- 3
(Cast Study: Facebook f4)
[pptx] [pdf]
f4: Facebook's Warm BLOB Storage System  
Mon 4/25 Paxos
[pptx] [pdf]
Section 21.5.2
More details [pptx] [pdf]
Paxos Made Simple
The Part-Time Parliament
(Optional) Paxos Made Moderately Complex
(Optional) Paxos Made Practical
 
Wed 4/27 Security --- 1
[pptx] [pdf]
Sections 11.1 - 11.3  
Fri 4/29 Security --- 2
[pptx] [pdf]
Section 11.6  
Mon 5/2 Byzantine Fault Tolerance
[pptx] [pdf]
More BFT [pptx] [pdf]
Relevant Discussions in Section 15.5
The Byzantine Generals Problem
Practical Byzantine Fault Tolerance
 
Wed 5/4 Wrap-up
[pptx] [pdf]
   
Fri 5/6 No Class   PA 4 Due
Thu 5/12 Final Exam Time: 8:00AM - 11:00AM
Location: Knox 20