溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

區(qū)塊鏈的可擴(kuò)展性問題及解決方案對比是怎樣的

發(fā)布時間:2021-12-06 11:48:04 來源:億速云 閱讀:149 作者:柒染 欄目:云計算

區(qū)塊鏈的可擴(kuò)展性問題及解決方案對比是怎樣的,相信很多沒有經(jīng)驗(yàn)的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

區(qū)塊鏈的性能問題

VISA是目前世界上廣泛使用的信用卡品牌,區(qū)塊鏈要達(dá)到實(shí)用水平,性能上至少需要能跟VISA之類的支付系統(tǒng)作比較。根據(jù)VISA在2015年的記錄,全年共產(chǎn)生92,064百萬筆支付交易,平均2920tps,按平均每筆交易512字節(jié)左右計算,全年交易數(shù)據(jù)量約47TB。

而目前主流區(qū)塊鏈性能情況是,比特幣每秒只能進(jìn)行大約7筆交易;以太坊每秒10-20筆。目前這些區(qū)塊鏈的交易性能都無法與VISA相比。更嚴(yán)重的是,目前比特幣和以太坊的礦機(jī)都需要存儲全量數(shù)據(jù),而單個機(jī)器的存儲容量是有限的,若無法解決這個問題,即使交易性能提升了,若按每年新增數(shù)據(jù)量47 TB算,那么這些數(shù)據(jù)很快就會超過單機(jī)的容量,到時候整個區(qū)塊鏈網(wǎng)絡(luò)都無法繼續(xù)運(yùn)行。

那么,比特幣和以太坊這種擁有海量節(jié)點(diǎn)的區(qū)塊鏈系統(tǒng),為什么性能卻這么低呢?為什么區(qū)塊鏈的可擴(kuò)展性這么差呢?

原因分析

區(qū)塊鏈?zhǔn)侨ブ行幕馁~本技術(shù),需要保證開放性、自治性、不可篡改等特性。去中心化是指使用分布式核算和存儲,不存在中心化的硬件或管理機(jī)構(gòu),任意節(jié)點(diǎn)的權(quán)利和義務(wù)都是均等的,系統(tǒng)中的數(shù)據(jù)塊由整個系統(tǒng)中具有維護(hù)功能的節(jié)點(diǎn)來共同維護(hù)。也就是說,系統(tǒng)中任意節(jié)點(diǎn)都需要對交易數(shù)據(jù)進(jìn)行全量計算和存儲。因此,區(qū)塊鏈?zhǔn)菦]有可擴(kuò)展性的,即系統(tǒng)的總體性能受限于單個節(jié)點(diǎn)的性能上限,即使加入了大量節(jié)點(diǎn),系統(tǒng)的總體性能也無法提升。

可擴(kuò)展性是傳統(tǒng)分布式系統(tǒng)的基本特性,但區(qū)塊鏈由于去中心化的要求,可擴(kuò)展性卻難以滿足。業(yè)界總結(jié)了一個三元悖論描述去中心化與可擴(kuò)展性之間的矛盾,它尚未被嚴(yán)格證明,只能被稱為猜想,但實(shí)際系統(tǒng)設(shè)計過程中卻能感覺到時時受其挑戰(zhàn):

去中心化(Decentralization),安全性(Security)和可擴(kuò)展性(Scalability)這三個屬性,區(qū)塊鏈系統(tǒng)無法同時滿足,最多只能三選其二。
區(qū)塊鏈的可擴(kuò)展性問題及解決方案對比是怎樣的

上圖演示了區(qū)塊鏈如何在這三個因素之間作選擇及對應(yīng)的策略,例如若若要滿足安全性與去中心化,則需要所有節(jié)點(diǎn)參與共識、計算、全量存儲,但由此帶來的問題是失去可擴(kuò)展性,也就是系統(tǒng)的總體性能無法隨著節(jié)點(diǎn)的增多而提升;若要滿足可擴(kuò)展性與安全性,則需要中心化管理,需要保證參與共識的節(jié)點(diǎn)是可信的;若要滿足可擴(kuò)展性與去中心化,則采用分散存儲、計算的策略,不做全量共識,則***網(wǎng)絡(luò)的難度降低,安全性難以保證。

提升區(qū)塊鏈系統(tǒng)性能的方案

我們知道,影響區(qū)塊鏈交易性能的主要因素包括共識機(jī)制、交易驗(yàn)證、廣播通信、信息加解密等幾個環(huán)節(jié)。從這些環(huán)節(jié)入手,我們可以得到一些提升性能的方法。

共識機(jī)制

從PoW到PoS再到DPoS和各種BFT類算法,共識機(jī)制不斷創(chuàng)新,區(qū)塊鏈平臺性能也得到大幅提升。

