What is the concept of nodes?

The definition of the concept of node can vary considerably depending on the context in which it is used. When it comes to computer or telecommunications networks, nodes can be used in different ways, and act either as a redistribution point or as a communications terminal. In general, a node is a physical device in a network, but in some specific cases virtual nodes are used.

Simply put, a network node is a point in that network where a message can be created, received or transmitted. In this document, we will discuss the different types of Bitcoin nodes: full nodes, super nodes, mining nodes, as well as VPS clients.


Bitcoin nodes

When we immerse ourselves in the world of “blockchains” – which are designed as decentralized systems – the network of computer nodes is what makes possible the use of Bitcoin as a decentralized peer-to-peer digital currency. peer-to-peer (PAP), resistant to any censorship in its design, and which does not require an intermediary to be exchanged from user to user (regardless of the distance that separates them in the world).

Thus, the nodes of the blockchain play the role of a communication point that can perform different functions. Any computer or device that connects to the Bitcoin interface can be considered a node, in the sense that it communicates with others in some way. These nodes are also capable of transmitting information relating to transactions and blocks within the distributed network of computers using the Bitcoin peer-to-peer protocol. However, each node (or computer) in the network is defined with regard to its particular functions, so there are different types of Bitcoin nodes.


Complete knots

Full nodes are the ones that actually support and  secure Bitcoin, they are essential to the network. These nodes are also referred to as full validator nodes because they participate in the process of verifying transactions and blocks in relation to the system's consensus rules. Full nodes are also capable of transmitting new transactions and blocks to the blockchain.

Typically, a full node downloads a copy of the Bitcoin blockchain including all blocks and transactions, but this is not a requirement to consider a node complete (a reduced copy of the blockchain can be used in place).

A Bitcoin full node can be installed through different software configurations, but the most common and popular is that of Bitcoin Core. Here are the minimum requirements to run a full node with Bitcoin Core:

  • Desktop or laptop with a recent version of Windows, Mac OS X or Linux.

  • 200 GB of available disk space.

  • 2 GB of RAM.

  • High-speed Internet connection with a sending speed of at least 50 KB/s.

  • Unlimited internet access or a connection with high download limits. Activated full nodes can indeed reach or exceed a download capacity of 200 GB/month for reception and 20 GB/month for transmission. You will also need to download around 200GB of data when you first start  your full node.

  • Your full node will need to run at least 6 hours per day. It’s even better if you run it continuously (24/7).

Many voluntary organizations and users operate Bitcoin full nodes in this way to support the Bitcoin ecosystem. Currently, around 9,700 public nodes operate on the Bitcoin network. Note that this number only includes public nodes, which refers to "listening" Bitcoin nodes that are visible and accessible (also called listening nodes).

Apart from public nodes, many other hidden nodes are not visible (“non-listener” nodes). These nodes usually operate behind a firewall, through hidden protocols like Tor, or simply because they have been configured not to listen for connections.


Listening nodes (or super nodes)

Concretely, a listening node or a super node is a complete node visible publicly. It communicates and provides information to any other node that decides to establish a connection with it. As a result, a supernode is essentially a redistribution point that can act as both a data source and a communications bridge.

A reliable super node typically operates 24 hours a day and has multiple permanent connections, transmitting blockchain history and transaction data to multiple nodes around the world. For this reason, a super node will likely require more computing power and a better Internet connection than a full node that would be hidden.


Mining nodes

To be able to mine Bitcoins in today's competitive climate, you need to invest in specialized mining hardware and programs. These mining programs (software) are not directly linked to Bitcoin Core and are run in parallel to try to mine Bitcoin blocks. A miner can then choose to work alone (solo miner) or in a group (pool miner).

While the full nodes of solo miners use their own copy of the blockchain, pooled miners work together, each contributing their own computational resources (hash power). In a mining pool, only the pool administrator is required to run a full node, also known as the pool miner's full node.


Thin clients or VPS

Also called VPS (Simplified Payment Verification) clients, thin clients are those that use the Bitcoin network but do not really act as a full node. Indeed, VPS clients do not contribute to the security of the network because they do not maintain a copy of the blockchain, nor do they participate in the verification and validation process of transactions

In short, VPS is the method by which a user can check whether or not certain transactions have been included in a block, without having to download all the data in the block. In this way, VPS clients rely on information provided by other full nodes (supernodes). Thin clients function as communications terminals and are used by many cryptocurrency wallets.


Client vs Mining Nodes

It is important to note that running a full node is not the same as running a full mining node. While miners must invest in expensive mining hardware and software, anyone can run a full validator node.
Additionally, before mining a block, a miner must process pending transactions that were previously admitted as valid by full nodes. Then the miner creates a candidate block (with the relevant transaction group) and attempts to mine that block. If the miner manages to find a valid solution for this block, it broadcasts it on the network and the other full nodes then verify the validity of the block. This way, consensus rules are predetermined and secured by the distributed network of validator nodes and not by the miners.


Conclusion
Bitcoin nodes communicate with each other via the Bitcoin P2P network protocol, which ensures system integrity. A node that misbehaves or tries to propagate incorrect information is quickly recognized by honest nodes and then disconnected from the network.

Although running a full validator node does not provide a financial reward, it is recommended to do so because it provides trust, security, and privacy to users. Full nodes ensure that the rules are followed. They protect the blockchain against attacks and fraud (like double spending). Finally, a full node does not need to trust other nodes and puts the user in complete control of their money.