Page MenuHomePhabricator

Only respond to requests for recently announced transactions
ClosedPublic

Authored by PiRK on Apr 20 2021, 16:09.

Details

Summary

... unless they're UNCONDITIONAL_RELAY_DELAY old, or there has been
a response to a MEMPOOL request in the mean time.

This is accomplished using a rolling Bloom filter for the last
3500 announced transactions. The probability of seeing more than 100
broadcast events (which can be up to 35 txids each) in 2 minutes for
an outbound peer (where the average frequency is one per minute), is
less than 1 in a million.

This is a partial backport of core#19109 [3/5]
https://github.com/bitcoin/bitcoin/pull/19109/commits/43f02ccbff9b137d59458da7a8afdb0bf80e127f

Depends on D9435

Test Plan

ninja all check-all