Distributed Systems
Master's Programme: Computer Systems and Networks
Lavagna distribuita semplice
Un programma che gira su diverse macchine, dove i client postano su qualsiasi server usando un browser web, memorizza tutti i dati ricevuti, diffonde i dati appena ricevuti: a tutte le altre schede e in modo peer-to-peer.
Lavagna distribuita - versione centralizzata
Ogni post è inviato al leader che lo distribuisce alla rete. Il leader dovrebbe essere in grado di gestire correttamente più post di diversi nodi.
Lavagna consistente alla fine
Tutte le repliche alla fine convergono allo stesso valore, un protocollo per consistenza finale: le scritture vengono infine applicate in ordine totale (stesso ordine su tutte le repliche, portano allo stesso valore, consistenza finale) e le letture potrebbero non vedere le scritture più recenti in ordine totale.
Accordo bizantino
N navi, ciascuna generale controlla una nave, per ogni generale (nave): decide su un profilo "onesto" o "bizantino", i generali onesti decidono un voto "attacco" o "ritiro", avvia l'algoritmo di accordo bizantino su tutti generali, attraverso un'interfaccia web. Quando l'algoritmo termina, il risultato e il vettore risultante dovrebbero apparire in ogni pagina web (all'aggiornamento): i generali onesti dovrebbero essere d'accordo sugli stessi voti tra di loro, non è richiesto alcun accordo per i generali bizantini.