學術產出-Theses
Article View/Open
Publication Export
-
題名 通過交易速率控制改善 Hyperledger Fabric 區塊鏈
Improving Hyperledger Fabric via Transaction Rate Control作者 紀秉杰
Ji, Bing-Jie貢獻者 郭桐惟
Kuo, Tung-Wei
紀秉杰
Ji, Bing-Jie關鍵詞 Hyperledger Fabric
鎖機制
MVCC Read Conflict
重傳
擁塞控制
Hyperledger Fabric
Lock Mechanism
MVCC Read Conflict
Retransmission
Congestion Control日期 2023 上傳時間 1-Sep-2023 15:23:03 (UTC+8) 摘要 Hyperledger Fabric 是目前最著名的許可區塊鏈之一。 由於其樂觀並發控制 (OCC) 功能,它可以實現交易並行處理。但是,OCC 可能會造成交易由於多版本並行控制讀取衝突 (MVCCRC) 而失敗。為了解決 MVCCRC 問題,提出了以下方法:KS 交易隊列和隨機延遲重傳。這些方法旨在避免將容易發生 MVCCRC 的交易並行處理,從而使 MVCCRC 發生率減少最高達 97%,並將每秒有效交易數增加最高達 11 倍。此外, 還引入了擁塞控制來防止 Hyperledger Fabric 網絡擁塞。
Hyperledger Fabric is currently one of the most prominent permissioned blockchains. It enables concurrent transaction processing due to its Optimistic Concurrency Control (OCC) feature. However, for OCC, transactions can fail due to conflicts arising from Multi-Version Concurrency Control Read conflicts (MVCCRC). To address the issue of MVCCRC, the following methods have been proposed: KS transaction queues and retransmission with random delay. These methods aim to avoid concurrent processing of transactions that are prone to MVCCRC, thereby resulting in a reduction of MVCCRC occurrences by up to 97% and increase in VTPS (Valid Transactions Per Second) by up to 11X. Additionally, congestion control methods have been introduced to prevent network congestion in the Hyperledger Fabric network.參考文獻 Reference[1] Satoshi Nakamoto. Bitcoin: A peer-to-peer electronic cash system. Decentralizedbusiness review, 2008.[2] Vitalik Buterin et al. A next-generation smart contract and decentralized applicationplatform. white paper, 3(37):2–1, 2014.[3] Elli Androulaki, Artem Barger, Vita Bortnikov, Christian Cachin, KonstantinosChristidis, Angelo De Caro, David Enyeart, Christopher Ferris, Gennady Laventman, Yacov Manevich, et al. Hyperledger fabric: a distributed operating systemfor permissioned blockchains. In Proceedings of the thirteenth EuroSys conference,pages 1–15, 2018.[4] Mike Hearn and Richard Gendal Brown. Corda: A distributed ledger. Corda Technical White Paper, 2016, 2016.[5] JP Morgan. Quorum whitepaper. New York: JP Morgan Chase, 2016.[6] Hsiang-Tsung Kung and John T Robinson. On optimistic methods for concurrencycontrol. ACM Transactions on Database Systems (TODS), 6(2):213–226, 1981.[7] Philip A Bernstein and Nathan Goodman. Concurrency control in distributeddatabase systems. ACM Computing Surveys (CSUR), 13(2):185–221, 1981.[8] Ankur Sharma, Felix Martin Schuhknecht, Divya Agrawal, and Jens Dittrich. Blurring the lines between blockchains and database systems: the case of hyperledgerfabric. In Proceedings of the 2019 International Conference on Management ofData, pages 105–122, 2019.[9] Pingcheng Ruan, Dumitrel Loghin, Quang-Trung Ta, Meihui Zhang, Gang Chen, andBeng Chin Ooi. A transactional perspective on execute-order-validate blockchains.In Proceedings of the 2020 ACM SIGMOD International Conference on Management of Data, pages 543–557, 2020.[10] Leonard Kleinrock and Fouad Tobagi. Packet switching in radio channels: Part icarrier sense multiple-access modes and their throughput-delay characteristics. IEEEtransactions on Communications, 23(12):1400–1416, 1975.[11] Sally Floyd. Rfc2914: Congestion control principles, 2000.[12] Vern Paxson, Mark Allman, and W Stevens. Tcp congestion control. 1999.[13] Smallbank. https://hstore.cs.brown.edu/documentation/deployment/benchmarks/smallbank/, 2012.[14] Michael J Cahill, Uwe Röhm, and Alan D Fekete. Serializable isolation for snapshotdatabases. ACM Transactions on Database Systems (TODS), 34(4):1–42, 2009.[15] Fabric-sdk. https://hyperledger.github.io/fabric-sdk-node/, 2019.[16] Qiucheng Sun and Yuyu Yuan. Gbcl: Reduce concurrency conflicts in hyperledgerfabric. In 2022 IEEE 13th International Conference on Software Engineering andService Science (ICSESS), pages 15–19. IEEE, 2022.[17] Lu Xu, Wei Chen, Zhixu Li, Jiajie Xu, An Liu, and Lei Zhao. Solutions for concurrency conflict problem on hyperledger fabric. World Wide Web, 24:463–482, 2021.[18] Zhigang Xu, Duoyue Liao, Xinhua Dong, Hongmu Han, Zhongzhen Yan, andKangze Ye. Lmqf: Hyperledger fabric concurrent transaction conflict solution basedon distributed lock and message queue. In 2023 26th International Conferenceon Computer Supported Cooperative Work in Design (CSCWD), pages 1855–1860.IEEE, 2023.[19] Lucas Kuhring, Zsolt István, Alessandro Sorniotti, and Marko Vukolić. Streamchain:Building a low-latency permissioned blockchain for enterprise use-cases. In 2021IEEE International Conference on Blockchain (Blockchain), pages 130–139. IEEE,2021.[20] Jeeta Ann Chacko, Ruben Mayer, and Hans-Arno Jacobsen. Why do my blockchaintransactions fail? a study of hyperledger fabric. In Proceedings of the 2021 international conference on management of data, pages 221–234, 2021.[21] Christian Gorenflo, Lukasz Golab, and Srinivasan Keshav. Xox fabric: A hybrid approach to blockchain transaction execution. In 2020 IEEE International Conferenceon Blockchain and Cryptocurrency (ICBC), pages 1–9. IEEE, 2020.[22] Jeeta Ann Chacko, Ruben Mayer, and Hans-Arno Jacobsen. How to optimize myblockchain? a multi-level recommendation approach. volume 1, pages 1–27. ACMNew York, NY, USA, 2023. 描述 碩士
國立政治大學
資訊科學系
109753128資料來源 http://thesis.lib.nccu.edu.tw/record/#G0109753128 資料類型 thesis dc.contributor.advisor 郭桐惟 zh_TW dc.contributor.advisor Kuo, Tung-Wei en_US dc.contributor.author (Authors) 紀秉杰 zh_TW dc.contributor.author (Authors) Ji, Bing-Jie en_US dc.creator (作者) 紀秉杰 zh_TW dc.creator (作者) Ji, Bing-Jie en_US dc.date (日期) 2023 en_US dc.date.accessioned 1-Sep-2023 15:23:03 (UTC+8) - dc.date.available 1-Sep-2023 15:23:03 (UTC+8) - dc.date.issued (上傳時間) 1-Sep-2023 15:23:03 (UTC+8) - dc.identifier (Other Identifiers) G0109753128 en_US dc.identifier.uri (URI) http://nccur.lib.nccu.edu.tw/handle/140.119/147026 - dc.description (描述) 碩士 zh_TW dc.description (描述) 國立政治大學 zh_TW dc.description (描述) 資訊科學系 zh_TW dc.description (描述) 109753128 zh_TW dc.description.abstract (摘要) Hyperledger Fabric 是目前最著名的許可區塊鏈之一。 由於其樂觀並發控制 (OCC) 功能,它可以實現交易並行處理。但是,OCC 可能會造成交易由於多版本並行控制讀取衝突 (MVCCRC) 而失敗。為了解決 MVCCRC 問題,提出了以下方法:KS 交易隊列和隨機延遲重傳。這些方法旨在避免將容易發生 MVCCRC 的交易並行處理,從而使 MVCCRC 發生率減少最高達 97%,並將每秒有效交易數增加最高達 11 倍。此外, 還引入了擁塞控制來防止 Hyperledger Fabric 網絡擁塞。 zh_TW dc.description.abstract (摘要) Hyperledger Fabric is currently one of the most prominent permissioned blockchains. It enables concurrent transaction processing due to its Optimistic Concurrency Control (OCC) feature. However, for OCC, transactions can fail due to conflicts arising from Multi-Version Concurrency Control Read conflicts (MVCCRC). To address the issue of MVCCRC, the following methods have been proposed: KS transaction queues and retransmission with random delay. These methods aim to avoid concurrent processing of transactions that are prone to MVCCRC, thereby resulting in a reduction of MVCCRC occurrences by up to 97% and increase in VTPS (Valid Transactions Per Second) by up to 11X. Additionally, congestion control methods have been introduced to prevent network congestion in the Hyperledger Fabric network. en_US dc.description.tableofcontents Contents誌謝 i摘要 iiAbstract iiiContents ivList of Tables viList of Figures vii1 Introduction 12 Background 42.1 Structure of Hyperledger Fabric 42.2 Transaction Flow 52.2.1 The First Phase: Simulate Transactions 52.2.2 The Second Phase: Order Transactions 62.2.3 The Third Phase: Validate Transactions 72.2.4 The Fourth Phase: Commit Transactions 72.3 Multi-version Concurrency Control Read Conflict (MVCCRC) 73 Transaction Rate Control Mechanism 93.1 MVCCRC Avoidance 93.1.1 Key-Specific (KS) Transaction Queue 103.1.2 Retransmission with Random Delay 133.2 Congestion Control 144 Design and Implementation 164.1 Transaction Queue and Dispatcher 164.2 Retransmit with Random Delay 194.3 Congestion Control 205 Evaluation 225.1 Experimental Setup 225.1.1 Cluster Setup 225.1.2 Chaincode Functions 235.1.3 Fabric’s Settings . 255.1.4 Retransmission Policy 255.1.5 Comparison Method 265.2 Experimental Results 275.2.1 Balanced Transaction Workload 275.2.2 Read-heavy Transaction Workload 305.2.3 Write-heavy Transaction Workload 335.2.4 Additional Experiments 365.2.5 Summary 396 Related Work 417 Conclusions 43Reference 44 zh_TW dc.format.extent 617957 bytes - dc.format.mimetype application/pdf - dc.source.uri (資料來源) http://thesis.lib.nccu.edu.tw/record/#G0109753128 en_US dc.subject (關鍵詞) Hyperledger Fabric zh_TW dc.subject (關鍵詞) 鎖機制 zh_TW dc.subject (關鍵詞) MVCC Read Conflict zh_TW dc.subject (關鍵詞) 重傳 zh_TW dc.subject (關鍵詞) 擁塞控制 zh_TW dc.subject (關鍵詞) Hyperledger Fabric en_US dc.subject (關鍵詞) Lock Mechanism en_US dc.subject (關鍵詞) MVCC Read Conflict en_US dc.subject (關鍵詞) Retransmission en_US dc.subject (關鍵詞) Congestion Control en_US dc.title (題名) 通過交易速率控制改善 Hyperledger Fabric 區塊鏈 zh_TW dc.title (題名) Improving Hyperledger Fabric via Transaction Rate Control en_US dc.type (資料類型) thesis en_US dc.relation.reference (參考文獻) Reference[1] Satoshi Nakamoto. Bitcoin: A peer-to-peer electronic cash system. Decentralizedbusiness review, 2008.[2] Vitalik Buterin et al. A next-generation smart contract and decentralized applicationplatform. white paper, 3(37):2–1, 2014.[3] Elli Androulaki, Artem Barger, Vita Bortnikov, Christian Cachin, KonstantinosChristidis, Angelo De Caro, David Enyeart, Christopher Ferris, Gennady Laventman, Yacov Manevich, et al. Hyperledger fabric: a distributed operating systemfor permissioned blockchains. In Proceedings of the thirteenth EuroSys conference,pages 1–15, 2018.[4] Mike Hearn and Richard Gendal Brown. Corda: A distributed ledger. Corda Technical White Paper, 2016, 2016.[5] JP Morgan. Quorum whitepaper. New York: JP Morgan Chase, 2016.[6] Hsiang-Tsung Kung and John T Robinson. On optimistic methods for concurrencycontrol. ACM Transactions on Database Systems (TODS), 6(2):213–226, 1981.[7] Philip A Bernstein and Nathan Goodman. Concurrency control in distributeddatabase systems. ACM Computing Surveys (CSUR), 13(2):185–221, 1981.[8] Ankur Sharma, Felix Martin Schuhknecht, Divya Agrawal, and Jens Dittrich. Blurring the lines between blockchains and database systems: the case of hyperledgerfabric. In Proceedings of the 2019 International Conference on Management ofData, pages 105–122, 2019.[9] Pingcheng Ruan, Dumitrel Loghin, Quang-Trung Ta, Meihui Zhang, Gang Chen, andBeng Chin Ooi. A transactional perspective on execute-order-validate blockchains.In Proceedings of the 2020 ACM SIGMOD International Conference on Management of Data, pages 543–557, 2020.[10] Leonard Kleinrock and Fouad Tobagi. Packet switching in radio channels: Part icarrier sense multiple-access modes and their throughput-delay characteristics. IEEEtransactions on Communications, 23(12):1400–1416, 1975.[11] Sally Floyd. Rfc2914: Congestion control principles, 2000.[12] Vern Paxson, Mark Allman, and W Stevens. Tcp congestion control. 1999.[13] Smallbank. https://hstore.cs.brown.edu/documentation/deployment/benchmarks/smallbank/, 2012.[14] Michael J Cahill, Uwe Röhm, and Alan D Fekete. Serializable isolation for snapshotdatabases. ACM Transactions on Database Systems (TODS), 34(4):1–42, 2009.[15] Fabric-sdk. https://hyperledger.github.io/fabric-sdk-node/, 2019.[16] Qiucheng Sun and Yuyu Yuan. Gbcl: Reduce concurrency conflicts in hyperledgerfabric. In 2022 IEEE 13th International Conference on Software Engineering andService Science (ICSESS), pages 15–19. IEEE, 2022.[17] Lu Xu, Wei Chen, Zhixu Li, Jiajie Xu, An Liu, and Lei Zhao. Solutions for concurrency conflict problem on hyperledger fabric. World Wide Web, 24:463–482, 2021.[18] Zhigang Xu, Duoyue Liao, Xinhua Dong, Hongmu Han, Zhongzhen Yan, andKangze Ye. Lmqf: Hyperledger fabric concurrent transaction conflict solution basedon distributed lock and message queue. In 2023 26th International Conferenceon Computer Supported Cooperative Work in Design (CSCWD), pages 1855–1860.IEEE, 2023.[19] Lucas Kuhring, Zsolt István, Alessandro Sorniotti, and Marko Vukolić. Streamchain:Building a low-latency permissioned blockchain for enterprise use-cases. In 2021IEEE International Conference on Blockchain (Blockchain), pages 130–139. IEEE,2021.[20] Jeeta Ann Chacko, Ruben Mayer, and Hans-Arno Jacobsen. Why do my blockchaintransactions fail? a study of hyperledger fabric. In Proceedings of the 2021 international conference on management of data, pages 221–234, 2021.[21] Christian Gorenflo, Lukasz Golab, and Srinivasan Keshav. Xox fabric: A hybrid approach to blockchain transaction execution. In 2020 IEEE International Conferenceon Blockchain and Cryptocurrency (ICBC), pages 1–9. IEEE, 2020.[22] Jeeta Ann Chacko, Ruben Mayer, and Hans-Arno Jacobsen. How to optimize myblockchain? a multi-level recommendation approach. volume 1, pages 1–27. ACMNew York, NY, USA, 2023. zh_TW