EE 382 N : DISTRIBUTED SYSTEMS
Vijay Garg
Spring 2013
Instructor: Prof. Vijay Garg
Office: ACES 5.436
Phone: 471-9424 ;
e-mail: garg AT ece.utexas.edu;
Office Hours: Tue, Thu 1:30-3:00 PM (or by appointment);
URL:
http://www.ece.utexas.edu/~garg
Pre-requisites: Programming experience, Graduate standing
Course Contents: This will be an introductory graduate level course in
distributed systems. It will expose students to theoretical
as well as practical aspects of designing such systems.
The course assumes that the student has some familiarity with
programming. There is no final exam but there will be three tests during the course.
The following topics will be covered in the course:
-
Programming Concepts: Datagram Sockets, TCP sockets, Java RMI, Map Reduce Abstraction
-
Models of Distributed Computation: Interleaving model, Happened before relation
-
Time: Logical clocks, vector clocks, direct dependency clocks,
matrix clocks.
-
Resource Allocation: Mutual Exclusion, Drinking Philosophers, Election
-
Global Property Evaluation:
Chandy and Lamport's algorithm, termination detection, unstable properties.
-
Ordering of Messages: causal, total, multicast protocols.
-
Global Computation: Elections, Spanning Trees, Synchronizers.
-
Consensus: FLP Result, Synchronous systems, Byzantine Agreement
-
Fault-tolerance: Failure Detectors, Checkpointing, optimistic and pessimistic recovery,
Self-stabilizing algorithms, Replicated and Fusible State Machine Approaches.
Grading: 25% Assignments, 5% Class Presentation,
20% Term paper, 15% Test 1, 15% Test 2, 20% Test 3. All tests would be held in-class.
Textbook :
Concurrent and Distributed Computing in Java by Vijay K. Garg,
Wiley & Sons, 2004.
Amazon link
Course Evaluation: Standard
Add/Drop Policy: Standard
Disabilities statement:
"The University of Texas at Austin provides upon request appropriate
academic accommodations for qualified students with disabilities. For
more information, contact the Office of the Dean of Students at
471-6259, 471-4641 TTY."