Forgot your password?
typodupeerror
The Internet

Researchers Create Selfish BitTorrent Client 281

Posted by CmdrTaco
from the surprised-it-took-this-long dept.
An anonymous reader writes "Researchers from the computer science department at the University of Washington have released BitTyrant, a new BitTorrent client that is designed to improve download performance via strategic selection of peers and upload rates. Their results call into question the effectiveness of BitTorrent's tit-for-tat reciprocation strategy which was designed to discourage selfish users. Clients are available for Windows, OS X, and Linux."
This discussion has been archived. No new comments can be posted.

Researchers Create Selfish BitTorrent Client

Comments Filter:
  • by discord5 (798235) on Wednesday January 03, 2007 @11:46AM (#17444832)

    internet bandwidth usage has just gone up by 300% at the University of Washington... Scientists are baffled and blame global warming.

  • Not really selfish (Score:5, Informative)

    by m50d (797211) on Wednesday January 03, 2007 @11:48AM (#17444862) Homepage Journal
    It looks like all it's doing is trying to allocate its uploads more efficiently. Which, assuming it works, should improve things overall, and (if it works) may even get adopted into the official protocol.
    • Re: (Score:3, Interesting)

      by jackharrer (972403)
      But it prioritizes users with high upload/download speeds. It's better the way it's now - everybody gets their files. Maybe later but it's equal. At least people seed for longer.

      If you're after communities and sharing current model is better. If you're after fast download but shorter torrent lives - go for new one.
      • Re: (Score:3, Interesting)

        by Kjella (173770)
        If you're after communities and sharing current model is better. If you're after fast download but shorter torrent lives - go for new one.

        If you're after communities and sharing then you're already part of a private tracker, which keeps a tab on your ratio no matter what client you use. Public trackers are a free-for-all grab. I often grab torrents when the seeds are many and peers few, and don't feel bad about that at all.
      • by tlhIngan (30335)
        Ratio sites would probably not ban the client - people will use it just to get the file faster and seed longer (face it - the only way to keep a good ratio is to get in early). Non-ratio'd site will probably ban it because they'd just leech and run.

        Wish that ratio'd sites would take thafact into account - the older the torrent, the less likely it'll be downloaded by new people and the harder it is for seed to keep their ratio. Not everyone can bittorrent at work and refresh every 5 minutes...
      • by miyako (632510)
        The biggest bottleneck for people getting files off bittorrent isn't their download speed, but the overall upload speed. Even with fairly large swarms, the overall speed can be pretty bad, since most people get crap for upload, so it kinda makes sense for the person who is uploading at the highest rate to get the file first, so they can then upload at their higher rate to everyone in the swarm.
        Now what would be interesting would be if they client would give priority to those with more upload up to a certa
      • by hal2814 (725639) on Wednesday January 03, 2007 @12:21PM (#17445366)
        "But it prioritizes users with high upload/download speeds. It's better the way it's now - everybody gets their files."

        I disagree to an extent. What is high upload/download speed to one node is not neccessarily high upload/download speed to another node. It just depends on the network topography. It's possible for a DSL-connected node to have a faster upload/download connection to a node on a dial-up line than a T3 if the dial-up connection is significantly closer from a network standpoint. If done properly, prioritizing based on uploads could lead to more regionalized torrent relationships. Such a setup still has its downsides but I'm not convinced it's worse or even unfair.
      • If you prioritize communication with nodes that have higher bandwidth then you seed the file faster. What is the point in seeding chunks to 50 dialup users when you could have seeded the same chunks to 5000 cable users or 100x as many chunks to 50 cable users in the same time? When a torrent is in high demand mass seeding is most important. When demand is lesser dialup users should be able to find plenty of willing, now seeded nodes to connect with. Everyone still gets their files, and I bet because of the
      • by XNormal (8617)
        > But it prioritizes users with high upload/download speeds. It's better the way it's now - everybody gets their files. Maybe later but it's equal. At least people seed for longer.

        On the other hand, if a BitTyrant client finishes downloading more quickly it may actually be a more effective seed for the entire file - unless the user intentionally stops uploading as soon as download is complete.

        In short, it's virtually impossible to tell what effect this will have on the network without massive empirical
    • Well, it targets uploads at those worth bribing. So those with loads of bandwidth get complete copies faster.

      It all depends on how much impact it has that those who don't seed leave the swarm earlier, since they finish faster. Likely no real damage to the network though.
  • I'd rather see some development towards somehow preventing a client from finishing a download until his Down/Up ratio is at least 0.75. This would be difficult to do since you can't trust the client.
    • Re:leechers (Score:4, Insightful)

      by PingSpike (947548) on Wednesday January 03, 2007 @12:21PM (#17445370)
      And when there's 12 seeders and no one besides you downloading...then what? Its rare, but that does happen.
      • Re:leechers (Score:5, Interesting)

        by Nasarius (593729) on Wednesday January 03, 2007 @12:39PM (#17445700)
        Not rare, it's extremely common on private sites with specialized material [dimeadozen.org]. I've had trouble raising my ratio above 0.85 on DIME, in spite of having 250KB/s upload. It's annoying, but there's not much you can do about it.
        • Re:leechers (Score:4, Interesting)

          by smellsofbikes (890263) on Wednesday January 03, 2007 @01:12PM (#17446250) Journal
          Ditto that. I only torrent stuff that is completely unavailable commercially: so-called "out-of-print" material. (What the hell: it's a bunch of zeros and ones, just like all the other zeros and ones. How can it be out of print?) If you're trying to get soundtracks from obscure 1980's movies or ripped '50's jazz LP's, it's pretty frequent that the number of seeders vastly outnumbers the number of people who are still trying to find it.
        • I don't buy that. You have way more than enough bandwidth to have a good ratio. Do you have your client set to stop seeding when it hits 1.0? If you really want to, grab one of the most active torrents (on the top-10 list), and just let it seed. Doesn't even have to be something you like. Then when you go way over on one, your overall ratio won't get killed when you grab a bunch of other stuff.

    • by ElephanTS (624421)
      I'm probably wrong on this, but doesn't the tracker keep a verified copy of the u/d stats? Probably just wishful thinking on my apart I accept.
  • However it will be only a matter of a couple days before people/trackers just start banning the client. (even thoguh it soundsl ike it is not actualy a bad client).

    The only possible downside of the client is that people who regularly hit and run will be doign so that much faster (and thus end with an even lower ratio).

    so, a nifty tool in the hands of the godly, and an abomination in the hands of sinners. (or somethign to that effect)
    • by Andy_R (114137)
      Actually, it was banned on my favourite music torrent site (one which prefers it's identity to be hidden) an hour ago.
      • by Thansal (999464)
        yup.

        I still think it would be better if private trackers (like the one you probably use) just ban people based on ratio instead of desired client.
  • The private trackers, which require login and facilitate banning of users who abuse the system, will simply deal with this as they always have. That's always been one of the protocol's inherent defenses against something like this.
    • by simm1701 (835424) on Wednesday January 03, 2007 @12:16PM (#17445274)
      Actually this client would likely be favoured by the private tracker sites.

      The private tracker already gives you plenty of incentive to make sure your ratio is >1 - even asside from basic morals.

      The design of this client means those with higher speed uploads available will complete sooner, and thus you will end up with more high speed seeders.

      Seeders who since they are members of private trackers are probably going to stick around until ratio >1

      True I admit on piblic trackers something like this may not be as helpful or beneficial, but you can't have everything.
  • Not necessarily good (Score:5, Interesting)

    by grimsweep (578372) on Wednesday January 03, 2007 @11:58AM (#17444996)
    Selfish selection of peers can lead to cliques of clients on the same network. Tit-for-tat has been proven as a highly effective strategy in games resembling the iterated prisoner's dilemna, but it can be defeated when a large enough group of of agents cooperate. This link [discourse.net] has more.
    • by lawpoop (604919)
      Could you start playing tit-for-tat with groups along with individuals?
    • by ratboy666 (104074) <fred_weigel&hotmail,com> on Wednesday January 03, 2007 @12:26PM (#17445452) Homepage Journal
      But the ISP wants to encourage the development of such cliques. It can be directed to keep traffic inside the ISPs bounds.

      Interestingly, if bittorrent clients start "cheating", ISPs will be happier, and you will see less throttling.

      Ratboy
    • "Selfish selection of peers can lead to cliques of clients on the same network. Tit-for-tat has been proven as a highly effective strategy in games resembling the iterated prisoner's dilemna, but it can be defeated when a large enough group of of agents cooperate"

      Indeed. To put things in a practical way for bittorrent, it is possible to make a client that 'cheats' by favoring other people using the same client, thus forming a cooperative group, that if large enough can have a lot of impact (mainly in con
  • Not so selfish. (Score:5, Insightful)

    by ckdake (577698) <ckdake&ckdake,com> on Wednesday January 03, 2007 @12:00PM (#17445042) Homepage
    RTFA. They didn't create a client that is "selfish" by trying to avoid uploading. They created a client that is selfish by first allocating more upload capacity to other clients that will send them more when they upload more, and only allocate the remaining upload capacity to clients where benefits from increased uploading are not certain. If you read their paper, they regularly bring up the effects of this on the entire network and they don't know if it's good, bad, or has any effect on the network (and not for a lack of trying)
    • by RAMMS+EIN (578166)
      ``RTFA. They didn't create a client that is "selfish" by trying to avoid uploading. They created a client that is selfish by first allocating more upload capacity to other clients that will send them more when they upload more, and only allocate the remaining upload capacity to clients where benefits from increased uploading are not certain.''

      In other words, they do what any rational client should do.
    • by khallow (566160)

      At a glance, it looks like it has both positive and negative effects. Isolated (ie, slow connection to everyone like dialup) clients are going to lose out since serving them yields such a low payout. Meanwhile fast connections get preferential treatment since they can so easily be served. I don't know how much tit for tat is permitted. It may turn out that one will need to serve slow clients in order to keep downloading, but I suspect that's probably not the case.

      Otherwise, it should result in more effici

    • by Splab (574204)
      I think it will be good. I'm on a very fast connection, and I try to avoid handing data during the first rush to slow peers, that is, if you don't serve me at a reasonable speed I will block you off until I got the full package and then it is free for all. When distributing it makes sense in my book to make sure that people who can ship data at 1+MB/s should get the full package first and when they are done, up the amount of connections and let the slow seeders have it.
  • I'm surprised it took this long. Or is it just that we're only hearing about it now, but such clients have existed for ages?

    By the way, am I right in thinking good behavior can never be enforced in peer to peer systems?
    • by Sancho (17056) *
      This isn't necessarily bad behavior. It is distinctly uneven, but not necessarily bad.

      If the tracker has a lot of people who seed more than they download, then a few people using this client will help increase the total number of seeders, meaning that there are more people capable of providing a specific portion of the torrent, which should allow for maximum download speeds for whoever is left.

      If the tracker has a lot of people who seed less than they download, it means that there will be more load on the
  • by meese (9260) on Wednesday January 03, 2007 @12:04PM (#17445092)
    Some folks at ETH Zurich took it one step further, and wrote a client - BitThief [dcg.ethz.ch] - that doesn't upload and yet still can download as fast as a regular client. This is especially valuable in countries that define copyright violation to be the uploading of content.
    • by Anonymous Coward on Wednesday January 03, 2007 @12:32PM (#17445564)
      Awesome! If everyone used that client, the MPAA/RIAA wouldn't have a leg to stand on.
    • by Gothmolly (148874)
      Or just being a leech you mean. How's the air all the way up on top of your high horse?
      • by drinkypoo (153816)

        Or just being a leech you mean. How's the air all the way up on top of your high horse?

        Uh, high horse? You're the one with the ivory tower up your ass. I'm more than willing to provide some bandwidth to some people whose laws are restrictive. Well, of course, so are ours :P But you see what I'm saying. I still want to prioritize non-leechers first, however.

        the bitthief webpage is a big (well, small) pile of shit with basically no content except a download and a claim. I suspect it works, but only by

    • Of course, the downside is that you won't get many packets from anyone using this new BitTyrant client as it prioritizes outgoing packets to those computers it receives from. So i suppose you make a legality tradeoff for speed.
  • by evilviper (135110) on Wednesday January 03, 2007 @12:19PM (#17445324) Journal
    The anti-leech technology of the bittorrent protocol remains effective. Those ranting about this just haven't bothered to read... This client (despite the unfortunate name) is just smarter about how to use upload bandwidth, in an async world.

    In fact, I would say this is an IMPROVEMENT in some ways over bittorrent's default behavior, as it will dedicate more of your outgoing bandwidth to higher-speed peers. They, presumably, can then serve up more data to others than a low-speed peer reasonably could.

    Instead of being the end of bittorrent, this could really improve the health of the P2P network, increasing speeds and decreasing download times for everyone (not only those using this program).
    • by Ingolfke (515826)
      It seems like this is just a scheme to make the rich richer and the poor poorer.
      • by evilviper (135110) on Wednesday January 03, 2007 @05:35PM (#17450608) Journal
        It seems like this is just a scheme to make the rich richer and the poor poorer.

        That's far too simple a way to look at it. The analogy just doesn't hold up.

        It's giving less of an advantage to those with slow upload speeds (leeches), and high download speeds, but those with low speeds stand to benefit nearly as much as those with high-speed connections. It will take less time to have more full copies of a torrent shared, on higher speed hosts, with lots of bandwidth to spare.

        The only senario in which the low-speed clients lose out, is at the very beginning, when only one peer has a full copy, and the high-speeds are actively sharing among each other and competing for access. After that inital rush, the low speed connections should have full-speed access, and more peers with full copies to chose from. The only way that wouldn't work is if ALL the high speed connections disconnect instantly afterwards.

        It really should make bittorrent better all-around. The potential for abuse is only marginally higher. And the low-speed (leeches) only lose a little bit in certain senarios, but stand to gain even more in the end, bring them past the break-even point as well.
    • by Vreejack (68778)
      It seems that the first 90% of posters did not bother to RTFA, and so I had to wade through a lot of redundant and irrelevant garbage to get here. I am tempted to use this client, but I am puzzled. Did they fork Azureus? I would have thought this could simply be run as a plugin. The things they are doing here with BitTyrant are things I have tried to effect manually by tweaking Azureus, but without the automatic dynamic response.

    • Re: (Score:2, Insightful)

      by osu-neko (2604)
      Actually, since this client would tend to trickle data more slowly to people who have poor upload rates, it would hurt leeches who don't upload at all. The overall effect will be to make like more difficult for leeches, while making sure people who can spool out content faster get complete copies to spool out faster. I'm having a lot of trouble understanding how this is a bad thing in any way.
  • It would be a welcome feature to be able to tune my uploads so that I don't kill my connection when downloading over bittorrent. the --max-upload-rate feature seems to make my bittorrent client do an endless recursive loop that ends up crashing the client. I have a very low upload cap, around 15 KBPS, and when it gets maxed, I'd like to be able to limit the connection just a little, to leave room for ACK packets.
    • by Sancho (17056) *
      That sort of behavior really seems to belong in the OS or at the firewall, but that upload rate sounds awful. Are you using GPRS for torrenting?
      • by CastrTroy (595695)
        I'm using low-speed cable. It 1 Mbit, which gives fast (enough) download, but slow upload. I don't really send out a lot of data, so it's not much of a problem. Most cable providers I know of cap even the high speed access to 40 or 50 KBPS (notice the capital B), because they don't want people using their home computers as servers. 15 KBPS isn't really that bad, but when you have a lot of connections going out, it tends to have very slow response times.
    • by Nazmun (590998)
      Use bittornado, I've used it for over a year and possibly two now. Although my upload cap is higher at 70ish KB/s it's crucial to set an upper bound for us (so as not to completely hamper download capability (at 60 KB/s upload, i can download up to 500 KB/s, at 70 KB/s upload I get under 10 kb/s).
       
  • by stewbacca (1033764) on Wednesday January 03, 2007 @12:45PM (#17445790)
    I'd love to give it a spin, but at 2kbs download for the client installer I'll be here all night. Maybe I can find a torrent for it for a faster download...oh the irony.
  • I'm downloading the OSX version right now and the progress is so slow. Getting 5k/s on my 8Mbps connection. Surely they should have torrented the thing???

  • I have it installed, and I'm currently downloading (Full T1) at 50k and uploading at 60k... I'd say that's more than fair.

    This does seem to go up and down more than bitcomet though. in the last Hour I've seen it up to 110/115 and as low as 50k/60k. Maybe this one just averages the xfer rate a lot more often, not producing nearly as smooth of an average as BC.
  • ...they have created a bittorrent client that sucks less than all the other bittorrent clients. This doesn't threaten the bittorrent protocol any more than having better cars threaten the road system.
  • Trying it out now (Score:4, Informative)

    by Culturejammer (541174) <landeyda@NoSpAm.gmail.com> on Wednesday January 03, 2007 @01:57PM (#17446964)
    Gotta say, these speeds are really impressive. Azureus 2.5 would download at about 35kb/s, while the same torrent on BitTyrant is 400kb/s. I use a private torrent network, so I'll have to make up for the ratio afterwards; but still, it's great to get things so quickly.
  • by Deathlizard (115856) on Wednesday January 03, 2007 @02:46PM (#17447776) Homepage Journal
    Emule has a system like this, and it basically slows everything down in the name of fair sharing. It takes absolutely forever to start downloads, since you're stuck in a vicious "chicken and egg" circle of "I can't upload anything to download" and "I can't download anything to upload".

    As it stands, Bittorrent is how the Edonkey protocol used to be before ratio systems were added to the clients; Fast. After Edonkey started adding anti-leech systems to the clients, the speed went into the toilet, and the queues started skyrocketing.

    I suspect that if this catches on, you can kiss 300kb's downloads goodbye.
  • Trying out now (Score:2, Informative)

    by Simon (S2) (600188)
    It does not seem to be really faster, but I notice that my upload speed is at 0 a lot of the time, when with the regular Azureus my upload speed was about always maxed out. It runns just since a few hours, so don't take my comment to serious.
  • BitTorrent is already based on selfishness. In fact, that's why it works so well, because peers tend to seek out "partners", other peers which can trade high bandwidth with each other. A client which is *completely* selfish and doesn't upload at all will usually not get a decent download. A prioritization algorithm which is more intelligently selfish can only participate better in the bandwidth market and thereby actually improve BitTorrent's performance.

The trouble with the rat-race is that even if you win, you're still a rat. -- Lily Tomlin

Working...