Sistemi Distribuiti
Corso di Laurea Specialistica in Ingegneria Informatica
AA 2007/2008
ORDINAMENTO 2000 (5 Crediti)
Docente Prof. Roberto Baldoni
Tutor. Ing. Alessia Milani, Ing. Leonardo Querzoni, Ing. Silvia Bonomi
Giovedi' dalle ore 16.30 alle 18.00. Via Ariosto 25 - stanza B212 II piano.
Primo appello: 13 Luglio 2009. Risultati.
Secondo appello: 7 Settembre 2009. Risultati.
Primo appello: 19 Marzo 2008. Risultati.
Secondo appello: 11 Aprile 2008. Risultati.
Terzo appello: 7 Luglio 2008. Risultati.
Quarto appello: 10 Settembre 2008. Risultati.
Quinto Appello: 7 Gennaio 2009. Risultati
Sesto appello: 2 Febbraio 2009. Risultati
Primo appello: 28 Marzo. Risultati.
Secondo appello: 20 Aprile. Risultati.
Terzo appello: 2 Luglio. Risultati.
Quarto appello: 12 Settembre. Risultati.
Quinto appello: 28 Novembre. Risultati
| Lunedi' | Aula 1 | 12.00-13.30 |
| Mercoledi' | Aula 40 | 12.00-13.30 |
| Giovedi' | Aula 8 | 14.00-15.30 |
Argomenti |
Materiale | |
| Introduzione | Concetti di base di un sistema distribuito: hardware, software e tecnologie di comunicazione, dalla specifica all’implementazione. | trasparenze, T1 |
| Dai sistemi concorrenti a quelli distribuiti | appunti, trasparenze (pdf1, pdf2) | |
| Astrazioni di base
|
processi: eventi, history, guasti, computazione distribuita, algoritmi distribuiti, proprietà di safety e di liveness. | T1 |
| modelli computazionali: Sincrono, Asincrono, Parzialmente Sincrono. | T1 | |
| canali di comunicazione punto-punto: fair loss, stubborn, perfect. Relazione con TCP e UDP. | T1, trasparenze(pdf) | |
| Failure detector: perfetta su sistemi sincroni, eventually perfect su sistemi parzialmente sincroni, esempio di elezione del leader. | T1 | |
| Computazioni Distribuite | relazione happened-before ed alcune sue rappresentazioni | trasparenze (pdf) , T1 |
| tempo: clock fisico, clock logico. Esempi di utilizzo. La comunicazione causale, stabilità dei messaggi | trasparenze (pdf1, pdf2), "Fundamentals of Distributed Computing: A practical tour of vector clocks" | |
| Sincronizzazione |
registri: operazioni non-atomiche: registri e relative specifiche (safe, regular, atomic), protocolli di base | T1, trasparenze (1, 2, 3) |
| Mutua Esclusione Distribuita: algoritmi basati su token e su permesso. | trasparenze (pdf) | |
| Consenso: definizione, FLP impossibility result, flooding consensus uniforme e non uniforme con failure detector perfetti ed eventually perfect. Applicazioni del consenso: Total order protocol, non-blocking atomic commitment. | T1, trasparenze (pdf) , esercitazione(pdf) | |
| Teoria delle comunicazioni: |
Specifiche e protocolli: Reliable Broadcast, FIFO broadcast, Causal Broadcast, Total Order Broadcast, gerarchia di total order broadcast: specifiche ed implementazioni, broadcast probabilistico | |
| Teoria della Replicazione: | Tecniche di Replicazione Software: Primary backup, active replication. Virtual synchrony. | trasparenze (pdf) |
| "Fault Tolerance by Replication in distributed systems" (pdf) | ||
| Diffusione dell'informazione | Sistemi Publish/Subscribe. Il paradigma di comunicazione, event routing, SIENA, SCRIBE, TERA. | trasparenze (pdf). |
L'esame richiede il superamento di una prova scritta. Esempio di prova scritta.
Testo d'esame (appello del 22 Marzo 2004) soluzione di alcune delle domande proposte
Testo d'esame (appello del 1 Aprile 2004)
Testo d'esame (appello del 19 Luglio 2004)
Testo d'esame (appello del 24 Settembre 2004)
Testo d'esame (appello del 16 Aprile 2005)
Testo d'esame (appello del 22 Luglio 2005)
Testo d'esame (appello del 21 Settembre 2005)
Testo d'esame (appello del 29 Marzo 2006)
Testo d'esame (appello del 19 Aprile 2006)