3

我正在玩超级账本 indy 并且它是validator-info,但我真的找不到括号中的数字(节点别名旁边)是什么意思。

我相信它与主节点有关,但这只是我的假设,我从未在 indy 的文档中看到任何关于数字的注释。有人可以解释一下节点别名​​旁边的数字是什么,例如。Node1 (0)或者Node2 (1)是什么意思?

Reachable Hosts:   4/4
  Node2 (1)
  Node1 (0)
  Node3 
  Node4 
Unreachable Hosts: 0/4

当我停止时,Node2我可以看到Node2已变得无法访问。如下所示,该标志(1)仍​​在旁边Node2

Reachable Hosts:   3/4
  Node4
  Node1 (0)
  Node3
Unreachable Hosts: 1/4
  Node2 (1)

然而,几分钟(±5 分钟)后(1)for 的数字Node2消失了。

Reachable Hosts:   3/4
  Node4
  Node3
  Node1 (0)
Unreachable Hosts: 1/4
  Node2 

当我再次开始Node2时,它再次变得可以访问,但旁边的数字Node2不在这里。

Reachable Hosts:   4/4
  Node1 (0)
  Node3 
  Node2 
  Node4 
Unreachable Hosts: 0/4
  • 号码怎么了?
  • 数字是什么意思?
  • (1)是否有一些延迟或为什么我需要等待几分钟直到Node2消失。
  • 即使在 20 分钟后, (1) 也没有分配给任何Reachable hosts. 为什么?
4

1 回答 1

2

好吧,在调查了几个小时的 git 提交历史和 INDY 的 jira 之后,我找到了INDY-967 ticket

有一些额外的功能要求增强验证器信息的有用性。

要求:

指示作为当前主节点的节点。在冗长的人类可读输出中,这可以由作为主节点名称后括号中的主编号指示,以这种方式:

实际上有一个类似于我的 OP 的评论 - 为什么这个数字消失了。这个问题也有答案。

例如,如果节点是主节点并且断开连接超过 2-3 分钟,则删除整个实例。如果我们没有实例,我们就不能拥有它的主节点,因此预计无法访问的节点不是主节点。也有可能某些实例在视图更改期间没有主实例

  • 号码怎么了?

该实例已断开连接,几分钟后共识决定删除该实例,因此无需将节点保持为主节点。

  • 数字是什么意思?

数字表示主节点。这(0)是第一个 BFT 协议实例(1)的主节点,也是第二个 BFT 协议实例的第二个主节点 - 类似于RBFT 协议白皮书(0)中定义的备份。

  • 是否有一些延迟或为什么我需要等待几分钟,直到 (1) 的 Node2 消失。

延迟是一段时间,直到与新的备份 BFT 协议实例达成共识。1应该分配给另一个节点。

  • 即使在 20 分钟后,(1) 也没有分配给任何可达主机。为什么?

我目前的假设是,在主要 BFT 实例相同之前,共识和 RBFT / Indy-Plenum 的 RBFT 不会运行新的“选举”,即主要实例的视图更改或 BFT 实例的“循环”分配。因此,如果不可用的节点具有备份主副本,则无关紧要并且不需要更新 BFT 实例。

于 2019-11-15T22:15:27.253 回答