Introduction to Distributed Systems
Autumn 2008

Introduction

The area of distributed systems has evolved during the last 2-3 decades, and in the last decade, the spreading of the Internet and intranets has made the area a central for the development of modern software. Today distributed systems are everywhere: from the world wide web, through the banks interconnected systems, to systems of embedded controllers like the network of computers in a modern car. There are several good reasons for developing and deploying distributed systems, often heard are: fault tolerance, better performance than by using single processor solutions, economics, and autonomy.

In the course we shall have a look at different aspects of distributed systems. Their basic properties differ profoundly from centralized and sequential systems, and this has severe impacts on how we understand and develop such systems. We start by considering programming models and tools for distributed systems. Next we look at different fundamental distributed algorithms, which gives an impression of the basic problems involved in developing distributed systems, and gives a foundation for developing your own problem specific solutions.  Next we exemplify the application level by looking at concrete systems and applications. Finally, we look at new research directions in distributed systems.

Amount: 3 ECTS (15 lectures)

Purpose - according to study-regulations

Lecturer:

Brian Nielsen e-mail: bnielsen@cs.aau.dk, SLV 1.2.10

Teaching Assistant

Claus Thrane e-mail: crt@cs.aau.dk, SLV 1.2.38

Text Book:

Coulouris, Dollimore, Kindberg, "Distributed Systems- concepts and design" 4th edition, Addison Wesley, ISBN 0-321-26354-5

Lecture Plan

Tuesdays in room 0.2.12. Lectures from 12.30 to 14.15 and exercises from 14.30 to 16.15

Thursdays in room 0.2.12. Lectures: 08:15-10:00 and exercises: 10:15-12:00

Lecture No. Date Room Topic Slides
1  Thu 4/9
8.15
0.2.12 Introduction to Distributed Systems intro.pdf 
2 Tue 9/9 12.30 0.2.12 Programming Models I (Client/server, RPC, RMI) cs.pdf
3 Thu 11/9
8.15
0.2.12 Distributed File Systems dfs.pdf
4 Tue 23/9
12.30
0.2.12 Programming Models II (.Net Remoting)
Guest Lecture by Morten Dahl
remoting.pdf
5 Thu 25/9 8:15  0.2.12 Programming Models II (Events, Message Passing, Linda) dp2.pdf
6 Tue 30/9
12:30
0.2.12 Peer2peer Systems p2p.pdf
squirrel.pdf
7 Thu 2/10
8:15
0.2.12 Clock Synchronization clock.pdf
8 Tue 7/10
12:30
0.2.12 Distributed Mutual Exclusion mutex.pdf
9 Thu 9/10
8:15
0.2.12 Multicast communication mcast.pdf
10 Tue 21/10 0.2.12 Consensus and study-exercises consensus.pdf
11

Thu 23/10

  Study Exercise (No Lecture)  
12 Tue 28/10   Replication repl.pdf
14 Thu 6/11 0.2.12 Introduction to Grid Computing (Guest Lecture by Josva Kleist) grid.pdf
13 Thu 13/11   Web Services  webserv.pdf
15a Thu 20/11 0.2.12
11.00-12.00
Conclusions and Exam Information

 Study Exercise

summary.pdf
15b ?? ??

Exam Questioning Hour / Spørgetime

 

No lectures: 18/9, 16/10, 30/10


Resources and links

Group Rooms

DAT3/F7S

SSE, MI and DE

EVU

Sincerely,

Brian Nielsen