Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Ok, I'm not a systems developer (I'm a full stack / cloud developer), so I don't usually work with systems that introduce analog faults (operations in software tend to either succeed or fail with an exception).

The only place I have encountered something like this was on an Arduino board where the use of a buzzer was causing a voltage drop that affected the logic of the code. (It appeared that a delay function returned immediately instead of taking 250ms, which sped up the loop.)

Question:

How do you actually implement Byzantine Fault Tolerance?

I found this in Wikipedia:

Byzantine fault tolerance mechanisms use components that repeat an incoming message (or just its signature) to other recipients of that incoming message. All these mechanisms make the assumption that the act of repeating a message blocks the propagation of Byzantine symptoms.

Is verifying the interpreted input value the primary way to design for Byzantine Fault Tolerance?



You may be interested in the following:

Practical BFT: http://pmg.csail.mit.edu/papers/osdi99.pdf The Night Watch: https://www.usenix.org/system/files/1311_05-08_mickens.pdf

Generally the idea is to assume that there will be fewer than k failures out of the n nodes you have.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: