节点和子网区块链

Internet Computer 子网区块链为执行软件操作提供物理硬件和资源(如 CPU 和内存)。每个子网都是一个区块链,由一些分散的、独立拥有和控制的机器(称为节点的连接的对等计算机)组成,它们运行 Internet Computer 协议的软件组件。

在每个节点上运行的 Internet Computer 软件组件称为副本,因为它们在子网区块链中的所有节点之间复制状态和计算。

副本的核心组件被组织成以下逻辑层:

  • 一个对等 (P2P) 网络层,它从用户、其子网区块链中的其他节点以及其他子网区块链收集和发布消息。对等层接收到的消息被复制到子网中的所有节点,以确保安全性、可靠性和弹性。

  • 一个*共识*层,它选择和排序从用户和不同子网收到的消息,以创建区块链块,这些区块可以通过拜占庭容错共识进行公证和最终确定,从而形成不断发展的区块链。这些最终确定的块被传递到消息路由层。

  • 一个*消息路由*层,在子网之间路由用户和系统生成的消息,管理 dapp 的输入和输出队列,并安排消息的执行。

  • 一个*执行环境*,通过处理从消息路由层接收到的消息来计算执行智能合约所涉及的确定性计算。

下图简要概述了在开发环境中部署为 local canister execution environment 的 Internet Computer 协议组件。

Internet Computer components in a developer’s environment

作为开发人员,没有必要了解您的 dapp 以及用户与 dapp 的交互如何通过 Internet Computer 架构路由或在区块链网络上复制的详细信息。 但是,对关键组件的一般理解可能会很有用,因为开发环境包括副本组件,以提供用于部署的 {EE} 和对生产部署工作流的真实感。