買以太坊 買以太坊
Ctrl+D 買以太坊
ads

GET:觀點 | 五問以太坊:客戶端多樣性問題從何而來?如何解決?_以太坊交易付費的成本是

Author:

Time:1900/1/1 0:00:00

最近舉行的第90期核心開發者會議幾乎全程都在討論一個問題。我強烈建議大家親自聽一下這場會議。

在這場會議上,Alexey提出了客戶端開發者負荷過重的問題。雖然我認為這場討論是一個重要的開始,但是我們太急于尋求解決方案了,充分理解這個問題才是當務之急。重要的是,我們需要花點時間來分析問題。在問題內涵的分析上,“五問法”是最簡單有效的方法之一。

事不宜遲,先來看看第一問是什么。

第一問:為什么Geth開發團隊的壓力如此之大,甚至到了超負荷的地步?

通過etherscan,我們可以看到各個客戶端的裝機量所占份額的統計數據如下所示:

Geth:75%

Parity&OpenEthereum:20%

Nethermind:1%

剩下4%由一些市場份額不到1%的客戶端組成,因此忽略不計。

重要的是,有超過51%的算力都集中在Geth客戶端上。假設在即將到來的柏林硬分叉中,Geth在實現其中一個EIP時出現了bug。即使這個客戶端的其它實現都沒出bug,只要有區塊碰上了這個bug,就會導致以太坊網絡分叉。按理來說,這個區塊是無效的,其他客戶端也會將其視為無效塊。但是,有超過51%的挖礦節點都運行的Geth客戶端,因此整個網絡都會被帶到錯誤的分叉鏈上去。

觀點:數字資產革命正在進行,將是互聯網革命的最大組成部分:Real Vision創始人兼首席執行官Raoul Pal發推稱,“是的,是有比特幣革命,但數字資產革命正在進行,這是不可思議的。現在還為時過早,就像2013年的BTC,但它正在發生。一些會發生在BTC區塊鏈上,但絕大多數不會。這是我見過的最激動人心的機會。Metaverse、價值互聯網、SoV、原始抵押品和全新的未來都是巨大的。這是互聯網革命的下一個也是最大的一個部分,它才剛剛開始。它會經歷繁榮和蕭條。很多項目會失敗,有些項目則會價值幾千億。但是一切都變了。保持開放的心態。”[2021/2/21 17:36:17]

這就要求Geth客戶端和開發團隊絕對不能犯錯。

因此,第一問的答案是:

因為以太坊網絡的客戶端缺乏足夠的多樣性。

值得一提的是,客戶端多樣化不會突然將客戶端開發變成一項輕松的工作。但客戶端多樣性本身依然是一個值得探索的領域,有助于我們找到提高客戶端開發的效益,同時減輕開發團隊負擔的方法。不可否認的一點是,只在Geth團隊上下功夫不太可能解決這個問題。

觀點:馬斯克相信與購買特斯拉股票相比 購買比特幣收益增長更快:對沖基金Great Hill Capital LLC管理成員Thomas Hayes表示,(特斯拉斥資15億美元購買比特幣表明)馬斯克相信,與購買特斯拉股票相比,購買比特幣獲得的收益將增長更快,能為股東帶來更好的回報,在我看來,這不是對特斯拉股票的巨大信心。不過這無疑是對比特幣的巨大信心,因為現在其他公司也將開始考慮是否應該將部分資金配置到比特幣中。(金十)[2021/2/9 19:16:13]

第二問:為什么以太坊網絡缺乏客戶端多樣性?

以太坊主網上線時,我們有多個客戶端。其中最主要的兩個是Geth和CPPEthereum。之后又出現了Parity,CPPEthereum被淘汰。

從那時起,除了Parity之外,沒有一個客戶端能獲得較大的市場份額。去年,Nethermind異軍突起,成為了一顆冉冉上升的新星,但是目前只占據了1%的市場份額。最近,由于Parity遭遇了一些波折,前途一片黯淡,Parity的市場份額大幅下降。我們認為,在理想情況下,以太坊網絡需要有3個及以上的客戶端、每個客戶端占有的客戶端份額都不至于太高、沒有任何一個客戶端能占據遠遠超過51%市場份額。雖然在理想情況下應該實現客戶端多元化,但是我們已經習慣了客戶端霸權的局面。

觀點:區塊鏈可成為整治形式主義官僚主義的“大殺器”:復旦大學管理學院劉杰教授日前在人民日報社《國家治理》周刊上發文稱,區塊鏈技術減少了非對稱信息導致的機會主義行為,并加強了公共部門與百姓之間的相互信任。因此,區塊鏈技術可以應用于任何需要防止并克服形式主義官僚主義的領域。

