Discover区块链入门 | 我不允许你还不知道!9.有趣的“拜占庭将军问题”和“拜占庭容错”
9.有趣的“拜占庭将军问题”和“拜占庭容错”

9.有趣的“拜占庭将军问题”和“拜占庭容错”

Update: 2021-02-08
Share

Description

9. 什么是拜占庭将军问题拜占庭容错


今天桔子要跟大家聊的是拜占庭将军问题和拜占庭容错,区块链其实与拜占庭将军问题的渊源颇深。拜占庭帝国在历史上指代的就是东罗马帝国,他是欧洲历史上最悠久的君主制国家,也在十多个朝代的更替中饱受战乱。而拜占庭将军问题是由美国计算机科学家莱斯利·兰伯特提出来的一个以拜占庭帝国为背景的假设问题:许多个拜占庭将军要从多个方向同时围攻一座城市,但是将军们之间没有手机啊,所以必须依靠骑着马的通讯兵传递进攻的信号,不过将军中又有无间道可能会发送错误的进攻信息。如果没有足够多的拜占庭将军同时发起进攻,则战役失败拜占庭军团团灭。所以每个忠诚的将军在发出指令给相邻的将军时,也要判断自己接受的指令是否靠谱,会不会是叛徒传递的假信号。这个问题的核心思想就是如何让将军们达成共识,也就是实现区块链点对点的通信过程中信息可靠且一致

后来又有人提出了拜占庭容错的观点,简单来说就是部分将军是叛徒也没关系,只要有足够多忠诚可靠的将军,整个系统也可以达成共识顺利运作。以此为基础大家也提出了很多共识算法解决方案。大家有没有想过,共识节点也会存在宕机的问题,那当区块链世界的法律宕机时,后果不堪设想。于是趣链科技的程序员们就想出了一个办法:采用高性能鲁棒性拜占庭容错共识算法”RBFTRBFT包含主共识和备胎共识。也就是说,当主共识出问题的时候,备胎节点将会顶上,从而避免共识节点宕机对整个系统产生重大影响。另外,RBFT中还加入了自研的Recovery机制,recovery这个单词的意思就是恢复,所以当区块链中的部分数据失效时,系统可以自行恢复。

好啦今天的介绍就到这里了,如果你想了解更多拜占庭容错算法的知识,可以添加桔子微信申请加入Qtech技术交流群或关注Qtech的公众号哦,我们下期见。



Comments 
00:00
00:00
x

0.5x

0.8x

1.0x

1.25x

1.5x

2.0x

3.0x

Sleep Timer

Off

End of Episode

5 Minutes

10 Minutes

15 Minutes

30 Minutes

45 Minutes

60 Minutes

120 Minutes

9.有趣的“拜占庭将军问题”和“拜占庭容错”

9.有趣的“拜占庭将军问题”和“拜占庭容错”