@ -343,50 +343,55 @@ $ which bitcoin-cli
((("Bitcoin Core", "running core nodes", id="BCnode03")))((("Bitcoin
nodes", "running core nodes", id="BNcore03")))Bitcoin's peer-to-peer
network is composed of network "nodes," run mostly by volunteers and
some of the businesses that build bitcoin application s. Those running
some of the businesses that provide Bitcoin service s. Those running
Bitcoin nodes have a direct and authoritative view of the Bitcoin
blockchain, with a local copy of all the transactions, independently
validated by their own system. By running a node, you don't have to rely
on any third party to validate a transaction. Moreover, by running a
Bitcoin node you contribute to the Bitcoin network by making it more
blockchain, with a local copy of all the spendable bitcoins
independently validated by their own system. By running a node, you
don't have to rely on any third party to validate a transaction.
Additionally, by running a Bitcoin node, you contribute to the Bitcoin
network and help make it more
robust.
Running a node, however, requires a permanently connected system with
enough resources to process all Bitcoin transactions. Depending on
whether you choose to index all transactions and keep a full copy of the
blockchain, you may also need a lot of disk space and RAM. As of early
2018, a full-index node needs 2 GB of RAM and a minimum of 160 GB of
disk space (see https://blockchain.info/charts/blocks-size[]). Bitcoin
nodes also transmit and receive bitcoin transactions and blocks,
consuming internet bandwidth. If your internet connection is limited,
has a low data cap, or is metered (charged by the gigabit), you should
probably not run a Bitcoin node on it, or run it in a way that
constrains its bandwidth (see <<constrained_resources>>).
Running a node, however, requires downloading and processing over 500 GB
of data initially and about 400 MB of Bitcoin transactions per day.
These figures are for 2023 and will likely increase over time. If you
shut down your node or get disconnected from the internet for several
days, your node will need to download the data that it missed. For
example, if you close Bitcoin Core for ten days, you will need to
download approximately 4 GB the next time you start it.
Depending on whether you choose to index all transactions and keep a
full copy of the blockchain, you may also need a lot of disk space---at
least 1 TB if you plan to run Bitcoin Core for several years. By
default, Bitcoin nodes also transmit transactions and blocks to other
nodes (called "peers"), consuming upload internet bandwidth. If your
internet connection is limited, has a low data cap, or is metered
(charged by the gigabit), you should probably not run a Bitcoin node on
it, or run it in a way that constrains its bandwidth (see
<<constrained_resources>>). You may connect your node instead to an
alternative network, such as a free satellite data provider like
https://blockstream.com/satellite/[Blockstream Satellite].
[TIP]
====
((("warnings and cautions", "core node resource
requirements")))((("resource requirements")))Bitcoin Core keeps a full
copy of the blockchain by default, with every transaction that has ever
occurred on the Bitcoin network since its inception in 2009. This
dataset is dozens of gigabytes in size and is downloaded incrementally
over several days or week s, depending on the speed of your CPU and
copy of the blockchain by default, with nearly every transaction that has ever
been confirm ed on the Bitcoin network since its inception in 2009. This
dataset is hundred s of gigabytes in size and is downloaded incrementally
over several hours or day s, depending on the speed of your CPU and
internet connection. Bitcoin Core will not be able to process
transactions or update account balances until the full blockchain
dataset is downloaded. Make sure you have enough disk space, bandwidth,
and time to complete the initial synchronization. You can configure
Bitcoin Core to reduce the size of the blockchain by discarding old
blocks (see <<constrained_resources>>), but it will still download the
entire dataset before discarding data .
entire dataset.
====
Despite these resource requirements, thousands of volunteers run Bitcoin
Despite these resource requirements, thousands of people run Bitcoin
nodes. Some are running on systems as simple as a Raspberry Pi (a $35
USD computer the size of a pack of cards). Many volunteers also run
Bitcoin nodes on rented servers, usually some variant of Linux. A
_Virtual Private Server_ (VPS) or _Cloud Computing Server_ instance can
be used to run a Bitcoin node. Such servers can be rented for $25 to $50
USD per month from a variety of providers.
USD computer the size of a pack of cards).
Why would you want to run a node? Here are some of the most common
reasons: