This forum has been archived. All content is frozen. Please use KDE Discuss instead.

Uploading Only to Downloads - Feature Request

Tags: None
(comma "," separated)
Kalessin
Registered Member
Posts
78
Karma
0
As I understand it, how fast you're uploading a given torrent can have a big impact on how fast you can download that torrent. It's certainly not a guarantee that a high upload rate will result in a high download rate, but as I understand it - in general - peers are more likely to upload to you if you upload to them. That being the case, I would think that you'd want to focus your upload bandwidth on torrents that you're currently downloading.

Now, assuming that that's the case, I would like to be able to tell KTorrent that while it is downloading, it can only upload for the torrents that it's downloading. When it's not downloading, it would of course seed the already downloaded torrents normally, but while it's downloading, it seems to me that it would be more efficient to upload only for the downloading torrents.

Of course, while I would definitely like this feature, I don't know how well it squares with the whole sharing fairly thing. Perhaps telling KTorrent to only upload to torrents that are downloading would be considered unfriendly - even if it would return to uploading all seeding torrents after the downloads are complete. As such, I don't know whether such a feature would be acceptable. However, I think that it would quite nice.

In summary, I would love to be able to tell KTorrent to upload only for torrents that it's currently downloading while it's downloading in the hopes that they would then be downloaded faster. Once it is no longer downloading, then it would seed all torrents normally.
clayne
Registered Member
Posts
16
Karma
0

Sun May 06, 2007 12:15 am
Presuming that KT is using a typical priority queue/heap - I think simply adding an option to bias or prioritize upload bandwidth to currently downloading torrents would be best.

This allows prio of UL bandwidth to hit those torrents first, but (assuming the PQ they use prevents starvation) does not totally screw the presently seeded torrents.

The above can also be applied towards torrents with seeds <= 1.
George
Moderator
Posts
5421
Karma
1

Sun May 06, 2007 6:33 pm
The current choke algorithm already takes the download speed into account. Every peer is awarded a score, the higher the download speed the higher the score, the more chance the peers gets to be unchoked.
Kalessin
Registered Member
Posts
78
Karma
0

Sun May 06, 2007 11:25 pm
That's not quite what I meant. I wasn't talking about rewarding people who uploaded to me by uploading to them. And I wasn't talking about a peer thing really. My concern is more how much upload bandwidth a torrent gets, not specific peers. As far as I can determine, if you have a bunch of seeds, they eat into your upload bandwidth and the torrents that you're downloaded don't get as much bandwidth to use to upload. My concern is that if too much of my upload bandwidth goes to seeders, it will have a negative impact on my download speed.

Now, it's quite possible that the current choke algorithm already addresses that in some manner - I'm certainly not an expert on how KTorrent decides which torrents it will upload for and which peers it will upload to. Perhaps the algorithm deals with this wonderfully already, but it appears to me that seeding torrents can take up quite a lot of upload bandwidth, thus reducing how much upload bandwidth is available or downloading torrents, and potentially adversely affecting how interested peers are in uploading to me. Indicating to KTorrent that I only want it to upload for downloading torrents while there are some - or at least to favor them by a good margin - is what I was looking for. Perhaps it's a bad idea - I'm neither an expert on KTorrent nor the bittorrent protocol in general - but it seems to me that it could be a useful feature.
George
Moderator
Posts
5421
Karma
1

Mon May 07, 2007 7:14 pm
Ah, I see, you are talking about torrents.

We recently added a feature to set individual upload limits for torrents. (right click on torrent -> speed limits)
Kalessin
Registered Member
Posts
78
Karma
0

Mon May 07, 2007 10:31 pm
That's a nice feature that could help in what I'm looking for, but that's not what I'm looking for. I want the downloading torrents to be the ones uploading. If I'm going to do that manually, I can stop all of the seeding torrents until the currently downloading torrents have been fully downloaded. By setting upload limits on specific torrents, I can make it so that the downloading torrents are favored for uploading but that the seeders are still able to upload. In either case, I need to manually stop or limit seeding torrents while torrents are downloading and then manually start them or unlimit them if I want to give all of the seeding torrents an even chance when I no longer have downloading torrents.

What I'd like is a feature to do that for me autmatically. I'd like to be able to tell KTorrent either to stop all seeding torrents while there are torrents downloading or to make it so that downloading torrents are favored for using the overall upload bandwidth (perhaps by having a setting that says how much of the total upload bandwidth goes to downloading torrents and how much of it goes to seeding torrents). In either case, I would want it to automatically use all of the upload bandwidth for seeding torrents again after the downloading is complete. It would be dealt with automatically. As it is, KTorrent has enough features for me to do it manually, but what I would like is for a feature that does it automatically.
George
Moderator
Posts
5421
Karma
1

Tue May 08, 2007 6:29 pm
OK, but this is not for tomorrow, it will have to be done when the port to KDE 4 is done.
Kalessin
Registered Member
Posts
78
Karma
0

Tue May 08, 2007 9:00 pm
That's fine. It is a feature _request_ after all. Just so long as you understand want I'm looking for you can choose to implement it or not and when it's appropriate to do so. There are, after all, a number of other useful features that you've been working on and others left to do that you've already planned on. I'll be happy to see it whenever it gets added. Thanks for all your hard work. KTorrent just keeps getting better and better.
clayne
Registered Member
Posts
16
Karma
0

Sun May 20, 2007 11:26 pm
BTW: From a philosophical point of view - why should seeding UL take a back seat to leeching UL? I could see it in the case of > 1.0 ratio, but below that I see it as "I want what I want - now."
Kalessin
Registered Member
Posts
78
Karma
0

Tue May 22, 2007 11:40 am
Well, the
"I want what I want - now."
_is_ sort of the point. If uploading to those that are uploading to me gets me faster downloads, than that's what I want. If you were constantly downloading and were rarely in a situation where you were simply seeding, then it would be a problem since the seeding torrents would ultimately not really manage to seed to 1.00, but if you're downloading periodically and seeding all the time, then I see nothing wrong with focusing your upload bandwidth on getting the downloads fully downloaded. That way you can use whatever you're downloading that much sooner and then you can get back to uploading all the seeds again, so in the end, I don't think that it really has much of a negative impact on the seeds. As much as torrents are about sharing, I'd like to do it in a way that allows me to get what I'm looking for as quickly as possible without too much of a negative impact on how much I share it.


Bookmarks



Who is online

Registered users: Bing [Bot], Google [Bot]