以太坊網(wǎng)絡(luò)
分布式, 在共識的基礎(chǔ)上由參與節(jié)點維護(hù)和保護(hù)區(qū)塊鏈的點對點網(wǎng)絡(luò)。請參閱挖礦慨蓝。
以太坊網(wǎng)絡(luò)統(tǒng)計
EthStats.net?是以太坊網(wǎng)絡(luò)實時統(tǒng)計的儀表板揪利。該儀表板顯示重要信息旦装,例如當(dāng)前區(qū)塊,哈希難度蓄氧,天然氣價格和天然氣支出函似。網(wǎng)頁上顯示的節(jié)點只是網(wǎng)絡(luò)上實際節(jié)點的選擇。任何人都可以將他們的節(jié)點添加到EthStats儀表板喉童。Github上的Eth-Netstats README描述了如何連接撇寞。
EtherNodes.com?在以太網(wǎng)主網(wǎng)和現(xiàn)代測試網(wǎng)上顯示節(jié)點數(shù)量和其他信息的當(dāng)前和歷史數(shù)據(jù)。
Distribution of client implementations on the current live network?:? 以太鏈的實時統(tǒng)計.?
公有鏈,私有鏈和聯(lián)盟鏈
今天的大多數(shù)以太坊項目都依靠以太坊作為公共區(qū)塊鏈堂氯,該區(qū)塊鏈可以接入更多的用戶蔑担,網(wǎng)絡(luò)節(jié)點,貨幣和市場咽白。然而啤握,通常有理由選擇私人區(qū)塊鏈或聯(lián)盟區(qū)塊鏈(在一組受信任的參與者中)。例如晶框,許多垂直行業(yè)的公司(如銀行業(yè)務(wù))都希望以太坊成為自己的私人區(qū)塊鏈的平臺排抬。
以下是博客文章“公共和私人區(qū)塊鏈”的摘錄,其中解釋了基于權(quán)限的三種區(qū)塊鏈之間的區(qū)別:
公開區(qū)塊鏈:公開區(qū)塊鏈?zhǔn)鞘澜缟先魏稳硕伎梢蚤喿x的區(qū)塊鏈授段,世界上任何人都可以發(fā)送交易蹲蒲,并希望在他們有效的情況下將其包括在內(nèi),并且世界上的任何人都可以參與共識流程 - 流程用于確定添加到鏈中的塊以及當(dāng)前狀態(tài)侵贵。作為集中或準(zhǔn)中央信任的替代品悠鞍,公共區(qū)塊鏈通過隱含經(jīng)濟(jì)學(xué)得到保護(hù) - 經(jīng)濟(jì)激勵和使用機(jī)制的密碼驗證相結(jié)合,例如工作證明或股權(quán)證明模燥,遵循一般原則,即某人可以擁有的程度共識過程中的影響力與他們可以承擔(dān)的經(jīng)濟(jì)資源的數(shù)量成正比掩宜。這些區(qū)塊鏈通常被認(rèn)為是“完全去中心化的”蔫骂。
聯(lián)盟區(qū)塊鏈:聯(lián)盟區(qū)塊鏈?zhǔn)且粋€區(qū)塊鏈,其共識流程由預(yù)先選定的一組節(jié)點控制;例如牺汤,可以想象一個由15家金融機(jī)構(gòu)組成的聯(lián)盟辽旋,每個聯(lián)盟都運營一個節(jié)點,其中10個必須簽署每個區(qū)塊才能使區(qū)塊有效。閱讀區(qū)塊鏈的權(quán)利可能是公開的补胚,或者僅限于參與者码耐,并且還有混合路線,例如區(qū)塊的根哈希值與API一起公開溶其,允許公眾成員進(jìn)行有限數(shù)量的查詢?nèi)』貐^(qū)塊鏈狀態(tài)某些部分的密碼證明骚腥。這些區(qū)塊鏈可能被視為“部分去中心化”。
私有區(qū)塊鏈:完全私有區(qū)塊鏈?zhǔn)菂^(qū)塊鏈瓶逃,寫權(quán)限集中在一個組織中束铭。讀取權(quán)限可能是公開的或限制在任意范圍內(nèi)∠峋可能的應(yīng)用包括單個公司內(nèi)部的數(shù)據(jù)庫管理契沫,審計等,因此在許多情況下公眾可讀性可能不是必要的昔汉,但在其他情況下懈万,需要公共可審計性。
雖然這些私有/聯(lián)盟區(qū)塊鏈可能與公有區(qū)塊鏈沒有任何關(guān)系靶病,但他們?nèi)匀煌ㄟ^投資以太坊軟件開發(fā)來為整個以太坊生態(tài)系統(tǒng)做出貢獻(xiàn)会通。隨著時間的推移,這將轉(zhuǎn)化為軟件改進(jìn)嫡秕,共享知識和就業(yè)機(jī)會渴语。
如何連接
Geth不斷嘗試連接到網(wǎng)絡(luò)上的其他節(jié)點,直到它具有對等點昆咽。如果您的路由器上啟用了UPnP或在面向Internet的服務(wù)器上運行了以太網(wǎng)驾凶,它還會接受來自其他節(jié)點的連接。
Geth通過稱為發(fā)現(xiàn)協(xié)議的東西找到同行掷酗。在發(fā)現(xiàn)協(xié)議中调违,節(jié)點彼此閑聊以找出網(wǎng)絡(luò)上的其他節(jié)點。為了最初開始泻轰,geth使用一組引導(dǎo)節(jié)點技肩,其終點記錄在源代碼中。
檢查連接和ENODE ID
要檢查交互式控制臺中客戶端連接的對等點的數(shù)量浮声,net模塊有兩個屬性虚婿,可以為您提供關(guān)于對等點數(shù)量以及您是否是偵聽節(jié)點的信息。
要獲得有關(guān)連接的對等方的更多信息(如IP地址和端口號泳挥,支持的協(xié)議)然痊,請使用admin對象的peers()函數(shù)。admin.peers()返回當(dāng)前連接的對等體列表屉符。
要檢查geth使用的端口并找到您的enode URI剧浸,請執(zhí)行以下操作:
加快區(qū)塊鏈的下載速度
當(dāng)您啟動以太坊客戶端時锹引,以太坊區(qū)塊鏈會自動下載。下載以太坊區(qū)塊鏈所需的時間可能因客戶端唆香,客戶端設(shè)置嫌变,連接速度和可用對等點的數(shù)量而異。以下是更快速獲取以太坊區(qū)塊鏈的一些選項躬它。
使用geth
如果您正在使用geth客戶端腾啥,則可以采取一些措施加速下載以太坊區(qū)塊鏈的時間。如果您選擇使用--fast標(biāo)志執(zhí)行以太坊快速同步虑凛,則不會保留過去的事務(wù)數(shù)據(jù)碑宴。
在執(zhí)行全部或部分正常同步操作后,您不能使用此標(biāo)志桑谍,這意味著在使用此命令之前延柠,不應(yīng)該有以太坊區(qū)塊鏈的任何部分。 有關(guān)更多信息锣披,請參閱此以太坊Stack.Exchange答案贞间。
以下是您希望更快速地同步客戶端時使用的一些標(biāo)志。
--fast:?
此標(biāo)志可以通過狀態(tài)下載進(jìn)行快速同步雹仿,而不是下載完整的塊數(shù)據(jù)增热。這也將大幅減少區(qū)塊鏈的大小。注意:只有在您從頭開始同步您的區(qū)塊鏈并僅出于安全原因第一次下載區(qū)塊鏈時胧辽,才能運行fast峻仇。看到這個Reddit帖子獲取更多信息邑商。
--cache=1024
兆字節(jié)的內(nèi)存分配給內(nèi)部緩存(最小16MB /數(shù)據(jù)庫強(qiáng)制)摄咆。默認(rèn)值是16MB,因此根據(jù)您的計算機(jī)有多少RAM應(yīng)該有所作為人断,將此數(shù)值增加到256,512,1024(1GB)或2048(2GB)吭从。
--jitvm
該標(biāo)志啟用JIT VM。
控制臺的完整示例命令:
有關(guān)快速同步和區(qū)塊鏈下載時間的更多討論,請參閱此Reddit帖子。
導(dǎo)出/導(dǎo)入?yún)^(qū)塊鏈
如果已經(jīng)同步完整的以太坊節(jié)點馆蠕,則可以從完全同步的節(jié)點導(dǎo)出區(qū)塊鏈數(shù)據(jù)并將其導(dǎo)入到新節(jié)點中。您可以通過geth export filename導(dǎo)出完整節(jié)點并使用geth import filename將區(qū)塊鏈導(dǎo)入到您的節(jié)點中來完成geth缤灵。詳情請看這個鏈接
靜態(tài)節(jié)點,信任節(jié)點和啟動節(jié)點
Geth支持一個稱為靜態(tài)節(jié)點的功能,如果您有某些您始終想要連接的對等節(jié)點。靜態(tài)節(jié)點在斷開連接時重新連接。您可以通過在 /static-nodes.json中添加如下內(nèi)容來配置永久靜態(tài)節(jié)點(這應(yīng)該與您的chaindata和keystore文件夾所在的文件夾相同)
您還可以使用admin.addPeer()通過Javascript控制臺在運行時添加靜態(tài)節(jié)點
常見的連接問題
有時你就是無法連接辆床。最常見的原因是:
*你當(dāng)?shù)氐臅r間可能不正確。參加以太坊網(wǎng)絡(luò)需要準(zhǔn)確的時鐘桅狠。檢查你的操作系統(tǒng)如何重新同步你的時鐘(例如sudo ntpdate -s time.nist.gov),因為即使是12秒太快也可能導(dǎo)致0個同級。
* 某些防火墻配置可能會阻止UDP通信流量中跌。您可以使用控制臺上的靜態(tài)節(jié)點功能或admin.addPeer()手動配置連接咨堤。
要在沒有發(fā)現(xiàn)協(xié)議的情況下啟動geth,可以使用--nodiscover參數(shù)漩符。在運行測試節(jié)點或在運行實驗測試網(wǎng)絡(luò)時, 可以這么做.?