以太坊系列之六: p2p模塊--以太坊源碼學習


p2p模塊

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網絡實現自己的協議,可以完全與以太坊應用沒關系.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM