Given that there are at most two failures at a time in the system, which of the following protocols does NOT satisfy completeness? (1 point)
1 point
Ring-style heartbeating where each process heartbeats to only its clockwise neighbor
Ring-style heartbeating where each process heartbeats to both its clockwise neighbor and anticlockwise neighbor
Gossip-style heartbeating
All-to-all heartbeating
Answers
Answered by
0
Answer:
All-to-all heartbeating
Answered by
0
Answer:
The correct answer is Gossip-style heart beating
Explanation:
- Ring-heart-beating can be modified to design a fault detector that can detect simultaneous failures, where at most N/4 simultaneous failures can occur. Processes form a ring, ordered using their id’s. A process will heartbeat to its N/4 clockwise successors in the ring. Completeness is satisfied since at least one of the N/4 monitors of a process will be up if the process crashes, and hence its failure will be detected.
- (b) N × (N/4) messages are sent each time unit, if the heart-beating period = 1 time unit.
- (c) Both the best case and the worst case detection times are one time unit, assuming that the time-out is 1 time unit
- Consider the situation where both of PIs anticlockwise and clockwise neighbors failed. And before the ring is repaired, then PI fails. At this point of time, PIs failure might go undetected because both its neighbors were down when PI failed. Of course, repairing the rings also and other overhead which you have to deal with over here, in the ring heartbeating approach. The third heartbeating approach is called, All-To-All heartbeating. Where each process PI, sends out heartbeats not to one or two other process in the system but to all the other processes in the system. And the processes do likewise they timeout waiting for heartbeats. And if their time are then they mark the corresponding processes having failed. So if PJ times out waiting for PI's heart beats, it marks PI as having failed. This is pretty good. First of all, it has an equal load per member. The load is high. And get to the load later on why this might actually be not so bad. First of all, the load is equal, it's well distributed across all. Second the protocol is complete. If PI fails, then as long as there is at least one other non-faulty process in the group, it will time-out waiting for PI's heartbeats. And it will detect PI as having failed. So it is complete for sure. So next lecture we'll see how to increase the robustness of all-to-all heart beating. Essentially, the problem with all-to-all heart beating is that if you have one process PJ that is slow and is receiving packets at longer delay than others, it might end up marking all the other or almost all the other processes as having failed, with higher probability. And so you might have a lower accuracy or a very high rate of false positives in all-to-all heart beating. You can improve this by using more robust ways of sending out to the hard beat, rather than just direct messages.
Learn more about types of heart beating protocol
- https://brainly.in/question/7009998?referrer=searchResults
- https://brainly.in/question/7227702?referrer=searchResults
Similar questions