Tolerating Latency in Replicated State Machines Through Client Speculation
Source: University of Michigan
Replicated state machines are an important and widely studied methodology for tolerating a wide range of faults. Unfortunately, while replicas should be distributed geographically for maximum fault tolerance, current replicated state machine protocols tend to magnify the effects of high network latencies caused by geographic distribution. In this paper, the authors examine how to use speculative execution at the clients of a replicated service to reduce the impact of network and protocol latency. They first give design principles for using client speculation with replicated services, such as generating early replies and prioritizing throughput over latency.