摘要:大规模交易会对网络产生影响这是对共识分叉影响最大的因素之一,也就是区块广播所需要的时间。一定程度上可以模拟实际部署的效果。但是在我们实验设定下,完全没有出现越来越发散的问题。
@来自微信群 @胡靖宇:
Conflux面对大规模的交易生成,在弱网络条件下,DAG(有向无环图)可能会越来越发散,对共识和主链的确认,有没有大的影响?有没有测试过这种情况?
Conflux-李辰星:这是个好问题,我们可以从以下几点来讨论一下您提到的这个问题。
1.大规模交易会对网络产生影响这是对共识/分叉影响最大的因素之一,也就是区块广播所需要的时间。而每个区块有大小限制,无论等待的交易有多少,都不会影响实际的区块大小。
但是,网络分叉和交易数量就完全没有关系吗?也不全是。我们需要注意的是,区块广播和交易广播在 P2P 网络层是共用的。所以我们还需要设计合理的队列优先级机制。
2、 网络条件的假设在各种公链系统中,对网络条件有各种各样的假设,比如同步网络、半同步网络和不同步网络。而 Conflux 的网络假设是,一个区块传遍全网主要算力的时间是有一个上界的,在我们Conflux的测试中是一两分钟。如果网络分裂时间太长,绝大多数公链:包括比特币、以太坊,都是不能保证最起码的安全性的。这个假设,也是对当前网络环境一个比较保守的假设。理论上讲,如果这个时间变成了五分钟或十分钟,确实会增加分叉,但也只是延长确认时间,不会无休止地发散下去。
3、关于 DAG 发散问题,取决于 DAG 协议细节怎么设计在一个有向无环图中,我们一般管没有“入边”的节点称为叶子节点,具体到 DAG 区块链中,就是那些还没有被其他区块引用的区块。所谓 DAG 发散就是叶子节点越来越多。
有些算法确实会有这样的问题,例如雪崩共识算法,对于怎么选父块有一个很复杂的规则,这个规则稍有问题就会导致有向无环图的发散。
但是在 Conflux 的协议中不存在这一问题,当一个矿工挖出一个新区块时,对于那些既没有父边 (parent edge) 也没有引用边 (reference edge) 指向的所有区块,新区块都会用父边或引用边连接这一区块。这种设计可以保证,叶子节点是非常有限的。这也可以避免 DAG 的发散。
4、关于实验Conflux 实验模拟的是 10000 到 20000 个节点,遍布在全球不同国家中的20 个城市,节点之间互相有 2.5 MB/s 的带宽,以及10ms-300ms 不等的单程延迟。一定程度上可以模拟实际部署的效果。我不知道您说的弱网络条件具体是什么样的设定。但是在我们实验设定下,完全没有出现越来越发散的问题。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/17877.html
摘要:大规模交易会对网络产生影响这是对共识分叉影响最大的因素之一,也就是区块广播所需要的时间。一定程度上可以模拟实际部署的效果。但是在我们实验设定下,完全没有出现越来越发散的问题。 showImg(https://segmentfault.com/img/bVblza6?w=893&h=380); @来自微信群 @胡靖宇: Conflux面对大规模的交易生成,在弱网络条件下,DAG(有向无环...
摘要:安全性不可更改性排序结果不能被坏人的攻击更改。这也是很严重的公链安全事故。总而言之,通过设计安全的拓扑排序算法,解决交易顺序问题。区块排序的一致可以保证无效交易标记的一致。枢轴链和分叉链的区块奖励计算规则是一致的。 showImg(https://segmentfault.com/img/remote/1460000017710155?w=893&h=380); 12月27日,Conf...
摘要:安全性不可更改性排序结果不能被坏人的攻击更改。这也是很严重的公链安全事故。总而言之,通过设计安全的拓扑排序算法,解决交易顺序问题。区块排序的一致可以保证无效交易标记的一致。枢轴链和分叉链的区块奖励计算规则是一致的。 showImg(https://segmentfault.com/img/remote/1460000017710155?w=893&h=380); 12月27日,Conf...
阅读 1831·2021-09-24 09:48
阅读 3194·2021-08-26 14:14
阅读 1659·2021-08-20 09:36
阅读 1440·2019-08-30 15:55
阅读 3608·2019-08-26 17:15
阅读 1407·2019-08-26 12:09
阅读 588·2019-08-26 11:59
阅读 3307·2019-08-26 11:57