分片负载的多轮均衡化验证方案

发布日期:2021年1月18日
分片负载的多轮均衡化验证方案 分片负载的多轮均衡化验证方案

本内容试读结束

下载后可阅读完整内容,立即下载

分片技术是区块链扩容的链上核心解决方案。针对区块链分片随机分配交易机制产生的区块链分片间负载不均衡问题,提出了一种基于节点验证能力评级的区块链分片负载的多轮均衡化验证方案。首先,根据选定的节点评级模型,对节点验证交易的能力进行评级;其次,将分片内的交易验证分为多轮,在每轮验证后,根据各分片未验证交易数对剩余负载进行判断;最后,根据各分片剩余负载,分配验证能力较高的节点到负载较大的分片进行下一轮验证。通过实验验证,本文提出的多轮均衡化验证方案,可以有效提高高负载分片的交易验证率,促进分片间负载的均衡化,优化分片的区块链链上扩容。

区块链作为2009 年出现的比特币[1]底层技术, 涉及数学、密码学、互联网和计算机编程等多个领域。

区块链凭借其去中心化、不可篡改、可以追溯、集体维护、公开透明等特点,从2014 年开始受到全世界的关注。从本质上来看,区块链是一个去中心化的分布式账本系统[2],通过共识机制[3]保证数据的真实性和可靠性:区块链上的数据公开透明并且由所有参与者共同维护。随着创新应用的不断出现,区块链扩容[4] [5]成为核心难题。

目前主要的扩容方案有链上扩容和链下扩容。

链上扩容主要包括隔离见证[6]、分片技术[7] [8]、DAG 技术[9]、增大区块等;链下扩容主要包括侧链、跨链、状态通道等。

分片技术本质上是点对点网络中分割计算能力和存储工作负载的一种分区方式。区块链分片是将网络中的节点划分为若干个相互独立的分片,单个分片只需要处理规模较少的事务,存储部分网络状态。

分片间并行处理事务,从而达到区块链网络吞吐量提升的效果。在分片中,主链和分片内可以采用不同的共识算法。Elastico [10]是第一个基于分片的区块链协议,它的基本思想是将网络中的节点分成多个委员会,每个委员会在各自分片中处理不相交的交易。

节点通过PoW 工作量证明建立身份信息后被随机分配到各个分片中,每个分片内部独立运行BFT 共识算法处理交易。Rapidchain [11]区块链协议主要包含三个阶段,分别是引导启动阶段、共识阶段和重构阶段。Rapidchain 协议首先选出一个参考委员会,由参考委员会的成员随机分配节点构成分片委员会。Rapidchain 中也使用了时代(epoch)的概念,每个时代的共识阶段可以进行多个轮次的交易验证工作,减少了委员会重构的时间。

理论上来看,区块链分片可以有效提高网络的整体性能,但是分片间的交易分配难以预先规划,分片间的负载可能不均衡,于是,某个分片内可能因为交易量过大而出现存在拥堵的现象。目前基于分片的区块链协议,尚未专门讨论分片后可能带来的各个分片间负载不均衡的问题。此外,区块链中参与验证的节点之间,实际存在较大的性能差异。在目前的验证节点分配时,往往忽略了节点间的这一差异, 仅仅按照某一特定的随机分配算法进行分配。这样可能会导致各分片之间验证能力存在较大的差距。如果负载较大分片的验证能力过低、负载较小分片的验证能力过高,分片间验证效率会出现明显的失衡, 严重时,整个区块链网络的交易吞吐量也会因单个分片交易验证拥堵受到影响[12] [13]。

本文针对区块链分片随机分配交易机制产生的难以预知的区块链分片间负载不均衡问题,提出了一



相关标签