TorrentFreak

The place where breaking news, BitTorrent and copyright collide

BitTyrant: The “Selfish” BitTorrent Client

BitTyrant is a new “selfish” BitTorrent client based on Azureus. The developers claim that it speeds up downloads by up to 70% by connecting to the peers that have high upload speeds, and peers that give you the best send / receive ratio.

BitTyrantBitTyrant is based on the Azureus 2.5 code. While inspecting the contents of the application I noticed that even though its icon is different from Azureus’, it is still named “Azureus.icns”.

BitTyrant is selfish because it focuses on the optimal speed for the individual, although it might hurt the overall performance of the entire swarm. The key idea is: selecting peers that give you the best overall download speed. This is done by adding two features to the client.

1. It connects to peers that give you the the most data back. So invest a small amount of upload speed, and get the most back.
2. It connects to peers with the best upload speed.

Selfishness might work for a single person, but if everybody starts to use BitTyrant, performance will decrease. So, as the makers of the client put it: “When all peers behave selfishly, average performance degrades for all peers, even those with high capacity.”

It is clear that BitTyrant will optimize the speed for a single user if only a few use the client, but the makers of the client also found that peers with less bandwidth available will be worse of. In their research paper we read:

“We found that BitTyrant improves performance for all peers that use it. Nevertheless, in practice, BitTyrant will hurt the performance of individual swarms as high capacity peers reach a point of diminishing returns and are incented to either withhold their upload contribution or invest it in other swarms. Low capacity peers do not enjoy such a luxury. As the majority of peers have low capacity, they will see degraded performance compared to BitTorrent today.”

Just like Azureus, BitTyrant is cross-platform due to the nature of Java, the platform independent language it’s coded in. Linux, Mac OSX, and Windows versions of the client can be downloaded from the BitTyrant homepage, but I don’t recommend that you do.

Related Posts

