We should decide whether we want to create a FullRT routing table implementation, and its associated refresh mechanism (crawler), or if the FullRT from the old implementation should be superseded by Reprovide Sweep. Note that the scope isn't exactly similar. Reprovide Sweep is more efficient at reproviding content than FullRT, but FullRT is (supposed to be) more efficient at lookup than a normal routing table (using Reprovide Sweep). IIUC most of the FullRT users are using it to reprovide content, so the switch to Reprovide Sweep would be an upgrade for them. However, we may break users depending on the FullRT for faster lookup, if we don't implement it in the new IPFS DHT implementation. There are other efficient routing table alternatives described in https://github.com/plprobelab/go-kademlia/issues/2.
As the accelerated DHT client is an option in Kubo, we could ship the new IPFS DHT implementation without implementing the FullRT, and kubo could depend on the old IPFS DHT implementation if the accelerated DHT client option is set.
To be clear, this is more than "scope/nicetohave", as this is non-experimental feature in Kubo that we point users to. This will be required before we enable "go-libp2p-kad-dht/v2" by default in Kubo.
We should decide whether we want to create a
FullRT
routing table implementation, and its associated refresh mechanism (crawler), or if theFullRT
from the old implementation should be superseded byReprovide Sweep
. Note that the scope isn't exactly similar.Reprovide Sweep
is more efficient at reproviding content thanFullRT
, butFullRT
is (supposed to be) more efficient at lookup than a normal routing table (usingReprovide Sweep
). IIUC most of theFullRT
users are using it to reprovide content, so the switch toReprovide Sweep
would be an upgrade for them. However, we may break users depending on theFullRT
for faster lookup, if we don't implement it in the new IPFS DHT implementation. There are other efficient routing table alternatives described in https://github.com/plprobelab/go-kademlia/issues/2.As the accelerated DHT client is an option in Kubo, we could ship the new IPFS DHT implementation without implementing the
FullRT
, and kubo could depend on the old IPFS DHT implementation if the accelerated DHT client option is set.