Introduction to Distributed Systems, Fall 2008

Instructor:

    Prof. Amr El Abbadi
    Office: Room 3115, Harold Frank Hall
    Office Hours: TR 11:00 a.m. - 12:00 noon
    E-mail: firstname AT cs.ucsb.edu

Lecture Time/Place: MW - 9:00am to 10:50am (Phelps 1401)

Teaching Assistant

    Sudipto Das
    Office - Rm 3158 (DSL) , Harold Frank Hall (Engr I)
    Office hours: TR 3:00 - 4:30 at Rm 3158 (DSL), Harold Frank Hall (Engr I)
    Email: firstname AT cs.ucsb.edu

Updates

Please check this section regularly for Updates

  • Grades for Quiz 3, Project 1, and Project 2 posted along with overall class average and median.
  • Demo Schedule available online.
  • Added a nice presentation related to Paxos in the Resources section.
  • Grades for Quiz 2 and Paper Critique 1 posted.
  • Project 2 posted. See details below. Due: 12/04
  • New Submission Date for Project 1: 11/17.
  • Project 1 specifications updated and a set of FAQs posted.
  • Quiz 2 on 11/5.
  • Project 1 posted. See details below.
  • List of Papers for Critique 1 has been posted.
  • Grades for Quiz 1 posted.
  • Quiz 1 on 10/15.
  • Course outline posted.

Course Outline

An Overview of the Course can be found here

  • Week 1: Introduction and Basics, Time and Global States, Bigtable
  • Week 2: Logical and Physical Clocks, Clock Synchronization, Mutual Exclusion, Ricart and Agarawala Algorithm, Maekawa's Algorithm
  • Week 3: Replicated Log and Dictionary.Quiz 1.
  • Week 4: Distributed Snapshots.
  • Week 5: Distributed Aggregation.
  • Week 6: Broadcast.Quiz 2
  • Week 7: Distributed Consensus and Commit

Suggested Reading


This list is sorted in reverse chronological order of presentation in class.


Lecture Notes

  • October 06. The correct update rules are in red boxes. Please check both algorithms.

Project

Demo Schedule available online.

Project 1: Distributed Calendar using Distributed Log, Two (2) persons per group. Due: 11/17.

  • New Submission Date for Project 1: 11/17.
  • A detailed specification has been posted. Any further modifications will be posted here.
  • Workload for the calendar.
  • Due to the large size of the class, there won't be a separate demo for Project 1 after the project due date on 11/12. We will hold a common demo for both the projects together sometime in dead week (so please do not break your code after the deadline, and the code for this project should be ready for demo during the final demo). What is due in class on 11/12 are the following (a 2--3 page printed and typeset report specifying):
    • Implementation details of the project -- Which language you used for implementation, libraries used, how is the log and the view of the calendar maintained, how is your log structured, what is your UI, and any relevant details.
    • You are supposed to design a conflict resolution protocol of your own. Provide details of your conflict resolution protocol, who are the nodes involved in conflict resolution, how is the conflict resolved, and what are the messages that are exchanged.
    • Experimental Details of the Bandwidth consumed. The Workload specification for the project has details of what you need to report. Please note that we are asking for experimental results, not theoritical results, and the the reported results should be repeatable at the time of demo.

Project 2: Distributed Calendar on Distributed Log using Paxos, Two (2) persons per group. Due: 12/04.

  • A detailed specification has been posted. Any further modifications will be posted here.
  • Use Workload 1 as described in the project specifications. Replace conflicting operations with NOP.

FAQs


As assigments are given out, I'll try and compile a list of FAQs.

FAQs on Project 1


Resources


Any course related resources will be posted here.