What Are Nodes?
Nodes are responsible for acting as a point of redistribution or a communication point. In the essence of a blockchain, they perform different functions as needed, such as communicating information about transactions and/or blocks from peer-to-peer through the set protocol.
In a distributed network, nodes can be clients, servers, or peers. There exist different types of nodes, each with its own functions. It is these functions that define the node’s purpose.
What Nodes Are Used In Blockchain?
Full Nodes
Full nodes are the backbone of a decentralized network, acting as the server of sorts. They work to maintain consensus between the other nodes and the verification of transactions.[1]Nodes – Blockchain Nodes: An In-Depth Guide
When making decisions for a network, full nodes are the ones that vote on different proposals. Full nodes are also able to relay new transactions and blocks to the blockchain, through their own copy of the blockchain ledger.
Although not all full nodes are visible and accessible to the public, some are hidden. Bitcoin there are currently over 14,800 public nodes, these public nodes are called supernodes.
Supernodes
A supernode also called a listening node, is a visible and accessible full node. A supernode will establish a connection with another node and provide it with any information it receives such as transactions, acting as a redistribution point and a communication bridge.
Miner Nodes
A miner node is a node that can add blocks to a blockchain. It must be a full node, so it can receive data from other full nodes on the blockchain – staying up to date with the information coming in and out of the system.
A miner node will use specific hardware; CPUs, GPUs or ASICs, to solve the cryptographic problem handed to them, this is known as “cryptocurrency mining“, hence the name.
The first miner to complete the task will broadcast his block to the network. Once broadcasted, it will be verified by full nodes, and once consensus is reached – the miner is granted the right to add a block to the existing blockchain.
Simplified Payment Verification (SPV) Clients
Simplified Payment Verification (SPV) clients are “lightweight”, not being full nodes. They do not actually take part in anything, not having a copy of the blockchain or verifying transactions.
Despite this they are very useful, acting as a communication endpoint.
SPV clients communicate with a blockchain but rely on supernodes to provide them with information. As they don’t have a copy of the blockchain, they only query the current status for which block is last, and broadcast transactions ready for processing.[2]Nodes – Blockchain Nodes: An In-Depth Guide
References