• Adin Schmahmann's avatar
    Crawler based DHT client (#709) · eac1b5e1
    Adin Schmahmann authored
    * fullrt: add experimental FullRT DHT client
    
    The FullRT client periodically crawls the network to fill its local routing table and uses that to perform queries. It supports performing many provides or puts together taking advantage of efficiencies of grouping the DHT operations by where they will occur in the Kademlia space. Additionally, it has a more tunable function for determining when a query is complete that does not require waiting on any individual peer (which could be offline) to respond. This client is experimental and its exposed interfaces should be expected to change and break over time.
    
    * crawler: starting peers with addresses and peers found during a crawl have their addresses extended. logging improved
    
    * dht: move IpfsDHT options to the internal package. Make a breaking change to the filter interfaces to support more DHT implementations
    
    * dht: GetClosestPeers now returns a slice of peers instead of a channel of peers since we have to wait for the query to complete to return the closest peers anyway
    
    * dht: the subscriberNotifiee has been refactored to work more independently of the underlying message sender implementation
    eac1b5e1
ctx_mutex.go 359 Bytes