The Bitcoin network consists of many nodes, any computer that connects to the bitcoin network is a node. Nodes are important to the peer-to-peer infrastructure Bitcoin is built on. Different nodes serve different functions, the most basic being the process of block confirmation.
We can define a ‘full’ node best as any computer with the bitcoin client software. As well as participating in propagating transactions and blocks throughout the network. A ‘full’ node contains the whole blockchain and checks them against the consensus rules, below are a few example rules:
- Blocks may only create a certain number of bitcoins.
- Transactions must have correct signatures for spending the Bitcoins.
- Transactions/blocks must be in the correct data format.
- A transaction output cannot be double-spent.
We use ‘full’ nodes to validate transactions and blocks in the chain. Additionally, most full nodes also support the network by accepting transactions and blocks from other full nodes. They validate transactions as well as blocks, then they relay them to further to other full nodes.
Full nodes are the backbone of the network and vital to the security of the ecosystem as they contain the whole ledger.
Benefit of Running a Full Node:
Supports the network
A full node ensures that we are following all bitcoin rules, as opposed to lightweight nodes which simply follows the majority of mining power.
A full node means you’ll be secure as you’ll have the whole blockchain. Additionally you’re able to check and validate everything yourself. With any wallet or service provider you use, you’ll be placing a certain degree of trust in them. So it’s important to validate the information they present you with and make sure that you are working with a trustworthy party on the other side of the transaction.
Running a full node is the most private way to have a wallet. All other lightweight solutions leak information about which addresses are yours because they must query third-party servers.
There are also Other Types of Nodes:
Pruning full nodes
Throws away outputs that are already spent.
“Simplified Payment Verification Node”, does not verify everything. Instead SPV Nodes rely on either connecting to a trusted node, or puts its faith in high difficulty as a proxy for proof of validity. The SPV node only downloads block headers.
Here’s an example site where you can see the global number of reachable nodes and their distribution by country to get a feel of the size of Bitcoin network.
Lack of Incentive and Varying Quantity of Available Nodes:
Nodes are essential to the infrastructure of Bitcoin. However, unlike mining where miners are rewarded for participation in verifying transactions, participants are provided with no direct incentives. This has led to wild variation day to day on the nodes available in the bitcoin network. Although, nodes do the underlying benefit of running nodes is the security it provides to the entire network. So despite having no monetary value, it helps to have as many active nodes as possible to protect the network.
Learn about how Nodes relate to BIPs and Bitcoins Voting systems here.