织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 区块链

了解Solana:涡轮机、海湾流和海平面(2)

时间:2021-06-25 15:30来源:未知 作者:admin 点击:
然后,每个验证器将数据包重传给一组称为“邻居”(neighborhood)的对等体。每个邻居负责将部分数据传输到其下面的每个邻居。 如果领导者以擦除码的

  然后,每个验证器将数据包重传给一组称为“邻居”(neighborhood)的对等体。每个邻居负责将部分数据传输到其下面的每个邻居。

  如果领导者以擦除码的形式传输该区块33%的数据包,那么网络可以放弃任何33%的数据包并且不丢失该区块。

  领导者甚至可以根据网络状况动态地调整这个数字。这些都是由领导者从以前的区块中观察到的丢包率做出的决定。

  并非所有的验证器都是平等的,最重要的验证器是那些拥有最多质押的验证器。

  因此,相应的传播将会进行优先排序。权益加权选择算法构建了一个树,使质押较高的验证器在邻居中更接近领导者。每个验证者都独立计算相同的树。

  虽然擦除码可以修复故障,但在树中的敌对节点可能会导致故障,特别是当与DoS(拒绝服务攻击)相结合时。

  Solana如何处理这种日蚀攻击(Eclipse Attack)?

  扇出算法。

  Solana的扇出算法使用基于数据包数字签名的随机源为每个数据包生成一棵权益加权树。由于每个数据包采取不同的路径,而且路径是事先不知道的,邻居级的日蚀攻击需要几乎完全控制网络。

  这种技术可以扩展到200到1000个节点之间。支持1 gbps的网卡每秒可以传输100万个数据包。如果网络连接允许,单个验证器可以在一秒钟内将最多64kb的数据包发送给1,000台机器。

海湾流(Gulf Stream):无内存交易转发协议

  内存池(MemPool)是一组已经提交,但尚未被网络处理的交易。

  就比特币和以太坊而言,内存池的大小通常以未确认交易的数量来衡量,取决于区块空间的供应和需求。即使在区块链时代早期,当内存池增加时,也会对整个网络造成严重的瓶颈影响。

  那么,Solana是如何精益求精的?

  在不增加网络吞吐量的情况下,Solana验证器可以管理10万笔交易的内存池大小。这意味着,在网络吞吐量为5万TPS的情况下,10万笔交易的内存池在几秒钟内就能执行。这就是让Solana成为世界上性能最强无许可区块链的原因。

  Solana网络对这个问题的解决方案是将交易缓存和转发(forwarding)推送到网络边缘,这被称之为海湾流(Gulf Stream)。

  由于每个验证器都知道未来领导者的顺序,客户和验证器提前将交易转发给预期的领导者。这使得验证器可以提前执行交易,减少确认时间,更快地切换领导者,并减少未确认交易池对验证器的内存压力,让Solana每秒可处理5万笔交易。这种解决方案在领导者不确定的区块链网络中是不可能的。

  它又是如何工作的呢?

  客户端(比如钱包)签署引用特定区块哈希的交易。客户端选择一个已经被网络完全确认的、最近的区块哈希。区块大约每800毫秒被提出一次,每增加一个区块都需要成倍的增加时间来展开。使用默认的超时曲线,在最坏的情况下,完全确认的区块哈希是32个区块。 (责任编辑:admin)

织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容