vyzo
abfb4c8901
fix bug in findRelaysOnce: it connects to all relays
6 years ago
Steven Allen
776a53a370
autorelay: break findRelays into multiple functions and avoid the goto
(@stebalien is picky and opinionated...)
6 years ago
Steven Allen
9fc5c962b6
Merge pull request #598 from libp2p/feat/moar-relays
autorelay: curtail addrsplosion
6 years ago
vyzo
8d073cec9e
kill the parallel query logic in selectRelays; let it be random
the presence of stashed query results from discovery in the peerstore _biases_ the
selection towards fully DHT nodes, which penalizes dedicated relays.
6 years ago
vyzo
35e805dc41
add ignore list to account for connection failures
6 years ago
vyzo
4629431a12
some tweaks
- select 25 of 50 relays instead of 20
- increase connect timeout to 30s
6 years ago
vyzo
f9e182f747
gate max number of retries in findRelays
6 years ago
vyzo
1a8111970b
reduce scope of the lock, pre-allocate result slice in relayAddrs
6 years ago
vyzo
5c9299a45c
pacify the race detector
6 years ago
vyzo
4727d5b849
don't preallocate result array, we don't know how long it will be
6 years ago
vyzo
c09717275b
compute relay address set dynamically
6 years ago
vyzo
f4f924e1d4
don't track relay addrs, use the peerstore
6 years ago
vyzo
bd22c49b0d
remove redundant private addr check when constructing our relay address set
findRelays cleans up address sets now for addrsplosion, and this removes private
addrs as well.
6 years ago
vyzo
b0f4a6f977
Merge pull request #597 from libp2p/feat/address-push
Periodically schedule identify push if the address set has changed
6 years ago
vyzo
f17a4a8667
preallocate map in sameAddrs
6 years ago
vyzo
ebc5d16f5d
use a map in sameAddrs to avoid quadratic behaviour
6 years ago
vyzo
3697552406
handle misbehaving peers in identify push
6 years ago
vyzo
c73f68bdb4
explicit Start method for basic host
6 years ago
vyzo
c9b2f468ba
reduce peer count in TestFuzzManyPeers when running under the race detector
6 years ago
vyzo
5845909754
add initialization delay in basic host background task
6 years ago
vyzo
7502fc44c9
add a background task in basic host that periodically pushes identify if needed
6 years ago
vyzo
8fa257cdf0
track context given in identify constructor and use it to gate identify push
6 years ago
vyzo
bf651ca7c7
use a single, NoDial context in identify push
6 years ago
vyzo
9b2731e5bb
used named constants for dns address protocols
6 years ago
vyzo
a8d14f9b02
use addresses from the peerstore if available
6 years ago
vyzo
ff4b98a6fc
some more addrsplosion tests
6 years ago
vyzo
21c4e1d298
test for privately bound port first when cleaning up addrsplosion
6 years ago
vyzo
528c473840
filter relay addrs in address set cleanup
6 years ago
vyzo
9d7f6b83e5
rewrite isDNSAddr to use ma.SplitFirst
6 years ago
Steven Allen
f1888d98c4
Merge pull request #604 from libp2p/chore/improve-nil-option-tests
chore: improve nil option tests
6 years ago
vyzo
e82eabe130
cover the case where we can't select a default port in addrsplosion clean up
6 years ago
vyzo
a331f99b65
addrsplosion test
6 years ago
vyzo
433a0c0908
extract cleanupAddrSet and implement better heuristic
6 years ago
vyzo
4a4b14819a
add comment about eliding the lock on addrs read
6 years ago
Steven Allen
262b35f272
chore: improve nil option tests
6 years ago
Steven Allen
6a6b415c41
Merge pull request #603 from libp2p/feat/nil-option
constructor: allow nil options
6 years ago
Steven Allen
cff9cb577c
constructor: allow nil options
This can make it significantly easier to configure libp2p with optional options.
6 years ago
vyzo
213863abbc
Merge pull request #599 from libp2p/feat/identify-replace-addrs
Replace peer addresses in identify
6 years ago
vyzo
a88ae79f6f
use transientTTL for invalidated addrs instead of 0
6 years ago
vyzo
06391d4f2f
replace peer addresses in identify
6 years ago
vyzo
4722f1aab6
Merge pull request #600 from libp2p/gomod/update
gomod: update go-libp2p-discovery
6 years ago
vyzo
8d2457577d
gomod: update go-libp2p-discovery
6 years ago
vyzo
27f465ee35
some better logging
6 years ago
vyzo
0830634938
limit number of FindPeer queries in relay selection
6 years ago
vyzo
0c69da9409
move the address invalidation check outside the lock
6 years ago
vyzo
8d5c11c072
fix private->public->private transition issues with address set
6 years ago
vyzo
e8e2ab1930
limit relay selection to 20
6 years ago
vyzo
c8b8014fd0
gate retry wait with the context
6 years ago
vyzo
376379b5b8
retry to find relays if we fail to connect to any
6 years ago
vyzo
4a6e767da2
log and ignore relay peers with empty address sets
6 years ago