Steven Allen
2f06021e0c
fix: use the goprocess for closing
fixes #668
5 years ago
Raúl Kripalani
e69d17141c
integrate the event bus, handle protocol update events, make identify emit deltas ( #659 )
5 years ago
Steven Allen
1449765980
basic_host: ensure we close correctly when the context is canceled
As long as we _accept_ a context, we need to obey it.
5 years ago
Raúl Kripalani
d87f89314c
Consolidate abstractions and core types into go-libp2p-core ( #601 )
6 years ago
Steven Allen
192e96f186
test: increase delay for backpressure
CI is really slow.
6 years ago
Steven Allen
97d03a46b4
test: add a small delay to deal with write coalescing
6 years ago
vyzo
3437213b5f
close connection manager
6 years ago
vyzo
70c4f155e7
advertise for relay services every 30min
6 years ago
vyzo
0a221500fd
update use of discovery.FindPeers for new interface
6 years ago
Steven Allen
1b9cf3e2cb
test: disable flaky autorelay test in CI
This keeps breaking travis.
6 years ago
Steven Allen
d0ab45164c
ping: simplify ping loop
6 years ago
Steven Allen
d3d5351d81
ping: return a stream of results
Otherwise, we can't return errors. This is a breaking change but unlikely to
have a large impact on anyone but go-ipfs.
Part of https://github.com/ipfs/go-ipfs/issues/6298
6 years ago
vyzo
b8616c65b3
use cancelable background context in identify
6 years ago
vyzo
ba00011d34
avoid intermediate allocation in relayAddrs
now that we have the lock for the duration of the method, we don't need the intermediate
relays array. This removes it, and also extends the pre-allocation of the result array
by 2 so that it can cover two localhost and two private address bindings.
6 years ago
vyzo
97f1e71e86
cache relayAddrs for a short period of time
6 years ago
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
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
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
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
vyzo
a88ae79f6f
use transientTTL for invalidated addrs instead of 0
6 years ago
vyzo
06391d4f2f
replace peer addresses in identify
6 years ago
vyzo
27f465ee35
some better logging
6 years ago
vyzo
0830634938
limit number of FindPeer queries in relay selection
6 years ago