時間:2023-08-03|瀏覽:213
幸運值是礦工節(jié)點在一定周期內(nèi)實際出塊數(shù)量與該周期理論出塊數(shù)量的比值。實際出塊數(shù)量即節(jié)點在一定周期內(nèi),以其有效算力在Filecoin主網(wǎng)中獲得的出塊獎勵。與其相對的理論出塊數(shù)量則是指“周期內(nèi)節(jié)點有效算力在全網(wǎng)算力中的占比”與“周期內(nèi)全網(wǎng)出塊獎勵”的乘積。
依據(jù)目前全網(wǎng)情況舉例,F(xiàn)ilecoin全網(wǎng)在24小時內(nèi)的出塊數(shù)量為14400個,全網(wǎng)算力為3Eib。節(jié)點A的算力為3Pib,即全網(wǎng)算力的1/1000,那么他的理論獎勵即為0.001*14400=14.4個塊。以14.4為幸運值100%的分界線,若A節(jié)點實際出塊數(shù)量高于14.4,則我們稱之為幸運值高(高于100%);反之,則稱之為幸運值低(低于100%)。
▇有效算力與實際出塊獎勵▇
礦工獲取出塊獎勵需要經(jīng)歷3個環(huán)節(jié)
PART1:每輪挖礦周期(epoch)開始后,礦工從主網(wǎng)其他節(jié)點接收上一輪的最新區(qū)塊消息廣播。當(dāng)?shù)竭_(dá)一個特定的接收截止時間時,礦工在已經(jīng)接收到的區(qū)塊消息中,根據(jù)權(quán)重選擇一個TipSet然后基于該主鏈計算出塊權(quán)。出塊權(quán)的計算參數(shù)包括主鏈TipSet中的隨機(jī)數(shù),以及礦工當(dāng)前的有效算力與全網(wǎng)有效算力的比重。從統(tǒng)計意義上說,礦工的有效算力與全網(wǎng)有效算力的占比越大,礦工獲得出塊權(quán)的概率就越大。
PART2:如果礦工在主鏈上獲得出塊權(quán),礦工就會進(jìn)入WinningPoSt環(huán)節(jié)。系統(tǒng)會根據(jù)鏈上獲取的抽查參數(shù),去尋找需要抽取的扇區(qū),以及扇區(qū)內(nèi)某段隨機(jī)的數(shù)據(jù)。
PART3:抽取數(shù)據(jù)后,節(jié)點需要進(jìn)行一次簡單的運算,算出結(jié)果并把結(jié)果廣播出去,該廣播被主網(wǎng)認(rèn)可后,即可獲取出塊獎勵。
需要注意的是,WinningPoSt及計算環(huán)節(jié)中的任何一個步驟都不能出錯,且需要在30秒之內(nèi)完成。如果在進(jìn)行任一步驟時出現(xiàn)機(jī)器故障,離線或運算錯誤等問題,或完成時間超過30秒,都會導(dǎo)致出塊失敗。
綜合上述內(nèi)容來看,礦工的實際出塊數(shù)量決定于四個因素: 1、有效算力:有效算力決定了礦工獲得出塊權(quán)的概率。從長期來看,節(jié)點獲得的出塊權(quán)占比趨近于其有效算力與全網(wǎng)有效算力的比重。 2、幸運值:由于爆塊權(quán)的獲得依賴于主鏈的隨機(jī)數(shù),而隨機(jī)數(shù)在較短的周期(比如24小時)內(nèi)是有比較大的隨機(jī)性的,因此,礦工在較短周期內(nèi)幸運值明顯高于或者低于100%是正常的,不必?fù)?dān)心。 3、存儲和計算性能:礦工獲得爆塊權(quán)后,需要在30秒內(nèi)完成存儲抽查和證明計算,并且把區(qū)塊廣播給其他節(jié)點,才能成功爆塊。如果未完成,礦工即便手握出塊權(quán)也拿不到區(qū)塊獎勵。 4、網(wǎng)絡(luò)延遲:如果網(wǎng)絡(luò)延遲比較大,那么在截止期到來時,礦工有可能還沒接收到全部的主鏈區(qū)塊消息。這可能導(dǎo)致礦工基于不完整的主鏈進(jìn)行爆塊計算,或是即使計算完成但由于廣播延遲導(dǎo)致爆塊失敗。
依然以上文中節(jié)點A為例子,依據(jù)全網(wǎng)算力占比,節(jié)點A24小時的出塊權(quán)應(yīng)為14.4次,但是某日其“運氣”爆棚,因為“押中”隨機(jī)數(shù)獲得了28次爆塊權(quán)。但是由于在其中15次WinningPoSt中機(jī)器出現(xiàn)異常,節(jié)點A最終僅獲得了13個爆塊,其幸運值最終也僅為13/14.4約90.28%。
02、如何提高幸運值
礦工的”運氣”取決于其碰上隨機(jī)數(shù)的次數(shù),既然是“隨機(jī)”,那么在一個較長的時間周期內(nèi),節(jié)點獲得的出塊權(quán)占比將無限趨近于有效算力在全網(wǎng)算力的占比,“運氣”對幸運值的影響可以說是比較小的。所以為了確保相對較高的幸運值,提升WinningPoSt的成功率是唯一的手段。
經(jīng)星云Nebula技術(shù)團(tuán)隊總結(jié),使用以下手段可以讓集群順利通過WinningPoSt,最終確?!耙怀鰤K權(quán)一出塊獎勵”。 ①良好的網(wǎng)絡(luò)狀態(tài):順暢的網(wǎng)絡(luò)傳輸可以確保節(jié)點的計算結(jié)果第一時間被廣播到Filecoin網(wǎng)絡(luò)上,縮短出塊獎勵獲取時間,同時還能維持節(jié)點與區(qū)塊高度的同步,避免廣播時出現(xiàn)異常。對于有條件的礦工,星云Nebula系統(tǒng)建議使用BGP(邊界網(wǎng)關(guān)協(xié)議)網(wǎng)絡(luò)來搭設(shè)Filecoin集群。 ②優(yōu)秀的存儲讀寫速度:獲得出塊權(quán)后,需要抽取扇區(qū)數(shù)據(jù)。因存儲硬件或軟件異常導(dǎo)致的讀寫不穩(wěn)定及讀取速度緩慢會使數(shù)據(jù)抽取失敗,直接導(dǎo)致無法出塊。 ③強大的運算能力:WinningPoSt時間極短,而運算超時也將導(dǎo)致無法獲得出塊獎勵。除了足夠配置的硬件外,算法方面的優(yōu)化也極其重要。星云Nebula系統(tǒng)針對WinningPoSt的計算進(jìn)行了大量代碼層面的優(yōu)化,較大程度上縮減了整個計算的所需時間,從根本上杜絕了因為計算超時導(dǎo)致的出塊獎勵丟失。
熱點:挑戰(zhàn)自己