Distributed Systems, Winter 2018

 

 

 

Tentative schedule for lectures, exams and project deadlines (all lectures held in room 0.29, building E 1.5 in SB and room 111, building G26 in KL). All information is subject to change.

We wish to thank our colleagues at MIT for sharing their course materials. 

Monday

Tuesday

 

Wednesday

Thursday

Friday

15 Oct (Peter)
LEC 1: Intro: Distributed systems / Project Overview




17 Oct (Peter)
LEC 2: Infrastructure: Implementing RPCs
Preparation: Read Implementing Remote Procedure Calls

19 Oct

Assignment: Lab 1: Lock Server

22 Oct (Antoine Kaufmann)
LEC 3: Infrastructure: Programming with threads
Preparation: Read Threads in C#

24 Oct (Jonathan Mace)
LEC 4: Consistency: Sequential consistency
Preparation: Read Shared Virtual Memory



29 Oct (Peter)
LEC 5: Consistency: Relaxed Consistency
Preparation: Read TreadMarks



31 Oct (Peter)
LEC 6: Consistency: Timestamps and version vectors
Preparation: Read Tra

2 Nov
Due: Lab 1 (11:59pm)
Assignment: Lab 2: Basic File Server

5 Nov (Deepak)
LEC 7: Distributed programming: MapReduce and Pig
Preparation: Read MapReduce paper

7 Nov (Deepak)
LEC 8: Google File System (GFS) (slides)
Preparation: Read GFS paper

9 Nov
Due: Lab 2 (11:59pm)
Assignment: Lab 3: Reading, Writing, and Sharing Files

12 Nov (Deepak)
LEC 9: Eventual Consistency
Preparation: Read Bayou

14 Nov  (Deepak)
LEC 10: Fault Tolerance: Crash recovery and logging
Preparation: Read Cedar

16 Nov
Due: Lab 3 (11:59pm)
Assignment: Lab 4: MKDIR, REMOVE, and Locking

19 Nov  (Deepak)
LEC 11: Fault Tolerance: Two-phase commit
Preparation: Read Argus

21 Nov (Deepak)
LEC 12: Fault Tolerance: Replicated state machines
Preparation: Read Hypervisor

23 Nov

Due: Lab 4 (11:59pm)
Assignment: Lab 5: Caching Lock Server

26 Nov (TAs)

Review session

28 Nov (TAs)
Midterm exam (SB: E1.3, HS001)
In class. Open book and notes.
Scope: Lectures 1-12

30 Nov

3 Dec (Deepak)
LEC 13: Chain replication

Preparation: Read Chain Replication

 

 

5 Dec (Peter)
LEC 14: Fault Tolerance: Consensus (slides)
Preparation: Read Paxos

16 Dec

10 Dec (Peter)
LEC 15: Zookeeper

Preparation: Read Zookeeper (2010)

12 Dec (Krishna)

LEC 16: Naming, Addressing, and Routing: Flooding

14 Dec

Due: Lab 5 (11:59pm)
Assignment: Lab 6: Caching Extent Server + Consistency

17 Dec (Krishna)
LEC 17: Naming, Addressing, and Routing: Hierarchical
Preparation: Read DNS

19 Dec (Krishna)
LEC 18: Naming, Addressing, and Routing: DHTs
Preparation: Read Chord

21 Dec
Due: Lab 6 (11:59pm)
Assignment: Lab 7: Paxos

7 Jan (Peter)

LEC 19: Content Distribution: Hierarchical DHTs
Preparation: Read Coral

9 Jan (Peter)
LEC 20: Content Distribution: Swarming

Preparation: Read BitTorrent and BitTyrant



14 Jan (Krishna)
LEC 21:Blockchains: Accountability with Tamper-Proof Logs

Preparation: Read Trusted Time-Stamps and PeerReview



16 Jan (Krishna)
LEC 22:  Decentralized Ledgers: Consensus with PoW

Preparation: Read BitCoin (Sections 2 and 3)



18 Jan

Due: Lab 7 (11:59pm)
Assignment: Lab 8: Replicated State Machine

21 Jan (Krishna)
LEC 23:Decentralized Ledgers: Consensus with PoS

Preparation: Read Proof-of-Activity

23 Jan
Cancelled: : Watch Lecture on BitCoin



28 Jan (Krishna)
LEC 24:Decentralized Ledgers: Generalizing Transactions to Smart Contracts

Preparation: Read Ethereum

30 Jan (Krishna)
LEC 25: Decentralized Trust Networks & Personalization of Trust

Preparation: Read Credit Networks and Ostra



1 Feb

Due: Lab 8 (11:59pm)

4 Feb

Review session

6 Feb

Final exam (SB: E1.3, HS003)

In class. Open book and notes.
Emphasis is on Lectures 13-26.

8 Feb

 

 

4 April

Repeat exam (SB: E1.3, HS003)

12:00-14:00

Open book/notes.

Scope: Lectures 1-26

 




Imprint / Data Protection