Guest Toast

DHT Cloud is Growing

46 posts in this topic

Its only been a couple of days since StrongDC++ and RSX++ had its release of DHT capable clients and the cloud is really growing fast in the initial test phase there was about 30-100 users using DHT now its up to 650 and growing fast.

So what is DHT ?

DHT stands for Distributed hash table, its a network node that lets users share without being on the same hub a much needed feature for Direct Connect to increase popularity for using trying to find files.

This feature is more know by Torrent users since its a feature has been used there for a couple of years now but it didn't start there it started with a old p2p app called Napster.

The DHT system in StrongDC++ is a rewrite made by Big Muscle and the specs can be found at ADCPortal Wiki for developers that are interested in joining up and using it.

Now for users that are concerned about privacy matters, don't worry the feature could be turned off simply under advanced settings so that your not apart of the DHT network.

This will probably end up in Apex in the future so i decided to post about it now.

For more info Wikipedia page

Share this post


Link to post
Share on other sites

Its only been a couple of days since StrongDC++ and RSX++ had its release of DHT capable clients and the cloud is really growing fast in the initial test phase there was about 30-100 users using DHT now its up to 650 and growing fast.

So what is DHT ?

DHT stands for Distributed hash table, its a network node that lets users share without being on the same hub a much needed feature for Direct Connect to increase popularity for using trying to find files.

This feature is more know by Torrent users since its a feature has been used there for a couple of years now but it didn't start there it started with a old p2p app called Napster.

The DHT system in StrongDC++ is a rewrite made by Big Muscle and the specs can be found at ADCPortal Wiki for developers that are interested in joining up and using it.

Now for users that are concerned about privacy matters, don't worry the feature could be turned off simply under advanced settings so that your not apart of the DHT network.

This will probably end up in Apex in the future so i decided to post about it now.

For more info Wikipedia page

Looks promising. I hope it will help us find rare files :whistling:

Share this post


Link to post
Share on other sites

Hence the simple feature to turn it off to respect the privacy of hubusers

Share this post


Link to post
Share on other sites

This could be a real problem for hubs that use IP bot to ensure ppl that the dl is in its own country cos like in Iceland you have unlimited dl inside your country but have limited dl outside, so only way to fix this is to use the GeoIPcvs and set it to only dl from IS (Iceland) IPs.

Share this post


Link to post
Share on other sites

Then turn it off whats the problem ? dont u ppl read what i wrote ?

Share this post


Link to post
Share on other sites

Then turn it off whats the problem ? dont u ppl read what i wrote ?

It should be off by default, otherwise you're violating the privacy of users without them even know about it. Or maybe when the application is launched, it explains that instead of your share being visible to the hubs you choose to connect to, it's now visible to everybody in a global network.

Share this post


Link to post
Share on other sites

Also, does the client display that DHT is enabled so hubs have the option to disallow entry?

Share this post


Link to post
Share on other sites

DHT has nothing to do with hubs so there is no reason why it shouldn't be visible to them. Or do you also display to hubs that you are connected to hubs DCDev Priv, DCDev Pub and e.g. Bestofall hub? I don't think so.

Share this post


Link to post
Share on other sites

Sorry I misunderstood the function of it, somehow in my head I thought that if I had DHT enabled I would connect others to outside sources.

Still I think users should be aware of this function so thay don

Share this post


Link to post
Share on other sites

DHT is mentioned in a changelog so users are awared of this function. If they don't read it, it's their problem and not ours.

Share this post


Link to post
Share on other sites

Plus the articles that ive done about and the blog pretorian did awhile back ago and the BMs post on his forum and Adrians post in his forum should cover all bases regarding this feature some ppl will use it some ppl will not :whistling:

I think its a great feature to resurrecting DC in general

Edited by Toast

Share this post


Link to post
Share on other sites

I have some severe misgivings about this feature.

This is a fundamental change in network design; this builds one big P2P network, not the small-worlds network DC has always been up until now. This is a VERY BIG switch in paradigm. It may violate pre-existing user expectations of the software.

