但是,在军队内可能有叛徒,这些人将影响将军们达成共识 。拜占庭将军问题是指在已知有将军是叛徒的情况下,剩余的将军如何达成一致决策的问题 。
1982年,莱利斯·兰波特(Leslie Lamport)等在论文The Byzantine Generals Problem中证明当将军总数大于3f,背叛者数为f或者更少时,忠诚的将军可以达成命令上的一致,即 3f+1≤n,算法复杂度为O(nf +1) 。
米格尔·卡斯特罗(Miguel Castro)和芭芭拉·利斯科夫(Barbara Liskov)在1999年发表论文Practical Byzantine Fault Tolerance提出PBFT算法 。该算法的容错数量也满足3f+1≤n,算法复杂度为O(n2) 。
该算法能提供高性能的运算,使系统可以每秒处理上千次请求,这比旧系统快了一些 。
PBFT算法的共识过程
PBFT算法的共识过程如下:客户端(Client)发起消息请求(request),并广播转发至每一个副本节点(Replica),由其中一个主节点(Leader)发起提案消息pre-prepare,并广播 。其他节点获取原始消息,在校验完成后发送prepare消息 。每个节点收到2f+1个prepare消息,即认为已经准备完毕,并发送commit消息 。当节点收到2f+1个commit消息时,我们就认为该消息已经被确认完成(reply) 。
以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!
「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助:- 属鼠的人2017年健康运势,属鼠人2017年健康运势详解
- 属鼠的人2017年财运,属鼠人2017年财运势详解
- 原生js发送post请求 js菜鸟教程
- 详解爆能枪原理 电浆轨道炮怎么样
- 山西水灾为何显得信息滞后 具体是什么情况?详解!!
- 山西洪涝灾害已致175万余人受灾 具体是什么情况?详解!!
- 专家:山西水灾受灾范围比河南更大 具体是什么情况?详解!!
- 绵阳通报4天参团游未见九寨沟大门 具体是什么情况?详解!!
- 台风登陆海南:暴雨下市民艰难行走 具体是什么情况?详解!!
- 女子闯红灯出示联合国证件 具体是什么情况?详解!!