bloXroute:擴充套件以太坊的思路和經驗

買賣虛擬貨幣
bloXroute Labs 為以太坊主網提供網路層擴充套件方案,使得大型礦池和終端使用者之間能更好地連線。在本文中,我們將總結 bloXroute 自 2019 年 11 月上線以來對以太坊網路層效能的影響。bloXroute 的區塊鏈分發網路在解釋 bloXroute 如何強化以太坊網路層之前,我們先簡要回顧一下 bloXroute 的架構。bloXroute 部署了一個區塊鏈分發網路(BDN),幫助以太坊節點更快、效率更高地傳輸交易和區塊,更重要地是,這拓展了網路的處理量,使之可達到每秒幾千筆交易的速率。

bloXroute 的 BDN 由 中繼 和 閘道器 組成。中繼是彼此相連、組成全球高速 bloXroute 網路的高階伺服器,中繼間高速傳輸區塊鏈訊息(交易和區塊)。閘道器則是一個小小的軟體,一般放在伺服器上,與區塊鏈節點間有低延遲;從區塊鏈客戶端的角度來看,閘道器就是網路中的另一個對等節點。閘道器一邊跟以太坊節點用以太坊 “語言” 交流,另一邊用 bloXroute “語言” 跟中繼溝通。

閘道器有許多功能,但最重要的功能是壓縮和解壓區塊。具體來說,bloXroute 的 BDN 一開始廣播終端使用者所生成的交易;此外,它也生成獨特的短識別符號(SID),即,給每一筆交易生成一個 SID。BDN 也會把 SID 傳遍網路,使得所有閘道器和中繼都能接收到它們。因此,一旦某人挖出一個區塊,以太坊礦工本地的閘道器就以 SID 來替換交易,以此壓縮區塊。所有收到如此區塊的閘道器則執行相反的步驟,即,根據 SID 找回原始交易。如此一來,bloxRoute 加速了區塊的傳播;更重要的是,整個過程是完全透明的。這一方法使得我們能建立更大的區塊,因此能夠擴充套件。

bloXtoure 擴充套件以太坊的經驗

在此,我們要進一步解釋一下,上述方法在實踐中是如何生效的,也概述我們遇到的主要挑戰。

展示明顯可見的價值

我們遇到的第一個挑戰就是證明即使沒有擴充套件作用(即不使用更大的區塊)bloXtoure 仍能為以太坊帶來價值。存在這一挑戰是因為以太坊使用了非常小的區塊(只有幾百 kb),而且出塊速度很快(平均每 15 秒就出一個塊)。一般來說,小區塊可以在點對點網路中快速傳播,因此,BDN 到底能不能減少傳播時間,就成了一個問題。

我們與大型礦池聯手進行的測試證明了,即使區塊很小,區塊傳播世界也還能節約 50% 左右。不僅如此,我們還展示了,在使用 BDN 時,區塊傳輸時間已經接近了一個理論上的下限。BDN 能在幾百毫秒內將交易和區塊傳輸到整個網路,這樣的表現為我們安全地提升區塊大小鋪平了道路。實際上,因為使用了 SID,即使區塊大小大幅提高,區塊的實質大小和傳輸時間將仍然保持低水平,而且只會緩慢地增長。

與中國聯絡

第二大挑戰是中國的網際網路連線,在交易和區塊的傳輸上都存在挑戰。在實戰中,我們觀察到網路效能會週期性地降低。我們應用了多種方法來解決這個問題。首先,我們在路由演算法中加入了動態監控機制和更多冗餘。當一條網路路徑遭遇效能下降時,我們會在中繼之間動態加入冗餘路徑。舉個例子,如果中繼 A 與 B 之間的連線變慢了,我們會即時開啟併發路徑 A-C-B 和 A-D-B。這個辦法的效果非常地好。其次,解決交易傳輸問題需要額外的努力。為使 bloXroute 網路能高效運營,交易的平滑傳播是關鍵,因為交易的充分傳播才能發揮區塊壓縮和平順傳播的作用。為解決這個問題,我們使部署在中國的閘道器能連線到一個額外的交易中繼。這就加入了冗餘,並進一步大幅提高了效能。

不間斷監控

除了提高效能,我們還讓閘道器的使用者能直接監控從 BDN 中得到的效能提升,即,監控從 BDN 獲得的交易和區塊頻次(對比從點對點網路中獲得的頻次)。在接下來幾周內,我們會提供一個開放的 BDN 瀏覽器,然後任何對分析單筆交易或區塊的效能有興趣的人,乃至對以太坊網路的詳盡效能分析感興趣的人,都可以去做這樣的研究。

結論

bloXroute 已成功地服務了 Eth2.0 社羣,我們也持續關注 ETH 2.0。總而言之,Eth2.0 提出了很多新穎的概念,而 BDN 會踏實地提高效能,併為以太坊社羣增強安全性和防禦力。

免責聲明:

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

推荐阅读

;