时间:2021-11-30|浏览:426
每个区块链网络都有网络层、共识层和应用层的区别。每个区块链网络都有不同的特点,因为不同层次的设计思路不同。在这篇文章中,我们将整理Solana通过这些数据,网络的运行逻辑可以知道为什么Solana会在以太坊2.0上线前,会比以太坊好用。
以太坊总帐在1.0链由矿工维护,2.0里,矿工成为验证者,验证者用计算设备建立验证器而不是原来的矿机。Solana也是通过验证者保护总账,但是验证者形成共识的算法不同。通过以下顺序,我们可以了解共识形成的过程。
Solana集群
Solana集群是一组验证人,共同保持账簿的完整性,有多个集群。
创建集群
在启动任何验证节点之前,您需要创建一个创建配置。创建配置将配置一个具有引导验证能力的节点,第二个验证节点可以联系引导验证节点注册为验证节点。然后,其他验证节点将继续在集群的任何注册成员中注册。
验证节点将收到领导的所有项目,并提交投票以确认这些项目的有效性。投票后,验证节点需要存储这些项目。但是一旦验证节点发现有足够的副本,就会删除自己的副本。
加入集群
验证节点通过发送到控制台(control plane)注册信息进入集群。控制台使用八卦(gossip)协议的实现意味着节点可以向任何现有节点注册,并期望其注册传播到集群中的所有节点。一个节点可以确保它最终拥有与每个其他节点相同的信息,但没有一个节点可以审查这些信息。所有节点同步所需的时间与参与集群节点的平方成正比。
将交易发送到集群
客户端将交易发送到任何验证节点的交易处理单元(TPU)端口。如果节点在验证节点中扮演角色,它将交易转发给指定的领导。如果是领导角色,节点将传入的事务捆绑在一起,并给它一个时间戳来创建一个项目(entry),然后推送到集群的数据中心(dataplane)。进入数据中心后,交易将由验证节点进行验证,从而有效地将交易添加到账簿中。
确认交易
Solana集群可以在亚秒时间内确认(confirmation)最多150个节点,并计划扩展到成千上万个节点。一旦完全实施,确认时间预计只会随着验证节点数量的对数而增加,对数基数很高。网络增加到一定规模后,会变得太慢,无法实现亚秒确认。将消息发送到所有节点所花费的时间与节点数量的平方成正比。如果区块链想要获得低确认率,并尝试使用网络来实现这一点,它将被迫集中在少数节点上。
因此,可以使用以下技术组合来确认可扩展性:
使用VDF样品给交易打上时间戳并签名。将交易分为几批,将每笔交易发送到一个单独的节点,每个节点与对等节点共享其批次。重复最后一步,直到所有节点都有所有批次。
Solana用固定的时间间隔(称为插槽)轮换领导。每个领导只能在分配的时间内生成项目。因此,领导在交易中加入时间戳,以便验证节点可以找到指定领导的公钥。然后,领导签署时间戳,验证节点验证签名,证明签名者是指定领导公钥的所有者。
下一步,将交易分成批处理,这样节点就可以在不复制的情况下将交易发送给多方。举例来说,如果领导者需要将60笔交易发送到6个节点,他们将60笔交易的集合分成10笔交易的批次,并将一笔交易发送到每个节点。这样,领导者就可以把60笔交易放在网上,而不是每个节点60笔交易。然后,每个节点都与对等节点共享其批次。当节点收集了6个批次时,它将重建60个交易的原始集合。
该技术可称为(涡轮块传播)Turbine Block Propogation。
同步
快速可靠的同步是Solana实现超高吞吐量的最大原因。Solana采用历史证明PoH算法
区块可以按照任何顺序甚至延迟好几年才传到验证节点那里。通过这种可靠的同步保证,Solana能将块分解成较小的批量交易,称为条目(entries)。在达成任何共识之前,项目将实时传输到验证节点。
用戶喜愛的交易所
已有账号登陆后会弹出下载