Distributed Systems

Networking and Services
Advanced studies
This course presents the basic concepts and solution principles of distributed systems. The main topics are synchronization, consistency, fault tolerance, distributed consensus, and security. The course considers different kinds of distributed systems, from modern warehouse-scale datacenters to wide-area, loosely-coupled distributed systems. The focus is on gaining an understanding on how modern distributed systems are designed and built and what are their theoretical underpinnings. The course covers the basic algorithms of distributed systems and the current state of research in the area. Course material: Largely based on research articles and supplemental material. Selected material from the book "Barroso, L. A., Clidaras, J. and Hölzle, U.: The Datacenter as a Computer¿. (book is available online)


14.12.2011 16.00 A111
Year Semester Date Period Language In charge
2011 autumn 26.09-08.12. 1-2 English Jussi Kangasharju


Time Room Lecturer Date
Mon 10-12 D122 Jussi Kangasharju 26.09.2011-13.10.2011
Thu 10-12 C222 Jussi Kangasharju 26.09.2011-13.10.2011
Mon 10-12 D122 Jussi Kangasharju 31.10.2011-08.12.2011
Thu 10-12 D122 Jussi Kangasharju 31.10.2011-08.12.2011

Exercise groups

Group: 1
Time Room Instructor Date Observe
Thu 16-18 C222 Mikko Pervilä 26.09.2011—14.10.2011
Thu 16-18 C222 Mikko Pervilä 31.10.2011—09.12.2011
Group: 2
Time Room Instructor Date Observe
Fri 12-14 C222 Jussi Kangasharju 26.09.2011—14.10.2011
Fri 12-14 C222 Jussi Kangasharju 31.10.2011—09.12.2011

Exercises begin on the first lecture week.

Information for international students

Response to course feedback is posted online. Many thanks to all those who responded.


Lecture and exercise schedule:

  • Lectures start on Thursday 29.09. at the time and place given above.
  • Exercises start on the second week of the course, i.e., week 40. Disregard the automatic notice above about exercises starting on the first week.

The list below gives the confirmed lecture dates. This is the final schedule.

  • Week 39: 29.09.
  • Week 40: 3.10. No lecture on 6.10.
  • Week 41: 10.10. and 13.10.
  • Weeks 42, 43: Exam week and break week. No exam for this course.
  • Week 44: 31.10 and 3.11.
  • Week 45: 7.11. and 10.11.
  • Week 46: 14.11. and 17.11.
  • Week 47: No lectures on 21.11. and 24.11.
  • Week 48: 28.11. and 1.12.
  • Week 49: No lecture on 5.12.. 8.12. will have a Q&A session where you can ask about any material related to the course. No new material will be presented.

Exercises take place every week, starting week 40, but excluding weeks 42, 43, and 47.

  • Exercises for week 40 (6.10. and 7.10.) will be given during the exercise session
  • More information available from the Exercises sub-page 


 The course intends to give insight into the main concepts and design principles related with distribution. Goals, challenges, problems, and various solutions are presented and discussed. The emphasis is on concepts and principles, not on practical implementations.

Completing the course

 The course can be taken either through participating in a lecture course or through a final exam.

To pass the lecture course you need to

  • participate the weekly excercise sessions (one of the groups work in English if needed) (12 points)
  • return the written homework assignments (4 assignments); each will be graded (12 points)
  • a traditional exam (42 points)

You need minimum 30 points to pass with a minimum of 16 points in the exam. With 50 points you will get a 5. To take a course you have to register yourself through the ILMO system.

Lecture Course 
The lecture course is given every year, and it involves

  • Lectures: Total 48 hours divided on 9 weeks across periods I and II, with maximum of 4 hours of lectures per week.
  • Practice sessions 2h/week for 8 weeks.
  • Written homework to be returned.
  • Course examination.The exam questions will be in English and you may answer in English, Finnish, Swedish, French, or German.

Final Examination

Final examinations are organized typically four times a year. Notice that a "course examination" and a "final examination" are two different things: in order to participate in a course examination you also must have participated in the corresponding practice sessions.

Literature and material

 The textbook of the course is Tanenbaum, A.S., van Steen, M., Distributed Systems, Principles and Paradigms; Prentice-Hall, 2007. T

In the 2002 edition of Tanenbaum and in the Couloris book you can find mostly the equivalent material. You can use the slides to give you an idea of the breadth of topics covered.

Selected material from the book The Datacenter as a Computer by Barroso and Hölzle are also required. In this course we will cover most of the book, except Chapters 4 and 5. The book is available online.

Course slides will be made available as the lectures progress.