文件名称:byztimed:拜占庭式容错时间同步
文件大小:108KB
文件格式:ZIP
更新时间:2024-03-23 21:03:33
Rust
拜兹泰姆 Byztime是一种协议,用于在一组对等方之间同步时间,而无需依赖任何外部时间授权。 Byztime保留的时间只是一个计数器,它以非常接近每秒1个单位的速率前进,因此所有节点在其当前值方面都非常一致。 Byztime时间戳记没有明确定义的纪元。 如果所有节点在初次初始化时都具有正确设置的系统时钟,则Byztime最初将与POSIX时间匹配,但由于1.没有外部源使其保持同步,以及2. Byztime的时标缺少leap秒,因此最终它将偏离POSIX时间。 Byztime的算法着重于保持最坏情况的错误-任何两个正确节点对当前时间的估计之间的绝对距离--尽可能小。 它仅以典型情况的错误为代价来实现此目的,它仅使用来自每个对等方的单个最高质量的时间样本,而不是组合许多样本来消除网络抖动。 在最坏的情况下,两个正确节点的时钟之间的差将渐近收敛于4δ+4ερ,其中δ是两个距离最远的对等点之间
【文件预览】:
byztimed-main
----.gitignore(75B)
----shell.nix(451B)
----README.md(15KB)
----.gitmodules(120B)
----Cargo.toml(62B)
----CONFIG.md(5KB)
----byztimed()
--------README.md(15KB)
--------Cargo.toml(1KB)
--------tests()
--------build.rs(388B)
--------src()
--------benches()
--------.cargo()
----LICENSE.md(10KB)
----.cargo()
--------config(209B)
----byztime()
--------README.md(447B)
--------Cargo.toml(696B)
--------src()
----byztime-sys()
--------README.md(373B)
--------libbyztime()
--------Cargo.toml(430B)
--------build.rs(919B)
--------src()
----Cargo.lock(49KB)