理解區塊鏈中的區塊傳播問題

買賣虛擬貨幣
缺乏可擴充套件性被認為是阻礙大規模採用區塊鏈技術的最大障礙。所有現有的區塊鏈專案都在尋找能夠提高網路效能的解決方案。許多新興專案聲稱他們有一種靈丹妙藥可以解決這個問題。然而,這種斷言並不總是有效的。不幸的是,許多觀察家和投資者沒有認識到這個問題的核心和根源。
沒有深入的調查和大量的技術背景,很難確定隱藏的瓶頸和取捨。在在這篇文章中,我們將討論一個眾所周知的阻礙比特幣擴充套件的瓶頸。在去中心化點對點網路比特幣的發明後不久,研究人員對決定比特幣規模限制的因素產生了興趣。很快就確定了核心問題,並以區塊傳播時間或區塊傳播延遲來描述。它是新區塊到達網路中大多數節點所需要的平均時間。在像比特幣這樣的大型去中心化網路中,無論何時生成新的區塊,它都會根據八卦協議進行廣播。如果某個節點獲得了新的有效區塊,它將通知連線它的節點它的新佔有權。
然後,節點將這個區塊傳輸給那些要求它這樣做的節點。在區塊到達網路中的每個完整節點之前,它要經過7箇中間節點。重要的是,每個誠實的節點在將該區塊轉發給其他對等節點之前都要驗證該區塊。很顯然,整件事需要一段時間。每個新的區塊都會震動網路,使節點和乙太網之間的連線以滿功率工作。有人可能會說,自從該網路推出以來,對Gossip協議已經有了很多改進。例如,比特幣改進方案BIP 0152引入了只在區塊體中傳輸短交易id的選項,而不是整個交易列表。但是,如果節點在它的記憶體池中沒有這個交易,它必須要求它的對等節點在單獨的訊息中傳輸它。如果在BIP區塊中有大量這樣的交易,那麼BIP0152的改進就消失了。由於資料傳輸是區塊中繼中最耗時的部分,研究人員感興趣的是確定多少時間需要一個特定大小的資料包達到50%,90%,或95%的網路節點。結果發現,對於一個大小大於20Kb的區塊,區塊傳播延遲幾乎成正比的區塊大小。根據2013年發表的研究結果,區塊中每多一個kB的資料都會導致額外的80ms區塊傳播延遲。
自那時起,每年都有幾篇關於這一主題的學術論文和調查。他們更新上述資料並討論各種改進建議。此外,該網站監測比特幣網路的當前狀態和區塊傳播時間。此外,它還提供了有關這一主題的歷史資料圖表。大多數成熟的區塊鏈網路與比特幣有著相同的設計。因此,這些網路中的塊傳播時間遵循同樣的規則。不幸的是,區塊傳播時間對區塊鏈的安全性有很大的影響。在網路中傳播時間越長,礦工在舊區塊上開採的頻率越高。因此,主鏈的分叉發生得更頻繁,孤立區塊的百分比上升。長的傳播延遲導致了所謂的驗證者困境。一些節點可能會發現跳過區塊驗證步驟可能是一個有利可圖的策略。在這種情況下,他們面臨著在錯誤區塊之上開採的風險。
然而,如果區塊驗證時間很長,這個策略可能是有利可圖的。研究人員發現,長傳播延遲降低了節點對51%攻擊和自私挖掘的抵抗。為了解決上述問題,區塊鏈開發人員經常試圖將區塊傳播時間控制在平均區塊時間的1%以下。對於比特幣、以太坊和其他基於PoW共識的主要區塊鏈網路都是如此。因此,比特幣網路中50%的節點的區塊傳播時間通常低於6秒。儘管快速區塊中繼(如在BIP 0152中描述的那種)減少了平均區塊傳播時間在最壞的情況下,它可能需要比基本協議更多的時間。重要的是,即使在最壞的情況下,傳播延遲也應該是合理的,這樣礦工才能在大部分時間保持他們的節點同步,並始終驗證提議的區塊。每當人們談論區塊鏈的可擴充套件性時,都會提到系統的交易吞吐量。然而,人們忘記了交易吞吐量的提高不應損害網路的安全性,也不應對希望參與網路的節點提出資料儲存要求。
這些修改可以減少網路中獨立交易驗證器的數量,從而減少去中心化。比特幣交易吞吐量可以很容易地使用公式計算:Bsize是區塊大小(以位元組為單位),Tsize是區塊中交易記錄的平均大小,Btime是區塊鏈中連續區塊之間的平均時間。顯然,可以透過增加區塊大小、減少交易記錄大小或減少區塊之間的間隔來增加交易吞吐量。減少交易記錄的大小是相當困難的。
人們可以嘗試其他兩種選擇。然而,這些操作將增加花費在區塊傳播上的時間百分比。因此,安全和去中心化的網路可能會受到威脅。有人可能會注意到,在描述的比特幣協議中,網路資源的使用效率很低。每個節點只在很短的時間內處理和傳輸一個新區塊的重要資料。它的網路頻寬確實很重要,但它一次只被充分使用幾秒鐘。其餘時間,此節點僅傳輸掛起的交易和輔助資料。這一發現促使研究人員尋找更有效的協議設計,以在不影響網路安全性和去中心化的情況下顯著提高交易吞吐量。

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;