Nodes and Node Operators
This article aims to provide a clear understanding of what is meant by the terms “node” and “node operators”.
At the end of this article, readers will be able to understand what different types of nodes are, how they function, and why we require node operators.
This article requires no previous knowledge from readers but a previous understanding of blockchain will help.
We will start from blockchain and node and move on to node operators from that.
Let’s dive in.
What is a blockchain?
Blockchain is a peer-to-peer, Distributed Ledger Technology(DLT) that allows data to be stored globally on thousands of servers, with any network user being able to see all the entries that appear at any time and verify the data integrity, which makes it nearly impossible to gain control of the network.
A blockchain collects information together in groups, known as blocks. Blocks hold sets of information, have certain storage capacities and, when filled, are closed and linked to the previously filled block, forming a chain of data known as the blockchain.
Every time a new transaction occurs on the blockchain, a record of that transaction is added to every participant’s ledger.
What is a node?
In computer science, the term “node” simply means a device that plays a part in a larger network.
A “node” is any instance of blockchain that is connected to other computers also running an instance of blockchain, forming a network.
If you wondered where the blockchain is — it is in the nodes. The nodes store, spread, and preserve the blockchain.
On a blockchain, all the nodes are connected and they continuously exchange the newest information with each other.
A block broadcasts all the network nodes when a miner seeks to add a new block of transactions to the blockchain. Based on the legitimacy of a block, nodes might accept or reject it (validity of signatures and transactions). When a node accepts a new block of transactions, it gets broadcast from node to node so that every one of them can update its database in the same way.
Different types of nodes
Nodes can be differentiated and classified based on various parameters.
We will differentiate the nodes based on two parameters; consumption of data and role in the blockchain network.
Based on data consumption-
There are three different types of nodes that consume data differently.
Full Node
A “full node” is a node that stores full blockchain data (although this is periodically pruned so a full node does not store all state data back to genesis). A full node participates in block validation and verifies all blocks and states. All states can be derived from a full node (although ancient states are reconstructed from requests made to archive nodes). A full node serves the network and provides data on request.
Light Node
Instead of downloading every block, “light nodes” download block headers. These headers only contain summary information about the contents of the blocks. Any other information required by the light node gets requested from a full node. The light node can then independently verify the data they receive against the state roots in the block headers
Archive Node
An “archive node” stores everything kept in the full node and built an archive of historical states. It is needed if you want to query something like an account balance at block #4,000,000, or simply and reliably test your transactions set without mining them using tracing.
This data can be handy for services like block explorers, wallet vendors, and chain analytics.
Syncing clients in any mode other than archive will result in pruned blockchain data. This means, there is no archive of all historical states but the full node can build them on demand.
Based on role in the blockchain network-
A single type of node’s function may vary from another node’s. Certain nodes, for example, are configured to verify a transaction, while others are merely responsible for recording the transaction. A node may also exchange data with other nodes at times.
There are four different types of nodes that can be differentiated based on their role in the network.
Reader Node
A “reader node” is a node that only reads the information on the blockchain and does not perform paid services. It stores full blockchain data but does not participate in block validation.
Baker Node
A “baker node” is a node that produces and validates blocks. Revenue is generated from user payment on transactions in the blocks produced and validated by the node.
ZK Node
A “ZK node” is a node that performs zero knowledge computations in addition to baker node services.
Oracle Node
An “Oracle node” is a node that performs oracle services in addition to ZK and baker services.
What is a node operator?
A node operator runs software that keeps a full copy of the blockchain, i.e., nodes and broadcasts transactions across the network. Nodes are needed to make blockchains work.
The node operator installs the basic resources, technologies, and infrastructure to set up and manage the blockchain-connected nodes.
Nodes need to have enough RAM, disk space, bandwidth, etc. to stay operational and serve the network. An operator ensures that nodes run with enough resources to keep nodes stable and performant.
Why do we need a node operator?
Like other stakeholders in the network (i.e.. miners, stakers, developers, and users), node operators are vital to the operation, security, and health of blockchains because they keep all participants honest and assure data integrity.
Most blockchain networks utilize monetary incentives, such as mining or staking, to motivate users to operate complete nodes. However, regardless of the incentives, users put up their complete nodes freely because they believe in the future of a project and want to assist and preserve it as much as possible.
Keep following ChainDeck for more insightful articles and learn more about the web3 space.
References -
- https://www.investopedia.com/terms/b/blockchain.asp
- https://www.coindesk.com/learn/what-is-a-node/
- https://ethereum.org/en/developers/docs/nodes-and-clients/
- https://www.blockchainecosystem.io/ask/what-does-it-mean-to-be-a-blockchain-node-operator-are-there-any-blockchains-out-there-that-don-t-have-node-operators
- https://www.blockchain-council.org/blockchain/blockchain-nodes/#:~:text=A%20node%20is%20a%20component,to%20keep%20track%20of%20cryptocurrencies.