Alan Kaminsky Department of Computer Science Rochester Institute of Technology 4486 + 1980 = 6466
Home Page
Distributed Systems 4005-730-01 Spring Quarter 2012
Course Page

4005-730-01 Distributed Systems
Course Schedule and Topics

Prof. Alan Kaminsky -- Spring Quarter 2012
Rochester Institute of Technology -- Department of Computer Science

Time: Tuesdays and Thursdays, 12:00pm-1:50pm, Room 70-3445

Final Exam: Thursday, 24-May-2012, 12:30pm-2:30pm, Room 70-3445

Sun Mon Tue Wed Thu Fri Sat
Mar. 11 Mar. 12 Mar. 13
Introduction
Module 1. Fundamentals
Mar. 14 Mar. 15
Module 11. Research Methods
Mar. 16 Mar. 17
Mar. 18
Drop/
add*
Mar. 19 Mar. 20
Module 2. Distributed Object Systems
Programming Project 1 assigned
Team formation due
Mar. 21 Mar. 22
Module 11. Research Methods
Mar. 23 Mar. 24
Mar. 25 Mar. 26 Mar. 27
Module 2. Distributed Object Systems
 
Mar. 28 Mar. 29
Team Presentations -- Report 1
Teams 1, 2, 3, 4, 5
Mar. 30 Mar. 31
Apr. 1 Apr. 2 Apr. 3
Module 3. Message Oriented Systems
 
Apr. 4 Apr. 5
Module 4. Distributed Algorithms
 
Apr. 6 Apr. 7
Apr. 8 Apr. 9 Apr. 10
Module 5. Distributed Hash Tables
Programming Project 2 assigned
Programming Project 1 due
Apr. 11 Apr. 12
Team Presentations -- Report 2
Teams 1, 2, 3
Apr. 13 Apr. 14
Apr. 15 Apr. 16 Apr. 17
Module 6. P2P and Serverless Systems
 
Apr. 18 Apr. 19
Team Presentations -- Report 2
Teams 4, 5
Apr. 20
Final exam
conflicts**
Apr. 21
Apr. 22 Apr. 23 Apr. 24
Module 7. Agent Systems
 
Apr. 25 Apr. 26
Team Presentations -- Report 3
Teams 1, 2, 3
Apr. 27 Apr. 28
Apr. 29 Apr. 30 May 1
Module 8. Map-Reduce Systems
Programming Project 2 due
May 2 May 3
Team Presentations -- Report 3
Teams 4, 5
May 4
Withdraw
***
May 5
May 6 May 7 May 8
Module 9. Supercomputing
 
May 9 May 10
Team Presentations -- Report 4 -- Teams 1, 2, 3
Team deliverables due (all teams)
May 11 May 12
May 13 May 14 May 15
Module 10. Cloud/Grid Computing
Class canceled
May 16 May 17
Team Presentations -- Report 4
Teams 4, 5
May 18 May 19
May 20 May 21
Finals
 
May 22
Finals
 
May 23
Finals
 
May 24
Final Exam
12:30pm-2:30pm Room 70-3445
May 25
Finals
 
May 26

*Last date to drop/add courses: Sunday 18-Mar-2012
**Last date to request final exam rescheduling due to scheduling conflicts: Friday 20-Apr-2012
***Last date to withdraw with a grade of W: Friday 04-May-2012


Introduction
Topics
  • Course introduction
  • Course policies
Reading


Module 1. Fundamentals
Topics
  • The evolution of (so-called) distributed systems
  • Distributed system architectures
  • Distributed system technologies and paradigms
  • Distributed system design issues
Reading Optional Reading
  • Tanenbaum & van Steen, chapters 1, 2, 3, 4


Module 2. Distributed Object Systems
Topics
  • Object serialization
  • Remote method invocation (RMI)
  • Marshalled objects
  • Finding distributed objects: registry
  • Distributed events
  • Web Services: SOAP, WSDL
Reading Optional Reading
  • Tanenbaum & van Steen, chapters 5, 10, 12, 13.2


Module 3. Message Oriented Systems
Topics
  • Message Oriented Middleware
  • Message queuing (MQ) systems
  • Publish-subscribe (pub-sub) systems
Reading Optional Reading


Module 4. Distributed Algorithms
Topics
  • Theory of distributed algorithms
  • Logical clock algorithms
  • Global snapshot algorithms
  • Leader election algorithms
Reading Optional Reading
  • Tanenbaum & van Steen, chapter 6


Module 5. Distributed Hash Tables
Topics
  • Regular vs. distributed hash tables (DHTs)
  • Issues in DHT system design: routing, caching
  • DHT examples: Chord, Kademlia, . . .
Reading Optional Reading
  • Tanenbaum & van Steen, chapter 2.2.2
  • Tanenbaum & van Steen, chapter 5.2


Module 6. P2P and Serverless Systems
Topics
  • Serverless systems and peer-to-peer architectures
  • P2P examples: BitTorrent, . . .
  • Ad hoc collaborative systems
  • Tuple Space
Reading Optional Reading
  • Carriero and Gelernter, How to write parallel programs: A guide to the perplexed (see the Bibliography)
  • Tanenbaum & van Steen, chapter 13.2


Module 7. Agent Systems
Topics
  • Agent system architectures
  • Fixed agents vs. mobile agents
  • Agent system middleware: JADE, . . .
Reading


Module 8. Map-Reduce Systems
Topics
  • The map-reduce paradigm
  • Map-reduce middleware: Hadoop, . . .
  • Scheduling in map-reduce systems
  • Fault tolerance in map-reduce systems
  • Case studies
Reading


Module 9. Supercomputing
Topics
  • SMP (multicore) parallel computers
  • Cluster parallel computers
  • Hybrid SMP cluster parallel computers
  • Accelerators: GPUs, FPGAs, . . .
  • Supercomputers
  • Supercomputing middleware: MPI, OpenMP, OpenCL, CUDA, PJ, . . .
Reading


Module 10. Cloud/Grid Computing
Topics
  • Cloud computing use cases
  • Cloud computing systems: Amazon, . . .
  • Grid computing use cases
  • Grid computing middleware: Globus, . . .
  • Grid computing systems: Open Science Grid, Teragrid, . . .
  • Security and privacy in the cloud
Reading
  • Module 10 Lecture Notes


Module 11. Research Methods
Topics
  • Concepts of simulation
  • Monte Carlo simulation
  • Discrete event simulation
  • Developing simulation programs
  • Using simulations to study systems
  • Examples
Reading

Distributed Systems 4005-730-01 Spring Quarter 2012
Course Page
Alan Kaminsky Department of Computer Science Rochester Institute of Technology 4486 + 1980 = 6466
Home Page
Copyright © 2012 Alan Kaminsky. All rights reserved. Last updated 12-May-2012. Please send comments to ark­@­cs.rit.edu.