227-0555-00L  Distributed Systems

SemesterAutumn Semester 2024
LecturersT. R. Locher, R. Wattenhofer
Periodicityyearly recurring course
Language of instructionEnglish
CommentEnrolled students will be notified by e-mail about the lecture start.



Courses

NumberTitleHoursLecturers
227-0555-00 GDistributed Systems
Groups are selected in myStudies.
3 hrs
Mon/210:15-12:00CAB G 61 »
Wed10:15-12:00CHN D 44 »
10:15-12:00CHN D 46 »
10:15-12:00HG E 21 »
10:15-12:00LEE D 101 »
10:15-12:00ML F 40 »
10:15-12:00ML J 34.1 »
10:15-12:00ML J 34.3 »
Fri/210:15-12:00CAB G 61 »
T. R. Locher, R. Wattenhofer
227-0555-00 ADistributed Systems1 hrsT. R. Locher, R. Wattenhofer

Catalogue data

AbstractThis course introduces the fundamentals of distributed systems. We study different protocols and algorithms that allow for fault-tolerant operation, and discuss practical systems that implement these techniques.
Learning objectiveThe objective of the course is for students to understand the theoretical principles and practical considerations of distributed systems. This includes the main models of fault-tolerant distributed systems (crash failures, byzantine failures, and selfishness), and the most important algorithms, protocols and impossibility results. By the end of the course, students should be able to reason about various concepts such as consistency, durability, availability, fault tolerance, and replication.
ContentWe discuss the following concepts related to fault-tolerant distributed systems: client-server, serialization, two-phase protocols, three-phase protocols, paxos, two generals problem, crash failures, impossibility of consensus, byzantine failures, agreement, termination, validity, byzantine agreement, king algorithm, asynchronous byzantine agreement, authentication, signatures, reliable and atomic broadcast, eventual consistency, blockchain, cryptocurrencies such as bitcoin and ethereum, proof-of-work, proof-of-*, smart contracts, quorum systems, fault-tolerant protocols such as piChain or pbft, distributed storage, distributed hash tables, physical and logical clocks, causality, selfishness, game theoretic models, mechanism design.
Lecture notesA script is available on the web page.
LiteratureThe script is self-contained, but links to additional material are available on the web page.
Prerequisites / NoticeThis lecture takes place in roughly the second half of the semester, as the lecture is the second part of the lecture "Computer Systems" (252-0217-00). Students may attend at most one of the two lectures, NOT both.

Performance assessment

Performance assessment information (valid until the course unit is held again)
Performance assessment as a semester course
ECTS credits4 credits
ExaminersR. Wattenhofer, K. Locher, T. R. Locher
Typesession examination
Language of examinationEnglish
RepetitionThe performance assessment is only offered in the session after the course unit. Repetition only possible after re-enrolling.
Mode of examinationwritten 90 minutes
Written aidsNone
This information can be updated until the beginning of the semester; information on the examination timetable is binding.

Learning materials

 
Main linkCourse Webpage
Only public learning materials are listed.

Groups

227-0555-00 GDistributed Systems
Mon/210:15-12:00CAB G 61 »
Wed10:15-12:00CHN D 44 »
10:15-12:00CHN D 46 »
10:15-12:00HG E 21 »
10:15-12:00LEE D 101 »
10:15-12:00ML F 40 »
10:15-12:00ML J 34.1 »
10:15-12:00ML J 34.3 »
Fri/210:15-12:00CAB G 61 »
GroupG-01

Restrictions

There are no additional restrictions for the registration.

Offered in

ProgrammeSectionType
Electrical Engineering and Information Technology MasterRecommended SubjectsWInformation
Electrical Engineering and Information Technology MasterSpecialisation CoursesWInformation