![]() |
15-440 - Distributed Systems |
![]() |
Week |
Session |
Date |
Topic |
Teaching Method |
Reading list |
Projects |
Prob. Solving
Assignment |
1 |
1 |
22 Aug |
Logistics and
Introduction |
Lecture |
Syllabus |
|
|
|
2 |
24 Aug |
Introduction to
Distributed Systems |
Lecture |
C1, T1 |
|
|
|
3 |
25 Aug |
Advanced
Object-Oriented Java Programming |
Recitation |
|
|
Start PS1 |
2 |
4 |
29 Aug |
Physical and
Architectural Models of Distributed Systems & Introduction to Networking |
Lecture |
C.2.1, C2.2, C2.3
(except 2.3.3), C3.1,
& C3.2 |
|
|
|
5 |
31 Aug |
Networking Layering,
Switching, Routing, and Congestion Control |
Lecture |
C3.3, C3.4 |
Start P1 |
|
|
6 |
1 Sep |
Case study: Java
Socket Programming & RMI |
Recitation |
P1 Write-up |
|
|
3 |
7 |
5 Sep |
Inter-Process
Communication Sockets, RPC, RMI, and Indirect Communication |
Lecture |
T4.2 T4.6, C4.1
C4.4, C5.1 C5.4, & C6.1 6.4 |
|
End PS1 Start PS2 |
|
8 |
7 Sep |
Naming Flat, Structured
and Attribute-Based Naming |
Lecture |
T5.1, T5.2, T5.3, T5.4
.1, & T5.4.2 |
|
|
|
9 |
8 Sep |
Case Study: Naming
& Storage Server Programming |
Recitation |
C5.5; Java API for UDP
datagrams and Java API for TCP streams |
|
|
September 11 15 |
|||||||
5 |
10 |
19 Sep |
Naming Flat, Structured
and Attribute-Based Naming (Contd) |
Lecture |
T5.1, T5.2, T5.3, T5.4
.1, & T5.4.2 |
P1 Design Report |
|
|
11 |
21 Sep |
Synchronization Motivation and Physical Clocks |
Lecture |
T6.1 |
|
|
|
12 |
22 Sep |
P1 Design Report
Feedback |
Recitation |
N/A |
|
End PS2 |
6 |
13 |
26 Sep |
Quiz I |
N/A |
N/A |
|
|
|
14 |
28 Sep |
Synchronization
Logical Clocks and Vector Clocks |
Lecture |
T6.2 |
|
|
|
15 |
29 Sep |
Design of Project 2 |
Recitation |
N/A |
End P1 |
|
7 |
- |
2 Oct |
N/A |
N/A |
N/A |
Start P2 |
|
|
16 |
3 Oct |
Synchronization Mutual
Exclusion and Election Algorithms Part I |
Lecture |
T6.3 & T6.5 |
|
Start PS3 |
|
17 |
5 Oct |
Consistency &
Replication Motivation and Data-Centric Consistency Models |
Lecture |
T7.1 & T7.2 |
|
|
|
21 |
6 Oct |
More on P2: Locking
Protocols |
Recitation |
Notes from TA |
|
|
8 |
19 |
10 Oct |
Consistency &
Replication Client-Centric Consistency Models and Replica Management &
Midterm Overview |
Lecture |
T7.3 & T7.4 |
|
|
|
20 |
12 Oct |
Midterm |
Exam 1 |
|
|
|
|
24 |
20 Oct |
TBD |
Recitation |
TBD |
|
|
9 |
22 |
17 Oct |
Consistency &
Replication Consistency Protocols |
Lecture |
T7.5 & T7.6 |
|
End PS3 |
|
23 |
19 Oct |
Consistency &
Replication Consistency Protocols (Contd) |
Lecture |
T7.5 & T7.6 |
|
|
|
24 |
20 Oct |
Using Assigned VMs |
Recitation |
Notes from TA |
|
|
10 |
- |
23 Oct |
N/A |
N/A |
N/A |
End P2 |
|
|
25 |
24 Oct |
Programming Models
Traditional Models on Parallel Programming & Introduction to MPI |
Lecture |
Notes from Instructor |
|
|
|
- |
25 Oct |
N/A |
N/A |
N/A |
Start P3 |
|
|
26 |
26 Oct |
Programming Models
MPI |
Lecture |
Notes from Instructor |
|
|
|
27 |
27 Oct |
Applying MPI to
Program a Classical Problem Part I |
Recitation |
P3 Write-up |
|
|
11 |
28 |
31 Oct |
Programming Models
MapReduce |
Lecture |
Notes from Instructor |
|
Start PS4 |
|
29 |
2 Nov |
Quiz II |
N/A |
N/A |
|
|
|
30 |
3 Nov |
Applying MPI to
Program a Classical Problem Part II |
Recitation |
P3 Write-up |
|
|
12 |
31 |
7 Nov |
Programming Models
GraphLab |
Lecture |
Notes from Instructor |
|
|
|
32 |
9 Nov |
Programming Models Pregel |
Lecture |
Notes from Instructor |
|
|
|
33 |
10 Nov |
Applying MapReduce to Program a Classical Problem |
Recitation |
Notes from Instructor |
|
|
13 |
34 |
14 Nov |
Fault Tolerance
Basic Concepts, Failure Models, Failure Masking by Redundancy & Process
Resilience |
Lecture |
T8.1 & T8.2 |
End P3 Start P4 |
|
|
35 |
16 Nov |
Fault Tolerance
Reliable Request-Reply Communication |
Lecture |
C5.2 & T8.3 |
|
|
|
36 |
17 Nov |
TBA |
Recitation |
TBA |
|
|
14 |
- |
19 Nov |
N/A |
N/A |
N/A |
|
End PS4 |
|
37 |
21 Nov |
Distributed File Systems Architectures, Data Striping,
Processes and Communication |
Lecture |
T11.1 T11.3 |
|
|
|
38 |
23 Nov |
Distributed File Systems Naming, Synchronization, Consistency
and Replication & Fault-Tolerance |
Lecture |
T11.4 11.7 |
|
|
|
39 |
24 Nov |
TBA |
Recitation |
TBA |
|
|
15 |
40 |
28 Nov |
Guest Speaker - TBA |
Lecture |
|
|
|
|
41 |
30 Nov |
Virtualization Motivation, Process and System
Virtualization & Logical and Physical Partitioning |
Lecture |
Notes from the
Instructor |
End P4 |
|
|
42 |
1 Dec |
Final Exam Overview |
Recitation |
Notes from the
Instructor |
|
|
|
43 |
TBD |
Final |
Exam 2 |
|
|
|
Table 1: Tentative Time-Line of the Course.
Notations
used in Table 1 are as given below:
▪
PS : Problem Solving
Assignments
▪
Cx(.y.z) : Chapter x (Section
y, Subsection z) from the Colouris et al. textbook
▪
Tx(.y.z) : Chapter x (Section
y, Subsection z) from the Tannenbaum and Van Steen textbook
▪
TBA :To Be Announced