以太幣交易所 以太幣交易所
Ctrl+D 以太幣交易所
ads

科普 | 理解以太坊的 P2P 網絡_以太坊

Author:

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

作者:LarryHu

翻譯&校對:haiki&阿劍

來源:以太坊愛好者

此文旨在幫助你理解P2P網絡,并闡述一些以太坊的實現細節。P2P技術利用終端設備的豐富資源,能夠緩解中心化系統的短板,而且從九十年代開始,這項技術就已經被eMule,bitTorrent和Skype等知名軟件所采用。P2P技術也是比特幣或者以太坊區塊鏈系統的核心組件。很多人都聽說過P2P,但是不知道它到底是什么。那就讓我們從了解什么是P2P網絡開始吧。

什么是P2P網絡?

點對點網絡是一種網絡覆蓋層——就是說,它是建立在公開互聯網之上的。從數學的角度來說,P2P網絡可以被視作一個有向圖G=(V,E),其中V是網絡中的對等節點集合,E?是對等節點所連成的邊的集合。每個對等節點p都有一個獨一無二的標識號pid。集合E中的邊指p可通過直接相連的路徑向q發送消息;也就是說,p使用q的pid作為目的地址,在網絡之上向q發送消息。盡管在底層的TCP/IP網絡中,相似的IP地址可以轉譯為在地理位置上相互接近,但很少有這么明確的直接關聯。

動態 | 區塊鏈技術入選科普雜志《科學美國人》2019十大突破性技術榜單:據新浪網今日新聞報道,美國科普雜志《科學美國人》公布 2019 十大突破性技術榜單。區塊鏈技術因在保障食品安全中的作用而上榜。 入選榜單具體原因:區塊鏈技術的發展應用將顯著改善食品污染源數據追蹤的困境。利用區塊鏈云端系統,食品制造商可以依次在計算機儲存各類過程的信息。[2019/9/29]

理想情況下,所有的對等節點間都應該有一條路徑相連。但因為每個節點對網絡拓撲和其他對等節點只有一個不完整的視圖,所以網絡覆蓋層需要中間節點將消息轉發至正確目的。圖的結構為每對節點提供了多條中間路徑,因此就算對等節點改變,也可通過圖的連通性提供網絡的恢復能力。對每個對等節點來說,圖的連通性通過與其他對等節點的鄰接關系來反映。當對等節點加入或者離開網絡,鄰接的對等節點可能會持有不正確的鄰接信息。因此使用網絡覆蓋層維護機制保存更新的鄰接信息,使得所有節點間保持連通性。

動態 | 幣安科普MimbleWimble算法:幣安官方推特今日發布隱私算法Mimblewimble的科普貼,在下方留言區大量網友留言猜測是否是基于 Mimblewimble算法的隱私幣Grin或者Beam即將登陸幣安交易所,其中猜測Grin的呼聲更高。[2019/9/2]

P2P網絡中的參與者向其他網絡參與者提供部分資源。不需要中心化的協調者,每個對等節點都可貢獻計算周期,磁盤存儲和網絡帶寬。傳統的客戶端-服務器模型中,服務器提供資源,客戶端使用資源;與之相對的,在P2P網絡中,對等節點既是網絡資源的供應者,也是消費者。因此,P2P網絡可以很好地解決客戶端-服務器模型下的一些短板,比如可擴展性和單點故障。

動態 | 央行官微舊文重發“再科普”:范一飛詳解數字貨幣:據中國經濟網消息,今日,央行官微公眾號頭條重新發布央行副行長范一飛在2018年1月25日題為《關于央行數字貨幣的幾點考慮》的文章,對央行數字貨幣再次進行科普。同時,微信公眾號第二條發布支付司副司長穆長春8月10日在第三屆中國金融四十人伊春論壇上的演講。近年來,各主要國家和地區央行及貨幣當局均在對發行央行數字貨幣開展研究,新加坡央行和瑞典央行等已經開始進行相關試驗,人民銀行也在組織進行積極探索和研究。[2019/8/21]

一般來說,P2P網絡會有一個門檻,節點的資源貢獻高于這個門檻才能加入網絡。度量資源貢獻的標準應該是公平的,比如說,要求網絡中每個對等節點的平均貢獻應該在P2P系統總體平均值的統計范圍內等。資源貢獻應該是雙方互惠的。付出貢獻后可得到的利益,吸引著用戶加入P2P應用。

以太坊的P2P網絡是如何工作的?

以太坊的官方客戶端節點軟件?Geth,基于一種覆蓋層維護機制實現了對等節點發現協議。雖然Kademlia是為了在P2P網絡中有效地定位和存儲內容而設計的,以太坊的P2P網絡只用它來發現新的對等節點。

動態 | 美國演說家Anthony Robbins開始科普什么是比特幣:美國演說家安東尼·羅賓(Anthony Robbins)在自己的網站上發布了一篇比特幣的科普文章,并在推特上向自己的粉絲介紹什么是比特幣,目前他的推特賬戶共有粉絲304萬人。[2019/1/1]

Kademlia

以太坊網絡中,每個客戶端節點都配備有一個?

enode?ID,之后將此ID用SHA3算法

散列為一個256位的值。Kademlia使用XOR操作定義距離,因此兩個256位的數字之間的距離是他們的按位異或值。每個對等節點都擁有一個包含256個不同的桶的數據結構,每個桶i中存儲與本節點距離在2

