When One Machine Is Not Enough
Silence Means Nothing In Particular
Last timeKeeping Copies In Step
A message that has not arrived looks exactly like a machine that has died, and no amount of care distinguishes them, which is why every timeout in a system is a guess.
A machine sends a request to another machine and waits. Nothing comes back. This
is the central situation of the entire subject, and the thing to understand about
it is that nothing useful can be concluded.
What silence can mean
This is not a gap in current engineering practice that better equipment will
close. It was proved in 1985 that with no upper bound on how long a message may
take, no algorithm guarantees that a group of machines will agree on anything,
even if only one of them may fail. The reason is exactly the diagram: a machine
that has not answered yet cannot be distinguished from one that never will.
Timeouts, and why they are all wrong
Since silence cannot be interpreted, systems guess. They wait a while and then
declare the other machine dead. The waiting period is the only control available,
and it trades two bad outcomes against each other.
The lesson stops here
6 more paragraphs to go
You have read the opening. The rest of the argument, the problems that check whether it landed, and the lines worth keeping at the end all come with a plan.
The first lesson of every course in the library reads the whole way through, free, so you can see exactly what the rest of them are.
See the planThe contentsThis is the reading half
Starting the course gives you your own copy of it. Every idea on every page has problems standing under it, marked with a reason rather than a tick, and any sentence you do not believe can be opened and argued with. None of that can happen on a page nobody owns.
The contents