他認為,公共部門采納這項技術可能存在阻力,加之目前區塊鏈技術尚在成熟和完善過程中,政府部門應該更好地了解、參與、監管和應用這項技術,建立創新系統,為公眾提供更好的服務。[2020/7/11]

那么,我們為什么需要多個客戶端?

從我個人的經驗角度來看,構建以太坊客戶端難比登天。Geth之所以能在以太坊網絡上穩定運行,是因為它引入了很多復雜的優化。Geth團隊花費了數年時間才達到了如此高的復雜度,目前仍在繼續優化中。

有人可能會立即建議我們想辦法為落后的客戶端提供支持和幫助。我很警惕這種“人月神話”式的解決方案——在軟件開發過程中,讓更多工程師來解決一個難題很少會成功,而且我不指望這種方案會取得成功。

觀點:美國共和黨提議的加密數據法案將危及普通用戶的安全:據此前報道,美國共和黨議員提出《合法訪問加密數據》法案,要求科技公司協助訪問加密數據。

如果該法案在立法機關獲得通過,它將有效地終結WhatsApp、 Signal和Telegram等信息應用中的隱私功能。新美國開放技術研究所高級政策分析師Andi Wilson Thompson批評了該法案,稱此類“要求將損害普通人的安全”,而恐怖分子和其他罪犯分子只會轉移到新的服務領域。他補充說,在大流行期間提出該法案。這一時機尤其成問題。(Decrypt)[2020/6/25]

相反,我認為應該將關注點放在復雜性上。

注:人月神話,mythicalman-month,指出以大量人員和較短的時間,并不能縮短軟件的開發進度。一窩蜂的作業方式無助于軟件生產,且會制造麻煩,產生出更差的軟件。向進度落后的項目追加人力,只會使進度更加落后。

第三問:為什么構建以太坊客戶端會這么難?

現在,我們正越來越接近問題的根源。

觀點:區塊鏈有助于解決經濟危機 但無法解決當前社會危機:自5月25日喬治·弗洛伊德在明尼蘇達州警察手中死亡后,在一片混亂中,加密領域的一些人開始思考,區塊鏈甚至比特幣能否提供一些幫助。加密貨幣開發人員和康奈爾大學教授EminGünSirer表示,“我不是他們中的一員。把資產放在分散的媒介中,讓它們可以在全球范圍內交易,這是一件有趣的事情,我看到了它未來的很多用途。所以,從經濟上講區塊鏈是絕對有用的。但在這種特殊的社會環境中,區塊鏈沒有任何作用。”(Decrypt)[2020/6/6]

事實證明,大部分困難都來自于組網協議,即以太坊客戶端軟件用于相互連接并分享區塊鏈信息的那一組工具。以太坊的組網規則,最終影響甚至決定了以太坊客戶端的設計和要求。

一些組網工具指定了未經優化的架構,甚至要求以太坊客戶端運行不必要的功能。客戶端開發者需要在這些限制下工作。

第四問:為什么網絡互聯協議提高了客戶端實現的難度?

我相信,這個問題的答案基本上可以分為兩個部分。

狀態管理

整體網絡互聯要求

就狀態管理而言,以太坊客戶端必需能夠同步網絡上的完整狀態,并維護該狀態的本地副本。這兩點都很難做到。對客戶端以及讀取并處理狀態要求的服務器來說,同步狀態需要提出數百萬個請求,并且會導致磁盤I/O飽和。新同步的狀態需要經過維護和刪減,以便數據庫能足夠快地執行新區塊。從工程上來說,這是一項嚴峻挑戰!

GetNodeData是我們用來同步狀態的唯一網絡互聯工具,針對特定的狀態數據庫格式進行了優化。由?TurboGeth?推廣的“扁平式”數據庫布局在狀態維護方面具有極大的性能優勢,但是使用這種布局會加大?GetNodeData?請求的處理難度。

一旦我們將注意力轉向網絡技術,尤其是DevP2P?ETH?協議,我們會發現還有其他因素提高了客戶端的復雜性。要想加入這個網絡,客戶端需要具備以下能力:

處理訪問最近區塊所生成的狀態的?GetNodeData?請求;

處理訪問鏈上數據歷史記錄的請求,包括區塊頭、區塊體和收據。

從根本上來說,對于許多客戶端操作而言,處理這些請求所需的基礎數據不是必需的,但是現在卻強制它們支持這些功能。這就需要所有客戶端在除了滿足自己本身的需求之外,還要另外構建大量功能。例如,主要作為交易發送網關的客戶端并不需要歷史鏈上數據,可能只需要一個很小的狀態子集。但是,就當前的以太坊版本而言,客戶端依然需要保存完整的副本。

