Phi (\phi) Accrual Failure Detector

The Phi (\phi) Accrual Failure Detector is an adaptive algorithm used in distributed systems to monitor node health. Unlike traditional "binary" failure detectors that output a rigid "Available" or "Unavailable" status based on a fixed timeout, an accrual detector provides a continuous suspicion level that reflects the probability that a node has failed.

1. The Core Innovation: Probability over Binary

In a traditional heartbeat-based system, you might set a 5-second timeout.

2. Mathematical Foundation

The detector uses a sliding window of the last N heartbeat intervals (inter-arrival times).

  1. Profiling: It calculates the mean (\mu) and standard deviation (\sigma) of the intervals in the window, assuming a Normal Distribution.
  2. Estimation: When t_{elapsed} time has passed since the last heartbeat, it calculates P_{later}: the probability that a heartbeat would arrive even later than the current time.
  3. The Phi Value: The suspicion level \phi is defined as the negative base-10 logarithm of that probability:
\phi(t) = -\log_{10}(P_{later})

Understanding the Phi Scale

The \phi value represents the order of magnitude of the "risk" of a false positive:

3. Key Advantages

Adaptability

If a network becomes jittery (high \sigma), the Phi value will accrue more slowly. The algorithm automatically "stretches" its suspicion window to accommodate the degraded environment, preventing false convictions during temporary congestion.

Multi-Threshold Interpretation

Different components of the system can interpret the same \phi value differently:

4. Real-World Applications

See Also