Merge pull #1133: Full node guide: describe reducing bandwidth options

This commit is contained in:
David A. Harding 2015-11-26 16:00:08 -05:00
commit cc64f12c07
No known key found for this signature in database
GPG key ID: 4B29C30FF29EC4B7

View file

@ -1396,5 +1396,93 @@ ask for help on sites like [SuperUser](http://superuser.com).
We can't provide direct support, but if you see a way to improve these We can't provide direct support, but if you see a way to improve these
instructions, please [open an issue.](https://github.com/bitcoin-dot-org/bitcoin.org/issues/new) instructions, please [open an issue.](https://github.com/bitcoin-dot-org/bitcoin.org/issues/new)
## Configuration Tuning
This section contains advice about how to change your Bitcoin Core
configuration to adapt it to your needs.
There are two ways to change your configuration. The first is to start
Bitcoin Core with the options you want. For example, if you want to
limit it to using one CPU core for signature verification, you can start
Bitcoin Core like this:
{% highlight bash %}
## Bitcoin Core daemon
bitcoind -par=1 -daemon
## Bitcoin Core GUI
bitcoin-qt -par=1
{% endhighlight %}
Once you've decided you like an option, you can add it to the Bitcoin
Core configuration file. You can find that file in the following
directories:
- Windows: %APPDATA%\Bitcoin\
- OSX: $HOME/Library/Application Support/Bitcoin/
- Linux: $HOME/.bitcoin/
To add an option to the configuration file, just remove its leading
dash. You may also need to remove any quotation marks you used in your shell.
For example, the `-par` option seen above would look like this in the
configuration file:
{% highlight text %}
par=1
{% endhighlight %}
If you have any questions about configuring Bitcoin Core, please stop by
one of our [forums](/en/bitcoin-core/help#forums) or [live
chatrooms](/en/bitcoin-core/help#live).
### Reduce Traffic
Some node operators need to deal with bandwith caps imposed by their ISPs.
By default, bitcoin-core allows up to 125 connections to different peers, 8 of
which are outbound. You can therefore, have at most 117 inbound connections.
The default settings can result in relatively significant traffic consumption.
Ways to reduce traffic:
#### Maximum Upload Targets
{% highlight text %}
-maxuploadtarget=<MiB per day>
{% endhighlight %}
A major component of the traffic is caused by serving historic blocks to other nodes
during the initial blocks download phase (syncing up a new node).
This option can be specified in MiB per day and is turned off by default.
This is *not* a hard limit; only a threshold to minimize the outbound
traffic. When the limit is about to be reached, the uploaded data is cut by no
longer serving historic blocks (blocks older than one week).
Keep in mind that new nodes require other nodes that are willing to serve
historic blocks. **The recommended minimum is 144 blocks per day (max. 144MB
per day)**
#### Disable listening
{% highlight text %}
-listen=0
{% endhighlight %}
Disabling listening will result in fewer nodes connected (remember the maximum of 8
outbound peers). Fewer nodes will result in less traffic usage as you are relaying
blocks and transactions to fewer nodes.
#### Reduce maximum connections
{% highlight text %}
-maxconnections=<num>
{% endhighlight %}
Reducing the maximum connected nodes to a miniumum could be desirable if traffic
limits are tiny. Keep in mind that bitcoin's trustless model works best if you are
connected to a handful of nodes.
</div> </div>
<script>updateToc();</script> <script>updateToc();</script>