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

我的网站

当前位置: 主页 > 竞争币 > 以太坊

观点:以太坊不该为了可扩展性而冒险转向 PoS (2)

时间:2020-11-23 15:20来源:未知 作者:admin 点击:
至于其可扩展性,以太坊分片技术的命名 「二次方分片(Quadratic sharding)」 透露了端倪:假设分片上的交易,其执行复杂性能够被化约到与区块头验证同

至于其可扩展性,以太坊分片技术的命名 「二次方分片(Quadratic sharding)」 透露了端倪:假设分片上的交易,其执行复杂性能够被化约到与区块头验证同样的难度,则分片化执行的架构,可以使整个系统的处理能力,随着参与节点处理能力的线性提高而呈平方级提高。通俗来说,如果参与网络的节点(平均而言)在一段时间内能验证 4 个区块头,这就意味着,在参与一个分片时,节点们可以在同等时间内验证 4 笔交易,此时系统总处理量是 4 条分片 × 4 笔交易 / 分片 = 16 笔交易;如果节点的处理能力变成了 8 (2 倍),则处理量会变成 64 笔交易(4 倍)。

听起来很美好,但是,这个「平方级扩展」 的论证中包含了如下假设:

(1)存在一种技术,使得分片交易的验证,可以简化到与验证区块头同样的难度;

(2)不存在跨分片的交易,即各分片内的交易是完全不会相互依赖的。跨分片的交易需要占用多个分片的处理容量,也要占据信标链的处理容量,会使可扩展性大打折扣。

关于(1),这个假设是有可能得到满足的,无状态性(statelessness)就是这样的一种技术,它的思路是,在传播交易(或者传播区块时),附带交易所访问状态的证明(witness),使得交易的验证者无需持有交易执行之时的状态数据,就能验证交易的有效性。这一点极为关键,如果没有无状态性,参与分片验证的验证者就必须保存分片的状态,因为验证者会被不断分配到不同的分片链上,那就意味着他们必须保存所有分片的状态,在实践中也就意味着他们要不断下载所有分片的区块并处理交易,从而使整个系统坍缩为一个大区块系统(例:投入能处理 16 笔交易的资源,处理 16 笔交易)。遗憾的是,至今,以太坊 1.0 也没有研究出足够轻量的无状态方法。

关于(2),那就没有什么好说的了。如果不能实现跨分片交易,分片化执行的系统就没什么意义,因为各分片各自为政。必须使得 ETH 有办法存在于各个分片上,这个系统才能仍然以 ETH 为主体。而直到今天为止,还没有出现一种跨分片交易方案,能够不增加信标链的处理量。道理也很简单,对于任意 A 分片来说,因为并行处理,任意 B 分片上正在发生什么交易,需不需要改写本分片的状态,是不可知的,因此必须存在一个通信层,可信地证明 B 分片上发生了一笔试图改写 A 分片状态的交易。而一旦需要让信标链具备处理交易的功能,平方级扩展的效果就会被打破。(顺带说一句,满足了这一可信通信层的需要的链,就变成了事实上的 Layer-1,而其它分片则变成了事实上的 Layer-2,像极了 「Layer-1 + Layer-2」。)

除了存疑的可扩展性,分片化执行还带来了许多经济上的有趣问题。例如,如果跨分片交易的处理时间超过一笔分片内交易的处理时间(这是必然的),这就意味着,不同分片上的 ETH 价值也不会相同。就好像美国国内的 1 美元,与美国国外的 1 美元,实际上并不是同一种东西。不论有多少个分片,都至少会有两种 ETH 价格,一种,是那个金融应用最繁茂的分片(也就是 Eth1 分片)上的 ETH 的价格;另一种是其它分片上的 ETH 的价格;后者必须支付一定的手续费并付出一定的时间,才能换成前者,因此对前者必定有一些折价。同理,即使每个分片上都有 uniswap,不同分片上市场的交易滑点也必定不相同,最终大家都会汇集到一个分片上,因为大家都在一起的时候,流动性最充沛,资金效率最高。某种程度上,可以认为跨分片交易的需要是很少的 —— 但这也意味着,其它分片上闲置的交易处理容量,也根本没有意义。 (责任编辑:admin)

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