Node
Also called: full node, Bitcoin node, bitcoind, pruned node, Bitcoin Core node.
A Bitcoin node is a computer running Bitcoin software that downloads, checks and relays blocks and transactions; a full node verifies every rule itself.
A node is any computer running software that speaks the Bitcoin peer-to-peer protocol. A full node downloads every block and checks it against all the consensus rules on its own, so it never has to trust a miner, an exchange or another node about what is valid. Bitcoin Core is the most widely used implementation.
Types of node
- Archival full node: keeps the whole blockchain and serves old blocks to peers (service bit NODE_NETWORK).
- Pruned node: validates everything but deletes old block data. BIP 159 lets it advertise NODE_NETWORK_LIMITED and serve at least the last 288 blocks.
- Light client: checks only block headers and relies on full nodes for the rest, using SPV with Bloom filters (BIP 37) or compact block filters (BIP 157, BIP 158).
What nodes do
Besides validating, nodes keep a mempool of unconfirmed transactions and relay transactions and new blocks to peers. Many BIPs define this network layer: compact block relay (BIP 152), Tor v3 and I2P addresses (BIP 155), wtxid-based relay (BIP 339) and encrypted connections (BIP 324, see v2 transport). The network topic lists them all.
Consensus vs policy
A node applies two kinds of rules. Consensus rules decide whether a block is valid and must be identical everywhere. Policy rules decide which unconfirmed transactions a node accepts and forwards, and can differ from node to node. That is why a transaction can be relayed by some nodes and refused by others, yet still be valid once it is mined.
Running your own node is how you check incoming payments yourself instead of asking someone else's server.