kaspanet / rusty-kaspa

Kaspa full-node and related libraries in the Rust programming language. This is a stable version at the initial rollout phases.
ISC License
371 stars 118 forks source link

Tighten up P2P relay and orphan management in order to perfect high-BPS block exchange #359

Closed michaelsutton closed 6 months ago

michaelsutton commented 6 months ago

Includes 3 major components which can be reviewed separately:

  1. Complete a full "revalidate orphans" algorithm including unorphaning (to be run post IBD)
  2. Close the sync gap between consensus and the block orphan pool leading to stuck orphans
  3. Add an IBD-related heuristic for deciding if to keep orphans

The end result tested via an internal TN11 testnet shows that with all the above, on-going P2P block exchange is smooth also on a 10BPS network and between peers with RTT > block time (=100ms)