Failure Detector
- Tipologie:
- Inaffidabili: Forniscono suggerimenti (es. heartbeat in sistemi asincroni).
- Affidabili: Determinano con certezza i fallimenti (sistemi sincroni).
- Metriche:
- Completezza: Capacità di rilevare fallimenti (forte/debole).
- Accuratezza: Evitare falsi positivi (perpetua/eventuale).
- Implementazioni: Heartbeat, ping-ack, o piggybacking su messaggi applicativi.
5. Failure Detectors
Classificazione
- Completezza:
- Forte: Tutti i processi falliti sono rilevati da tutti i corretti.
- Debole: Solo alcuni processi rilevano il fallimento.
- Accuratezza:
- Perpetua: Mai falsi positivi (difficile in asincroni).
- Eventuale: Dopo un tempo finito, nessun falso positivo.
Implementazioni
- Heartbeat:
- Processi inviano "I'm alive" periodicamente. Timeout = T + Δ (stima del ritardo massimo).
- Piggybacking: Inclusione degli heartbeat nei messaggi applicativi per efficienza.
- Accrual Detector:
- Livello di sospetto Φ ∈ [0,1] (probabilità di fallimento). Soglie configurabili.