Aptos Wiki
MoveMove 社区Aptos 链接合集Sui WikiStarcoin Wiki
  • 🎉欢迎
  • 💡概览
    • 起源
    • 愿景
    • 主网路线图
    • 激励测试网(1)
    • 技术路线图
    • 激励测试网(2)
    • 激励测试网(3)
    • 激励测试网(4)
  • 📌基础
    • 账户(Account)
    • 事件(Events)
    • 证明(Proof)
    • Gas 和交易费
    • 节点网络和同步
    • 验证者节点
    • 全节点
    • 交易和状态
  • 🔄交易
    • 与 Aptos 区块链交互
  • 📓教程
    • Petra 钱包插件安装使用
    • 教程指引
    • 您的第一笔交易
    • 您的第一个 Move 模块
    • 您的第一个 NFT
    • 运行本地网络
    • 开发网 Devnet
      • 运行全节点(官方教程)
      • 运行全节点(社区教程)
        • Windows
        • Linux
    • 测试网 Testnet
      • 社区教程
        • AIT-3 新功能
        • 节点要求
        • AIT-3 步骤
        • 使用 Docker
        • 全节点搭建
        • 加入测试网
        • 离开激励测试网
  • 🖊️博客
    • Block-STM:我们如何在 Aptos 区块链上每秒执行超过 16 万笔交易
  • 🗻生态
    • Aptos 宣布资助计划!
    • Aptos 生态项目汇总
      • 聚合器
        • Hippo Labs
      • Defi
        • 🟢Pontem Network
        • 🟢Vial Protocol
        • 1KX Protocol
        • Seam Money
        • Aries Markets
        • Empo Finance
        • Ultima protocol
        • Econia
        • Zaptos Finance
        • Laminar Market
        • Thala Labs
        • AptoSwap
        • Aptoslend
        • ASwap
      • 基础设施
        • 🟢Aptos 域名服务
        • Nutrios
        • Dialect
        • Switchboard
      • NFT
        • 🟢Topaz NFT Marketplace
        • TokenMasksLabs
        • Clone Protocol
        • Aptos Ape Society
      • 钱包
        • 🟢Fewcha Wallet
        • 🟢Martian Wallet
        • Volt.id wallet
        • ONTO Wallet
        • Hive Wallet
        • Blocto
      • 工具
        • ChainIDE
        • Paymagic
        • Aptosphere
        • Saber Labs
  • ❓问题(FAQ)
    • 常见问题
    • 如何分享自己的节点
    • 如何运行多个节点
    • 如何修改节点配置文件
Powered by GitBook
On this page
  • 概述
  • 验证者节点组件​
  1. 基础

验证者节点

Previous节点网络和同步Next全节点

Last updated 3 years ago

Aptos 节点是 Aptos 生态系统的一个实体,用于跟踪 Aptos 区块链的状态。 客户端通过 Aptos 节点与区块链交互。 有两种类型的节点:

  • 验证者节点(本篇)

每个 Aptos 节点都包含几个逻辑组件:

软件可以配置为作为验证节点或全节点运行。

概述

当一笔交易提交到 Aptos Blockchain 时,验证者节点运行分布式共识协议(),执行交易,并将交易和执行结果存储在区块链上。验证者节点决定哪些交易将被添加到区块链中以及以何种顺序添加。

Aptos 区块链使用拜占庭容错 (BFT) 共识协议,让验证者节点就最终交易的账本及其执行结果达成一致。验证器节点处理这些交易并将它们包含在区块链数据库的本地副本中。这意味着最新的验证器节点始终在本地维护区块链当前状态()的副本。

验证器节点通过专用网络直接与其他验证器节点通信。 全节点()是最终交易历史的外部验证和/或传播资源。它们从对等点(peers)接收交易并可能在本地重新执行它们(与验证器执行交易的方式相同)。 FullNode 将重新执行的交易结果存储到本地存储中。这样做,他们可以挑战验证者的任何犯规行为,并在有任何尝试重写或修改区块链历史时提供证据。这有助于减轻验证者的腐败和/或勾结。

AptosBFT 共识协议为多达三分之一的恶意验证节点提供容错能力。

Mempool 是每个节点中的一个组件,它保存已提交到区块链但尚未商定或执行的交易的内存缓冲区。 此缓冲区在验证器节点和 FullNode 之间复制。

FullNode 的 JSON-RPC 服务将交易发送到验证节点的内存池。 Mempool 对交易进行各种检查,以确保交易的有效性并防止 DOS 攻击。 当一个新的交易通过初始验证并被添加到内存池中时,它会被分发到网络中其他验证者节点的内存池中。

当验证者节点暂时成为共识协议的领导者时,共识会从内存池中提取交易并提出新的交易块。 该区块被广播给其他验证者,并包含该区块中所有交易的总排序。 然后每个验证者执行区块并提交是否接受新区块提案的投票

共识(Consensus)是负责通过与网络中的其他验证节点参与共识协议来对交易块进行排序并就执行结果达成一致的组件。

执行器(Execution)是协调事务块执行并保持瞬态状态的组件。 共识投票在这个短暂的状态。 执行器维护执行结果的内存表示,直到共识将块提交到分布式数据库。 执行器使用虚拟机执行事务。 执行器充当系统输入(由交易表示)、存储(提供持久层)和虚拟机(用于执行)之间的粘合层。

虚拟机 (VM) 用于在每个交易中运行 Move 程序并确定执行结果。 节点的内存池使用虚拟机对交易进行验证检查,而执行器使用虚拟机执行交易。

存储(Storage)组件用于将商定的交易块及其执行结果保存到本地数据库。

节点使用它们的状态同步器(State synchronizer)组件来“赶上”区块链的最新状态并保持最新状态。

验证者节点组件

Mempool

Consensus

Execution

Virtual machine (VM)

Storage

State synchronizer

📌
​
​
​
​
​
​
​
全节点
REST service
Aptos-core
consensus protocol
state
Fullnodes
Mempool
Consensus (disabled in FullNodes)
Execution
Virtual Machine
Storage
State synchronizer