Question to Arne about original design of DC
Moderator: Moderators
Question to Arne about original design of DC
Hi!
Good work on DC++!
Just wondering, now that you have made your own version of DC, and is working on a hubb. If you would have started from scratch today with a new DC2, what would you have made different? Any big flaws in the design of DC?
Good work on DC++!
Just wondering, now that you have made your own version of DC, and is working on a hubb. If you would have started from scratch today with a new DC2, what would you have made different? Any big flaws in the design of DC?
-
- Posts: 202
- Joined: 2003-01-06 06:22
- Location: Salford, England.
- Contact:
A few others;
- The protocol doesn't handle certain characters (like: |, $, <, >, character 0x5 or even spaces in some cases)
Need some escaping scheme here, this is done only in the lock computation (for some weird reason!).
- The whole network relies on a nickname that can be changed or taken by somebody else (thus your download queue doesn't work)
- Searches are difficult to track (which search result belongs to which search request). Obviously lack of support for multihub capabilities, and this makes automated searches difficult.
- In general the protocol doesn't define error conditions. If something weird happens, we either ignore it or close the connection.
- The protocol doesn't handle certain characters (like: |, $, <, >, character 0x5 or even spaces in some cases)
Need some escaping scheme here, this is done only in the lock computation (for some weird reason!).
- The whole network relies on a nickname that can be changed or taken by somebody else (thus your download queue doesn't work)
- Searches are difficult to track (which search result belongs to which search request). Obviously lack of support for multihub capabilities, and this makes automated searches difficult.
- In general the protocol doesn't define error conditions. If something weird happens, we either ignore it or close the connection.
I wrote QuickDC - A DC++ compatible client for Linux and FreeBSD.
You guys take everything for granite.
A flawless protocol doesn't exist, right? I imagine the DC protocol was designed on the basis of pure speculation. With as many P2P apps as there are, I find it hard to believe a VB,p.o.s., P2P app would overcome so many others and find it's way into the hands of crackers. Crackers I say, because the DC protocol was never *SO* public, until DC++ surfaced of course.
So, just don't use it if you think it has so many flaws. Security wise, yeah it has lots of flaws, but then again, who would've thought DC could turn into what it is now...
A flawless protocol doesn't exist, right? I imagine the DC protocol was designed on the basis of pure speculation. With as many P2P apps as there are, I find it hard to believe a VB,p.o.s., P2P app would overcome so many others and find it's way into the hands of crackers. Crackers I say, because the DC protocol was never *SO* public, until DC++ surfaced of course.
So, just don't use it if you think it has so many flaws. Security wise, yeah it has lots of flaws, but then again, who would've thought DC could turn into what it is now...
-
- Posts: 23
- Joined: 2003-02-28 03:47
- Location: germany
- Contact:
am wondering now ...
why isn't arne desinging a new version of the protocol and implementing it in DC++ ...
then make it public so other hub developers can use it, and change his how to the new protocol. then, if someone tries to connect using the old protocol just send a message back telling the user why this won't work and disconnecting him ...
if you got a client supporting both protocol version you could have a smooth change to it ...
so we could have all add-ons we want (like checksum, search identifiers etc.)
why isn't arne desinging a new version of the protocol and implementing it in DC++ ...
then make it public so other hub developers can use it, and change his how to the new protocol. then, if someone tries to connect using the old protocol just send a message back telling the user why this won't work and disconnecting him ...
if you got a client supporting both protocol version you could have a smooth change to it ...
so we could have all add-ons we want (like checksum, search identifiers etc.)
learn more about the [A&AM]Hubs: AnimeAndAsianMovies.de.vu
I disagree. No need to add bloat to the existing protocol.
Make an entirely new protocol based on the same ideas and concepts as DC.
Right now there are many different interpretations of the DC protocol,
and you are not guaranteed that something which works with DC++ works with another DC client.
Start over again. Add those things missing, create a more
robust and strict protocol, but keep it simple.
Make an entirely new protocol based on the same ideas and concepts as DC.
Right now there are many different interpretations of the DC protocol,
and you are not guaranteed that something which works with DC++ works with another DC client.
Start over again. Add those things missing, create a more
robust and strict protocol, but keep it simple.
I wrote QuickDC - A DC++ compatible client for Linux and FreeBSD.
-
- Posts: 5
- Joined: 2003-02-05 17:38
Running a private file sharing hub, I have found DC++ (with ODCH, very stable hub, for small numbers anyway) to be the best option. One of the biggest bonuses with DC is the fact that I can share 120 GB of material and not have huge CPU drags. I tried using Shareaza & Phex (Gnutella clients) to create private networks, but they had problems handling the large number of files that I was sharing. Maybe that was the cost for supporting multisource downloading, something I would love to see in DC, but maybe simple is better. I just wish that searching was more stable, and the active-passive thing was ditched.
Anyways, I'm just rambling now. Just wanted to get some thoughts down. I think Arne has created a great client, and I thank him for his efforts.
Anyways, I'm just rambling now. Just wanted to get some thoughts down. I think Arne has created a great client, and I thank him for his efforts.
-
- DC++ Contributor
- Posts: 3212
- Joined: 2003-01-07 21:46
- Location: .pa.us
How exactly are active and passive mode supposed to be ditched? It's an echo of the fact that so many people are behind firewalls or routers. Every P2P application has an equivalent setting, though some just auto-detect and stick you in the mode they guess you belong in.goweropolis wrote:Maybe that was the cost for supporting multisource downloading, something I would love to see in DC, but maybe simple is better. I just wish that searching was more stable, and the active-passive thing was ditched.
Oh, and for on-topicness: $Supports is a fine way to extend the client to client protocol, the only protocol that Arne has control over. And what features need to be added to the Server to client protocol?
What version of shareaza was that? Im sharing ~10k files, 140Gb, having only G2 enabled. Im seeing lots and lots of searches, but having no problems, when running it in low priority. It is using 40-60% cpu though, on a Athlon 1400. Im seeing 10-30 searches per second. Im still able to game while its running.goweropolis wrote:One of the biggest bonuses with DC is the fact that I can share 120 GB of material and not have huge CPU drags. I tried using Shareaza & Phex (Gnutella clients) to create private networks, but they had problems handling the large number of files that I was sharing.
-
- Posts: 5
- Joined: 2003-02-05 17:38
GargoyleMT: Yeah, I guess that what I mean, is that it would be nice if the active-passive thing was automatic. More user-friendly and easier to non-techheads to use.
Sandos: I think that was Shareaza 1.8. Yeah, the 40-60% CPU power is my problem with it. It inhibits anything I'm doing on my computer. I am surprised you can play games at the same time. I had problems running other progs at a decent speed while running Shareaza. Progs like DC++ & eMule are usually less than 10%, which I would consider more reasonable.
Sandos: I think that was Shareaza 1.8. Yeah, the 40-60% CPU power is my problem with it. It inhibits anything I'm doing on my computer. I am surprised you can play games at the same time. I had problems running other progs at a decent speed while running Shareaza. Progs like DC++ & eMule are usually less than 10%, which I would consider more reasonable.
True, but the way it is, you can run dc++ in active mode in some cases wich an auto-detect feature would see as passive. You can configure the port, going through routers or firewalls harder to configure, set the external IP to be in active mode through ICS... And all you have to do if this is to complicated is to click on passive mode.goweropolis wrote:it would be nice if the active-passive thing was automatic. More user-friendly and easier to non-techheads to use.
-
- Posts: 5
- Joined: 2003-02-05 17:38
My concern is that no other P2P prog requires you to figure out your IP address and enter it in the options manually. Maybe a handy feature in DC++ would be for it to configure itself automatically. I know this isn't that complicated but the easier it is, the more users will use it. More active users is a good thing I would think.
Watch this topic
-
- Posts: 5
- Joined: 2003-03-02 01:50
Client-Hub Protocol Improvement
GargoyleMT once wrote:
This is one of many, many security improvements that could be made, but it seems like a good starting point, since it's simple authentication, increases security quite a bit, and, under some protocols, would result in a key exchange that could be used for later Client-Server encryption. In my opinion, one of the best options for this feature would be Stanford's SRP Protocol. See http://srp.stanford.edu/ for details...
Well, for one I'd like at least secure passwords -- so that the admins can't see the cleartext password, so that it can't be grabbed in transit, and so that a compromised password database doesn't automatically compromise the whole system's security without some serious work. It would be necessary to choose some secure protocol and store only encrypted passwords, such that even the admins couldn't recover them.And what features need to be added to the Server to client protocol?
This is one of many, many security improvements that could be made, but it seems like a good starting point, since it's simple authentication, increases security quite a bit, and, under some protocols, would result in a key exchange that could be used for later Client-Server encryption. In my opinion, one of the best options for this feature would be Stanford's SRP Protocol. See http://srp.stanford.edu/ for details...
-
- DC++ Contributor
- Posts: 3212
- Joined: 2003-01-07 21:46
- Location: .pa.us
Re: Client-Hub Protocol Improvement
You're serious?chrish4321 wrote:Well, for one I'd like at least secure passwords -- so that the admins can't see the cleartext password, so that it can't be grabbed in transit, and so that a compromised password database doesn't automatically compromise the whole system's security without some serious work.
Well, I think that client<->server encryption has been brought up before, with the caveat that it will be very draining on the hub computer's existing resources.
But something like CRAM-MD5 could probably be implemented just for passwords... and there's no need to encrypt the rest of the conversation.
As an aside, I thought of an answer to my own question the other day: returning specific types of meta-data per search "type/category" - so with an audio search, you could return bitrate, length, etc. images would give color depth, resolution, movies: audio/video codec, resolution, etc.
-
- Posts: 147
- Joined: 2003-01-04 02:20
- Location: Canada http://hub-link.sf.net
- Contact:
Why hasn't anyone mentioned ADC???
http://dcplusplus.sourceforge.net/ADC.htm
Speaking of $Quicklist, why is it still a proposal? last time I checked only one Hubsoft (SDCH) offered native support for this capability even though everyone seems to think it's a good thing....
http://dcplusplus.sourceforge.net/ADC.htm
Speaking of $Quicklist, why is it still a proposal? last time I checked only one Hubsoft (SDCH) offered native support for this capability even though everyone seems to think it's a good thing....
-
- Posts: 506
- Joined: 2003-01-03 07:33
-
- Posts: 147
- Joined: 2003-01-04 02:20
- Location: Canada http://hub-link.sf.net
- Contact:
I have a shortcut for NEW POSTS (http://dcplusplus.sourceforge.net/forum ... d=newposts) on this forum and it came up, so I just replied to it without checking the dates... I did not go digging around in old threads.....
I wonder why it would show up over a year later as a new post
Maybe it's a bug in phpBB? Weird....
I wonder why it would show up over a year later as a new post
Maybe it's a bug in phpBB? Weird....
-
- DC++ Contributor
- Posts: 3212
- Joined: 2003-01-07 21:46
- Location: .pa.us
-
- Posts: 147
- Joined: 2003-01-04 02:20
- Location: Canada http://hub-link.sf.net
- Contact: