M. Tamer Özsu
Lecture times: Tuesday & Thursday 9:30-10:50AM
Lecture location: DC 3313
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.
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.
This is a graduate level instruction to computer networks and distributed systems. In that sense, it is a remedial course for students who do not have a background on these topics but with to have one. Students who have taken a computer networks or distributed systems course in their undergraduate studies or in previous graduate programs should not take this course. There are other advanced graduate courses that they should take.
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:
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.
The first four weeks will be straight lectures. After that one class each week will be lecture, the second class will be presentation & discussion.
|Lecture||Topic||Lecture Notes||Readings||Paper Presentations|
|12 September||Introduction||Module 1|
|17 September||Transport Layer||Module 2||Papers|
|19 September||Transport Layer||Module 2||Papers|
|24 September||Network Layer||Module 3||Papers|
|26 September||Network Layer||Module 3||Papers|
|1 October||Data Link & Physical Layers||Module 4|
|3 October||Data Link & Physical Layers||Module 4|
|8 October||Accessing Remote Resources||Module 5||Papers|
|10 October||Synchronization||Module 6||Papers|
|15 October||Paper Discussion||
Abrar Salman: Designing DCCP: Congestion Control Without Reliability (Presentation slides)
|17 October||Distributed File Systems & Replication||Module 7||Papers|
|22 October||Paper Discussion||
Chaitali Mulay: Bigtable: A Distributed Storage System for Structured Data (Presentation slides)
|24 October||Fault Tolerance||Module 8||Papers|
|29 October||Paper Discussion||Mingyu Liu: Fault Tolerance for Highly Available Internet Services: Concepts, Approaches, and Issues (Presentation slides)
Jose Calvo-Villagran: The Byzantine Generals Problem (Presentation slides)
XiaoFei Zhao: Transaction Support for Log-Based Middleware Server Recovery (Presentation slides)
|31 October||No class|
|5 November||No class|
|7 November||Security||Module 9||Papers|
|12 November||Paper Discussion||Ahmed Hajyasien: Why Cryptosystems Fail (Presentation slides)
Navreet Kaur : k-Anonymity: a Model for Protecting Privacy (Presentation slides)
Nabil Abou Reslan: TrInc: Small Trusted Hardware for Large Distributed Systems (Presentation slides)
|14 November||Peer-to-Peer||Module 10||Papers|
|19 November||Paper Discussion|
|21 November||Cloud computing||Module 11a Module 11b|
|26 November||Paper Discussion||
Xiaoni Lai: Improving Data Access in P2P Systems (Presentation slides)
|28 November||Final exam (9:00-10:50AM)|
The links from Lecture Notes 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.