交易驗(yàn)證

從交易驗(yàn)證機(jī)制角度出發(fā),目前有幾種優(yōu)化處理方式:

1)閃電網(wǎng)絡(luò)(Lightning Network)和狀態(tài)通道(State Channels),這兩種策略是保持底層的區(qū)塊鏈協(xié)議不變,將交易放到鏈下執(zhí)行,通過改變協(xié)議用法的方式來解決擴(kuò)展性問題。鏈下的部分可以用傳統(tǒng)的中心化的分布式系統(tǒng)實(shí)現(xiàn),性能具有可擴(kuò)展性。在這種策略下,分布式賬本上只是記錄粗粒度的賬本,而真正細(xì)粒度的雙邊或有限多邊交易明細(xì),則不作為交易記錄在分布式賬本上。缺點(diǎn)是存在中心化的系統(tǒng)。

2)分片處理(sharding),以太坊項(xiàng)目正在研發(fā)中的分片(shard)方案的總體思路是每個節(jié)點(diǎn)只處理一部分交易,比如一部分賬戶發(fā)起的交易,從而減輕節(jié)點(diǎn)的計算和存儲負(fù)擔(dān)。

3)多鏈架構(gòu)(Multi-chain)的思路則是將原本的一條鏈分成多條鏈,每條鏈都負(fù)責(zé)部分計算和存儲業(yè)務(wù),并且有可擴(kuò)展性,即鏈的數(shù)量可以隨著業(yè)務(wù)量和數(shù)據(jù)的增加而增加,系統(tǒng)的總體性能隨著鏈的數(shù)量的增加而提升,系統(tǒng)的存儲空間也能隨著鏈的數(shù)量的增加而擴(kuò)大。

廣播通信

P2P網(wǎng)絡(luò)是區(qū)塊鏈的核心技術(shù)之一,因此P2P網(wǎng)絡(luò)通信的效率對性能的影響非常重要。為了能改善廣播通信性能,需要提高節(jié)點(diǎn)機(jī)器的物理配置,提供高速網(wǎng)絡(luò)連接,并采用減少廣播的共識算法,如DPoS等。

信息的加解密

信息的加解密是區(qū)塊鏈的關(guān)鍵環(huán)節(jié),主要是哈希函數(shù)和非對稱加密兩類算法。區(qū)塊鏈系統(tǒng)中可以采用更高性能的加密算法以提升交易驗(yàn)證的性能。

方案對比

上述優(yōu)化方法中,共識機(jī)制、廣播通信、信息加解密是算法層面的優(yōu)化,盡管這些方案也是重要的優(yōu)化,但其沒有解決根本性的問題,其性能提升仍然受限于單機(jī)性能,不是可擴(kuò)展的,因此性能提升有限,本文不再詳述;交易驗(yàn)證的幾個優(yōu)化方案則是可擴(kuò)展的方案,其中閃電網(wǎng)絡(luò)和狀態(tài)通道是鏈下執(zhí)行的方案,采用中心化的系統(tǒng)提升區(qū)塊鏈性能,與區(qū)塊鏈去中心化的理念相悖,而且使用復(fù)雜、用戶體驗(yàn)差(例如閃電網(wǎng)絡(luò)要求交易中的雙方以及中間人都必須同時在線、線下系統(tǒng)開發(fā)復(fù)雜因?yàn)橐獙ふ铱捎玫闹Ц锻ǖ?、不適用于大額交易等),無法得到廣泛使用。因此EOS、以太坊、Cosmos及迅雷鏈等高性能區(qū)塊鏈項(xiàng)目均采用分片或多鏈方案。

分片或多鏈方案的思路是一樣的,都是讓每個分片或分鏈進(jìn)行部分交易數(shù)據(jù)的處理和存儲,每個分片和分鏈可以并行處理不同的交易數(shù)據(jù),這樣分片或分鏈的數(shù)量越多,系統(tǒng)的總體性能就越高,這兩者都是可擴(kuò)展性很強(qiáng)的方案。

1、EOS的多鏈實(shí)現(xiàn)方案

EOS的技術(shù)白皮書中并沒有描述多鏈的實(shí)現(xiàn)方案,只描述了支持跨鏈通信的IBC(Inter Blockchain Communication)協(xié)議,跨鏈交互通過簡化生成消息存在的證明和消息序列的證明來實(shí)現(xiàn)。EOSIO聲稱主鏈可以支持3000以上的TPS,通過IBC可達(dá)到100萬TPS。

