It is well-established that nodes are essential for all the layers of web3 to function as they’re intended. Yet, understanding nodes, how they operate, what is a full node, what is an archival node, and many other questions pop up on a web3 developer’s journey.
Today, we’ll take a deep dive into all these nuances, compile comprehensive factoids related to full nodes, and present it to you for an in-depth understanding.
Let’s begin.
What is a Node?
At the bare bones of it, a node is a computer that runs software to validate and store transactions and their history on a network. In other words, if an application, smart contract, or user wants to interact with a blockchain, they do so through a node. Hence, nodes are known as “communication endpoints.”
That said, not every device connected to the blockchain is necessarily a node, and not every node connected to the blockchain performs the same function. And in general, nodes are known to maintain transaction history on the blockchain, but not all nodes perform this function. Essentially, the demands of a blockchain dictate the role a particular node needs to play, which is the beauty of nodes.
For instance, the Hyperledger Fabric blockchain demands a node to perform multiple roles to establish a modular architecture. Here, nodes perform different tasks for anchors, endorsers, users, and others.
What is a Node Used for & how does it Work?
In a blockchain, every block contains information, and each block is cryptographically connected to the consecutive block. It is known that if the ledger of one system is altered, the ledger of the rest of the systems retains the integrity of the information, and nodes are the reason for this distributed trustworthiness. So without nodes, a blockchain is just a database that is cryptographically secured.
A node’s fundamental objective is to maintain the consensus of a blockchain ledger, and this varies from one type of node to another.
There are various uses for a node depending on the blockchain, and the roles demanded of them. But here are be primary uses of a node:
1. Nodes act as points of communication within the blockchain.
2. They accept or reject transactions based on various factors.
3. They store cryptographically connected blocks.
4. They manage transactions and the validity of transactions.
Depending on the requirement and functionality, blockchain nodes can be basically classified into two types; full nodes and light nodes. There are two main functions of the Tezos node: running the gossip network and updating the context. Every Tezos node exchanges blocks and operations on the gossip network. The peer-to-peer network allows users to hop from one node to another until they reach a block baked by a baker. Using the blocks it receives on the gossip network, the node also keeps up with the current context, which is the full state of the blockchain.
Types of Full Nodes:
Now that you understand what a node is, how it works, and its purpose, let us address the elephant of the article, the alluring full node.
A full node contains and maintains the entire translation data on a blockchain. Hence, a blockchain full node is considered a server in a traditional setting, which relays information on demand.
The most important attribute of a full node is that they are a part of the blockchain governing model. This means that a blockchain can undergo improvements or upgrades only after a majority of full nodes agree to it. Full nodes have the strongest voting power on a blockchain of all types of nodes.
That said, there are scenarios where a significant number of full nodes agree to a modification but may not reach a majority consensus. In such a case, the probability of a hard cryptocurrency fork occurs where the blockchain may be split into two.
For instance, 51% of full nodes agree to a modification, and the remaining 49% don’t. In such a situation, the blockchain is split into two, the old blockchain continues operating as it is, but the new blockchain will function on the modifications proposed by the 51% full node consensus.
Furthermore, full nodes are of two types, archival nodes and pruned nodes.
1. Archival Nodes:
As the name suggests, archival nodes maintain the entire blockchain in their database, and these are the type of full nodes found most commonly on a blockchain. The significant difference between archival and pruned nodes is the availability of memory.
Various types of archival nodes are miner nodes, masternodes, staking nodes, and authority nodes.
Miner nodes
Miner nodes are predominantly used in Proof-of-Work (PoW) consensus mechanism that often needs higher energy consumption and computational power to perform complex mathematical computations to validate transactions. Nodes made to perform the mining process specifically are known as miners or miner nodes.
Masternodes
Masternodes only validate transactions and maintain the blockchain ledger but do not have the authority to add new blocks to the blockchain. They operate on a collateral-based system, meaning the operator must own a significant amount of cryptocurrency.
Staking Nodes
Staking nodes are primarily used in the proof-of-stake consensus mechanism where staking is involved. Using staking nodes, users can stake money, validate transactions, and avail rewards.
Here, nodes are selected based on pre-determined criteria like time spent on the network and coinage, and the selected node is allowed to validate a transaction and earn incentives.
Authority Nodes
As the name suggests, authority nodes authorize other nodes from joining a blockchain network, allowing or disallowing access to the rest of the nodes. However, this authority is limited to only a hand full of authority nodes in a private blockchain and some partially-centralized blockchains.
2. Pruned Nodes:
Pruned full nodes have limited space to hold data. They download the blocks to maintain the ledger but delete the oldest block and make space for the latest downloaded block. That said, older blocks are not completely deleted, but their vital metadata is preserved to maintain the fundamental principles of blockchain.
Types of Light Nodes:
While full nodes store all the information, light nodes only store relevant information on recent archives to avail the fastest access to the data. Like on a traditional server, a light node has to fetch newer information from the main server as it can only store previously requested information.
Furthermore, light nodes do not perform the functions of validating blocks but simply store the block headers. Hence, they are also called SPVs (Simplified Payment Verification nodes)
1. Super Nodes
Super nodes are created to carry out special tasks for some blockchains. For instance, functions like carrying forward a change in the blockchain protocol or maintaining rules in a blockchain are performed by a super node.
2. Lightning Nodes
Lightning nodes clear the congestion in a blockchain network by creating a different network with the user and transactions are moved to the main blockchain. As congestions are common, lightning nodes allow for instantaneous transactions and reduce the cost of transactions and load on the network.
Wrapping Up
After understanding everything related to a full node, it is evident that nodes are used based on the requirements of the blockchain and various applications, at the same time, some nodes can perform multiple actions. Developers and businesses can feel free to use the kind of node that fits their needs and complete their blockchain.
About The Author
Dr. Ravi Chamria is co-founder CEO of Zeeve Inc, an Enterprise Blockchain company. He has an experience of 18+ years in IT consulting spanning across Fintech, InsureTech, Supply Chain and eCommerce. He is an executive MBA from IIM, Lucknow and a prolific speaker on emerging technologies like Blockchain, IoT and AI/ML.
Passionate About: Blockchain, Supply Chain Management, Digital Lending, Digital Payments, AI/ML, IoT
Specialities: Strategic Management, Technology Innovation, Product Management