txmempool: have CompareTopologically sort missing txs first
We use CompareTopologically to choose an order of txs to inv. Rather
than sorting txs that have been evicted from the mempool at the end
of the list, sort them at the beginning so they are removed from
the queue immediately.
net_processing: Boost inv trickle rate
If transactions are being added to the mempool at a rate faster than
INVENTORY_BROADCAST_MAX_PER_MB * BLOCK_SIZE_MB per second then peers'
inventory_to_send queue can become relatively large. If this happens,
increase the number of txids we include in an INV message by 5 for
each 1000 txids in the queue.This will tend to clear a temporary excess out reasonably quickly; an
excess of 4000 invs to send will be cleared down to 1000 in about 30
minutes, while an excess of 20000 invs would be cleared down to 1000 in
about 60 minutes.
This is a backport of core#27610