nethermind
nethermind copied to clipboard
Discv5
Resolves #4721
Adds discovery v5 in the following manner:
- discv5 enabled means discv4 disabled
- queries for all nodes on distance to self and to 3 random nodeIDs with interval of 30 seconds
- does not hold cache of discovered nodes, so duplicates handling is on peer pool
- saves all peer pool active nodes on shutdown to use them for discovery after restart
alias thing
There is an outdated dependency:
PierTwo.Lantern.Discv5.WireProtocol -> PierTwo.Lantern.Discv5.Enr -> Multiformats.Hash -> Portable.BouncyCastle **1.8.5**
We plan before the next release to update Multiformats.Hash with newer version of Portable.BouncyCastle, and use updated version in PierTwo.Lantern.Discv5
Types of changes
What types of changes does your code introduce?
- [ ] Bugfix (a non-breaking change that fixes an issue)
- [x] New feature (a non-breaking change that adds functionality)
- [ ] Breaking change (a change that causes existing functionality not to work as expected)
- [ ] Optimization
- [ ] Refactoring
- [ ] Documentation update
- [ ] Build-related changes
- [ ] Other: Description
Testing
Requires testing
- [ ] Yes
- [x] No
If yes, did you write tests?
- [ ] Yes
- [x] No
Notes on testing
OP/Base networks covered, others that have discv5 support need bootstrap peers to be added to the specs
Documentation
Requires documentation update
- [ ] Yes
- [x] No
Not yet
Requires explanation in Release Notes
- [x] Yes
- [ ] No
@rubo the package has been published to the production feed; docker changes have been rolled back