第五問:為什么……

看來我只問了四個“為什么”就找到了根本原因。以太坊協議還沒有完全成熟。在設計以太坊協議時,我們并沒有意識到現如今發現的大多數問題,或者因為當時狀態規模較小、發展歷史較短,這些問題還不成問題。

解決方案

過去一整年,我都在關注這個問題。令我震驚的是,以太坊上許多問題的根源其實都可以追溯到網絡層。

或許最明顯的例子是,磁盤I/O歷來都是客戶端的一個瓶頸。這個瓶頸之所以存在,是因為客戶端傾向于使用樹結構的樸素表示來執行其狀態數據庫。狀態數據庫的構建方式由?GetNodeData?網絡元件決定。

為了解決這個問題,我們需要對以太坊共識層以及網絡層的各個部分進行檢修。目前,檢修工作已經啟動。大量工作已經在Alexey和我共同領導了8個月的“無狀態以太坊”名義下開展。我們所做的一些工作至少減輕了Geth團隊的負擔,因為他們用上自己開發了經年之久的SNAP同步協議。還有一部分工作需要深入理解這個問題并想到可行方案的才俊來承擔。

目前,這樣一個龐大的DevP2P?ETH?協議尚未完全解構。我們對于如何將這個網絡拆分成三個獨立的專用網絡有了基礎了解,但是目前還沒有人直接著手這塊。

另外,還有像?re-genesis?之類的想法,提供了完全回避這些問題的機制。這是一種激進的方法,如果能成功的話,或將為我們帶來很大的優勢。

首先,我們應該清楚的是,以太坊網絡還有許多艱巨的任務需要完成,只有少數人能夠勝任這些任務。雖然每天都有越來越多的開發者參與進來,但是他們需要投入時間和精力來學習必備技能。客戶端開發者在專注于解決日常用戶看不到的底層問題時,還要抽出時間來開發新的EVM功能。

如果我們希望以太坊網絡能夠取得長遠的成功,我認為整個社區都要就解決這些問題展開合作,給予其根本原因足夠的關注和討論。最重要的是,我們要攜手打造出有效的技術解決方案。

原文鏈接:?https://snakecharmers.ethereum.org/applying-the-five-whys-to-the-client-diversity-problem/作者:?PiperMerriam翻譯&校對:?閔敏&阿劍

Tags:ETH以太坊GETGETHethereal寓意之類的詞以太坊交易付費的成本是The Midget’s Secret手機直接玩togetherbnb

幣安下載
LTC:分析 | 以太坊提高gas上限之后:目前網絡可以支持更大的調整_EtherBack

在以太坊礦工投票贊成把燃氣上限提高25%后,最近以太坊鏈上使用的總燃氣值創出了新高。由于波思路的BDN網絡已被許多以太坊礦池和服務提供商采用,這為波思路的以太坊網絡活動分析提供了獨特視角.

1900/1/1 0:00:00
RAM:Telegram放棄了TON測試網,但獨立項目帶來了新希望_Artificial Liquid Intelligence

在7月初,Telegram宣布將停止對Telegram開放網絡的測試網絡的支持,這似乎是Telegram永久退出其區塊鏈項目的又一個跡象.

1900/1/1 0:00:00
ITG:幣圈的“熊”VS股市的“牛”_BTC

數字貨幣市場繼續萎靡,昨天的市場再次普跌,盡管下跌的幅度不大,但波及面卻非常廣,市場像現在這樣不上不下已經持續了很久.

1900/1/1 0:00:00
300:BTC橫盤12周,8問直播間三位分析師一致看多,大行情要來了?_Minter HUB

5月份以來,比特幣幾乎橫盤了將近12周。不少喜歡高風險、尋求高收益的投資人,默默離場,殺入風頭正勁的股票市場……不少交易員,被硬生生磨成了囤幣黨,懶得打開一下交易軟件……短期看,比特幣到底是漲還.

1900/1/1 0:00:00
加密貨幣:對于DeFi項目,哪些數據值得關注?_DEFI

Defi無疑是今年的大熱點,不管是相關幣價還是鎖定資金量給市場交出的成績都是非常亮眼的,有沒有成績,先用數據說話.

1900/1/1 0:00:00
LIBRA:Libra分析:局限性明顯,短期內無法實現惠普金融_BANK

Facebook推出Libra幾乎面臨一面倒的監管質疑和商業意圖方面的拷問,所以落地將會存在非常大的阻力,一方面是各主權國監管部門正在評估Libra對于主權貨幣穩定性的影響以及不確定性.

1900/1/1 0:00:00
ads