A Rust implementation of the Marzullo algorithm
Marzullo's algorithm, invented by Keith Marzullo for his Ph.D. dissertation in 1984, is an agreement algorithm used to select sources for estimating accurate time from a number of noisy time sources. NTP uses a modified form of this called the Intersection algorithm, which returns a larger interval for further statistical sampling. However, here we want the smallest interval. Here is a more detailed description of the algorithm
This is a port of the TigerBeetle implementation done mainly by Joran Dirk Greef and King Protty.
Licensed under either of
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
- Contributions are welcome! 🙏
- Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.