p2p,网络部分主要由 TcpStream 完成。
与业务相关的“网络管理”和“事件处理”。几部分:
- 本地网络配置,与具体业务无关
- 本地网络与远程网络协作,与具体业务无关
- 数据在本地网络与远程网络之间进行传输,与具体业务有关
一些术语:
链接、握手、消息、节点、网络、协议、服务、存储等。
网络交互
Chain
Pool
Net
基本上是在这三者之前产生。
核心
以 Server 为入口,包含三大模块:
Peer 网络
PeerStore 存储
ChainAdapter 区块链。
功能
网络管理(本地与远程,即节点与网络)
与其它模块交互(事件处理,即发送与接收)
功能包含但不限定:
节点发现:P2P相关,是非常独立和成熟的一块,通过节点发现这个模块获得种子节点,然后通过种子节点来获取其他更多的节点。
交易同步:在各个节点之间同步交易。
区块同步:又称为被动区块同步,如果发现存在区块高度高于自己的其他节点时,不断请求区块同步。
新区块快速广播模块:新区块主动同步,当挖到一个新的区块时进行强制广播,从而更快的在全网传播。