Selection Guidelines for Geo-Replicated SMR Protocols: A Communication Pattern-based Latency Modeling Approach
State machine replication (SMR) is a replication technique that ensures fault tolerance by duplicating a service. Geo-replicated SMR is an enhanced version of SMR that distributes replicas in separate geographical locations, making the service more robust against large-scale disasters. Several geo-replicated SMR protocols have been proposed in the literature, each tailored to specific requirements; for example, protocols designed to reduce latency by either sacrificing a part of their fault tolerance or limiting the content of responses to clients. However, this diversity complicates the decision-making process for selecting the best protocol for a particular service. In this study, we introduce a latency estimation model for these SMR protocols based on the communication patterns of the protocols and perform simulations for various cases. Based on the simulation results and an experimental evaluation, we present five selection guidelines for geo-replicated SMR protocols based on their log management policy, distances between replicas, number of replicas, frequency of slow paths, and client distribution. These selection guidelines enable determining the best geo-replicated SMR protocol for each situation.