Definition
Compact Block Relay, specified in BIP152, reduces the bandwidth and latency of propagating a newly mined block across the Bitcoin network. Instead of resending every full transaction, a node forwards the 80-byte block header plus a list of 6-byte short transaction identifiers. Because peers typically already hold the same unconfirmed transactions in their mempools, the receiver can reconstruct the block locally and only request the few transactions it is missing.
High-bandwidth and low-bandwidth modes
Peers negotiate a mode with the sendcmpct message. In high-bandwidth mode a node pushes a cmpctblock immediately on hearing of a block, achieving roughly half a round-trip best-case latency. In low-bandwidth mode it announces first and serves the compact block only on request, trading a little latency for lower overhead. Missing transactions are fetched with getblocktxn and returned via blocktxn.
Short IDs and collision resistance
The 6-byte (48-bit) short IDs are derived by hashing the block header with a per-block nonce and keying SipHash-2-4 with that value, so an attacker cannot precompute identifier collisions that would jam reconstruction. Version 2 of the scheme uses witness transaction IDs (wtxids) for SegWit compatibility. Faster block relay shrinks the window during which miners build on stale tips, which marginally reduces orphan rate.
Compact blocks complement, but differ from, transaction-announcement efficiency work such as Erlay (BIP330). For how nodes first establish the chain itself, see Headers-First Sync.
Watch real propagation context in the live network vitals.
In Simple Terms
Compact Block Relay, specified in BIP152, reduces the bandwidth and latency of propagating a newly mined block across the Bitcoin network. Instead of resending every…
