NGK生态为什么需要21个超级节点来运行?

2022-11-27 区块链达人

NGK和EOS都选用了相同的21个超级节点来运行网络。那么这里就有一个疑问,为什么一个区块链系统非要21个超级节点来运行呢?

 

在NGK生态中,超级节点是一种约定俗成的称呼,官方说法其实是:“区块生产者”,是NGK.IO网络稳定运行的基础。在NGK系统中,超级节点承担着以下五大职责:

Ø 提供服务器节点,保证节点的正常运行;

Ø 收集网络中的交易;

Ø 验证交易并把交易打包到区块;

Ø 广播区块给其他区块,在通过验证后将区块添加到自己本地区块链上;

Ø 保障并促进区块链项目的发展。

除此之外,超级节点还通过硬件及服务器配置提供了NGK.IO网络运行所需要的“算力”。

那么NGK系统为什么选择21个超级节点呢?

首先,21是奇数,这与“多数节点是正义的”设定有着密切的关系。而且,在最长链原则下,只有超级节点数为奇数才能保证最长链只有一条,客观上避免了分叉的产生。

其次,由于NGK.IO遵循“不可逆”原则,至少需要2/3的节点进行区块确认。所以,如果超级节点数量比较多就要花费更长的等待时间用于确认;而如果超级节点数量比较少,虽然降低了确认的等待时间,但在系统延迟时容易引发风险。

因此,NGK设定21个超级节点是基于实践后,在去中心化和性能之间找到的平衡点。 

当然,NGK是一个社区驱动型项目,超级节点的数量也并非固定不变。如果超级节点的数量不符合项目需求,可以通过社区投票的方式来决定超级节点的数量。