I am thinking about multisource downloading a long time, and i'm not sure if it is such an improvement for dc++, offcourse your downloadspeeds would be faster in theory, but will the network as a whole function better? After all, other networks like Kazaa, WinMX or Emule are well known of their long queues and slow download speeds, will dc++ become the same if multisource downloading is implemented?
The reason that you can download so much and so fast on the dc++ network is the slot system, you don't have queues or priorities, so everyone can often immediately download without waiting. The problem with multisource downloading is that it will ruin the slot system if people can use multiple slots the same time.
After thinking about this problem i came with an idea, which is probably mentioned before, although I haven't seen it.
When you download a file, you use one source and slot. If you can download from multiple users you take more slots so other users can't download anymore, but when a user has plenty of slots, this isn't a problem. The main issue is to give a person who doesn't have a source to download from, priority above a user who wants to expand his sources for multisource downloading.
My idea was that when a user (A) wants to use an 'extra' slot for downloading, the slot isn't counted, so when a user (B) has 1 free slot, you can use that person as extra source, but when you do that, the user (B) remains to have 1 free slot, and when someone else (C) wants to download a file from that user (B) he gets priority and user (A) is disconnected and has to download from one person again.
The advantage is that you
can download from multiple sources, but the extra sources have a lower priority and get disconnected when someone else wants to download. This way you only can have extra sources when the user has bandwidth available which is not used by other users.
I hope you understand my story
![Very Happy :D](./images/smilies/icon_biggrin.gif)