Below are the number of reachable nodes as of 2023-01-26 22:27:39 UTC. Page refreshes automatically.
A Bitcoin node is a software or device that runs the Bitcoin protocol. Nodes contain the full or partially pruned database of all BTC transactions, originating all the way back to the Genesis Block to the latest block height of a valid block mined by a miner.
Nodes verify blockchain consensus rules by enforcing the core properties of the Bitcoin network. When a miner finishes a proof of work process, it then gets the ability to submit the found block onto the Bitcoin blockchain.
Before that happens, nodes must verify that the miner has found the correct hash that was set out as a requirement to find and submit the block that contains the transactions.
If everything is in order, then the block is put onto the blockchain, it will attach to the preceding block and all proceeding blocks will be attached to this block. The chain of blocks is called the blockchain.
Bitcoin nodes also serve an important role within the Bitcoin ecosystem. Due to their ability to enforce consensus rules, the nodes are of higher authority in the ecosystem due to their voluntary operational basis.
Nodes are essential units of the defense mechanism of the Bitcoin network in relation to transaction processing, and act as a last line of defense against malicious miners.
Although a 51% attack could be used to produce blocks, the nature of the proof of work algorithm promotes adherence to the consensus rules to receive block rewards. Attacking the Bitcoin network comes with extremely high costs due to the expended energy that is required to produce the correct hashes that allow miners to submit blocks to nodes to include them on the blockchain.
While Satoshi Nakamoto used the term miner synonymous with node in the original Bitcoin whitepaper, the network has changed since then, leading to "miner" and "node" not being synonymous anymore.
Nodes fall into distinct categories, each with its own unique abilities and services they can provide.
Full nodes can validate transactions and blocks. They keep a particular state at all times, such as UTXO (unspent transactions), and store a copy of the blockchain history. They are acting as servers to share and receive information.
Whenever a full node receives a transaction, it checks if the consensus rules are followed:
Listening nodes don't differ much from full nodes. A listening node is a full node has a specific port open (usually 8333).
When starting to run a full node, node operators will be limited in the number of connections they can enter with their peers due to their firewall.
By bypassing the firewall, operators can turn their full node into a publicly connectable listening node. Instead of hosting connections with only a handful of peers, listening nodes serve as a redistribution point similar to a server that other nodes can connect with to obtain transaction data and history.
As listening nodes transmit more extensive amounts of data, node operators' requirements are higher, explaining why the number of listening nodes is significantly lower than the total of nodes.
A "Non-listening node" means that port 8333 is closed and that the aprticular node doesn't allow other nodes to download old blocks from it.
Since launching the Bitcoin blockchain in 2009, the ledger has continuously grown and now occupies close to 400 GB in disk space.
A pruned full node doesn't store the entire history but only a part of the chain. The lowered requirements enable more people to host a node and increases security - the more copies of the ledger are in circulation, the harder it is for anyone to launch an attack and destroy all copies.
Pruned full nodes start downloading blocks from the beginning, and once their set limit is reached (usually 5-20GB of space), they simply delete from the oldest block. The node host can decide how much space they want to allocate.
Pruned full nodes can also participate in the verification of transactions and be part of consensus.
Archival full nodes store the complete copy of the Bitcoin Blockchain (close to 400GB) and make it available for new nodes that join the network.
This type of node can also participate in the validation of recent transactions and blocks. When a service needs data on the Bitcoin blockchain, it will most likely start to query an archival full node for information desired.
The last type of full node is a mining node. It's the type of node most people will commonly think of when they hear the term "Bitcoin nodes", which might have to do with how the term is used in the media.
While at the inception of Bitcoin, anyone with free GPU space could quickly start mining Bitcoin, nowadays, mining nodes are highly-specialized hardware devices such as ASICs.
The mining process involves solving a computational puzzle based on the transactions included in a block and the previous block's hash. Blocks are only added once there is proof of work attached to them, evidence that a mining node has solved the hashing puzzle.
Consequently, mining nodes are the nodes that participate in the race to solve a block's hash. The node that solves the hash fastest receives a block subsidy of 6.25 BTC.
As the Bitcoin network grew, miners deployed more specialized hardware, and companies started mining for profit. This "commercialization" of mining made it harder for individuals to mine profitably.
Mining pools provide a way for individual miners to join a collective of miners that share revenues proportionally.
The several subtypes of full nodes introduced all have slightly different features but note that boundaries are not fixed. Mining nodes overlap with archival nodes and listening nodes, and pruning nodes can also fulfill some verification functions. All of them are full nodes that maintain the Bitcoin Network.
But not all Bitcoin network participants run a full node.
With light clients, users can access and securely interact with the Bitcoin blockchain.
While full nodes require to be run 24/7 and store a full copy of the Bitcoin ledger's history, light clients can connect at their convenience. Whenever a light client needs the status of a transaction, they connect with a full node - not with the blockchain directly- to query for the data.
Light clients in Bitcoin are often synonymous with Simplified Payment Verification Nodes (SPVs) that enables nodes to verify transactions that have already been included in a block in a simplified way.
Light clients are more user-friendly but don't directly contribute to the network as they only store information related to them and don't meaningfully participate in verification.
They also have to trust the full nodes; else, they don't work. Nevertheless, light clients can be an excellent way for mainstream users to keep their Bitcoin and engage with the network.
The map above shows concentration of reachable Bitcoin nodes found in countries around the world. The data is sourced using Bitnodes, which is currently being developed to estimate the size of the Bitcoin network by finding all the reachable nodes in the network.
The current methodology involves sending getaddr messages recursively to find all the reachable nodes in the network, starting from a set of seed nodes. Bitnodes uses Bitcoin protocol version 70001 (i.e. >= /Satoshi:0.8.x/), so nodes running an older protocol version will be skipped.