Re: DHT vs Gnutella
[email protected] Thu, 7 Aug 2008 19:50:13 +0000 (UTC)
| Newsgroups | gmane.network.gnutella.devel |
|---|---|
| Organization | Home, Grenoble, France |
| Message-ID | <[email protected]> |
Quoting Angel Leon <[email protected]> from ml.gnutella.dev-forum: :In the case of FrostWire, we'd be looking to use it only to store magnet :alt-locs, :and perform all magnet searches via the DHT, pretty much what the freebase :script does, but all in our clients. So I guess my question is, why bother :implementing :a new DHT for this purpose instead of using mojito-dht? Because the Mojito DHT is a general-purpose DHT that does not define how things get published, in which format, and when. BTW, gtk-gnutella is now able (since 19:48 today, Paris time) to join the Mojito DHT and can issue node lookups. My servent even says: DHT averaged global size estimate: 371329 which is not bad, although I suspect it's grossly over-estimated. The questions I have now are: * How do I publish my SHA1? * How do firewalled servents publish their push-proxies and more importantly: * How can I read other-people's SHA1 and push-proxies? * How to make sure others can find and read what I publish. The current documentation I have on Mojito (obviously this is a parallel impelementation as everything in gtk-gnutella is done in C...) gives me no clues whatsoever about the data architecture. Also, I have trouble understanding what the "secondary keys" are. Raphael P.S: Some statistics about node lookups, showing the elapsed time for the lookup to reach a termination point and the traffic (in and out) generated for each: 38.785600 secs, hops=17, in=10905 bytes, out=3807 bytes 54.039890 secs, hops=22, in=14540 bytes, out=5346 bytes 53.869495 secs, hops=18, in=10905 bytes, out=4131 bytes 53.616663 secs, hops=21, in=13086 bytes, out=4860 bytes 45.903455 secs, hops=15, in=8724 bytes, out=3321 bytes 60.915373 secs, hops=22, in=14540 bytes, out=5346 bytes 51.073746 secs, hops=9, in=4362 bytes, out=1863 bytes 52.676033 secs, hops=19, in=11632 bytes, out=4212 bytes 52.878718 secs, hops=22, in=14540 bytes, out=5346 bytes These were "bucket refresh" node lookups in foreign buckets away from my closest subtree. I use alpha=3 and loose parallelism (i.e. the next batch of alpha requests is sent out as soon as one of the outstanding RPCs comes back).