koinos / koinos-p2p

The p2p microservice orchestrates the distribution of blocks and transactions between peers.
MIT License
6 stars 4 forks source link

Improve or remove bootstrap mode #131

Closed theoreticalbts closed 3 years ago

theoreticalbts commented 3 years ago

As a blockchain user, I want to have some default initial p2p nodes to be able to connect to the p2p network.

As a node operator of one of those default initial p2p nodes, I want to operate N servers for the initial p2p connections with DNS round-robin.

Each of those N servers should run as lightweight software as possible. Preferably it would just gives an incoming peer a list of IP addresses of real peers I know about, then disconnect.

The --bootstrap flag to p2p is intended to implement this behavior, but it does not behave in this manner.

Questions to be answered:

Output of this ticket is a plan for implementing bootstrap.

It's possible that this plan will not result in immediate implementation of bootstrap in p2p. (Some possible contingencies along these lines: If we decide to implement it in a separate executable, if we decide not to implement this functionality, if research reveals it's impossible to make libp2p act this way, or if we decide our time is better devoted to higher priority tasks.)

If we don't immediately implement bootstrap in p2p, we should remove the flag.