This feature really must not be hidden away in a changelog, otherwise users may inadvertently be sharing things with the whole world that they only meant to share with a select few. Are you, Big Muscle, prepared to accept responsibility for exposing them to that potentially severe risk? There must be a clear off switch, and I would argue, it should be off by default in Apex, certainly for a while at least.

(Do all DC users want to share with everyone? If they did, why are they using a small-worlds network like DC and not the many existing wide P2P networks like public torrent sites, eMule, or Gnutella? Isn't being small-worlds one of DC's characteristic advantages?)

Note that even Bittorrent includes ways to let the trackers tell it that public DHT publication is undesirable, and this field is very commonly used in the wild, for example to allow trackers to restrict access to the general public! Where is the analog here? There isn't one, at all. A client who's on the DHT may leak any downloading or shared file to the public inadvertently, without even being aware of it.

Note that the client does announce to the hub how many other hubs it's on, and the hub is already free to make decisions based on that. The client should, therefore, announce to the hub that it is on the DHTâ

Edited by Ophite

Share this post


Link to post
Share on other sites

DHT has nothing to do with hubs so there is no reason why it shouldn't be visible to them. Or do you also display to hubs that you are connected to hubs DCDev Priv, DCDev Pub and e.g. Bestofall hub? I don't think so.

Specifically as addressed above, you do, in fact, tell them that, at least in terms of numbers. Hub count, op/registered/unregistered. Right there in the tag and BINF.

Share this post


Link to post
Share on other sites

I tend to agree with Ophite.

But if DHT is OFF by default then 99% of the population will not use it.

Imho, the correct way is when someone install StrongDC++, a pop-up window appears and explains him what is DHT, giving him the option to enable/disable it (!)

This window is configurated in such a way that if the user skips this window, not choosing anything or not reading, DHT will be set to ON.

And thank you BM for this huge step forward, imho.

Share this post


Link to post
Share on other sites

The main problem is that a lot of users aren't aware of the purpose of SHARING DC-based application. It has been designed to share files with users. And not to share files with ONLY SOME users. Hubs are only a mean to allow connecting to these users. The second thing is that neither protocols (neither ADC nor NMDC) nor whole application differenciate between public, private or somewhat other. There's only internet network. So, if users use application/protocol for some special case, it's only his turn to study all documentation (changelogs, forums etc.) and to customize app's settings to its need. So there is really no reason to have DHT defaultly off or to inform user with some special things. The third thing is that it is open source application and users take its own responsibility for using it.

If hubs will ban StrongDC++ due DHT, it's only their problem and I will only be glad that StrongDC++ users won't be in such hubs. StrongDC++ has been designed for sharing with all users, so our users shouldn't go to hubs which are against sharing.

And the last thing, if you don't want to share your files with all people, then turn your client off, delete it from your HDD and go away from sharing world.

Teobald likes this

Share this post


Link to post
Share on other sites

BM: you have a point too. After rethinking a bit, and considering other posts on this forum and your's, I think I understand now that SDC is meant for share and implemented this way. While, instead, some hub-owners are anti-share and anti-DC... so this is why SDC does not meet their needs all the time.

Indeed DHT is creating a virtual huge public "hub". But that hub is only meant for share. It has no chat, mainchat, op-list or something like regular hubs have... so the "DC spirit" is not broken even if this option is enabled by default without user knowing. Everything is the same as before, DC is the same, only download speed is boosted.

One particular effect of DHT, however, is that you no longer need to connect to big hubs to be able to download fast. This is a change. But this seems like a positive change from the user perspective. I don't know how hub owners would react to this, because I think it will somehow decrease hub's hegemony and increase DC decentralization. Hub X will not be so popular and attractive as before, because I will no longer need to connect to it to download fast. Because of DHT I can connect to any hub, even small, and still download fast... But again, it seems like a positive to me.

In my opinion DHT is much better then not DHT.

BM: some of us try to understand and just express our opinions. No need to be upset...

Share this post


Link to post
Share on other sites

Exactly, what you are saying is that what I wanted to avoid by not implementing keyword publishing in DHT. Therefore, connection to hub is still required to search files by keywords. DHT can be used only for TTH searches... also, there is another positive for DHT - when you are connected to hub and there's some user. When this user is found as a source (in hub or via DHT), it will initiate connection via DHT and not via hub. So as the result, it will decrease hub load.

Share this post


Link to post
Share on other sites

The main problem is that a lot of users aren't aware of the purpose of SHARING DC-based application. It has been designed to share files with users. And not to share files with ONLY SOME users. Hubs are only a mean to allow connecting to these users. The second thing is that neither protocols (neither ADC nor NMDC) nor whole application differenciate between public, private or somewhat other. There's only internet network. So, if users use application/protocol for some special case, it's only his turn to study all documentation (changelogs, forums etc.) and to customize app's settings to its need. So there is really no reason to have DHT defaultly off or to inform user with some special things. The third thing is that it is open source application and users take its own responsibility for using it.

If hubs will ban StrongDC++ due DHT, it's only their problem and I will only be glad that StrongDC++ users won't be in such hubs. StrongDC++ has been designed for sharing with all users, so our users shouldn't go to hubs which are against sharing.

And the last thing, if you don't want to share your files with all people, then turn your client off, delete it from your HDD and go away from sharing world.

I can't help but feel you fundamentally misunderstand the nature of a small-worlds network like DC, Big Muscle, where we have circles of friends with each other, and so-called "super-peers" connecting those circles. It's actually a time-honoured design for a reasonâ

Share this post


Link to post
Share on other sites

THE FEATURE CAN BE TURNED OFF !!!

hope that was big text enough

Share this post


Link to post
Share on other sites

What are you saying, Ophite, is only valid for a small percent of users. But most users join hubs because they want to download, and they want to download as fast as possible. On some big hubs, often there are only 10-20 posts to mainchat in all day... and mostly like: "hi" or "how can i get this file". Sometimes even less. They say DC is dying, and I think this is the reason why people are switching to torrents. DC is less effective from this point of view (download speed).

If a user really join a hub because of your reasons, because he want to chose, because he wants privacy, he can always disable this option. So nobody has to lose. If you have a small private hub, you can disable DHT along with all the rest of hub users. But please admit that an average user who chose to join one hub versus another is choosing that hub because he thinks he can download faster or he has better chances to find what he seeks... Or please tell me that those 5000 users joining hub X are all close friends and want privacy...

About the DDOS issue, I agree it should be carefully analysed.

DHT has been implemented. I think we should give it a try and see how it works. And I also think it is better to try to do something then to do nothing. In respect to DC.

Share this post


Link to post
Share on other sites

I also understand that users want make sharing illegal material much easier. Having DHT enabled plays agains sharing illegal material. But StrongDC++ will never go in such illegal way. So if user wants to use it for it, it's only his turn to customize the settings.

I also understand that some people want to only share personal photos, videos etc. with their friends. But this isn't the purpose why StrongDC++ is being developed. But, if someone wants to use it for such purposes, it's only his turn to customize settings. Also, someone may thought that DHT will cause leaking private informations, file hashes, files etc. from "private" hubs. But this isn't true, because these informations aren't stored in hubs and have nothing to do with hubs. And, if ApexDC++ developers will set DHT defaultly off, it's only his right. But in such case, they don't have to implement it at all, because nearly nobody will turn it on. However, DHT bootstrap script will accept only StrongDC++ clients.

About the security... yes, they are still some things which need to be solved.

Share this post


Link to post
Share on other sites

http://strongdc.svn.sourceforge.net/viewvc/strongdc/trunk/?view=log

Good news so far BM :)

Share this post


Link to post
Share on other sites

I can't help but feel you fundamentally misunderstand the nature of a small-worlds network like DC, Big Muscle, where we have circles of friends with each other, and so-called "super-peers" connecting those circles. It's actually a time-honoured design for a reasonâ

Share this post


Link to post
Share on other sites