2.4 Bitcoin Blockchain: Bitcoin Nodes and Network

Bitcoin Network

  • Bitcoin is an ad hoc network with a random topology
  • The protocol runs on TCP 8333
  • All the nodes are treated equally in the Bitcoin network
  • New nodes can join the network anytime, and the non-responsive nodes are removed after 3 hours

Bitcoin Network Node

Nodes in the Bitcoin network may take on different roles
depending on the functionality they support

A full Bitcoin node is a collection of four functions:

Nodes in the Bitcoin network may take on different roles
depending on the functionality they support

  • Wallet
  • Miner
  • Networking routing node
  • Full Blockchain

Types of Bitcoin Nodes

  • Reference Client (Bitcoin Core): Contains a wallet, miner, and full Blockchain database, and network routing node on the Bitcoin p2p network
  • Full Blockchain Node: Contains a full Blockchain database and network routing node on the Bitcoin p2p network
  • Solo Miner: Contains a mining function with a full copy of the Blockchain and a Bitcoin p2p network routing node
  • Lightweight Wallet: Contains a wallet and a network
    node on the Bitcoin p2p protocol
    without a Blockchain
  • Pool Protocol Servers: Gateway routers connecting the Bitcoin p2p network to nodes running other protocols such as pool mining or Stratum nodes
  • Mining Nodes: Contains a mining function without a Blockchain but with a Stratum protocol node or other pool mining protocol nodes
  • Lightweight Stratum Wallet: Contains a wallet and a network node on the Stratum protocol without a Blockchain

Joining Bitcoin Network

  • There are certain special nodes in the Bitcoin network called seed nodes which have a list of addresses
  • Joining nodes ask for the list of addresses from the seed node
  • In response to the node’s request to join the network, the seed node sends them the address list
  • The joining node picks up an address from the list and joins the network
  • The newly joined nodes then get the most recent Blockchain from their peers