Many miners cannot distinguish a node from a full node. In the BTC network, full nodes are the ones that matter. The BTC network is known as a peer-to-peer payment system of electronic cash. Here, the peer-to-peer refers to the node-to-node. In the BTC network, every transaction is broadcast by the node initiating the transaction to the surrounding nodes, which then further spreads the broadcast across the network. From miners to regular users, everyone in the BTC network can be regarded as a node, and a node with a complete blockchain ledger is called a full node.
As such, a full node takes up a large chunk of RAM for synchronization of all the data on the blockchain to ensure the quick validation of transactions. Given that transactions on the blockchain happen in real-time, one of the primary functions of full nodes in the distributed ledger is the on-chain broadcasting and validation of transactions.
Apart from the maintenance of complete ledgers and transaction validations, full nodes also act as the second layer of defense for the BTC network (the first layer being hashrates), a role once mentioned by Satoshi Nakamoto in the Bitcoin white paper. When an attacker obtains 51% of the hashrates and attempts to alter the BTC consensus, the honest full nodes will generate the longest chain that exceeds the chain of the attacker to reject the malicious transactions, thereby keeping the distributed ledger safe and secure.
Once there were few BTC users, and the amount of data recorded on the blockchain was also minimal. At the time, all computer applications running in the BTC network can be seen as full nodes that store the entire data of the BTC network. Whenever a transaction occurs in the network, the node receiving the information will validate the transaction in terms of security, compliance, etc. After the validation, the node will then broadcast the transaction to other nodes.
The running of BTC full nodes is open to all, but it is also voluntary and there are no additional rewards. However, if the blockchain is cut in two in the event of a hard fork, running full nodes also allows one to express his own opinions besides validating the blockchain rules. In such a scenario, running a full node can be regarded as an indirect vote that sends the message of which rules the user supports.
As of August 26, there have been 12,120 BTC full nodes. It is also clear that most of them are concentrated in Europe and North America. The United States has 1,803 full nodes, which is 14.88% of the total number. Just next to this country is Germany with 1,729 full nodes, accounting for 14.27%. In China, however, there are only 121 full nodes, which is 0.99% of the grand total.
Individual users can also run full nodes. Bitcoin Core listed the basic requirements for running BTC full nodes:
1. A PC or laptop capable of running the latest version of Windows, Mac OS X, or Linux;
2. 350G available disk space and read/write speed of at least 100 M/s;
3. 2G memory (RAM);
4. Broadband speed of at least 50Kb/s;
5. 200G upload and 20G downloaded every month. An additional 340G data is required when the node is first activated;
6. Running for at least 6 hours a day, and uninterrupted operation is preferred;
7. The automatic sleep function must be disabled to ensure the computer supports the BTC network during operation.
We can tell that running full nodes comes with high costs. Though China has its fair share of miners, most of them are participants in pools. Therefore, there are not that many full nodes in China, and most of the existing ones are either run by major mining pools seeking to keep the whole BTC network stable or established by miners with strong demands for privacy preservation.