-4

I have difficulty understand Section 18.3 Fault Tolerance Services under Ch18 Replication in Coulouris' Distributed Systems. If my reading and understanding is correct (which might not),

  • Section 18.3.1 Passive Replication describes services that have linearizability consistency but don't tolerate Byzantine failures.

  • Section 18.3.2 Active Replication describes services that have weak (sequential) consistency but tolerate Byzantine failures.

In a distributed systems with data replication, does stale data i.e. data inconsistency due to weak level of consistency count as Byzantine failure? (Seems to me yes, but my reading above seems no.)

When a distributed system with replication is said to tolerate Byzantine failures, does it necessarily have the strict level of consistency, i.e. linearizability? (Seems to me yes, but my reading above seems no.)

Thanks.

Tim
  • 5,405
  • 7
  • 48
  • 84

1 Answers1

1

Byzantine fault can appear to be both functioning and not functioning to diffrent actors.

a server can inconsistently appear both failed and functioning to failure-detection systems, presenting different symptoms to different observers

Consistency and Linearizability is usuallly solved with a consensus algorithm. But Byzantine faults is a more difficuly problem, on a higher order - since you must have consensus about what part is "struggling" in the first place.

It is difficult for the other components to declare it failed and shut it out of the network, because they need to first reach a consensus regarding which component has failed in the first place.

Jonas
  • 14,867
  • 9
  • 69
  • 102