首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >当我们在PBFT中有f个错误的副本时,视图更改协议是如何工作的?

当我们在PBFT中有f个错误的副本时,视图更改协议是如何工作的?
EN

Stack Overflow用户
提问于 2021-01-13 15:59:17
回答 2查看 89关注 0票数 0

我正在考虑一个案例,假设我们有10个副本,即3f+1=10,这意味着我们可以有3个有问题的副本。现在,假设主副本发生故障,并与其他两个故障副本串通,其余的无故障副本在组4(G1)和组3(G2)中。现在,主节点尝试通过向每个非故障组提出不同的客户端请求来作弊,例如0到G1,1到G2。对于G1中的节点,quorum 2f+1可以达到4(G1)+3(故障),因此可以在本地提交,而G2则不能,因为它们有3(G2)+3(故障),即只有2f。因此,我假设G2副本将超时,并将启动视图更改过程。但根据我的理解,只有当新的主节点接收到2f+1(包括自身)视图更改消息时,视图更改才会发生。但在这种情况下,故障可能不会发送视图更改,这将只给我们留下G2(3)视图更改消息,并且G1永远不会请求视图更改,因为它们已经在仲裁中了。这不满足安全属性。那么,PBFT到底是如何解决这种情况的呢?

EN

Stack Overflow用户

发布于 2021-05-24 22:07:02

主服务器无法在准备阶段发送消息。如果主节点仍发送准备消息,则所有非故障复制副本都会将其检测为故障主节点。他们将立即启动视图更改。因此,G1将不会达到提交本地状态。有关详细信息,请参阅此处Sawtooth PBFT Architecture

票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65697748

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档