No one likes a cheater though, not even the evil-doers that occupy the file-sharing landscape. Yet the situation does reflect a serious problem within the BitTorrent community, and one that has yet to be satisfactorily dealt with. However, the folks over at the University of Washington think they may be onto a potential solution.
The ‘solution’ is a BitTorrent client named BitTyrant, a ‘selfish’ application based on the open source Azureus client. Far from an end-all solution, it provides an interesting alternative to the current one size fits all ration structure.
“BitTyrant differs from existing clients in its selection of which peers to unchoke and send rates to unchoked peers,” BitTyrant’s FAQ states. “Suppose your upload capacity is 50 KBps. If you’ve unchoked 5 peers, existing clients will send each peer 10 KBps, independent of the rate each is sending to you. In contrast, BitTyrant will rank all peers by their receive / sent ratios, preferentially unchoking those peers with high ratios. For example, a peer sending data to you at 20 KBps and receiving data from you at 10 KBps will have a ratio of 2, and would be unchoked before unchoking someone uploading at 10 KBps (ratio 1). Further, BitTyrant dynamically adjusts its send rate, giving more data to peers that can and do upload quickly and reducing send rates to others.”
Say what? After skimming through the FAQ and the lengthy academic paper
, many BitTorrent users may exclaim, “It’s just another cheat client! Ban it!” Just one second though...
BitTyrant doesn’t quite deserve such immediate belittlement. In fact, it should be commended for at least attempting to explain and remedy ratio problems for low capacity clients. Additionally, there is no cheating or falsification with the BitTyrant client – nor does it aim to lessen one’s upload bandwidth in exchange for massive download consumption.
OMG Slyck, isn’t BitTyrant just another leech client? The FAQ even says “adjusts its send rate!!11111"
It does say that, but there’s a whole lot more going on here. Most efforts which aim to cheat BitTorrent do so with very little technical, theoretical or practical back up. The folks at BitTyrant could have easily just have started “BitTyrant.com”, thrown some Google ads up, spammed some forums and called it a day. But it’s important to note how this academic effort separates itself from just another BitTorrent hack.
The effort behind BitTyrant is not to defeat or throttle uploading. In fact, it contributes to the swarm like any good BitTorrent client does. Rather, its purpose is to enhance the downloading performance of the average client.
U know that’s not possible! Ban it!
And what purpose would banning an academically oriented BitTorrent client serve? Remember, BitTyrant is an experiment – not some commercial venture. Much like any file-sharing network, there are givers and leechers. A majority are leechers – even in BitTorrent – who simply stay on long enough to get what they want and then vanish. The “altruists” or the givers, make up the smaller percentage of a typical P2P network. Being the “selfish” BitTorrent client that BitTyrant self-proclaims, it works by exploiting this vast generosity.
BitTyrant looks for two things, a favorable ratio and a high upload capacity client. BitTyrant tries to mitigate the sometimes very time consuming and performance degrading situation of spending hours uploading, while receiving very little in return. Simplistically, BitTyrant looks for the best performing peers and deprioritizes those clients that would otherwise yield poor performance.
BitTyrant is already off to a rough start, having already been banned by two indexing sites. The creators already admit that a BitTorrent community filled with BitTyrant would probably degrade the network – however this is a research application and this scenario is nearly impossible. For research and academic purposes, BitTyrant brings a breath of fresh air into an old debate long swept under the rug.