Hacker News new | ask | show | jobs
by cyphar 2895 days ago
The point of the Two Generals problem is that it's impossible to solve. No matter how many acknowledgements you send or receive over a lossy medium you can never be sure that both parties will agree on whether to attack. It's a fairly infamous restriction on distributed system design.

Working distributed systems have to work around this (and other) restrictions that are implicit to the properties of a distributed system. So TCP still works perfectly fine even though a perfect version of TCP (that didn't have timeouts) would be mathematically impossible to implement.