Skip to main content
CODE 86799
ACADEMIC YEAR 2025/2026
CREDITS
SCIENTIFIC DISCIPLINARY SECTOR ING-INF/05
LANGUAGE English
TEACHING LOCATION
  • GENOVA
SEMESTER 1° Semester

OVERVIEW

The course provides the student with the technical and methodological tools to understand and describe the characteristics, functions and interactions of a Distributed System.

AIMS AND CONTENT

LEARNING OUTCOMES

The course aims to provide an understanding of the principles on which the Internet and other distributed systems are based, their architecture, algorithms and design, and how they meet the demands of contemporary distributed applications, including the following topics: Distributed systems characterization; Coordination of distributed systems; Physical and logical clock synchronization; Distributed mutual exclusion; Election algorithms and protocols; Consistency of distributed systems; Data centric systems; Client centric systems; Consistency protocols; Resilience of distributed systems; Distributed process pooling and resilience; Reliable distributed communication services; Distributed operation commit; Recovery of faulty systems; Case studies: Hyperledger permissioned blockchains, Google distributed storage and computation, In memory Distributed Data Store, Office online collaboration platforms.

AIMS AND LEARNING OUTCOMES

The course aims to provide an understanding of the principles on which the Internet and other distributed systems are based, their architecture, algorithms and design, and how they meet the demands of contemporary distributed applications, including the following topics: Distributed systems characterization; Coordination of distributed systems; Physical and logical clock synchronization; Distributed mutual exclusion; Election algorithms and protocols; Consistency of distributed systems; Data centric systems; Client centric systems; Consistency protocols; Resilience of distributed systems; Distributed process pooling and resilience; Reliable distributed communication services; Distributed operation commit; Recovery of faulty systems; Case studies: Hyperledger permissioned blockchains, Google distributed storage and computation, In memory Distributed Data Store, Office online collaboration platforms.

PREREQUISITES

Software platforms course.

TEACHING METHODS

Lessons held in presence.

SYLLABUS/CONTENT

1. Distributed systems characterization

2. Coordination of distributed systems

  • Physical and logical clock synchronization
  • Distributed mutual exclusion
  • Election algorithms and protocols

3. Consistency of distributed systems

  • Data centric systems
  • Client centric systems
  • Consistency protocols

4. Resilience of distributed systems

  • Distributed process pooling and resilience
  • Reliable distributed communication services
  • Distributed operation commit
  • Recovery of faulty systems

5. Case studies

  • Hyperledger platform for permissioned blockchains
  • Office/Spreadsheet online collaboration platform
  • Kubernetes platform for the management of containerized workloads and services

RECOMMENDED READING/BIBLIOGRAPHY

Material provided during the course and made available through Aulaweb:

https://2024.aulaweb.unige.it/course/view.php?id=2625

TEACHERS AND EXAM BOARD

LESSONS

LESSONS START

https://courses.unige.it/11160/p/students-timetable

Class schedule

The timetable for this course is available here: Portale EasyAcademy

EXAMS

EXAM DESCRIPTION

Oral discussion.

Please send an email to ask for an appointment.

ASSESSMENT METHODS

Oral discussion on the course topics.

FURTHER INFORMATION

Home work to be developed at the end of the lab activity.