CRYPTO ANALISIS SERVER (CAS) Reti di Calcolatori LS Progetto di Carpenè Michele, Busacca Fulvio PARTE II (Busacca) • Sistema di tolleranza ai guasti • Schema di replicazione • Proseguimento nell’implementazione Riepilogo Struttura Client : invia testo e lunghezza chiave al ServerManager. ServerManager : calcola il bilanciamento e invia testo e range di chiavi agli Slave. Slave : prova tutte le chiavi assegnategli per decifrare il testo. Obiettivo Creare un SISTEMA FAULT-TOLLERANCE, affinché venga mantenuta l’AVAILABILITY (Continuità) del servizio erogato. Soluzione : architettura scelta + uso della replicazione Vantaggi dell’architettura scelta Range di chiavi affidate ad più un altro slave slave Punto critico E se cade il Server Manager? S1 C1 S2 C2 ServerManager S3 C3 S4 Punto critico Soluzione: Replicazione con Modello a copie passive calde S1 C1 S2 C2 ServerManager S3 checkpoint C3 ServerManager Secondario S4 Punto critico Risultato: un sistema con safety (ma senza liveness) S1 C1 S2 C2 ServerManager S3 checkpoint C3 ServerManager Secondario S4 Le tabelle viste in dettaglio Il nome di ogni slave è univo nella tabella Carico indica il carico totale di tutte le istanza assegnate a quello slave Le tabelle viste in dettaglio Update di LeftKey: LeftKey = LeftKey + Checkpoint + 1 Funzionamento interno(1) C1 S1 E1 TSvC TCC E2 TSvC E1 C2 TCC E2 S3 TSvC S2 TSvC Funzionamento interno(1) Funzionamento interno (2) SlaveNameCrash getRisultato balanceAlgorithm() putRisultato RM terminate Thread Group E1 E2 E3 E4 TEC TEC TEC TEC terminate Considerazioni sull’efficienza e la QoS Server Manager (leaky bucket) flusso di richieste in ingresso C1 coda input flusso di risposte in uscita C2 output richieste perse CN Fine