What are nodes?

The definition of a node can vary greatly depending on the context in which it is used. In the case of computer or telecommunications networks, nodes may serve different purposes, such as being a redistribution point or communication endpoint. Generally, a node consists of a physical network device, but in some special cases virtual nodes are also used.

Simply put, a network node can be a point where a message is created, received or transmitted. From here on we will talk about the different nodes of Bitcoin: full nodes, super nodes, mining nodes and SPV clients.


Bitcoin Nodes

When we examine the context of blockchains designed as decentralized systems, it is computer nodes that make it possible to use Bitcoin as a peer-to-peer (P2P) decentralized digital currency that is censorship-resistant by design and does not require intermediaries for transactions between users (no matter how far apart they are in the world). network.

Therefore, blockchain nodes are obliged to act as communication points that can carry out different functions. Any computer or device connected to Bitcoin is considered a node because it communicates with each other in some way. These nodes can also transmit information about transactions and blocks within the distributed computer network using the Bitcoin peer-to-peer protocol. However, each computer node is defined according to its specific function, which is why there are many types of Bitcoin nodes.


Tam node parts

Full nodes are nodes that provide real support and security to Bitcoin and are indispensable for the network. These nodes are also called validator nodes because they work in the process of verifying transactions and blocks in line with the consensus rules of the system. Full nodes can also transfer new transactions and blocks to the blockchain.

Typically, full nodes download a copy of the Bitcoin blockchain containing each block and transaction, but this is not a requirement to be considered a full node (a shortened copy of the blockchain can also be used).

A bitcoin full node can be created with different software plug-ins, but the most commonly used and popular is Bitcoin Core. The minimum requirements to become a Bitcoin Core full node are as follows.

  • A desktop or laptop computer running the latest version of Windows, Mac OS X or Linux

  • 200 GB free disk space

  • 2GB memory (RAM)

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

  • Connection with no limit or high upload limit. Full nodes can exceed 200 GB/month upload and 20 GB/month download usage. Also, when you become a full node, it is necessary to download ~200GB at first.

  • The full node must be running for at least 6 hours a day. Continuous (24/7) operation is even better


Many volunteer organizations and users serve as Bitcoin full nodes to help the Bitcoin ecosystem. Currently, there are approximately 9700 public nodes in the Bitcoin network. It is also worth noting that this number only includes visible and accessible Bitcoin listening nodes (aka listening nodes).

Besides public nodes, there are also many other hidden nodes that are not visible (non-listener nodes). These nodes usually run behind a firewall through hidden protocols like Tor or are simply configured not to listen for connections.


Listener Nodes (Super Nodes)

Essentially, a listener node or super node is a full node that is visible to everyone. It communicates with and provides information to any node that decides to connect with it. So a supernode is simply a redistribution point that acts as both a data source and communication bridge.

A reliable supernode typically operates 24/7 and has a varying number of established connections where it broadcasts blockchain history and transactions to multiple nodes around the world. Therefore, a super node probably needs more computing power and better internet connectivity than a full node.


Mining Nodes

To mine Bitcoin in the current competitive environment, one must invest in specialized mining hardware and programs. These mining programs (software) are not directly connected to Bitcoin Core and must be run in parallel with Bitcoin Core in order to mine Bitcoin blocks. A miner may choose to work alone (solo miner) or with groups (group miner).

While solo miners' full nodes use their own copies of the blockchain, group miners can work together and contribute their own computational resources to the group. In a mining pool, only the administrator needs to operate a full node, which can be called a group miner's full node.


Thin Clients and SPV Clients

Thin clients, also known as Simplified Payment Verification (SPV), are individuals that use the Bitcoin network but do not actually act as full nodes. That is, since SPV clients do not store a copy of the blockchain, they do not contribute to the security of the network and are not participants in transaction confirmation and verification.

In short, with the SPV method, a user can check whether transactions have been added to a block without downloading the entire block data. That is, SPV clients rely on information provided by other full nodes (super nodes). Thin clients work as communication endpoints and are used by many cryptocurrency wallets.


Comparison of Client and Miner Nodes

It is especially important to note that operating a full node is not the same as operating a full mining node. While miners must invest in expensive mining hardware and software, anyone can become a full validation node. Moreover, before attempting to mine a block, the miner must gather pending transactions whose validity has already been accepted by full nodes. Then the miner creates a candidate block (with transaction groups) and tries to mine this block. If the miner can find a valid solution for this block, it broadcasts it to the network and other full nodes verify the validity of the block. Therefore, consensus rules are set and secured by distributed networks of validator nodes, not miners.


Conclusion

Bitcoin nodes communicate with each other using the Bitcoin P2P network protocol and by doing so, they ensure the integrity of the system. A node that behaves inappropriately or tries to spread false information is immediately noticed by honest nodes and this node is disconnected from the network.

Although running a full validator node does not provide a financial return, doing so is highly recommended as it provides trust, security and privacy. Full nodes ensure compliance and protect the blockchain from attacks and fraud (e.g. double-spending). In addition, a full node does not need to trust anyone else, giving the individual full control of their money.