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