1 unstable release

0.1.0 Jan 30, 2024

#1296 in Algorithms

Custom license

18KB
300 lines

marzullo

A Rust implementation of the Marzullo algorithm

License: MIT CI crates.io docs.rs

Description

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

Credits

This is a port of the TigerBeetle implementation done mainly by Joran Dirk Greef and King Protty.

License

Licensed under either of

Contribution

  • 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.

No runtime deps