以太坊系列之六 p2p模組 以太坊原始碼學習

2021-09-20 01:52:06 字數 470 閱讀 5687

p2p模組對外暴露了server關鍵結構,幫助上層管理複雜的p2p網路,使其集中於protocol的實現,只關注於資料的傳輸.

server使用discover模組,在指定的udp埠管理網路中結點的發現以及維護,discover模組能夠直接和臨近結點交換各自已知結點資訊,從而不斷的更新結點網路.

server還是用nat模組來進行tcp埠對映,而nat主要是利用upnp和pmp兩個協議,如果沒有,那就只能認為指定的ip就是公網ip了.

server要同時在udp和tcp的30303埠和p2p網路進行資料交換,前者是用來維護p2p網路,後者則是各種應用協議真正交換資料的地方.他們使用的格式是msg,具體見 p2p_server.

關於server以及protocol如何使用可以見 peer-to-peer 雖然不是很詳細,但是已經基本上說明了server以及protocol如何使用,感興趣可以基於這個p2p網路實現自己的協議,可以完全與以太坊應用沒關係.

以太坊p2p模組 以太坊原始碼學習

p2p模組對外暴露了server關鍵結構,幫助上層管理複雜的p2p網路,使其集中於protocol的實現,只關注於資料的傳輸.server使用discover模組,在指定的udp埠管理網路中結點的發現以及維護,discover模組能夠直接和臨近結點交換各自已知結點資訊,從而不斷的更新結點網路.ser...

以太坊 P2P網路

1.chord 概念 chord是什麼 chord是乙個演算法,也是乙個協議。作為乙個演算法,chord可以從數學的角度嚴格證明其正確性和收斂性 作為乙個協議,chord詳細定義了每個環節的訊息型別。chord還可以被作為乙個一致性雜湊 分布式雜湊 dht 的實現。覆蓋網路 overlaynetwo...

以太坊p2p模組的dial 以太坊原始碼學習

dial.go是負責和peer建立連線關係的地方,主要是實現 type dialer inte ce dialstate schedules dials and discovery lookups.it get s a chance to compute new tasks on every ite...