Ridondanza per garantire affidabilità in un sistema informatico

Ridondanza per garantire affidabilità in un sistema informatico

Secondo l’ingegneria del software, la ridondanza è uno strumento fondamentale per l’ottenimento dell’affidabilità del sistema dal momento che, qualora una parte del sistema non dovesse funzionare correttamente, è necessario vi sia una parte di riserva predisposta a svolgere la medesima funzione.

La ridondanza è comunemente usata a livello hardware tramite la replicazione dei componenti. Su questi componenti possono essere quindi eseguite parallelamente copie dello stesso programma. Tuttavia questa configurazione fornisce tolleranza a guasti solo di origine hardware. Infatti, per quanto riguarda il software, la semplice replicazione non è in grado di fornire una buona tolleranza ai guasti. Questo è dovuto alla differenza sostanziale che intercorre tra hardware e software: l’hardware si può danneggiare e quindi la replicazione del componente è in grado di risolvere il problema, il software invece non può rompersi. Spesso, come già detto, i guasti nel software sono causati da errori di progettazione e design, che sarebbero presenti in tutte le copie del programma qualora questo venisse semplicemente replicato.

Vedremo nel prossimo capitolo che la soluzione a questo problema consiste nella diversificazione delle copie del programma, quindi nel non utilizzare una semplice replicazione dello stesso ma replicare piuttosto il servizio offerto. Questo significa anche che i moduli software, ora non più uguali, possono produrre risultati diversi. Si deve quindi adottare un meccanismo di decisione (Decision Mechanism), che nel proseguo della trattazione indicheremo anche con DM, che decida quali risultati ritenere accettabili e soprattuto quale output finale restituire e se restituirne uno.

La progettazione della ridondanza software è strettamente collegata alla struttura hardware adottata. Le configurazioni possibili sono principalmente tre: la prima soluzione prevede le diverse varianti implementate su un unico componente hardware, la seconda soluzione prevede un componente hardware dedicato ad ogni modulo software e il DM collocato su uno di questi componenti, mentre la terza dedica un componente hardware separato anche al DM.

Il ricorso alla ridondanza determina quindi un aumento del livello di disponibilità del sistema a fronte tuttavia di una conseguente crescita del costo finale del sistema dovuto all’incremento del numero di moduli e dispositivi implementati e relativi costi di riparazione e manutenzione

Precedente Fault Tolerance: tolleranza ai guasti per un sistema informatico Successivo Tecniche di tolleranza ai guasti in un sistema informatico

Lascia un commento

*