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

[optimize strategy] for fast choke/unchoking clients

Tags: None
(comma "," separated)
stoeptegel
Registered Member
Posts
1075
Karma
0
I have seen it more times, but today this got me frustated:
Peers that have some sort of strategy in choking (or reconnecting) which results in that other peers almost can't get any chance to get serviced with data.


I took some time to look arround for topic about this, and the only open thoughts i could find are from rtorrent: http://libtorrent.rakshasa.no/changeset/76 (hit reload)

I dunno if any of these things(or alike) are already implemented, but i think there are some good points which might help above issue: (or not, but you tell me ;) )
- Timeout of pieces and choking
- Snubbing
George
Moderator
Posts
5421
Karma
1

Sun Jan 29, 2006 12:43 pm
Hm, lets see :

Timeout of pieces and choking:
* Some clients do choke/unchoke cycles, put a timer for the true
canceling of requested pieces.
* Different timeout for request that are currently being downloaded
and those that haven't started.
* Starting timeout of some... 20 seconds?...


Currently we timeout requested pieces after a minute. Maybe a variable timeout value could be good.

Snubbing:
* Individual rate control of uploads depending on downloads will
handle clients that are snubing us.
* Differenciate between snubbers that have choked us and previous good
uploaders or unknowns.


Could be a good idea to punish snubbers (certainly those who have not choked us)

As for the chunk selection, we do rarest piece first, except for warmup mode.

But I think we can do several good improvements to the download process
stoeptegel
Registered Member
Posts
1075
Karma
0

Sun Jan 29, 2006 7:19 pm
Good to here :)

Just trying to find inspirative information though, not that i'am the big bittorrent guru here.... :wink:
stoeptegel
Registered Member
Posts
1075
Karma
0

Thu Feb 02, 2006 1:15 am
George wrote:Could be a good idea to punish snubbers (certainly those who have not choked us)


Yeah please do :P
Clients that don't follow the bittorrent protocol are not worth the upload!
(especially those clients where it all goes about cheating, fouling and on purpose making mistakes)

My thought:
I think best is just to choke those clients with this snub &no choke behavior until they have uploaded back ...KB->normal ktorrent handling->snub+nochoke again? if yes-> start begin.
Eventually when they don't recieve enough because the don´t upload themselves, they wil loose you by optimistic unchoke. But these clients might be stupid enough to keep the connection, so maybe after 3x(?) above rule-> some lowest priority upload.

This is not beauty of a solution, and the algorithm for indentifying those clients with this behavior must be really proper to prevent getting the good clients caught by this. But i honoustly don't see another solution without breaking the bittorrent protocol.
Perhaps also some fast-reconnecting detection must be implemented to get this done, but i'am not so sure about the practical tuning on this one.
George
Moderator
Posts
5421
Karma
1

Thu Feb 02, 2006 10:27 am
We could have a niceness value, and if somebody unchokes us and then snubs us, we set the niceness value to low. Peers who are not nice will get lower priority during the next choke algorithm.
stoeptegel
Registered Member
Posts
1075
Karma
0

Thu Feb 02, 2006 5:30 pm
That's even simpler and more straight forward, i agree. Afterall, i think we don't want to get those client out of business, but rewarding the good clients is just the right thing todo and that's what this can do pretty good.


Bookmarks



Who is online

Registered users: abc72656, Bing [Bot], daret, Google [Bot], lockheed, Sogou [Bot], Yahoo [Bot]