Skip to content
You are reading Hyperledger Besu development version documentation and some displayed features may not be available in the stable release. You can switch to stable version using the version box at screen bottom.
Last update: September 29, 2021

Node types

Besu supports two node types, commonly referred to as full nodes and archive nodes.

Full nodes have the current state of the blockchain so cannot serve the network with all data requests (for example, the balance of an account at an old block). Full nodes can guarantee the latest state for the blockchain (and some older states, but not all). You can check current balances, sign and send transactions, and look at current dapp data.

Archive nodes have all of this and they also store the intermediary state of every account and contract for every block since the genesis block. An archive node can do everything a full node does, and it can access historical state data.

For Besu on MainNet, archive nodes require significantly more disk space (approximately 3TB) than full nodes (approximately 750GB).

Note

Besu running on other public testnets, such as Ropsten, and other Ethereum clients have different disk space requirements.

Run a full node

To run a full node, enable fast synchronization using --sync-mode=FAST.

Fast synchronization downloads the block headers and transaction receipts, and verifies the chain of block headers from the genesis block.

When starting fast synchronization, Besu first downloads the world state for a recent block verified by its peers (referred to as a pivot block), and then begins fast synchronization from the genesis block.

Important

Fast synchronization is the default for named networks specified with the --network option, except for the dev development network.

Fast synchronization is also the default if Ethereum mainnet is being connected to by not specifying the --network and --genesis-file options.

Note

To improve performance, or if the fast sync is taking a long time to complete, use --fast-sync-min-peers to increase the number of peers to at least 8.

Run an archive node

To run an archive node, enable full synchronization using --sync-mode=FULL.

Full synchronization starts from the genesis block and reprocesses all transactions.

Questions or feedback? You can discuss issues and obtain free support on Hyperledger Besu chat channel.
For Hyperledger Besu community support, contact the mailing list besu@lists.hyperledger.org