Citation: | Wu Haibo, Liu Hui, Sun Yi, Li Jun. A Concurrent Conflict Transaction Optimization Method for Consortium Blockchain Hyperledger Fabric[J]. Journal of Computer Research and Development, 2024, 61(8): 2110-2126. DOI: 10.7544/issn1000-1239.202220644 |
With the prevalence of blockchain technology, Hyperledger Fabric (Fabric for short), as a well-known open source blockchain platform, has received wide attention. However, Fabric still suffers from conflicts between concurrent transactions. Conflicts will cause a large number of invalid transactions entering the chain, resulting in a decrease in throughput and hindering its development. For this problem, existing intra-block-conflict-oriented schemes lack efficient conflict detection and avoidance methods, and ignore the adverse impact of inter-block conflicts on throughput. We propose an optimization scheme for Fabric, Fabric-HT (Fabric with high throughput), from both intra-block and inter-block aspects to effectively reduce concurrency inter-transaction conflicts and improve system throughput. For intra-block transaction conflicts, we present a transaction scheduling mechanism, in which an efficient data structure (the dependency chain) is defined to identify and abort transactions with “dangerous structures” in advance, reasonably schedule transactions and eliminate conflicts; for inter-block transaction conflicts, the conflict transaction detection is moved to the sorting node to complete, and an early conflict transaction avoidance mechanism following “push-match” pattern is established. A large number of experiments are carried out in multiple scenarios, and the results show that Fabric-HT overperforms existing schemes in terms of throughput, transaction abort rate, average transaction execution time, and invalid transaction space occupancy. The results show that the throughput of Fabric-HT can reach up to 9.51x that of Fabric and 1.18x of the latest optimized scheme FabricSharp; compared with FabricSharp, the space utilization is increased by 14%. In addition, Fabric-HT also shows good robustness and anti-attack ability in solving concurrent transaction conflict.
[1] |
蔡晓晴,邓尧,张亮,等. 区块链原理及其核心技术[J]. 计算机学报,2021,44(1):84−131
Cai Xiaoqing, Deng Yao, Zhang Liang, et al. The principle and core technology of blockchain[J]. Chinese Journal of Computers, 2021, 44(1): 84−131 (in Chinese)
|
[2] |
Urquhart A. The inefficiency of bitcoin[J]. Economics Letters, 2016, 148: 80−82 doi: 10.1016/j.econlet.2016.09.019
|
[3] |
Wood G. Ethereum: A secure decentralised generalised transaction ledger[J/OL]. 2014[2023-09-09]. http://explore-ip.com/2017_Comparison-of-Ethereum-Hyperledger-Corda.pdf
|
[4] |
The Linux Foundation. Hyperledger Fabric[EB/OL]. 2018[2023-09-09].https://github.com/hyperledger/Fabric
|
[5] |
Cachin C. Architecture of the hyperledger blockchain Fabric[C/OL]//Proc of Workshop on Distributed Cryptocurrencies and Consensus Ledgers (DCCL). 2016[2023-09-09].https://www.zurich.ibm.com/dccl/
|
[6] |
Androulaki E, Barger A, Bortnikov V, et al. Hyperledger Fabric: A distributed operating system for permissioned blockchains[C/OL]//Proc of the 13th EuroSys Conf (EuroSys). New York: ACM, 2018[2023-09-09].https://dl.acm.org/doi/10.1145/3190508.3190538
|
[7] |
Brandenburger M, Cachin C, Kapitza R, et al. Blockchain and trusted computing: Problems, pitfalls, and a solution for hyperledger fabric[J]. arXiv preprint, arXiv: 1805.08541, 2018
|
[8] |
Jiang Lili, Chang Xiaolin, Liu Yuhang, et al. Performance analysis of Hyperledger Fabric platform: A hierarchical model approach[J]. Peer-to-Peer Networking and Applications, 2020, 13(3): 1014−1025 doi: 10.1007/s12083-019-00850-z
|
[9] |
Valenta M, Sandner P. Comparison of Ethereum, Hyperledger Fabric and Corda[EB/OL]. Frankfurt School Blockchain Center, 2017[2023-09-09]. http://explore-ip.com/2017_Comparison-of-Ethereum-Hyperledger-Corda.pdf
|
[10] |
Nasir Q, Qasse I A, Talib M A, et al. Performance analysis of hyperledger fabric platforms[J]. Security and Communication Networks, 2018, 2018: 1−14
|
[11] |
Xu Xiaoqiong, Sun Gang, Luo Long, et al. Latency performance modeling and analysis for Hyperledger Fabric blockchain network[J]. Information Processing & Management, 2021, 58(1): 102436−102437
|
[12] |
Nasirifard P, Mayer R, Jacobsen H A. FabricCRDT: A conflict-free replicated datatypes approach to permissioned blockchains[C]//Proc of the 20th Int Middleware Conf (Middleware). New York: ACM, 2019: 110−122
|
[13] |
Sharma A, Schuhknecht F M, Agrawal D, et al. Blurring the lines between blockchains and database systems: The case of Hyperledger Fabric[C]//Proc of the 37th Int Conf on Management of Data (SIGMOD). New York: ACM, 2019: 105−122
|
[14] |
夏清,窦文生,郭凯文,等. 区块链共识协议综述[J]. 软件学报,2021,32(2):277−299
Xia Qing, Dou Wensheng, Guo Kaiwen, et al. Survey on blockchain consensus protocol[J]. Journal of Software, 2021, 32(2): 277−299 (in Chinese)
|
[15] |
Lomet D, Fekete A, Wang Rui, et al. Multi-version concurrency via timestamp range conflict management[C]//Proc of the 28th Int Conf on Data Engineering (ICDE). Piscataway, NJ: IEEE, 2012: 714−725
|
[16] |
Thakkar P, Nathan S, Viswanathan B. Performance benchmarking and optimizing Hyperledger Fabric blockchain platform[C]//Proc of the 26th Int Symp on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS). Piscataway, NJ: IEEE, 2018: 264−276
|
[17] |
Gorenflo C, Lee S, Golab L, et al. FastFabric: Scaling Hyperledger Fabric to 20000 transactions per second[J]. International Journal of Network Management, 2020, 30(5): 2099−2100 doi: 10.1002/nem.2099
|
[18] |
Ruan P, Loghin D, Ta Q T, et al. A transactional perspective on execute-order-validate blockchains[C]//Proc of the 38th ACM Int Conf on Management of Data (SIGMOD). New York: ACM, 2020: 543−557
|
[19] |
Xu Lu, Chen Wei, Li Zhixu, et al. Solutions for concurrency conflict problem on Hyperledger Fabric[J]. World Wide Web, 2021, 24(1): 463−482 doi: 10.1007/s11280-020-00851-6
|
[20] |
Sousa J, Bessani A, Vukolic M. A Byzantine fault-tolerant ordering service for the Hyperledger Fabric blockchain platform[C]//Proc of the 48th Annual IEEE/IFIP Int Conf on Dependable Systems and Networks (DSN). Piscataway, NJ: IEEE, 2018: 51−58
|
[21] |
Nakaike T, Zhang Qi, Ueda Y, et al. Hyperledger Fabric performance characterization and optimization using goLevelDB benchmark[C/OL]// Proc of the 2nd Int Conf on Blockchain and Cryptocurrency (ICBC). Piscataway, NJ: IEEE, 2020[2023-09-09].https://ieeexplore.ieee.org/document/9169454
|
[22] |
Raman R K, Vaculin R, Hind M, et al. Trusted multi-party computation and verifiable simulations: A scalable blockchain approach[J]. arXiv preprint , arXiv: 1809.08438, 2018
|
[23] |
Dinh T T A, Wang Ji, Chen Gang, et al. BlockBench: A framework for analyzing private blockchains[C]//Proc of the 43rd ACM Int Conf on Management of Data (SIGMOD). New York: ACM, 2017: 1085−1100
|
[24] |
Meir H, Barger A, Manevich Y, et al. Lockless transaction isolation in hyperledger fabric[C]//Proc of the 2nd Int Conf on Blockchain (Blockchain). Piscataway, NJ: IEEE, 2019: 59−66
|
[25] |
Zhang Shenbin, Zhou Ence, Pi Bingfeng, et al. A solution for the risk of non-deterministic transactions in Hyperledger Fabric[C]//Proc of the 1st Int Conf on Blockchain and Cryptocurrency (ICBC). Piscataway, NJ: IEEE, 2019: 253−261
|
[26] |
Reed D P. Naming and synchronization in a decentralized computer system[D]. Cambrideg, Massachusetts: MIT Press, 1978
|
[27] |
Jin Cheqing, Pang Shuaifeng, Qi Xiaodong, et al. A high performance concurrency protocol for smart contracts of permissioned blockchain[J]. IEEE Transactions on Knowledge and Data Engineering, 2021, 34(11): 5070−5083
|
[28] |
Nguyen T S L, Jourjon G, Potop-Butucaru M, et al. Impact of network delays on Hyperledger Fabric[C]//Proc of the 38th Conf on Computer Communications Workshops (INFOCOM WKSHPS). Piscataway, NJ: IEEE, 2019: 222−227
|
[29] |
Schaefer C, Edman C. Transparent logging with Hyperledger Fabric[C]// Proc of the 1st Int Conf on Blockchain and Cryptocurrency (ICBC). Piscataway, NJ: IEEE, 2019: 65−69
|
[30] |
Dinh T T A, Liu Rui, Zhang Meihui, et al. Untangling blockchain: A data processing view of blockchain systems[J]. IEEE Transactions on Knowledge and Data Engineering, 2018, 30(7): 1366−1385 doi: 10.1109/TKDE.2017.2781227
|
[31] |
Wang Rui, Ye Kejiang, Meng Tianhui, et al. Performance evaluation on blockchain systems: A case study on Ethereum, Fabric, Sawtooth and Fisco-bcos[C]// Proc of the 17th Int Conf on Services Computing. Berlin: Springer, 2020: 120−134
|
[32] |
张志威,王国仁,徐建良,等. 区块链的数据管理技术综述[J]. 软件学报,2020,31(9):2903−2925
Zhang Zhiwei, Wang Guoren, Xu Jianliang, et al. Survey on data management in blockchain systems[J]. Journal of Software, 2020, 31(9): 2903−2925 (in Chinese)
|
[33] |
刘汉卿,阮娜. 区块链中攻击方式的研究[J]. 计算机学报,2021,44(4):786−805
Liu Hanqing, Ruan Na. A survey on attacking strategies in blockchain[J]. Chinese Journal of Computers, 2021, 44(4): 786−805 (in Chinese)
|
[34] |
Zhong Botao, Wu Haitao, Ding Lieyun, et al. Hyperledger Fabric-based consortium blockchain for construction quality information management[J]. Frontiers of Engineering Management, 2020, 7(4): 512−52 doi: 10.1007/s42524-020-0128-y
|
[35] |
Tarjan R. Depth-first search and linear graph algorithms[J]. SIAM Journal on Computing, 1972, 1(2): 146−160 doi: 10.1137/0201010
|
[36] |
Kahn A B. Topological sorting of large networks[J]. Communications of the ACM, 1962, 5(11): 558−562 doi: 10.1145/368996.369025
|
[37] |
Sharma A, Schuhknecht F M, Agrawal D, et al. How to databasify a blockchain: The case of Hyperledger Fabric[J]. arXiv preprint, arXiv: 1810.13177, 2018
|
[1] | Sun Yong, Tan Wenan. Cross-Organizational Workflow Task Allocation Algorithms for Socially Aware Collaborative Computing[J]. Journal of Computer Research and Development, 2017, 54(9): 1865-1879. DOI: 10.7544/issn1000-1239.2017.20160513 |
[2] | Zhao Chuanjun, Wang Suge, Li Deyu, Li Xin. Cross-Domain Text Sentiment Classification Based on Grouping-AdaBoost Ensemble[J]. Journal of Computer Research and Development, 2015, 52(3): 629-638. DOI: 10.7544/issn1000-1239.2015.20140156 |
[3] | Zhang Qikun, Wang Ruifang, Tan Yu'an. Identity-Based Authenticated Asymmetric Group Key Agreement[J]. Journal of Computer Research and Development, 2014, 51(8): 1727-1738. DOI: 10.7544/issn1000-1239.2014.20121165 |
[4] | Li Zhetao, Wang Zhiqiang, Zhu Gengming, Li Renfa. A Data Gathering MAC Protocol Based on State Translation and Grouping for WSN[J]. Journal of Computer Research and Development, 2014, 51(6): 1167-1175. |
[5] | Zhang Jianpei, Xie Jing, Yang Jing, and Zhang Bing. A t-closeness Privacy Model Based on Sensitive Attribute Values Semantics Bucketization[J]. Journal of Computer Research and Development, 2014, 51(1): 126-137. |
[6] | Zhang Wei, Zeng Liang, Zhang Hui, Li Sikun. Collaboration in Digital Games: An Approach to the Description Logic of Tasks[J]. Journal of Computer Research and Development, 2012, 49(7): 1507-1513. |
[7] | Li Shaofang, Hu Shanli, Shi Chunyi. An Anytime Coalition Structure Generation Based on the Grouping Idea of Cardinality Structure[J]. Journal of Computer Research and Development, 2011, 48(11): 2047-2054. |
[8] | Jiang Jianjin, Yang Guangwen. Replication Strategies in Data Grid Systems with Clustered Demands[J]. Journal of Computer Research and Development, 2009, 46(2): 186-193. |
[9] | Xu Lei, Xiao Baihua, Dai Ruwei, and Wang Chunheng. A Fast Classification Strategy for Large Class Sets[J]. Journal of Computer Research and Development, 2008, 45(4): 588-595. |
[10] | Wang Wentao, Wu Junmin, Xu Yinlong, Li Huanghai, and Bao Chunjian. A Hierarchical Group Communication Protocol for Scalable Total Ordering[J]. Journal of Computer Research and Development, 2006, 43(10): 1775-1781. |