0

A bitcoin full-node uses bandwidth to at least:

  • Receive each block
  • Send each block to other nodes

What other major components of bandwidth usage are there for a bitcoin full node in early 2018, and what proportion of the bandwidth usage does each take up? Bandwidth usage is many times higher than that required to receive and then send 1 full block of data per block, and I'd like to understand why.

2
  • Receiving transactions from other nodes
  • Sending transactions to other nodes
  • Sending the entire blockchain to other nodes so that they can sync

Note that with compact blocks, block relay does not consume nearly as much bandwidth as it used to. Compact blocks allow blocks to be relayed with way less data. The bulk of a node's bandwidth is taken up by transaction relay.

  • I guess I was including all those things in sending and receiving "blocks" since they're are mostly just collections of transactions. But anyways, there are absolutely more things going on than sending and receiving transactions and blocks - I'd like to understand what they are. It would also be helpful to know what proportion of the bandwidth each of these things take up (if you know). Bandwidth usage is many times higher than that required to receive and then send 1 full block of data per block, and I'd like to understand why. – B T Feb 16 '18 at 21:56
  • There are more transactions being broadcast than fit in a full block. Additionally each one is typically relayed to each of the other nodes you are connected to. If you want to see exactly what your node is sending and receiving, and exactly how much data that consumes, you can add debug=net to your bitcoin.conf to print network debugging messages to the debug.log file. That will tell you what messages were send and received, what node they are to and from, and the exact size of the message in bytes. – Andrew Chow Feb 16 '18 at 22:28
  • But there aren't significantly more transactions being broadcast than eventually end up in blocks right? How many transactions generally get evicted from the mempool? Do nodes retransmit transactions they don't add to their own mempool? – B T Feb 17 '18 at 1:29
  • There are more transactions than eventually end up in blocks, and there certainly used to be. Not many transactions actually get evicted. – Andrew Chow Feb 17 '18 at 3:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.