EOS的多鏈架構(gòu)其實(shí)是側(cè)鏈方案。開發(fā)者可以單獨(dú)部署一條EOS側(cè)鏈(公鏈、私鏈都可以),運(yùn)行自己的Dapp,這些側(cè)鏈有可以有自己的委員會,見證人以及計算資源,有自己的代幣,這些代幣有自己的增發(fā)方式,而且代幣可以和EOS通過接口進(jìn)行錨定去實(shí)現(xiàn)包括鎖定在內(nèi)的某種操作。側(cè)鏈最大的特征雙向錨定(two-way-peg)技術(shù),它使得在側(cè)鏈流通的Token價格總是與EOS價格保持一定比例或者直接采用EOS。

因此EOS的多鏈架構(gòu)并不是對主鏈本身進(jìn)行可擴(kuò)展性改造,只是期望通過子鏈來分擔(dān)主鏈的壓力。

2、以太坊的分片技術(shù)(Sharding)

分片(Sharding)是以太坊正在開發(fā)中的技術(shù),其大致設(shè)計思路是:將區(qū)塊鏈網(wǎng)絡(luò)中的每個區(qū)塊變?yōu)橐粋€子區(qū)塊鏈,子區(qū)塊鏈中可以容納若干(目前為100個)打包了交易數(shù)據(jù)的Collation(大概可以稱為“校驗(yàn)塊”,為了在分片的情景中將其與區(qū)塊的概念區(qū)分開),這些Collation最終組成一個在主鏈上區(qū)塊;因?yàn)檫@些Collation是整體作為區(qū)塊存在的,所以其數(shù)據(jù)必定是全部由某個特定的礦工所打包生成,本質(zhì)上和現(xiàn)有協(xié)議中的區(qū)塊沒有區(qū)別,所以不再需要增加額外的網(wǎng)絡(luò)確認(rèn)。這樣,每個區(qū)塊的交易容量就大概擴(kuò)大了100倍;而且這種設(shè)計還有利于未來的繼續(xù)擴(kuò)展。

跨分片通信: 利用 UTXO 模型,并通過在主鏈上進(jìn)行交易和創(chuàng)建一個 receipt(帶有 receipt ID),用戶可以將以太存入一個指定分片。分片鏈上的用戶可以給定 receipt ID 創(chuàng)建一個消費(fèi) receipt(receipt-consuming)的交易,來花費(fèi)該 receipt。但UTXO適用于交易,對于合約狀態(tài)數(shù)據(jù)存儲不適用。
區(qū)塊鏈的可擴(kuò)展性問題及解決方案對比是怎樣的

Cosmos網(wǎng)絡(luò)里第一條鏈?zhǔn)荋ub,從名字和功能上都可以把它理解為Cosmos的中心鏈或者管理員鏈,所有其它區(qū)塊鏈的交易都會在Hub記錄,一條區(qū)塊鏈上的token可以通過Hub轉(zhuǎn)移到另一條區(qū)塊鏈。Hub是Cosmos網(wǎng)絡(luò)的核心,和其余的Zone是不平等的,從嚴(yán)格意義上講Cosmos網(wǎng)絡(luò)不是真正的分布式系統(tǒng),如果Hub發(fā)生了單點(diǎn)故障(當(dāng)然Hub本身是分布式的,發(fā)生問題的機(jī)率很小),Cosmos網(wǎng)絡(luò)的很多特性會不可用。關(guān)于這點(diǎn),白皮書中強(qiáng)調(diào)Hub必須得到嚴(yán)格保護(hù)。

每個Zone可以看做是單獨(dú)的區(qū)塊鏈空間。每個Zone會和Hub保持狀態(tài)同步。Hub通過去中心化的驗(yàn)證人組來保證安全性。Zone1向Zone2做跨鏈消息時,Zone1先生成消息包,并將其證明發(fā)布在Hub上,接下來Hub會生成Zone1的跨鏈消息包已在Hub上的存在證明的證明發(fā)布于Zone2,接下來Zone2收妥消息包,并給出證明發(fā)布于Hub上,最后,Hub再給出Zone2的收妥證明的證明發(fā)布于Zone2。完成整個跨鏈消息傳遞。

4、迅雷鏈同構(gòu)多鏈架構(gòu)

迅雷鏈?zhǔn)峭瑯?gòu)多鏈的架構(gòu),即每條鏈的結(jié)構(gòu)相同、地位平等。即系統(tǒng)由一條條相對獨(dú)立(獨(dú)立進(jìn)行共識)的鏈組成,每條鏈有多個節(jié)點(diǎn),每個節(jié)點(diǎn)被分配到其中一條鏈上,不同的賬戶數(shù)據(jù)被錨定在不同的同構(gòu)鏈上,然后接入層將交易路由到發(fā)送方所在的鏈上進(jìn)行區(qū)塊打包與共識。系統(tǒng)中鏈的數(shù)量能夠按業(yè)務(wù)需求動態(tài)增加。因此同構(gòu)多鏈的架構(gòu)首先保證了系統(tǒng)的可擴(kuò)展性。
區(qū)塊鏈的可擴(kuò)展性問題及解決方案對比