Previous Post | Next Post

  • BardicKnowledge

    I have been exploring the site and attempting to download a copy, but with no luck. The program from what I have read looks pretty neat, and could be a lead to interesting developments in the future, but I think that it my be banned in a short period of time from most private trackers.

    I will be hopefully testing this software tonight if I can get a copy of it and comparing it to uTorrent (my personal favorite :P )

  • http://torrentfreak.com Ernesto

    [quote comment="36059"]
    I will be hopefully testing this software tonight if I can get a copy of it and comparing it to uTorrent (my personal favorite :P )[/quote]

    There’s a .torrent for the Windows version over here
    http://www.mininova.org/tor/534634

  • WhereDidTheyGo

    [quote comment="36059"] I think that it my be banned in a short period of time from most private trackers.
    [/quote]

    I predict less than 48 hours.

  • kdsde

    a new bully in town, or what?!

  • gldblade

    I think that you’re misinterpreting the second feature. You state that “It connects to peers with the best upload speed.” This would seem to imply that BitTyrant preferentially downloads from clients with high upload rates. Meanwhile, the homepage states that “BitTyrant dynamically adjusts its send rate, giving more data to peers that can and do upload quickly and reducing send rates to others.” This would mean that BitTyrant actually preferentially *uploads* to clients with high upload rates.

    The two features of the client should really then be summarized as:
    1) It downloads from peers most likely to upload to you the fastest
    2) It uploads to peers most likely to upload to others the fastest

    When put this way, it doesn’t sound quite as bad as you make it out to be. Of course, it will probably still hurt download speeds, as noted in their paper.

  • gldblade

    Actually to further clarify this point, this would mean that BitTyrant isn’t really trying to be the “selfish” BitTorrent client that you make it out to be. BitTyrant is not in any way trying to minimize uploading, but rather preferentially uploading to peers that would most likely be able to quickly share data with others. To quote BitTyrant’s homepage, “Our goal is to improve performance, not minimize upload contribution”

    By preferentially uploading to peers with high upload speeds, BitTyrant isn’t trying to optimize download speeds for a single user, but rather for the whole swarm. It appears that the goal of BitTyrant is to very rapidly increase the average availability of files in a swarm.

    The reason that this might be harmful is not because BitTyrant is selfish. Rather, it is because many users have limited upload capacity. Using the BitTyrant algorithm, these users have a much lower probability of being uploaded to (since clients preferentially upload to peers with high upload speeds). To reemphasize this point, BitTyrant is harmful not because it’s selfish, but rather because the algorithm is disadvantageous to users with low upload capacity.

    The quote that you draw from the research paper does not actually support your conclusion that BitTyrant is selfish. Rather it highlights the fact that high capacity peers have a large advantage over low capacity peers. Because the majority of swarms are composed of low capacity peers, this means that BitTyrant will be harmful in the end. On the other hand, if the majority of swarms were to be composed of high capacity peers, than BitTyrant would actually be theoretically beneficial.

  • mr loves holy spirit

    i cant see how this could hurt bittorrent, besides from the leechers will be getting slower download speeds which i dont really think is a problem anyway… anyone that thinks different?

  • gldblade

    Oy, insert foot in mouth :P Upon rereading, it appears that I have subtly misinterpreted what BitTyrant is doing. BitTyrant doesn’t preferentially upload to peers with high upload capacity, but rather to peers that are specifically uploading quickly to your client. The rest of my conclusions are therefore somewhat right, somewhat wrong. Oh well, we all agree that BitTyrant will probably be harmful, which is what’s is important.

  • smartass

    nice i’ll give it a try.

  • WhereDidTheyGo

    it lays it out here, how it cheats and breaks the bittorrent protocol:
    http://www.cs.washington.edu/homes/piatek/papers/BitTyrant_affiliates.pdf

    if you’re using azureus, you can use the stuffer plugin to block these clients, by using the string: BitTyrant

  • dbach

    “Good news everyone” or “This is the end of bittorrent”? I don’t now. The paper itself says “it could harm the swarm – maybe”. So what? Sit back and wait what will happend? Is it a good idea to block this client using the stuffer plugin for azureus by useragent?

  • Pingback: NewTeeVee » BitTyrant: The Selfish BitTorrent Client

  • smartass

    Wow this is insane i’m getting amazing speed. Although what i find weird is that i’m getting 15kb/s on a axxo torrent.

  • Horde user

    This is almost an exact copy of the way eDonkey/Overnet’s Horde works. Some eMule mods also exibit a similar tit-for-tat “trading-partner” behavior.

    It’s not exactly a leech client, but compared to standard Bittorrent, it does hurt a file’s propagation speed (and reduces the effective size of a download swarm) because only the few fastest uploaders are able to download. If everyone suddenly started using BitTyrant, users with 0% of a file will have to wait in queue much longer before being able to download.

    The potential problem is that the few people with high upload bandwidth will finish the file quickly, then drop off and quit seeding, and with no seeders remaining, the torrent’s lifespan might be much shorter.

    The Bittorrent algorithm was designed to maximize the spread of a file, not to make the fastest uploaders finish in the least possible time.

    In short, BitTyrant is not file sharing, it’s file trading. Does it hurt the network as a whole – the Bittorrent swarm? Absolutely!

  • Scharfschutze

    It won’t be the end. That’s for sure.

    However, this is basically harmful IMO for this reason: it does not share with everyone, only the select.

    I usually seed all night, and I would rather help out everyone, rather than be seized by BitTyrant’s users.

    My 2¢

  • paperslug

    Pfft. Seems to be a newer BitComet. I believe this wont last long.

  • bnoise

    “2. It connects to peers with the best upload speed.”

    Doesn’t bittorrent clients already do this? That’s why I’m downloading so slowly a torrent with 150+ seeders. But let me understand… what are the algorithms behind uTorrent peer connection?

  • Pingback: Another Tyrant Not To Luv? « Mike Cane’s Blog

  • Scharfschutze

    There’s plenty of reasons you’re downloading so slowly. I don’t think it’s the algorithm :-).

  • Jasper van Weerd

    I stick to Utorrent… old, known, on my usb stick, etc…

  • FusionDexterity

    Avoid seems like a weapon the MPAA would use to kill file sharing.

  • Pingback: BitThief Downloads Torrents Without Uploading at Torrentfreak

  • bnoise

    Yes the main reason i download slowly is that my upload sucks (20 KB/s) but still i don’t get how uTorrent (or other clients) choose the peers to connect to. Is it a random thing?

  • WhereDidTheyGo
  • Pax3

    Everyone was happy with how bittorrent worked… now people start to get greedy, and bittorrent as we know it might change to something else. There’s always someone playing the smartass, and what seems like a good idea now might become harmfull for the great majority of bittorrent users when everyone starts to use clients lihe this one.

    From a couple of smartasses to a zillion of dumbasses is just a short step away.

  • The 8472

    If you look at the full paper (http://www.cs.washington.edu/homes/piatek/papers/BitTyrant.pdf) more carefully you will notice that BitTyrant peers use a different algorithm among each other, something that actually is similar (but still regarded as inferior by several BT developers) to the algorithm used by current clients. So it only uses its leeching methods on other clients, not on BitTyrant clients.

    This can be seen as a kind of collusion attack against other clients. Since it plays somewhat “nice” among its own kind but tries to exploit other clients. So all this paper says is that bittorrent can be exploited but it isn’t a good longterm strategy. If a swarm consists solely of bittyrants it won’t use this exploitation technique at all. Hence it doesn’t seem to be a good strategy, just a good mugging (read: leeching) tech with a thin disguise as academic research.

  • mlomker

    I can see where using this client on a private tracker might be a problem, but I don’t. BitTyrant uses 100% of my upload capacity just like every other bittorrent client does, so calling it ‘selfish’ is a bit of a stretch. 100% is 100%.

  • Pingback: The Original Sims :: There’s always some greedy shite to spoil the party :: January :: 2007

  • FlownMaxx

    I’m downloading a 2.44 gig torrent and till now i have downloaded 1.05 gig and UPLOADED 1.6 gig. So I don’t see the SELFISHNESS here.
    PSD: I don’t support this kind of “tricks” in P2P apps, I just wanted to experiment.
    My experience showed me other thing. I’ll wait for this torrent to finish and I will uninstall this dino of my system.

  • Wenzi

    have been using this client, and I am sharing more than I am downloading. It seems to just share faster, but it still shares a lot. I am sitting on a really big pipe, and usually I was sharing a lot more than I was downloading. Now I get a ratio closer to 1.3

  • Pingback: Remixtures » A lei do mais forte chega ao BitTorrent

  • Peter

    [quote comment="36134"]Wow this is insane i’m getting amazing speed. Although what i find weird is that i’m getting 15kb/s on a axxo torrent.[/quote]

    amazing speeds ? lol
    how about 1.5MB/s (thats megabytes) up AND down ?
    go figure out how much that is pr.hour
    You try and see how all those BitComet users leech on that !
    I use normal Azureus for years and I have tried this bittyrant. I STILL get raped
    by all you asymmetric guys . Only difference is that I get to complete the torrent
    a little faster myself , and to see that my downspeed can be almost as good as my upspeed .you guys are still leeching more of me than you are giving back
    and my share ratio is still something you have wet dreams about achieving ..

    It doesn’t cheat in any way, if there is available bandwidth it will upload to anybody,
    it actually LIKES to upload because that increases the chances of getting something back.
    I would like if someone could tell
    me exactly how it is that it breaks the bit-torrent protocol ..

    People have some weird ideas .. it’s “unfair” that someone has a good downspeed,
    they are taking too much out of the swarm blablabla
    maybe it’s because we also have a good upstream … you think its dsl-users with 128kbit/s uploads who makes bit-torrent as fast as it is, even for those who constantly download at a rate that’s 8-16X their upload?

  • V

    Download fast from private bittorrent sites

    http://elcheapo.atspace.com

  • cdu

    I’m gonna try this out tonight. It seems to me this is only for people with a high bandwidth connection. I’m on a high speed connection and am tired of uploading to people who don’t share. I mean… share something… ANYTHING. Even 2KB/s from everyone will make a difference. I found this to be a problem mostly prevalent with the uTorrent client (and of course BitComet & others). Never tried uTorrent since I’m on a Mac, but have noticed a leeching tactic used by most users. Most uTorrent users that I have downloaded from only share 20% or less of their bandwidth (or nothing). So… for example, when I upload to a uTorrent client at 100KB/s, the client returns a download speed of 20KB/s…. and when my speed drops to 20KB/s, so does uTorrent’s to 4KB/s. And when I finish uploading all I have, the uTorrent client stops uploading to me (except maybe for 1KB/s every once in a while). Since there are a handful of uTorrent users who do upload, then I assume the uTorrent client has some kind of leech tactic that you can turn on & off. Or is it people who want to finish downloading first and then seed (due to their bandwitdh I suppose)? If so, why should I suffer for their low bandwidth? Either way,… this is really lame. I’ve been sitting on a small torrent full of uTorrent users (10+) for days now. I’ve already uploaded 5X over but am not even 50% done. Everyone I uploaded to finished already and disappeared or is sticking around seeding at 1KB/s or less. And this happens rather often (especially with uTorrent users). I’m happy to see something around to combat this problem and hope BitTyrant will solve it (if not now then in future versions).

    And people with high bandwidth won’t drop off from seeding the torrent as Horde suggested. I don’t care if I upload 5X or more… it only takes a couple hours on a high speed connection,… but I want to download quickly and not sit on it for days at a time.

    If BitTyrant was only used by people with high bandwidth then wouldn’t it acutally benefit the swarm as people with high bandwidth usually seed much more than people with low bandwitdh?

    Anyhow,… that’s my 2 cents worth…

  • BitTarded

    All I know is that BitTyrant, along with BitLord and BitComet is now sitting cozily in my stuffer plug-in (which allows me to block connections based on the client in Azureus). See: http://azcvsupdater.sourceforge.net/

  • Ponderous

    *wonders What Bittardeds ratio is…

    All u complainers prbly have shit ratios..

  • long-time Azureus user

    BitTyrant is garbage.

    It IS a selfish client (it is very stingy with its bandwidth allocations — and on the surface, that definitely does seem like it would give you better speed), but I haven’t seen any benefit whatsoever from that behavior — in fact, just the opposite, much to my surprise.

    I’ve been testing it for about 2 weeks now, and I *consistently* got worse download speeds with BitTyrant than when I use my regular, identically-configured Azureus client. And I do mean consistently, as in every single torrent I’ve tried it on, on both public and private trackers. Every single one, bar none, has performed worse with BitTyrant.

    I’m not sure where they got their statement “We found that BitTyrant improves performance for all peers that use it”, because I’ve found that to be 100% demonstrably untrue. It wasn’t even _remotely_ close to matching, much less beating, the download performance of my regular Azureus client. And I’ve spent much time tweaking the settings one way or another to try and get better results — absolutely nothing helped.

    Whether or not that poor performance was because decent sharers out there have banned it, I couldn’t say, and it doesn’t really matter. What matters are results, and it failed to deliver.

    What’s more, after observing it in action first-hand, I’ve ditched the client and added the string “tyrant” to my Stuffer plug-in’s filter.

    In summation:
    This client just doesn’t deliver. It was a good idea but, for whatever reason, it utterly fails to work as advertised. BIG thumbs down.

  • diddou

    I’m on seed on a 4go file with 2 peers
    one on bittyrant and one with azureus
    guess what ;-) azureus wins on dl speed on my file

  • Sol

    Well for all you arrogant know-it-alls that would enjoy to take things out of context or speak ignorantly on things you don’t fully understand, please continue.

    For everyone else. This is a client that is to be used on a good connection. I live in Tokyo. I have fiber. My connection is insane.

    Before I switched, I used Azereus. I’d always DL pretty fast and UL a little under that.

    With Tyrant

    Things are insanely fast. I’ve never hit these speads before with any client. Not even my UL.

    By the time I’m done with most torrents, I have a 2 ratio completed. It’s almost obscene.

    So pay attention and stop talking about things you only partially understand.

    Tyrant is brilliant for the people it was created for.

    And it seeds everyone in preference to their UL stats. If everyone is a bastard or has a crap connection, then everyone gets all of that blazing UL speed.

    I love it how people get on here and bash things they have never used properly.

    The site clearly states that this is NOT for most US users.

  • BitTyrant is garbage

    @ Sol: You’re an idiot.

    Quoted directly from the BitTyrant site:

    “Although the evaluation in our paper focuses on users with slightly higher upload capacity than is typically available from US cable / DSL providers today, BitTyrant’s intelligent unchoking and rate selection still improves performance for users with less capacity. All users, regardless of capacity, benefit from using BitTyrant.”

  • bob

    I suggest that those do what i did. Those using the Stuffer plugin block TYRANT in the best interest of P2P.

  • Adam

    Isn’t the whole point of bit torrent that it will reward users who upload?

    Older P2P systems (gnutella, kazaa) did nothing almost to encourage uploading, and many users selfishly decided to leech.

    Bittorrent’s tit-for-tat scheme rewards users that upload with fast download speeds, and so users find it to be in their own interest to upload as much as possible while downloading.

    It’s possible however, to cheat the system by uploading small amounts of data (and giving other lousy download speeds) while downloading much faster.

    The new version, BitTyrant, solves the problem by uploading to those that contribute the most (instead of just those that contribute at all).

    It may be true that if everybody used the new system with their current upload and download speed limits set, then performance would be degraded, but if everybody used this algorithm, then people would increase their upload speeds to get the better download speeds.

    The only people that seem to be harmed by this are those that are trying to maximize their download rate while minimizing the upload rate.

    To look at this another way, people are selfish. To say the people should not be selfish and ban this client is the wrong approach. A better strategy is to change the rules of the game so that the strategy which optimizes download speed also maximizes upload speed. That way when a person acts in his own interest, he unintentionally benefits everybody else in the swarm.

    Bittorrent is better than anything that came before it because it rewards users who upload. The new strategy provides greater rewards for those who upload, specifically those who upload large amounts of data. To me BitTyrant seems to be something that everybody should adopt for the good of the network.

    Also note the difference between the “strategic” method and the “selfish” method (p. 11). “Strategic” means preference for clients with good upload rates. “Selfish” means the same, upstream bandwidth is conserved when it will not benefit the uploader. It seems obvious that adoption of the strategic method will encourage users to increase their upstream bandwidth. The study also notes that this method improves network performance.

  • Andy

    I use bittyrant all the time, and it does not change the amount of data uploaded only where it’s going.

    but you could’ve read that on the site.

    that fact is, LEARN HOW SWARMS WORK. Countless I hear friends saying, “ugh, I’m dl at 2-3kb/s I’m blocking my upspeed”

    Give and ye shall recieve.

    I hope that trackers don’t restrict bittyrant.

    and I hope that users dont block bittyrant through plugins.

    just share more, I have a ratio of over 5.5

    and to be honest, bittyrant isn’t updated much, I wish it was. countless times I’ll be trying to connect to peers and their choked.

    simple fact is:

    I still seed till my upspeed’s saturated regardless of my client

  • BzzIn

    Well I’m blocking all BitTyrant users from my uploads, use it and you won’t download anything from me…

  • Chefm029

    Hi guys I don’t want any flames or fights
    I just want to ask a question???
    How can you say bit tyrant is selfish???
    For what I understand bit tyrant share more speed to the people who upload the file faster?
    As it said in their web site “tit for tat”
    Because it bugs me when people set their download setting to max while they set there upload to a lousy 20kbs…

  • Name

    BitTyrant is good for BT. Seems like fair trading to me. People are just misinformed. Just wished they made a modified utorrent instead of using the system intensive Azureus.

  • A

    The author of this article has mis-quoted the paper in question.

    He states:

    Selfishness might work for a single person, but if everybody starts to use BitTyrant, performance will decrease. So, as the makers of the client put it: “When all peers behave selfishly, average performance degrades for all peers, even those with high capacity.”

    If he bothered to read the paper properly he would have noticed that the client does not work in “selfish” mode by default. The client you download works in strategic mode, which does not cap excess upload capacity.

    No wonder there are so many idiotic comments on here when the article isn’t even reading the paper correctly.

    Also, as seen on the front page of their website:

    Q: Won’t BitTyrant hurt overall BitTorrent performance if everyone uses it?

    This is a subtle question and is treated most thoroughly in the paper. The short answer is: maybe. A big difference between BitTyrant and existing BitTorrent clients is that BitTyrant can detect when additional upload contribution is unlikely to improve performance. If a client were truly selfish, it might opt to withhold excess capacity, reducing performance for other users that would have received it. However, our current BitTyrant implementation always contributes excess capacity, even when it might not improve performance. Our goal is to improve performance, not minimize upload contribution.

  • BitTyrant is a BitTorrent pioneer

    “Selfishness might work for a single person, but if everybody starts to use BitTyrant, performance will decrease.”

    This is a purely FALSE statement!If EVERBODY used BitTyrant, performance would in fact INCREASE!

    I’ll explain why:

    Imagine everyone using BitTyrant, including you. Your BitTyrant client uploads more to clients who uploads the most to you, as will everyone elses. As a result, slow upload equals slow download speed, fast upload equals fast download speed. You can prove mathematically that in swarms of only BitTyrant clients, every user would have a download speed equal to his or her own upload speed. This is not the case today though. Using traditional bittorrent clients, slow uploaders normally has a higher download than upload speed while the opposite goes for fast uploaders. There are at least two reasons why this is not ideal. First of all, thoose who upload the most doesn’t get proportional compensation. The second reason is that the current allotment will slow down average swarm speed.

    BitTyrants protocol is increasing the probability of high speed clients being able to seed. This will increase average swarm speed since high speed users obviously upload faster than slow speed users. As a side effect, BitTyrant also uploads much less to leeching clients (ie increased download speed for honest users). In fact, if everyone used BitTyrant, leaching clients would probably not exist today.

    The scenario with increased swarm speed holds true in all swarms with only BitTyrant clients. This is also true in mixed swarms IF everyone who is using BitTyrant has a share ratio of at least 1.00!

    BUT, and there is a but. In swarms where only a few of the clients are BitTyrant there is one potential problem. BitTyrant clients will usually finish downloading the torrent faster in mixed swarms as a result of its more advanced protocol, probably with a share ratio of less than 1.00 . This will provide BitTyrant users with the option to upload less by removing the downloaded torrent from the seeding list as soon as it is finished. This would in turn hurt average swarm speed.

    Conclution
    Increase or decrease in swarm speed will depend on the honesty of BitTyrant users as long as the BitTyrant tit-for-tat protocol is implemented in a minority of clients. If a majority of conventional bittorrent clients would adopt this protocol, the only reasonable effect would be an increased average swarm speed.

  • Pingback: nunca nueve » baixant bittorrents amb egoisme

  • BTGuard - BitTorrent Anonymously

NewsBits

Even more news...

  • Blu-ray Anti-Piracy Tech Stops Discs and Promotes Purchases

    An anti-piracy system present in all official Blu-ray players since 2012 has received a fresh update...

  • Foxtel Breeds Pirates by Locking Up Game of Thrones

    One of the main reasons why people turn to piracy is the lack of legal alternatives....

  • UK Student Admits Breaching Sony Copyrights With Leak of PS3 SDK

    Last year an Internet user known as El Nomeo leaked version 3.70 of Sony’s Playstation3 SDK...

  • Pirates Can Be Identified Despite Sharing IP Addresses, ISP Claims

    Carrier-Grade Network Address Translation is a network mechanism through which many Internet subscribers can share the...

  • Feds Seize Cash from Major Bitcoin Exchange’s Dwolla Account

    The U.S. Government has taken a significant action against the web’s top Bitcoin exchange by seizing...

MostDiscussed

Below are TorrentFreak's most discussed articles of the past month. Join the discussion if you like.

CopyQuote

Left Quote

“The Pirate Bay has been one of the most important movements in Sweden for freedom of speech, working against corruption and censorship.

Peter Sunde Left Quote

PopularArticles

A selection of some TorrentFreak's classics dug up from our archives.