184.237 Distributed Systems
This course is in all assigned curricula part of the STEOP.
This course is in at least 1 assigned curriculum part of the STEOP.

2015W, VO, 2.0h, 3.0EC, to be held in blocked form
TUWEL

Properties

  • Semester hours: 2.0
  • Credits: 3.0
  • Type: VO Lecture

Aim of course

The objective of this course is to introduce foundation concepts of distributed systems and recent developments in distributed systems. In this course, we will introduce the role of distributed systems in contemporary computing landscape. We will  discuss requirements for (large-scale) distributed systems and different models of distributed systems.  We will introduce foundation concepts, methods, and algorithms as well as their advantages, disadvantages, and applicability for distributed systems.

Subject of course

The course lectures are divided into the following building blocks, each will be given by one or more lectures.

1 Course Overview,  Distributed Systems - Overview, Principles and Models

  •     Goal:
    • Overview the course
    • Understand what is a distributed system
    • Understand basic principles of distributed systems
    • Introduce basic architectural models of distributed systems
  •  Lecture time: 2 hours
  •  Student self-study time: 4 hours

2. Processes and Communication

  • Goal: 
    • Overview communicaton issues in distributed systems
    • Introduce different communication mechanisms (protocols, layers, algorithms)
    • Overview communication middleware and technologies
  • Lecture time:
    • Two lectures, each of 2 hours
  • Student self-study time: 8 hours

3. Naming and Time

  • Goal: 
    • Overview the roles and issues of naming and discovery
    • Introduce naming and discovery mechanisms
    • Time and time synchronization
  • Lecture time:
    • Two lectures, each of 2 hours
  • Student self-study time: 8 hours

4. Distributed file systems, Replication and Consistency

  • Goal: 
    • Overview distributed file systems
    • Introduce distributed file systems
      • NFS as a Client-Server Architecture
      • Cluster-based File Systems (NSF, Google File System)
      • Symmetric Architectures / Peer-to-Peer Architectures 
    • Replication/Consistency
      • Introduce  replication and consistency issues
      • Data-centric Consistency Models 
      •  Client-centric Consistency Models
      •  Replica Management 
      •  Consistency Protocols 
  • Lecture time:
    • Two lectures, each of 2 hours
  • Student self-study time: 8 hours

5. Fault tolerance in Distributed Systems

  • Goal: 
    • Introduction to Fault-tolerance
    • Process Resilience
    • Reliable Client-Server Communication
    • Recovery
  • Lecture time:
    • One lecture,  2 hours
  • Student self-study time: 4 hours

6. Security

  • Goal: 
    • Introduction to Security of Distributed Systems
      • Security threads and security mechanisms
    • Introduction to Cryptography
      • symmetric cryptosystems, public-key systems, hash functions
    • Secure Channels
      • authentication based on shared secret, authentication using Needham-Schroeder, authentication using public keys, digital signatures, key exchange via Diffie Hellman
    • Authorization and Access Control
      • access control matrices, protection domains, denial-of-service attacks
  • Lecture time:
    • One lecture,  2 hours
  • Student self-study time: 4 hours

7. Applications and Technology Trends

  • Goal: 
    • Overview current applications and technologies in distributed systems
      • Service-oriented Architectures
      • Peer-to-Peer
      • Cloud Computing
    • Present emerging trends in distributed applications and technologies
  • Lecture time:
    • One lecture,  2 hours
  • Student self-study time: 4 hours

8. Examination preparation (study@home, no lecture unit)

  • Goal: 
    • Recap all concepts and principles for the final examination
  • Student self-study time: 15 hours

Additional information

Teaching language of the lecture is German. The precise schedule will be available in TUWEL by September 4., 2015.

ECTS-Breakdown:
3 ECTS = 75 hrs, of which 20 hrs lecture, 40 hrs preparation for each lecture and 15 hrs exam preparation.


 

Lecturers

Institute

Course dates

DayTimeDateLocationDescription
Mon13:00 - 15:0005.10.2015 - 14.12.2015EI 7 Hörsaal - ETIT Lecture
Wed11:00 - 13:0007.10.2015 - 27.01.2016EI 7 Hörsaal - ETIT Lecture
Distributed Systems - Single appointments
DayDateTimeLocationDescription
Mon05.10.201513:00 - 15:00EI 7 Hörsaal - ETIT Lecture
Wed07.10.201511:00 - 13:00EI 7 Hörsaal - ETIT Lecture
Mon12.10.201513:00 - 15:00EI 7 Hörsaal - ETIT Lecture
Wed14.10.201511:00 - 13:00EI 7 Hörsaal - ETIT Lecture
Mon19.10.201513:00 - 15:00EI 7 Hörsaal - ETIT Lecture
Wed21.10.201511:00 - 13:00EI 7 Hörsaal - ETIT Lecture
Mon26.10.201513:00 - 15:00EI 7 Hörsaal - ETIT Lecture
Wed28.10.201511:00 - 13:00EI 7 Hörsaal - ETIT Lecture
Wed04.11.201511:00 - 13:00EI 7 Hörsaal - ETIT Lecture
Mon09.11.201513:00 - 15:00EI 7 Hörsaal - ETIT Lecture
Wed11.11.201511:00 - 13:00EI 7 Hörsaal - ETIT Lecture
Mon16.11.201513:00 - 15:00EI 7 Hörsaal - ETIT Lecture
Wed18.11.201511:00 - 13:00EI 7 Hörsaal - ETIT Lecture
Mon23.11.201513:00 - 15:00EI 7 Hörsaal - ETIT Lecture
Wed25.11.201511:00 - 13:00EI 7 Hörsaal - ETIT Lecture
Mon30.11.201513:00 - 15:00EI 7 Hörsaal - ETIT Lecture
Wed02.12.201511:00 - 13:00EI 7 Hörsaal - ETIT Lecture
Mon07.12.201513:00 - 15:00EI 7 Hörsaal - ETIT Lecture
Wed09.12.201511:00 - 13:00EI 7 Hörsaal - ETIT Lecture
Mon14.12.201513:00 - 15:00EI 7 Hörsaal - ETIT Lecture
Course is held blocked

Examination modalities

Written exam. Details about the examination can be found on TUWEL by September 4, 2015.

Course registration

Not necessary

Curricula

Study CodeObligationSemesterPrecon.Info
033 522 Computer Science Management MandatorySTEOP
Course requires the completion of the introductory and orientation phase
033 526 Business Informatics Mandatory5. SemesterSTEOP
Course requires the completion of the introductory and orientation phase
033 532 Media Informatics and Visual Computing Mandatory5. SemesterSTEOP
Course requires the completion of the introductory and orientation phase
033 533 Medical Informatics Mandatory electiveSTEOP
Course requires the completion of the introductory and orientation phase
033 534 Software & Information Engineering Mandatory5. SemesterSTEOP
Course requires the completion of the introductory and orientation phase
033 535 Computer Engineering Mandatory electiveSTEOP
Course requires the completion of the introductory and orientation phase

Literature

The main reference literature for this course is  the (second) english edition of the book Distributed Systems of A. Tanenbaum and M. van Steen (2006) (see the book in authors home page and  in Google book).  Other references will be provided in the lecture notes. 

 

Previous knowledge

Basic concepts of operating systems, basic programming skills

Language

if required in English