1. 08 Apr, 2020 2 commits
  2. 06 Apr, 2020 1 commit
    • Steven Allen's avatar
      feat: add a v1 compatibility mode · 9bab9694
      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.
      9bab9694
  3. 03 Apr, 2020 7 commits
    • Steven Allen's avatar
      feat: better logging · 445472b1
      Steven Allen authored
      * Remove deprecated events.
      * Fix warning -> warn.
      * Use structured logging (some places).
      445472b1
    • Aarsh Shah's avatar
      Periodic Pinging and active fixLowPeers (#533) · 2539114e
      Aarsh Shah authored
      * fix Low Peers and Cleanup
      2539114e
    • Aarsh Shah's avatar
      New RT management policy (#520) · 8fa04389
      Aarsh Shah authored
      * new RT management policy
      8fa04389
    • Aarsh Shah's avatar
      RT connectivity changes · c17965fa
      Aarsh Shah authored
      c17965fa
    • Adin Schmahmann's avatar
      Upgrade DHT version (#479) · 07dff1f5
      Adin Schmahmann authored
      * upgraded the protocol id to version 2 (i.e. /kad/2.0.0) and made it so v2 peers running in server mode respond to queries from v1 peers. Note: v2 peers will only send queries using the v2 protocol, will only add v2 peers to their routing tables, and will only tell v1 peers about v2 peers.
      * to run a forked network we now use network specific protocol prefixes instead of manually setting protocol IDs. Use the ProtocolPrefix option instead of the Protocols option.
      * emit errors during initialization if the user misuses the default protocol prefix by setting parameters inconsistent with the default protocol's network specification
      * since the Client option has been deprecated it's been removed from the dht's options. While deprecated it is still available in the dht options package. Setting `Client(false)` now puts the node into ModeAuto.
      07dff1f5
    • Adin Schmahmann's avatar
      Enable switching DHT between client and server modes (#469) · d4134a46
      Adin Schmahmann authored
      * created Mode(ModeOpt) option for choosing between auto/client/server modes
      * Auto mode internally switches the DHT between client and server modes based on the EvtLocalReachabilityChanged event emitted on the event bus (e.g. by AutoNAT)
      * routing table management of peers that switch between client and server mode while we are connected to them (i.e. are in auto mode)
      * removed Client(bool) option, becoming a DHT client is specified using Mode(ModeClient) instead
      d4134a46
    • Adin Schmahmann's avatar
      Utilize identify events to add peers to the routing table (#472) · 509c0bce
      Adin Schmahmann authored
      * feat: consume identify events to evaluate routing table addition
      * fix: routing table no longer gets an update just because new messages have arrived or been sent
      * fix: add already connected peers into the routing table before listening to events
      Co-authored-by: default avatarRaúl Kripalani <raul.kripalani@gmail.com>
      Co-authored-by: default avatarAarsh Shah <aarshkshah1992@gmail.com>
      509c0bce