- 14 Aug, 2020 1 commit
-
-
Adin Schmahmann authored
-
- 16 Jul, 2020 1 commit
-
-
llx authored
* fix: fixLowPeers now runs periodically Co-authored-by: 刘林欣 <llx@ipfsmain.cn>
-
- 16 Jun, 2020 1 commit
-
-
Dean Eigenmann authored
-
- 10 Jun, 2020 1 commit
-
-
Steven Allen authored
This reverts commit df4f28c3. Ongoing work is being done in feat/dht-hardening-0.7 and this change isn't quite ready.
-
- 06 Jun, 2020 1 commit
-
-
Steven Allen authored
Anything else is easy to game. This way, we remain connected to the core peers and slightly prefer all others. Pruning doesn't really matter as we'll just reconnect. The only concern is that this will lock in 40 connections. However, that's nothing for libp2p anyways. and the DHT will create that many connections _just_ for a single query.
-
- 03 Jun, 2020 1 commit
-
-
Aarsh Shah authored
* Peer Diversity in the DHT
-
- 22 May, 2020 1 commit
-
-
Aarsh Shah authored
* method for getting bootstrap peers and double the usefulness interval
-
- 21 May, 2020 2 commits
-
-
Steven Allen authored
And tag useful peers in higher buckets
-
Steven Allen authored
That way, we never disconnect from the core of the network. We don't protect our closest peers as: * We'll reconnect to them frequently when we query for ourself. * We use the core nodes most frequently.
-
- 19 May, 2020 1 commit
-
-
Aarsh Shah authored
* rt refresh refactor
-
- 14 May, 2020 1 commit
-
-
Aarsh Shah authored
* Bootstrap when RT is empty and optimize allocations. Co-authored-by: Steven Allen <steven@stebalien.com>
-
- 25 Apr, 2020 1 commit
-
-
Steven Allen authored
They've told us better ones via identify.
-
- 20 Apr, 2020 2 commits
-
-
Steven Allen authored
These are all critical paths so we should try to do as little work as possible.
-
Alan Shaw authored
-
- 09 Apr, 2020 6 commits
-
-
Steven Allen authored
-
Aarsh Shah authored
-
Aarsh Shah authored
-
Aarsh Shah authored
-
Alan Shaw authored
-
Alan Shaw authored
-
- 08 Apr, 2020 2 commits
-
-
Will Scott authored
-
Will Scott authored
-
- 06 Apr, 2020 5 commits
-
-
Adin Schmahmann authored
DHT defaults to adding a namespaced pk and ipns validator unless the Validator has been changed, in which case neither of them are added. Simply adding additional NamespacedValidators does not remove the pk or ipns validators
-
Adin Schmahmann authored
DHT defaults to adding namespaced pk and ipns validators unless the validator defaults are modified in which case neither of them are added
-
Adin Schmahmann authored
-
Steven Allen authored
We no longer need this now that we explicitly support v1 compatibility mode.
-
Steven Allen authored
When this option is passed, the DHT node will listen on and query _only_ using the old DHT protocol. Importantly, the node won't even pretend to be a new DHT node because it's routing table includes V1 peers.
-
- 03 Apr, 2020 13 commits
-
-
Steven Allen authored
* Remove deprecated events. * Fix warning -> warn. * Use structured logging (some places).
-
Steven Allen authored
Except deprecated warn calls
-
Aarsh Shah authored
* fix Low Peers and Cleanup
-
Aarsh Shah authored
* new RT management policy
-
Steven Allen authored
Previously, we'd only return the target peer if we were connected to them. However, this makes it difficult to impossible to find peers that are mostly disconnected from the network. This change also changes `p` to `from` in several places as `p` is _very_ confusing. We should probably switch away from using `p` everywhere.
-
Adin Schmahmann authored
Allows specifying peer filter functions on query and on adding peers to the routing table. This patch also includes some reasonable default functions for a public-only and private-only DHT. Co-authored-by: Will Scott <will@cypherpunk.email> Co-authored-by: Steven Allen <steven@stebalien.com>
-
Aarsh Shah authored
* remove disjoint queries * remove globally queried check * removed dht rng field and mutex * removed the Disjoint option Co-authored-by: Adin Schmahmann <adin.schmahmann@gmail.com>
-
Adin Schmahmann authored
* feat(query): fully async implementation of Kademlia lookup. peers returned from the lookup are not guaranteed to be alive (i.e. we're only guaranteed to have dialed the closest beta peers to the target), but given stable and correct routing tables the expectation that most of the peers returned are alive is high. * feat(query): add wrapper lookup followup function to followup after the lookup is completed and ensure that the closest k returned peers from a lookup have been queried even for beta < k * refactor(query) modified the structure returned from lookups to be a useful subset of the full query state instead of the entire query state * feat(options): beta parameter exposed as the Resiliency parameter * feat(routing): do not mark the routing table as updated after a FindPeer query * feat(routing): FindPeer can return addresses even if not Connected as long as it was either recently connected (CanConnect) or was discovered during the lookup * feat(bootstrap): bootstrap logic now uses GetClosestPeers instead of FindPeer * refactor(dht): stopFn no longer takes any state * fix(test): changed GetClosestPeers test to only assume beta instead of k peers since that is now more appropriate given the query logic changes and that the routing tables in that test are bad, i.e. a ring network with arbitrary peerIDs Co-authored-by: Petar Maymounkov <petarm@gmail.com> Co-authored-by: Aarsh Shah <aarshkshah1992@gmail.com>
-
Aarsh Shah authored
-
Aarsh Shah authored
-
Adin Schmahmann authored
-
Aarsh Shah authored
-
Aarsh Shah authored
-