摘要
现有的许可链系统大多采取串行的事务执行方式,无法利用多核处理器的性能优势。在共识算法性能较高的许可链中,这种串行的事务执行方法将会成为性能瓶颈。为降低排序-执行-验证架构的许可链中事务执行的时间开销,文中提出了两种事务并发模型。首先,提出了基于地址表的并行执行模型,通过静态分析的方法将事务的读写集映射到地址表中,并利用地址表构建调度图实现无数据冲突的事务并行执行;其次,针对静态分析方法不适用于读写需求复杂的应用场景,提出了基于多版本时间戳排序的并行执行模型,领导者节点使用多版本时间戳排序算法并行地预执行事务并将调度图以事务依赖三元组的形式存储入区块,所有验证节点通过事务依赖三元组进行调度,在保证一致性的前提下实现事务的并行执行;最后,在Tendermint中实现了所设计的两种事务并发模型,并进行了事务执行阶段性能测试和多节点性能测试。实验结果表明,相比串行执行,所提模型在单节点8线程时的事务执行时间分别减少了68.6%和28.5%,4节点8线程时区块链吞吐量分别提升了约43.4%和19.5%。
Most existing permissioned blockchain systems adopt serial transaction execution methods,which cannot take advantage of the high performance of multi-core processors.This serial method will be a performance bottleneck in permissioned blockchains with high performance consensus algorithms.To reduce execution time of transactions in permissioned block-chains with order-execute-validate architecture,two transaction concurrency models are proposed.First,an address table-based parallel execution model is proposed that maps the read and write sets of transactions to the address table through static analysis and constructs a scheduling graph using the address table to achieve parallel execution of transactions without data conflicts.Second,a parallel execution model based on a multi-version timestamp ordering algorithm is proposed,in which the leader node uses a multi-version timestamp ordering algorithm to pre-execute transactions in parallel and stores the scheduling graph into the block in the form of transaction dependency triplets.All validation nodes schedule via transaction dependency triplets to achieve parallel execution of transactions under the premise of consistency.Finally,the two parallel transaction execution models designed in this paper are implemented in Tendermint,and a performance experiment during the transaction execution phase and a performance experiment with multiple nodes are conducted.Experimental results show that the above models reduce the transaction execution time by 68.6%and 28.5%with a single node and 8 threads,and increase the blockchain throughput by about 43.4%and 19.5%with 4 peer nodes and 8 threads per node,respectively.
作者
董昊
赵恒泰
王子尧
袁野
张奥千
DONG Hao;ZHAO Hengtai;WANG Ziyao;YUAN Ye;ZHANG Aoqian(School of Computer Science,Beijing Institute of Technology,Beijing 100081,China;School of Computer Science and Engineering,Northeastern University,Shenyang 110169,China)
出处
《计算机科学》
CSCD
北大核心
2024年第1期124-132,共9页
Computer Science
基金
国家重点研发计划(2022YFB2702100)
国防基础科研计划(JCKY2021211B017)。