Thanks for your kind replies...the problem is, I have had a second dream (a daydream this time, while having boring english courses) and I doubt now that the implementation of segmented downloading would be a good idea. I would rather have the servents stick to linear downloading even if they could do segmentation. I will explain it:
Downloading on the Gnutella Network is hard. Very often you will find files that you cannot download; your servent only says 'waiting, retrying, pushing, error'. The problem is that many users are downloading much more files than they are uploading, and mostly they have limited their upload speed to far less then 50%. The upload slots, however, are limited and therefore there are far too less upload slots available on the Network (I really wonder why Napster seemed to have no such problems - could it be due to the larger user base ?).
If techniques such as segmented downloading would spread over the Gnutella Network, it would be a great damage rather than progress. People would share no more than they do now, but they would consume two or three times as many upload slots. The result: It would become even harder to find available mirrors. As explained in my last post, segmentation only works if there are enough available Candidates. However, if many users use segmentation, they will dramatically decrease the number of available Candidates and therefore using segmentation only works if it is used by a small minority. Spreading on the Network, it wouldn't work any more.
However, everything else I posted should work; LimeWire's and Phex's features really match like cogs in a clockwork. I do hope that Lime will implement a dynamic Download Candidate List in the next version. |