This plan is preliminary and may be changed at any time.
Lecture Day Lecturer Lecture Contents Where Comments and Material
01 Thursday 02 Feb. Nicola Presentation of the Course
- 02220:
-- Activity plan
-- Exam
-- Project
-- DTU green challenge
-- Introduction to Pervasive Computing
341, aud. 21 Introduction to the course, including information about the course activity plan, book, teaching assistants, project and final assessment

- 02220
- Requirements for Project Reports [Read carefully]
- Introduction to Pervasive Computing
- Example of exam (2016)
- Did You Know? (2016) [from YouTube]
- DTU Green Challenge 2017

Recommended reading:
02 Thursday 09 Feb. Nicola Introduction to Distributed Systems
- Architectural Models
- Interaction Model
- Design Challenges
- Case Study: Design of a Client-Server System
341, aud. 21 This lecture is based on chapters 1 and 2 of the book

- Models
- Example of project report (from 2016)

Recommended reading:
- Exercises 450, rooms 111-112 - Exercises
03 Thursday 16 Feb. Nicola Basic Protocols for Distributed Systems
- Basic Protocols
- Error Control Mechanisms
- Exchange of State Information: Handshake Protocols
341, aud. 21 - Protocols
- Protocols specification (pseudo-code)

Recommended reading:
  • R.S. Tomlinson. Selecting Sequence Numbers. In Proceedings of ACM SIGCOMM/SIGOPS Interprocess Communication Workshop, pp 11-23, ACM, 1975.
    This is the original paper in which the three-way handshake protocol was proposed for the first time.
- Exercises 450, rooms 111-112 See slides of the lecture
04 Thursday 23 Feb. Oliver Billing Guest Lecture by NetCompany
Distributed War Stories 341, aud. 21 NetCompany will give their perspective on distributed systems by going through real life cases
05 Thursday 2 Mar. Nicola Communication Paradigms
- Point-to-point Communication
-- Characteristics of Interprocess Communication
-- Sockets
-- Client-Server Communication over UDP and TCP
- Group (Multicast) Communication
- Remote Invocation
-- RMI
-- RPC
341, aud. 21 This lecture is based on chapters 4 and 5 of the book

- Slides
- Java RMI tutorial (by Oracle)

Recommended reading:
- Exercises 450, rooms 111-112 - Exercises (interprocess communication)
- Exercises (RMI)
06 Thursday 09 Mar. Nicola Middleware
- Midterm Course Evaluation
- Introduction to P2P computing
341, aud. 21 This lecture is based on several material, partially covered by chapter 10 of the book

- Slides

Recommended reading:
- Project and reading time 450, rooms 111-112 /
07 Thursday 16 Mar. Nicola Distributed Algorithms
- Logical Time
341, aud. 21 This lecture is (partly) based on chapter 14 of the book

- Slides

Recommended reading:
- Exercises 450, rooms 111-112 - Exercises
08 Thursday 23 Mar. Nicola Distributed Algorithms
- Global States 341, aud. 21 This lecture is based on chapter 14 of the book

- Slides

Recommended reading:
- Exercises 450, rooms 111-112 - Exercises
09 Thursday 30 Mar. Nicola Distributed Algorithms
- Coordination and Agreement:
-- Distributed Mutual Exclusion
341, aud. 21 This lecture is based on chapter 15 of the book

- Slides
- Exercises 450, rooms 111-112 The exercises have been included in the slides of the lecture
10 Thursday 06 Apr. Nicola Distributed Algorithms
- Coordination and Agreement:
-- Multicast Communication
341, aud. 21 This lecture is based on chapter 15 of the book

- Slides

Recommended reading:
- Exercises 450, rooms 111-112 - Exercises
/ Thursday 13 Apr. Easter Holidays
11 Thursday 20 Apr. Nicola Distributed Algorithms
- Coordination and Agreement:
-- Distributed Elections
-- Consensus and Related Problems
341, aud. 21 The lecture is based on chapter 15 of the book

- Distributed Elections
- Consensus and related problems

Recommended reading:
- Exercises 450, rooms 111-112 - [Distributed Election] Exercises
- [Consensus] Exercises
12 Thursday 27 Apr. Nicola "Hot Topics" + Exercise session
- The Internet of Hackable Things (... Or How your Everyday Objects Might Become Hackers' Cyber-Weapons...)
- Solutions to (requested/selected) exercises
341, aud. 21 Exercises will be solved in the class (on the blackboard)
13 Thursday 04 May Nicola Final Thoughts + Exercise session + Feedback on projects
- Feedback on the course, how to pass the 02220 exam, ...
- Solutions to (requested/selected) exercises
- Feedback on projects
341, aud. 21 Exercises will be solved in the class (on the blackboard)
/ Monday 08 May / Project Deadline: report (+ source code) have to be submitted electronically through Campusnet before midnight.
/ Monday 15 May / WRITTEN EXAM: GOOD LUCK! :-)