Skip to content

Load-balanced bootstrappingΒ #574

@petar

Description

@petar

The current bootstrap protocol:

  • overloads the bootstrappers, and
  • skews the topology of the network

To remedy this, a new bootstrap protocol should go as follows:

  1. Bootstrapping becomes a dedicated network call, supported by DHT nodes
  2. In response to a bootstrap request, the peer returns K random peers from the network
  3. The node that is joining inserts these random contacts in their RT and proceeds to fill all of its tables using the random peer seeds

To load-balance (and increase speed), bootstrappers can pre-lookup random peers in the network in their free time (on a separate thread), so that they can respond immediately to step 2 (above).

Furthermore, if bootstrappers accumulate a set of N >> K random peers in the network, they can respond to bootstrap queries (step 2, above) by picking a random subset of size K from the accumulated N.

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions