研究組近三年專注于區(qū)塊鏈底層關(guān)鍵技術(shù)的研究,旨在提升區(qū)塊鏈系統(tǒng)的運行性能。經(jīng)過三年多的摸索,我們的技術(shù)路線逐漸發(fā)展為:以分片機制為特色,通過設(shè)計新型區(qū)塊鏈底層協(xié)議與機制,讓區(qū)塊鏈運行得更高效、更健壯、更安全。
研究組一篇區(qū)塊鏈分片機制的論文近日被IEEE/ACM Transactions on Networking (ToN/TNet) 接收為長文。IEEE/ACM ToN/TNet 是 CCF-A 類推薦期刊,是計算機網(wǎng)絡(luò)方向三大頂刊(ToN, JSAC, TMC)之一,它要求每一篇能被接收的論文必須具備以下幾個條件:足夠新穎的研究選題,嚴謹?shù)膯栴}描述,有性能邊界保證的算法設(shè)計,對提出的機制有充足的理論分析,以及無可挑剔的實驗結(jié)果。
接下來介紹一下這篇論文。
Huawei Huang, Xiaowen Peng, Yue Lin, Miaoyong Xu, Guang Ye, Zibin Zheng, Song Guo, “Scheduling Most Valuable Committees for the Sharded Blockchain,” IEEE/ACM Transactions on Networking (ToN/TNet), 2023, pp. 1-15, DOI: 10.1109/TNET.2023.3278456.
論文 PDF 鏈接:
近年來,源自傳統(tǒng)數(shù)據(jù)庫領(lǐng)域的分片技術(shù)被應用到區(qū)塊鏈,試圖解決區(qū)塊鏈系統(tǒng)的擴容問題 [1]。在分片區(qū)塊鏈中,交易池中的交易可以由多個并行委員會并行處理。以這種并發(fā)的模式,分片區(qū)塊鏈的交易吞吐量理論上可以被較大程度地提高。但是,分片區(qū)塊鏈仍然面臨一些技術(shù)挑戰(zhàn)。其中,有個系統(tǒng)層面的技術(shù)問題,簡述如下。如圖1所示的 Elastico [2]方案中,當區(qū)塊鏈節(jié)點組成若干委員會之后,在各個委員會的共識階段,天然地存在不同的委員會對交易達成共識的速度不一致的問題。這個問題就是分布式系統(tǒng)與并行計算領(lǐng)域經(jīng)典的 straggler “拖后腿”問題。這是因為不同的區(qū)塊鏈分片委員會的異構(gòu)處理能力導致了不均衡的共識延遲。這種不平衡的延遲給分片區(qū)塊鏈系統(tǒng)的“最終委員會”帶來了很大的累積等待時延。因此,區(qū)塊鏈交易的確認時延會被大大增加,區(qū)塊鏈的吞吐量會被顯著降低。
圖1 Elastico協(xié)議[2]中每輪共識的主要流程,其中 C1-C4為并行工作的分片委員會,C5為“最終委員會”,只有最終委員會產(chǎn)生的區(qū)塊才會上主鏈存儲
本文認為一個好的委員會調(diào)度策略可以減少在“最終委員會”造成的交易累積等待時延,從而有利于區(qū)塊鏈的系統(tǒng)吞吐量。但經(jīng)過調(diào)研發(fā)現(xiàn),目前業(yè)界尚未提出一個針對這個問題的委員會調(diào)度方案。本文首先定義分片區(qū)塊鏈中交易吞吐量與累積時延之間的動態(tài)權(quán)衡問題,然后將這個權(quán)衡問題表述為一個效用最大化問題。為了解決這一問題,我們提出了一種在線分布式隨機探索算法,英文叫做 online distributed Stochastic Exploration (SE) algorithm。該算法可以為分片區(qū)塊鏈在每一輪共識挑選出最有價值的分片委員會優(yōu)先參與最終委員會的共識,旨在讓每一輪共識盡量多地打包交易、并且盡量縮短交易在并行工作分片內(nèi)的等待時延。該算法還可以處理分片委員會的動態(tài)加入和失效事件。本文還對提出的算法收斂時間和委員會失效帶來的性能擾動進行了嚴格的理論分析。實驗環(huán)節(jié),本文使用了真實區(qū)塊鏈歷史交易數(shù)據(jù)集進行模擬仿真。結(jié)果表明,提出的算法可以選擇最有價值的分片委員會參與最終共識,加速區(qū)塊的上鏈。
實驗平臺
本文的實驗工具是實驗室自行開發(fā)的區(qū)塊鏈底層協(xié)議驗證平臺,域名為 BlockEmulator.com 。除了本文之外,blockEmulator 還被其他幾篇論文所采用,例如 BrokerChain [3], tMPT [4], MVCom [5], 以及分片賬戶圖劃分算法 [6]。
我們已經(jīng)將 BlockEmulator 開源給外界使用,敬請關(guān)注!
參考文獻