原文標(biāo)題:《on attestations, block propagation, and timing games》
撰文:Nero_eth
編譯:Tia,Techub News
如今,提議者的時(shí)序博弈已經(jīng)很常見了,很多研究也都在分析這一現(xiàn)象。
本篇文章將帶大家了解提議者時(shí)序博弈的演變,并分析其對(duì)見證者的影響。通過(guò)對(duì) Lido、Coinbase 和 Kiln 的節(jié)點(diǎn)運(yùn)營(yíng)商的案例研究,我們將深入探討區(qū)塊提議的時(shí)序博弈及其對(duì)以太坊共識(shí)的影響。
截至 2024 年 8 月,區(qū)塊構(gòu)建市場(chǎng)在很大程度上被外包處理,其中約 90% 的區(qū)塊是由 mevboost 區(qū)塊構(gòu)建者構(gòu)建的。其中, Titan Builder 和 Beaverbuild 構(gòu)建了大約 80% 的區(qū)塊。
Kiln 是推動(dòng)時(shí)序博弈的主要實(shí)體之一,在單個(gè) slot 內(nèi),其將區(qū)塊提議推遲了 3-3.5 秒。
在當(dāng)前的 mevboost 環(huán)境中,區(qū)塊傳播主要通過(guò)中繼器完成。雖然提議者在從中繼器接收到區(qū)塊后仍會(huì)傳播它,但中繼器通常具有更好的網(wǎng)絡(luò)連接,因此可以更快地完成傳播。然而,時(shí)序仍然由提議者控制,他們可以延遲其「getHeader」調(diào)用以進(jìn)行時(shí)序博弈。
這張圖表展示了時(shí)序博弈的演變。我們可以看到,隨著時(shí)間的推移,Kiln 驗(yàn)證者提議的區(qū)塊在 slot 內(nèi)是相對(duì)滯后的。
這會(huì)對(duì)網(wǎng)絡(luò)產(chǎn)生影響:由 Kiln 提議者提出的區(qū)塊,錯(cuò)過(guò)/錯(cuò)誤的區(qū)塊頭投票率顯著更高。
之前的分析顯示,等待時(shí)間越長(zhǎng),錯(cuò)過(guò)區(qū)塊頭投票的預(yù)期數(shù)量越高(「80% 的見證發(fā)生在 slot 中的第 5 秒」)。Kiln 在非常晚的時(shí)候提議區(qū)塊,導(dǎo)致一些見證者錯(cuò)過(guò)它們,并且反而投票給父區(qū)塊。每個(gè) slot 大約會(huì)分配 32,000 個(gè)驗(yàn)證者,這將導(dǎo)致約 10% 錯(cuò)誤的區(qū)塊投票率。
讓我們來(lái)看看三個(gè)大型節(jié)點(diǎn)運(yùn)營(yíng)商的見證行為,并比較它們?nèi)绾螌?duì)不同時(shí)間內(nèi)提議的區(qū)塊做出反應(yīng)。下圖顯示了 slot 內(nèi)正確和及時(shí)的區(qū)塊頭投票分布秒數(shù)。
對(duì)于早期區(qū)塊,我們觀察到 Lido 和 Coinbase 在投票模式上呈現(xiàn)出一種特有的「U」形,這可能是由于不同的地理位置或客戶端軟件造成的。相比之下, Kiln 顯示出一個(gè)明顯的峰值,比 Coinbase 和 Lido 的第一個(gè)峰值略有滯后。然而,對(duì)于較晚的區(qū)塊,Kiln 的見證者也顯示出「U」形模式。
當(dāng)區(qū)塊在 slot 中第 4 秒首次出現(xiàn)時(shí)(由于是 P2P 網(wǎng)絡(luò),每個(gè)節(jié)點(diǎn)接收到區(qū)塊的時(shí)間不同),Lido 見證者比 Kiln 或 Coinbase 見證者提前最多 2 秒進(jìn)行見證。這種模式并不一定表明 Kiln 在執(zhí)行「?jìng)€(gè)人策略」。相反,這可能歸因于客戶端的不同或地理位置的不同。
到底是誰(shuí)影響了誰(shuí)?
在下圖中,我們比較了不同提議者下節(jié)點(diǎn)運(yùn)營(yíng)商的表現(xiàn)。例如,y=1 上方的綠色部分表明,當(dāng) Kiln 作為提議者提議區(qū)塊時(shí),Lido 見證者將更容易錯(cuò)過(guò)區(qū)塊頭投票。然而,當(dāng) Lido 作為提議者時(shí),Lido 見證者在見證區(qū)塊最及時(shí)。虛線 1 表示所有實(shí)體作為提議者時(shí)錯(cuò)過(guò)區(qū)塊頭投票的平均份額。低于 1 的柱狀圖意味著與平均值相比,特定實(shí)體與各自提議者聯(lián)合時(shí)錯(cuò)過(guò)的區(qū)塊頭投票較少。
值得注意的是,節(jié)點(diǎn)運(yùn)營(yíng)商在處理其自己提議的區(qū)塊時(shí)表現(xiàn)最好。
快速總結(jié)一下我們看到的內(nèi)容:
在其他運(yùn)營(yíng)商作為提議者提議區(qū)塊時(shí),大多數(shù)運(yùn)營(yíng)商表現(xiàn)都相對(duì)穩(wěn)定。
在 Kiln 作為提議者提議區(qū)塊時(shí),F(xiàn)igment、Lido、Kraken 和 EtherFi 表現(xiàn)較差。
在 Kiln 作為提議者提議區(qū)塊時(shí),只有 Kiln 和 Binance 表現(xiàn)更好。
Kiln 作為見證者表現(xiàn)很好。早期分析表明,在涉及到高性能驗(yàn)證者時(shí),Kiln 表現(xiàn)優(yōu)異。有關(guān) Kiln 見證表現(xiàn)的更多詳細(xì)信息,請(qǐng)參閱這篇分析。
但 Kiln 引發(fā)了壓力。現(xiàn)在我們知道,Kiln 提議的區(qū)塊給其他見證者帶來(lái)了壓力,但并未給 Kiln 的見證者帶來(lái)壓力。
目前,很難對(duì)「How」作出解釋。一個(gè)可能的解釋是 Kiln 的驗(yàn)證者高度集中,共址運(yùn)行,或者具有非常密集的對(duì)等連接。另一種原因可能是通過(guò)定制的對(duì)等網(wǎng)絡(luò)/私人網(wǎng)絡(luò)或通過(guò)其他額外的通信層連接它們的驗(yàn)證者進(jìn)行協(xié)調(diào)行為。后一種被認(rèn)為更具中心化特性,因?yàn)樗訌?qiáng)調(diào)規(guī)模經(jīng)濟(jì)。
當(dāng)我們觀查 Lido 和 Coinbase 在各自作為提議者提議區(qū)塊時(shí)的(正確且及時(shí)的)見證時(shí)間時(shí),我們可以觀察到類似的模式。
有趣的是,Kiln 開發(fā)了一種從 3.8 秒到 6.1 秒的「U」形分布用于它們自己的晚期區(qū)塊,而Lido在4.2秒出現(xiàn)一個(gè)峰值,Coinbase在 slot 中的第4秒開始出現(xiàn)一個(gè)高原,并在第6秒出現(xiàn)一個(gè)小的峰值。
防止自己的提議的區(qū)塊被重組
讓我們將注意力轉(zhuǎn)向被重組的區(qū)塊。從節(jié)點(diǎn)運(yùn)營(yíng)商的角度來(lái)看,一個(gè)策略可能是永遠(yuǎn)不為重組自己的區(qū)塊投票。簡(jiǎn)單地說(shuō),「如果提議者是我,永遠(yuǎn)不要將父區(qū)塊投票為區(qū)塊頭」。
在接下來(lái)的部分中,我將使用「本地區(qū)塊」來(lái)代表「自己提議的區(qū)塊」。
下圖是為重組區(qū)塊投票的見證者與為父區(qū)塊投票的見證者的百分比。紅色部分顯示了該實(shí)體投票給重組區(qū)塊的見證者的百分比。
Kiln 表現(xiàn)出了異常行為。當(dāng)大多數(shù)節(jié)點(diǎn)運(yùn)營(yíng)商的見證者誠(chéng)實(shí)地為正確的區(qū)塊頭投票而不是本地區(qū)塊時(shí),Kiln 的見證者卻并不這么做。超過(guò) 10% 的 Kiln 見證者試圖通過(guò)為本地區(qū)塊投票來(lái)將其保持在鏈上。如果采用這樣的策略,它們可能會(huì)由于為錯(cuò)誤的區(qū)塊頭投票而產(chǎn)生損失。然而,這些策略通常在以太坊社區(qū)中受到鄙視:「不要玩弄共識(shí)」。
該圖表使用了365天的數(shù)據(jù)。因此,如果在過(guò)去一年內(nèi)實(shí)施了一些復(fù)雜的策略,紅色部分的比例會(huì)相應(yīng)較小。
但我們?nèi)绾慰创渌麑用娴膮f(xié)作?
關(guān)于見證的協(xié)作,作為社區(qū),我們似乎接受了運(yùn)行在同一節(jié)點(diǎn)上的驗(yàn)證者為相同的 checkpoints 投票的事實(shí)。
我們可能不希望采取任何跨越物理機(jī)器邊界的努力來(lái)提高驗(yàn)證者之間的協(xié)作。這應(yīng)當(dāng)是每個(gè)人都可以構(gòu)建的。這種協(xié)作可能有不同的形式:
級(jí)別1 - 回退機(jī)制與靜態(tài)對(duì)等連接:為多個(gè)物理機(jī)器提供一個(gè)中央備用/備份節(jié)點(diǎn)。這也可以是一個(gè)斷路器,一些特別容錯(cuò)的機(jī)器,作為信息的私人中繼器。具有改進(jìn)對(duì)等連接、私人網(wǎng)絡(luò)或類似設(shè)置的設(shè)置也可能屬于此類別。
級(jí)別2 - 如果-否則規(guī)則:在某些 slot 中等待更長(zhǎng)時(shí)間的硬編碼規(guī)則。那些將安裝在多個(gè)物理機(jī)器上,允許它們基于預(yù)定義規(guī)則「協(xié)作」。
級(jí)別3 - 僵尸網(wǎng)絡(luò):有一個(gè)中心化的預(yù)言機(jī)與所有驗(yàn)證者通信,并提供投票的 checkpoints 以及它們應(yīng)在何時(shí)發(fā)布的時(shí)間戳。
在我看來(lái),后兩種形式的協(xié)作(級(jí)別2和3)是有問(wèn)題的,節(jié)點(diǎn)運(yùn)營(yíng)商應(yīng)當(dāng)承擔(dān)責(zé)任。最后,對(duì)于涉及靜態(tài)對(duì)等連接和私人網(wǎng)絡(luò)的策略可能存在灰色地帶。
這樣的設(shè)置可能會(huì)被用于運(yùn)行(惡意)策略,例如:
確保跨多個(gè)物理機(jī)器從不對(duì)不同的 checkpoints 投票。
確保永遠(yuǎn)不會(huì)對(duì)重組自己提議的區(qū)塊投票。
基于連續(xù)的提議者進(jìn)行協(xié)作(誠(chéng)實(shí)重組客戶端(y/n))。
審查某個(gè)方的見證。
不為某方的區(qū)塊投票。
其他。
在討論協(xié)作時(shí),區(qū)分兩種類型是重要的:
協(xié)作行為發(fā)生在從同一物理機(jī)器運(yùn)行的驗(yàn)證者之間。
協(xié)作行為源于運(yùn)行相同的修改后的客戶端軟件或依賴于相同的中心化預(yù)言機(jī)。
反對(duì)復(fù)雜協(xié)作驗(yàn)證者行為的潛在解決方案是 EIP-7716:反相關(guān)處罰,該提案建議根據(jù)驗(yàn)證者之間的相關(guān)性來(lái)調(diào)整處罰。
以上就是如果提議者提議區(qū)塊的時(shí)間晚了,會(huì)對(duì)見證有何影響?的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注本站其它相關(guān)文章!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。