Filecoin节点的概念。尽管在Filecoin的Lotus实现中不同的节点类型没有在其他区块链网络中严格定义,但是不同类型的节点应实现不同的属性和功能。简而言之,基于节点提供的服务集对其进行定义。
在本节中,我们还将讨论与在Filecoin节点中存储系统文件有关的问题。请注意,在本节中,通过存储,我们不是指节点为在网络中进行挖掘而提交的存储,而是指它需要可用于密钥和IPLD数据的本地存储库。
在本节中,我们还将讨论网络接口以及节点之间如何查找和连接,如何使用libp2p交互和传播消息以及如何设置节点的时钟。
节点类型
Filecoin网络中的节点主要根据其提供的服务进行标识。因此,节点的类型取决于节点提供的服务。Filecoin网络中的一组基本服务包括:
- 链验证
- 仓储市场客户
- 存储市场提供商
- 检索市场客户
- 检索市场提供者
- 仓储采矿
参与Filecoin网络的任何节点都应至少提供链验证服务。根据节点在链验证之上提供的额外服务,它会获得相应的功能和节点类型“标签”。
可以使用主机中的存储库(目录)以一对一关系实现节点-即,一个存储库属于单个节点。也就是说,一台主机可以通过具有相应的存储库来实现多个Filecoin节点。
Filecoin实现可以支持以下子系统或节点类型:
- 链验证器节点:这是节点加入Filecoin网络所需的最低功能。除非实现以下所述的客户端节点功能,否则这种类型的节点无法在网络中发挥积极作用。链验证器节点首次加入网络时必须同步链(ChainSync),以达成当前共识。从那时起,该节点必须不断获取链中的任何附加内容(即,接收最新的块)并验证它们是否达到共识状态。
- 客户端节点:这种类型的节点建立在Chain Verifier节点之上,并且必须由Filecoin网络上构建的任何应用程序来实现。可以将其视为基于Filecoin的应用程序(例如交易所或分散存储应用程序)的主要基础结构节点(至少就与区块链的交互而言)。该节点应