The definition of a node may vary based on the context. In the context of computer or telecommunications networks, nodes can function as redistribution points or as communication endpoints. Typically, nodes consist of physical network devices. However, there are certain situations where virtual nodes are used.

Network nodes are points that allow messages to be created, received, or sent. In this article, we will discuss the different types of Bitcoin nodes: full nodes, supernodes, miner nodes, and SPV clients.


Node Bitcoin

In the context of blockchain as a distributed system, a network of computer nodes is the component that allows Bitcoin to be used as a decentralized peer-to-peer (P2P) digital currency. As such, Bitcoin is designed to be censorship-resistant and requires no intermediaries to be traded from one user to another (no matter how far away they are in the world).

Therefore, blockchain nodes serve as communication points that can perform various functions. Computers or devices connected to the Bitcoin interface can be considered nodes, as they communicate with each other. These nodes can also send information regarding transactions and blocks within a distributed computer network using Bitcoin's peer-to-peer protocol. However, each computer node is defined according to its specific function. Therefore, there are different types of Bitcoin nodes.

 

Full node

Full nodes are nodes that truly support and provide security for Bitcoin. This node is very necessary for the network. This node can also be considered a fully validating node, as it is involved in the transaction and block verification process based on the system's consensus rules. Additionally, full nodes can relay new transactions and blocks to the blockchain.

Typically, full nodes download a copy of the Bitcoin blockchain with each block and transaction, but this is not a requirement for a node to be called a "full node" (a reduced copy of the blockchain can be used instead).

Full Bitcoin nodes can be established through various software implementations, but the most widely used and popular alternative is Bitcoin Core. Here are the minimum requirements to run a Bitcoin Core full node:

  • Desktop or laptop with the latest version of Windows, Mac OS

  • 200 GB free disk space.

  • Memory (RAM) of 2 GB.

  • High-speed internet connection with an upload speed of at least 50 kB/sec.

  • Unmetered connections or connections with high upload limits. Full nodes online can reach or exceed 200 GB/month upload usage and 20 GB/month download usage. You'll also need to download ~200 GB when starting your first full node.

  • Your full node should run for at least 6 hours a day. It would be better if you run it continuously (24/7).

Most organizations and volunteer users run full Bitcoin nodes as a way to help the Bitcoin ecosystem. As of 2018, there were approximately 9,700 public nodes running on the Bitcoin network. Please note that this number only includes public nodes, namely Bitcoin nodes that are visible and accessible (aka listening nodes).

Apart from public nodes, there are many other hidden nodes that are not visible (non-listening nodes). These nodes usually operate behind a firewall, through a hidden protocol such as Tor, or simply because they are configured not to "listen" for connections.


Listening node (supernode)

Basically, listening nodes or super nodes are full nodes that are visible to the public. These nodes communicate and provide information to other nodes that decide to establish a connection with them. Therefore, supernodes are redistribution points that function as data sources as well as communication bridges.

Reliable supernodes typically run 24/7 and have multiple connections, and send blockchain history and transaction data to multiple nodes around the world. As a result, supernodes will likely require more computational power and better internet connections compared to hidden full nodes.


Node miner

In order to mine Bitcoin in today's competitive environment, one must invest in specialized mining hardware and programs. This mining program (software) is not directly related to Bitcoin Core and is executed in parallel to mine Bitcoin blocks. A miner can choose to work alone (solo miner) or in a group (joint miner).

A solo miner's full node uses its own copy of the blockchain, while the combined miners work together and each miner contributes resources (hashing power). In a mining pool, only the pool administrator should run full nodes. These nodes can be referred to as combined miner full nodes.


Light client or SPV

Light clients, also known as Simplified Payment Verification (SPV) clients, are nodes that use the Bitcoin network but do not actually function as full nodes. Therefore, SPV clients do not contribute to network security because they do not store a copy of the blockchain and do not participate in the transaction verification and validation process.

In short, through the SPV method, users can check whether a particular transaction is included or not in a block without having to download the entire block data. That way, SPV clients rely on information provided by other full nodes (supernodes). The light client serves as a communication endpoint and is used by various cryptocurrency wallets.


Node klien vs. mining

Please note that running a full node is not the same as running a full mining node. Miners have to invest in expensive mining hardware and software, whereas anyone can run a fully validating node.

Before attempting to mine a block, a miner must collect pending transactions that were previously deemed valid by the full node. Next, the miner creates a candidate block (with a group of transactions) and tries to mine that block. If the miner manages to find a valid solution for his candidate block, he broadcasts it to the network so that other full nodes can verify the block's validity. Therefore, consensus rules are defined and secured by a distributed network of validator nodes, not by miners.


Closing

Bitcoin nodes communicate with each other via the Bitcoin P2P network protocol. By doing this, they guarantee the integrity of the system. Nodes that misbehave or try to spread misinformation will be quickly recognized by honest nodes and disconnected from the network.

While running a fully validating node is not financially rewarding, it is highly recommended as it provides trust, security, and privacy to users. Full nodes ensure that rules are adhered to. These nodes protect the blockchain from attacks and fraud (such as double spending). Additionally, full nodes do not have to trust other nodes. This allows users to have complete control over their money.