i-1?到2

i?之間的16個節點。為了發現一個新的對等節點,以太坊節點選擇自己作為目標x,從桶中尋找到16個與目標x最近的節點,之后請求這16個節點,讓它們從自己的桶中各找出16個與目標x“更近”的節點并返回,這樣以來,會得到至多16x16個新發現的節點。之后請求這16x16個新發現的節點中離目標x最近的16個節點,讓它們返回與x更近的16個節點。這個過程持續迭代,直到沒有新節點被發現。

財政部副部長朱光耀:數字經濟還處在發展的過程中,要以科普、推動的態度來推進數字經濟發展:今日,在中國發展高層論壇2018年會上,財政部副部長朱光耀表示:“數字經濟還處在發展的過程中,要以科普、推動的態度來推進數字經濟發展。也要關注數字經濟的其他影響,包括稅收征管、反洗錢監管措施等要跟上。”[2018/3/25]

-異或操作示意圖-

-bucket與距離對應的示意圖-

對等節點間通信

Geth使用UDP連接交換P2P網絡的信息。有4種類型的UDP消息。一條?

*ping*?消息請求一條?

*pong*?消息作為返回。此對消息用來判斷相鄰節點是否可響應。一條?

*findnode*?消息請求一條?

*neighbors*?消息作為返回。當建立好對等節點的連接之后,Geth節點通過加密和認證的TCP連接來交換區塊鏈信息。

數據結構

Geth客戶端用兩種數據結構存儲其他節點的信息。第一種是稱作?

db?的長期數據庫,它存儲在磁盤內,客戶端重啟之后數據也是持久存在的。

db?中包含客戶端交互過的每個節點信息。db的每條記錄包含節點ID,IP地址,TCP端口,UDP端口,最后一次向節點發送ping的時間,最后一次從節點收到pong的時間,節點響應?

findnode?消息的失敗次數。如果最后一次從一個節點收到?

pong?消息的時間超過了一天,此節點將會被移出db。

第二種數據結構是稱作?table?的短期數據庫。當客戶端重啟時?table?是空的。table?包含256個桶,每個桶存儲至多16條記錄。每條記錄存儲其他以太坊節點的信息——節點的ID,IP地址,TCP端口和UDP端口。如果記錄中的某個節點對于?findnode?消息連續響應失敗,多于4次時將被移出table。

當某個客戶端第一次啟動時,它的db是空的,只知道6個硬編碼的引導節點。隨后,當客戶端開始發現對等節點,客戶端依據上面描述的機制,將節點加入db和table。

如果你想查閱更多關于以太坊P2P網絡的內容,可以參見下面一些由以太坊社區成員貢獻的文章:

“RLPxNodeDiscoveryProtocol”byFelixLange,Gustav-Simmonsson,andRomanMandeleil

“PeertoPeer”byFelixLange

“KademliaPeerSelection”byJamesRay

參考:

VasiliosDarlagiannis,(2010).P2PSystemsandOverlayNetworks,Retrieved

from:?https://www.iti.gr/iti/files/document/seminars/p2p_eketa_090610_v2.pdf

S.UmamaheswariandDr.V.Leela,(2011,Mar.01).P2POverlayMaintenanceAlgorithm,Retrievedfrom:?http://journals.sagepub.com/doi/pdf/10.1260/1748-3018.6.3.555

?

Tags:以太坊區塊鏈MBLTAB比特幣以太坊國內區塊鏈公司前十排名RMBL幣Fintab

比特幣價格今日行情
科普 | DeFi初學者指南_穩定幣

來源:nakamoko 翻譯:頭等倉?? 本文作者LindaXie,曾擔任Coinbase產品經理,現為區塊鏈風投基金ScalarCapital聯合創始人,其成名作就是她的幣種指南系列文章.

1900/1/1 0:00:00
無須許可的力量:加速加密起點的到來_WEB

前言:加密世界最強大的力量之一是其可組合性,它來源于無須許可性。由于區塊鏈公開、不被單個公司或組織控制、不可中斷、無法篡改,它具有了全新的特性.

1900/1/1 0:00:00
成都市以區塊鏈技術研究為核心的企業達35家,相關企業達298家_區塊鏈

日前,四川省區塊鏈行業協會發布的《四川省區塊鏈產業白皮書》指出,根據相關調查,目前全省擁有44家以區塊鏈技術研究為核心的企業,其中35家都選擇落戶成都.

1900/1/1 0:00:00
下一個反轉:DAO的數量超過Token的數量_DAO

DAO可以是一個社區,DAO可以是一種生態系統,DAO也可以是一類投資模式,DAO為我們帶來的可能性將遠遠超過Token。 當前全球有1500+種Token和?50個DAO.

1900/1/1 0:00:00
朱嘉明新作:認知未來貨幣需要新的思想資源_數字貨幣

作者:朱嘉明 來源:數字經濟公社 編者注:本文為著名經濟學家朱嘉明為龍白滔博士新書《數字貨幣:從石板經濟到數字經濟的傳承與創新》所作的序。我們已經進入21世紀的第三個十年.

1900/1/1 0:00:00
CBDC國際研發動態解析(一):七巨頭組團,“合成霸權CBDC”將誕生?_CBD

最近,在中國舉國上下抗擊新冠病疫情的同時,我們也來看看國際上CBDC研發推進情況,目前出現了以下幾種新動向.

1900/1/1 0:00:00
ads