不同于EOS等區(qū)塊鏈系統(tǒng)需要昂貴的高性能服務(wù)器作為記賬節(jié)點(diǎn),迅雷鏈?zhǔn)褂昧畠r省電的玩客云設(shè)備作為記賬節(jié)點(diǎn),構(gòu)建了自己的大規(guī)模共享計算平臺。目前玩客云節(jié)點(diǎn)數(shù)量已超過150萬個節(jié)點(diǎn)數(shù),如此龐大的節(jié)點(diǎn)數(shù)量,對區(qū)塊鏈系統(tǒng)的可擴(kuò)展性提出了嚴(yán)峻的挑戰(zhàn)。挑戰(zhàn)主要來自兩個方面:

1)玩客云設(shè)備廉價省電,性能也低,這就要求共識算法必須使用綠色環(huán)保、適應(yīng)家庭用戶的網(wǎng)絡(luò)環(huán)境的算法。針對這個挑戰(zhàn),迅雷鏈在改進(jìn)的PBFT的基礎(chǔ)上,還融合了DPoS的思想,在每條鏈上,都會周期性地(例如每隔5000個區(qū)塊)選舉出驗(yàn)證人節(jié)點(diǎn)參與共識。與傳統(tǒng)的DPoS不同之處在于,迅雷鏈并不是根據(jù)礦工持有的代幣數(shù)量或幣齡作為選舉標(biāo)準(zhǔn)投票權(quán)重,而是按玩客云節(jié)點(diǎn)的存儲容量、網(wǎng)絡(luò)穩(wěn)定性、帶寬、時延等標(biāo)準(zhǔn)作為衡量標(biāo)準(zhǔn),以獲得更好的公平性和網(wǎng)絡(luò)效率。

2)玩客云節(jié)點(diǎn)數(shù)量龐大,家庭網(wǎng)絡(luò)環(huán)境復(fù)雜,要求區(qū)塊鏈系統(tǒng)必須設(shè)計成可擴(kuò)展性高、自治能力強(qiáng)的架構(gòu)。得益于同構(gòu)多鏈的架構(gòu)非常強(qiáng)大的可擴(kuò)展性,迅雷鏈能夠充分利用海量玩客云節(jié)點(diǎn),可以將鏈數(shù)“無限”擴(kuò)展,從而具備百萬級的并發(fā)處理能力。

綜上所述,迅雷鏈采用多鏈架構(gòu)實(shí)現(xiàn)了可擴(kuò)展性 + 使用PBFT實(shí)現(xiàn)了強(qiáng)一致性 + 使用更綠色環(huán)保和公平的DPoS進(jìn)一步提升了共識效率、也得到了更高的可用性。從去中心化(Decentralization),安全性(Security)和可擴(kuò)展性(Scalability)三要素的角度看,由海量的廣泛分布的玩客云設(shè)備支撐了去中心化和安全性,采用多鏈架構(gòu)以實(shí)現(xiàn)可擴(kuò)展性。

共識機(jī)制、廣播通信、信息加解密等算法層面的優(yōu)化,無法解決大規(guī)模去中心化系統(tǒng)的可擴(kuò)展性問題;而閃電網(wǎng)絡(luò)和狀態(tài)通道是鏈下執(zhí)行的方案,則與區(qū)塊鏈去中心化的理念相悖,而且使用復(fù)雜、用戶體驗(yàn)差,無法得到廣泛使用。因此前沿的區(qū)塊鏈項(xiàng)目均采用可擴(kuò)展性強(qiáng)的分片或多鏈方案。

其中,EOS目前是多線程的架構(gòu),總體性能還是受到單臺機(jī)器的性能所限,需要昂貴的服務(wù)器來運(yùn)行區(qū)塊鏈節(jié)點(diǎn),可擴(kuò)展性并不算強(qiáng);以太坊正在開發(fā)中的分片技術(shù)則需要主鏈負(fù)責(zé)驗(yàn)證子鏈的區(qū)塊,由于主鏈會存在性能瓶頸,因此子鏈數(shù)量受到限制(100個子鏈);Cosmos也是同樣的問題,Hub必須得到嚴(yán)格保護(hù);迅雷鏈采用的同構(gòu)多鏈架構(gòu)則避免了上述缺點(diǎn),適用于大規(guī)則廉價節(jié)點(diǎn)的部署, 可以將鏈數(shù)“無限”擴(kuò)展,從而具備百萬級的并發(fā)處理能力。

看完上述內(nèi)容,你們掌握區(qū)塊鏈的可擴(kuò)展性問題及解決方案對比是怎樣的的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI