Decentralization in its inception?

An important part of the DC community is its ability to change and the ability of the developers to think of new and interesting ways to improve the experience that is Direct Connect. One important section of change is the posibility to take an existing program, like DC++, and change it to ones own liking. One of these clients is StrongDC++, which have features that are not in e.g. DC++ and some features that have migrated its way back to DC++.

A new exiting approach that can only be described as a way to extend Direct Connect is the ability to create a decentralized version of DC, using commands and functionality similar to ADC (and NMDC, albeit only insofar as the initial startup). The proposal have been made by, as can be noted by the page title, the StrongDC++ client and its authors (other people are as well involved).

Basically, the new protocol will be able to operate without a hub, and where one might still be able to share and download with others. However, it should be noted that to get a list of users, one need to connect to a hub and ask for other clients’ support for this feature.

(Note that I’m not saying that this will or will not be a feature incorporated in DC++.)

4 Responses to Decentralization in its inception?

  1. quicksilver666 says:

    The Idea/Intention behind it is good. Especially as this background network can be easier used to implement new features without support of the hub.

    The problem comes with the theory behind this. Decentralization in p2p networks has some rules. First and most important: A p2p network must scale!

    O(n) connections .. or at least several 100 connections can be easily reached if just using a chaotic structure.
    Also the search being sent to all peers is not possible .. as this would again result in O(n) traffic.
    To large for single peers, at least if the network should scale over a 5000 peers.

    Imho from what I have seen the Authors have seen that a thing called p2p network exists … but they have never had the patience to read up a single hour of theory behind it.

    Please Folks .. if you want a p2p network you have 2 choices:
    1. Use an existing library.. Kadmelia seems to have libs in several languages.
    2. Develop your own network that is better than Kadmelia ..
    though this needs some theoretic background. You should at least know what CAN , CHORD or Tapestry is … one should know what Kadmelia is and Plaxton Routing in general. One should know what Random Graphs and Distance Halving is. Then you would have some theoretic background that you need to know to develop a p2p network.

    If you don’t have that you will end up like this StrongDc proposal… It looks like some people reinventing an alpha version of the wheel. They seem to have found out that it works if it has more edges than a pentagon. But it didn’t occur to them that there are already Round wheels around and that alluminium rims have also been already invented.

    DC needs /could make good use of a decentralized support structure. But just connecting all peers you can find is plain wrong!

  2. quicksilver666 says:

    hmpf its Kademlia sry ..

  3. arnetheduck says:

    while nice for searching, it sort of misses the social bit of dc…dc is irc-lite and ftp-lite in nice packaging after all…

  4. quicksilver666 says:

    Nothing hinders you to create a irc like chatroom without a server.

    in the end any distributed DC stuff should be transparent to the user.

    Like may be search just also returns Files from users outside the hub.

    Or a hub just being a decentralized entity would give some immunity to DoS which sometimes would be kind of nice.

Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: