delvingbitcoin

Stats on compact block reconstructions

Stats on compact block reconstructions

Original Postby 0xB10C

Posted on: August 2, 2024 12:08 UTC

The exploration of compact block reconstruction statistics, facilitated by the debug=cmpctblock logging on monitoring nodes, reveals intriguing insights into the efficiency of block reconstructions within the Bitcoin network.

The analysis is centered around the examination of how often blocks require an additional getblocktxn -> blocktxn round-trip due to the node's unawareness of certain transactions during the reconstruction process. This study particularly focuses on the number of transactions pre-filled in the compact block, those utilized from the node's mempool, transactions drawn from an extra pool, and the transactions that necessitated a request. Despite minor variations in node configurations, the majority adhere to Bitcoin Core defaults, with all nodes accepting inbound connections and typically filling the default inbound slots.

A significant adjustment was made to node configurations during the observation period; for instance, node dave had its maximum connections increased to 1000, significantly boosting its inbound connections. Conversely, node frank adopted a blocksonly=1 setting, ceasing its block reconstructions, while node erin switched to mempoolfullrbf=1, indicating a pivotal shift in handling transaction replacements in the mempool, which notably influenced the block reconstruction process.

Throughout the observation period, three distinct timeframes exhibited a notable decrease in the rate of compact block reconstructions that did not necessitate additional transaction requests, correlating with heightened mempool activity. These periods highlighted the impact of network congestion on block reconstruction efficiency. Specifically, node dave experienced a performance dip attributed to an increase in inbound connections, though a restart appeared to mitigate this issue temporarily.

The adoption of mempoolfullrbf=1 on node erin demonstrated a marked improvement in the compact block reconstruction process, suggesting deviations from the default Bitcoin Core policy across most pools could enhance block reconstruction efficiency network-wide. This change hints at the potential benefits of enabling mempoolfullrbf by default to expedite block propagation times.

Further investigation into block reconstruction times revealed significant disparities in median block reconstruction duration, contingent upon whether additional transactions needed to be requested. Nodes situated in well-connected data centers with robust hardware showcased varying reconstruction times, with a notable difference observed between scenarios requiring transaction requests and those that did not.

The inquiry also raises several questions regarding the comparative need for extra transactions in low- versus high-bandwidth block reconstructions, the impact of different extra pool sizes on reconstruction efficiency, and the historical performance of block reconstructions prior to the adoption of full-RBF by miners. Additionally, examining the performance of outbound-only nodes in contrast to those with inbound connections could offer further insights into optimizing block reconstruction processes across the network.