[UWlogo]

 

CS 655
System and Network Architectures and Implementation
(Fall 2012)

M. Tamer Özsu
tamer.ozsu@uwaterloo.ca
DC 3350

Lecture times: Thursdays 4:30-7:20PM

Lecture location: DC 3313

Calendar Description

Distributed, multi-user applications are designed and implemented using many underlying technologies that must be coordinated to provide important features such as robustness, scalability, manageability, ubiquitous access, privacy, security, authentication, and role-based access control, to name only a few. The network supporting the application may be crucial to its successful implementation. The application logic itself is likely implemented in a number of languages and programming environments. Students will be provided with an advanced overview of current networking and distributed systems topics, and will apply it to case studies drawn form consumer internet applications, enterprise systems, and medical and healthcare systems.

Prerequisites

Students are expected to understand the fundamentals of programming languages, data structures, operating systems, and algorithms, each at least at the level of an introductory course.

References

There are no required textbooks for the course. There will be lecture slides that will be provided and we will be reading a number of papers. However, the lecture notes will be based on the following textbooks and you are expected to read the relevant chapters:

For access to papers, you can consult Michael Ley's online bibliography:

Workload and Evaluation (tentative and may change)

Please review the materials concerning academic integrity and academic honesty. You must complete and sign the Academic Integrity Acknowledgement Form, and hand it in at the beginning of third lecture.

Schedule (tentative and may change)

The first two classes will be straight lectures. Starting September 27, the first half of the class will be lecture on the indicated topic, and the second half will be devoted to a class discussion of papers related to the topic of the previous week's lecture.

Lecture Topic Lecture Notes Readings Presentation Paper
13 September Introduction

Module 0
Module 1

     
20 September Distributed system architectures and accessing remote resources

Module 2
Module 3

Papers    
27 September Synchronization Module 4 Papers    
4 October Distributed file systems & replication Module 5 Papers    
11 October Fault tolerance Module 6 Papers M. Shaikh Database Replication: a Tale of Research across Communities
18 October Security Module 7 Papers G. Davis The Byzantine Generals Problem
25 October Transport Layer Module 8 Papers

A. Mortezaei

Muhammad Saeed Siddiqui

k-Anonymity: a Model for Protecting Privacy

TrInc: Small Trusted Hardware for Large Distributed Systems

1 November Network Layer Module 9 Papers

F. Qi

D. Wang

Designing DCCP: Congestion Control Without Reliability

A Simple Active Attack Against TCP

8 November No class  
15 November Data Link and Physical Layers Module 10
     
22 November Cloud computing

Module 11a
Module 11b

     
29 November Final exam (5:00-7:00PM)        

Eventually, there will be clickable links from Lecture Notes that will allow you to download lecture slides; similarly links from Papers will take you to a list of appropriate papers for that topic that will be discussed in class and that can also be used for critiques.