Distributed Computing

Download a cheatsheet here: https://github.com/ChrisLinn/chrislinn.ink/blob/master/technical/learn-u-a-distcomp-for-great-good.html

1. Curriculum

2. PBFT

最近看 consensus 的 心得分享一下

PBFT 中 assume 了 weak synchrony:

it must rely on synchrony to provide liveness

HoneyBadgerBFT 提出了改进,说 PBFT 的 liveness assumption 不 practical

guarantees liveness without making any timing assumptions

HoneyBadgerBFT 用的是 erasure-coded broadcast
small client-load 时可以考虑使用 bracha broadcast 来代替,throughput 更大,lantency 更低

bracha broadcast 相关(虽然 citation 不如 PBFT 多,但是很多知名论文都引用了它):

bracha 存在的问题是 scalability: 对于 transactions of size B

还有一个很有意思的是 beat 中谈到, pbft 的 view-change 实现很难, 且 async 做起来其实比 sync 容易, 很多论文都选择了不实现 view-change

Tendermint 也是对viewchange进行了 bracha 改造
但是好像 tendermint 现在已经不用 PBFT 了(待考证)

3. SMR

4. Raft

Copyright © ChrisLinn 2017-2018 all right reserved,powered by Gitbook该文件修订时间: 2020-02-15 15:47:54

results matching ""

    No results matching ""