TK1: Distributed Systems and Algorithms

TK1: Distributed Systems and Algorithms

Type Time Room Start
Lecture Wed, 16:15 – 17:55 S202 | C205 17. Oct. 2018
Exercise Thu, 9:50 – 11:30 S202 | C110 25. Oct. 2018

Teaching staff

Name Office E-mail
Prof. Dr. Max MühlhäuserS2|02 A114
Lin Wang, Ph.D.S2|02 A109


We use a Moodle course to administrate the lecture and exercise. There we will publish the lecture slides and exercises. We also provide a forum for asking questions.

You'll find the Moodle course under the following URL:

If you have any organizational questions, please use


Learning Target

  • Comprehensive overview knowledge about the basic problems and approaches in distributed systems and algorithms
  • Deep methodic knowledge of classic distributed algorithms and programming paradigms
  • Applicable and exemplary knowledge of current developments and standards

Course topics

  • Recap of chapter 1 of the introduction lecture “Net-Centric Computing”
  • Distributed paradigms
    • Mainstream paradigms (e.g., IPC, RPC, Message Queues, Webservices)
    • Advanced paradigms (e.g., event-based, publish/subscribe, Java Message Service, Distributed memory)
    • Cloud computing (e.g., service models, google file system)
    • Formal approaches
  • Distributed algorithms
    • Foundation (e.g., safety, liveness, fairness)
    • Synchronization (e.g., NTP, Lamport's Logical Clocks, global states)
    • Coordination (e.g., Mutex, Bully algorithm, election)
    • Local algorithms
  • Current development tools / programming languages (e.g., Apache Spark)


The exercise allows you to get your “hands dirty” and to actually work with the paradigms and algorithms presented in the lecture. It is a good opportunity to better understand the content of the lecture and getting prepared for the exam.

We offer a bonus system with which you can get additional points for the exam. In particular, you can gain up to a 0.7 better grade if you already passed the exam. The bonus cannot be used to pass the exam. The gained bonus can be used in the winter term 2018/19 and the summer term 2019 exam only.


  • G. Coulouris, J. Dollimore, T. Kindberg: Distributed Systems. Conceptsand Design, Addison Wesley; in German: Pearson
  • G. Bengel: Grundkurs Verteilte Systeme, vieweg Verlag, 3rd Ed. 2004
  • A. Schill, T. Springer: Verteilte Systeme: Grundlagen und Basistechnologien; 2007, 2012
  • G. Tel: Introductionto Distributed Algorithms, 2nd Ed 2000, Cambridge University Press,
  • A. Tanenbaum, M.v.Steen, Distributed Systems: Principles & Paradigms; German: Verteilte Systeme: Grundlagen und Paradigmen, Pearson
  • J. Kurose, K. Ross: Computer Networking, Adison-Wesley
  • I. Taylor, A. Harrison: From P2P andGridsto Services on the Web; Springer, 2nd Ed. 2009
  • L. Peterson, B. Davie, Computernetze, dpunkt Heidelberg
  • U. Hammerschall: Verteilte Systeme und Anwendungen. Pearson, München 2005
  • W. Fokkink: Modelling Distributed Systems; Springer 2007