Slashdot Mirror


Long-Awaited BitTorrent 4.0 Released

wintermute1974 writes "After sitting at a stable release of 3.4.2 since last spring, Bram Cohen's official BitTorrent client has been upgraded to version 4. In addition to its existing, rock-steady functionality, BitTorrent now sports a new queue-based UI. The revision details are on the BitTorrent site. Packets are now marked as bulk data too, which is significant considering that about a third of all Internet traffic is currently torrent data."

98 of 521 comments (clear)

  1. Good to see progress... by ratsnapple+tea · · Score: 5, Insightful

    The OS X client is still at 3.4.2. Is anyone working on an update? (I'd offer to help, but I don't program :p)

    1. Re:Good to see progress... by great+throwdini · · Score: 2, Informative
      The OS X client is still at 3.4.2. Is anyone working on an update?

      Better yet, now that BT 4.0.0 uses GTK instead of wxWidgets (as per the release notes), will this hamper the OS X frontend?

      The only other OS X native BT frontend I know is Tomato Torrent ... but that's just a tweaked 3.4.2 build. CLI / X Windows here I come...

    2. Re:Good to see progress... by Wesley+Felter · · Score: 2, Interesting

      The OS X frontend is separate and uses Cocoa AFAIK.

    3. Re:Good to see progress... by Coryoth · · Score: 5, Insightful

      The OS X client is still at 3.4.2. Is anyone working on an update? (I'd offer to help, but I don't program :p)

      It's in python so you should be able to just grab the source and use btdownloadcurses.py in Terminal.app (or whatever it is). Do you need a pretty GUI, or do you just want the new functionality etc.?

      Jedidiah.

    4. Re:Good to see progress... by rsmith-mac · · Score: 5, Insightful
      Do you need a pretty GUI, or do you just want the new functionality etc.?

      In all seriousness, it's a Mac. The userbase is not going to accept an application that doesn't have a "pretty GUI" because the GUI is much of what the platform is about. Just see OpenOffice for an example of software that's underutilized for its lack of an effective Mac GUI.

    5. Re:Good to see progress... by Coryoth · · Score: 2, Interesting

      I'm sure a Mac GUI is coming, my point was that if you want the new functionality now it is still entirely usable. The curses interface is actually quite nice, and was all I used for quite some time.

      Jedidiah.

    6. Re:Good to see progress... by BrookHarty · · Score: 4, Insightful

      I use the command line under screen on my mac, in fact, I ssh into my mac more than sit at the desktop. My wife will be playing World of warcraft on it, and I'll just ssh for irssi/bt underscreen.

      There are alot of new users that see what OSX is, a kick ass unix box with a great multi user desktop.

    7. Re:Good to see progress... by mattkinabrewmindspri · · Score: 4, Informative

      Azureus runs just fine on OS X as an Aqua application. It's probably the best OS X BitTorrent out there.

    8. Re:Good to see progress... by mrchaotica · · Score: 3, Insightful
      There are alot of new users that see what OSX is, a kick ass unix box with a great multi user desktop.
      Yeah, and I'm one of them -- but that doesn't mean I can't appreciate a good GUI too!
      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    9. Re:Good to see progress... by xRobx · · Score: 2, Informative

      Looks like it is being worked on. I regularly checkout the cvs and I see tons of OSX changes being downloaded.

    10. Re:Good to see progress... by Chainsaw · · Score: 2, Interesting

      I have used OpenOffice and StarOffice on OS/2, Windows and Linux (in that order). Wanted to try the Mac version too, and since X11 is already installed - no problem.

      One second after it launched, I knew exactly why Mac users hate it. Amongst my Mac applications, there is one ugly as Stephen's mom application breaking almost every user interface rule there is. Even the simplest one (there's a perfectly fine menubar at the top of my screen, you bastards) was ignored.

      THAT'S the main reason it's not used on the Mac.

      --
      War is one of the most horrible things a human can be exposed to. And one of the worlds largest industries.
    11. Re:Good to see progress... by clarkcox3 · · Score: 2, Insightful
      Better yet, now that BT 4.0.0 uses GTK instead of wxWidgets (as per the release notes), will this hamper the OS X frontend?

      The OSX client never used wxWidgets in the first place. It's a Cocoa/Python application. Besides, I always use the curses client anyway (very handy to run under screen so that I can check my progress remotely via ssh)

      --
      There are no tiger attacks in my area and it's all because this rock I'm holding keeps the tigers away.
  2. 1/3rd of all traffic? by Anonymous Coward · · Score: 4, Funny

    stop all the downloadin.

    1. Re:1/3rd of all traffic? by ZackSchil · · Score: 4, Funny

      Help Computer.

    2. Re:1/3rd of all traffic? by wheany · · Score: 3, Funny

      I don't know much about computers.

  3. But... by TheKidWho · · Score: 3, Funny

    Does it have an FM tuner?

  4. The 'bulk data' tag by Raindance · · Score: 5, Informative

    Since it's a decentralized standard, we'll need other clients to mark packets as 'bulk data' as well to get full benefits in routing from this. Since companies are starting to use BT commonly to distribute files in-game (or will, shortly), their code will need to be updated too. So, no magic bullet but a step in the direction of creating a heirarchy of data packets.

    I'm interested to see where this'll go-- will ISPs absolutely choke 'bulk data' packets and drive folks into using older or fringe BT clients to get faster downloads? Will this help solve VoIP realtime bandwidth issues? Will the 'good net citizen' vibe surrounding writing the 'bulk data' flag into ones code overshadow potentially making ones users into second-class net citizens?

    Or will this not be a big deal at all?

    Probably some of everything, I suppose.

    1. Re:The 'bulk data' tag by ip_fired · · Score: 5, Informative

      I'm interested to see where this'll go-- will ISPs absolutely choke 'bulk data' packets and drive folks into using older or fringe BT clients to get faster downloads?

      I don't think they'll choke "bulk data", because many other protocols mark their data bulk as well (ftp being one of them, if you have a modern client).

      It is very helpful to ISPs to have the bulk classification, so that their more time-sensitive data (ie, VOIP) doesn't get clobbered when someone starts using bittorrent.

      It's not like it's difficult to choke bittorrent traffic anyway, just look for communication on ports 6881 to 6888.

      If they do, it'll just make everyone remove the bulk flag, and then there will be no easy quality of service queing.

      --
      Don't count your messages before they ACK.
    2. Re:The 'bulk data' tag by garbletext · · Score: 2, Insightful

      6881 to 6888 are not mandatory. you can do any port range you desire in most clients; it'll just choose random free ports in the range to use. You need a packet shaper to chose BT traffic effectively

    3. Re:The 'bulk data' tag by Andy+Dodd · · Score: 2, Informative

      I believe the ToS bits have been ignored by most routers for a LONG time.

      The reason being, IIRC, is that Microsoft decided not to play "good net citizen" and the Windows IP stack sets outgoing packets as 0x10 (or other similar "high priority" category) no matter what.

      --
      retrorocket.o not found, launch anyway?
  5. Link and Changelog by perlionex · · Score: 4, Informative

    The actual link is to the download is here.

    The changelog:

    # 2005-03-07: 4.0.0 is now available.
    Changes since the last stable release:

    All new queue-based user interface Many options are now modifiable from the interface, including upload rate Lots of other interface improvements Extra stats are visible, for those who like it Remembers what it was doing across restarts New .torrent maker "btmaketorrentgui" replaces "btcompletedir" Better performance, as always License has changed to the BitTorrent Open Source License Torrent fields are correctly created and interpreted as utf8 Too many little things to list

    A few technical notes, for those interested:

    Single port: launchmany can seed and client can download many files from a single port and thread Interface now uses GTK instead of wxWidgets BitTorrent packets are marked as bulk data to make traffic shaping easier
    1. Re:Link and Changelog by NuclearDog · · Score: 5, Informative
      I'll translate the preamble to English...

      • The BitTorrent client and updates/etc are all covered under this license.
      • The license is considered a valid open source license.
      • You can give it (the software) away just by itself or on a cd/in a zip with multiple other programs. You don't have to pay royalties.
      • You have access to the source & binaries.
      • You can modify the source & fork the program.
      • Any modifications made to the program have to be licensed under this same license.
      • Use it however you want, but there is no warranty provided.
      • If you sublicense the code, you can charge for warranty/support or for offering indemnity for your customers, but the source must remain free.
      • If you file a patent claim against the BitTorrent software, you lose all rights under the license (right to re-distribute, etc.)
      • You can re-license any works you create based on the code, but you have to license it under an OSI-approved license that is compatible with this license.


      (Note: This may not be 100% accurate, IANAL, I am not responsible, etc, etc.)
      --
      This statement is forty-five characters long.
    2. Re:Link and Changelog by Storlek · · Score: 3, Insightful

      The GPL and BSD-like licenses are at least understandable for a non-lawyer.
      I can see how people can't understand the GPL; it's fairly long and "lawyery" looking. But the BSD license? It's about six sentences long! It pretty much comes down to "do anything you want with it, modify it or don't, distribute as source or binary, we don't care, as long as you give credit where it's due, don't use our names to endorse your product, and don't blame us if something goes wrong."

      --
      Bears don't normally eat things that talk and move backwards.
    3. Re:Link and Changelog by petard · · Score: 4, Informative

      fwiw, it's basically the jabber license with a couple of the restrictions lifted.

      HTH,

      petard

      --
      .sig: file not found
    4. Re:Link and Changelog by swv3752 · · Score: 2, Interesting

      It is basically the same as the GPL, so I don't see why Bram didn't just use the the GPL. Invariably the BT licence is incompatible with the GPL.* So now if you want to incorporate BT into something like say Konqueror, you can't.

      *I may be wrong about the compatibility, but it still does not seem to justify creating yet another licence that does nothing new.

      --
      Just a Tuna in the Sea of Life
    5. Re:Link and Changelog by HiThere · · Score: 2, Interesting

      That bit about "if you file a patent claim against this software, you lose all license rights under it" is, indeed, incompatible with the GPL. But that doesn't mean it's a bad idea.

      Perhaps it should be considered for addition to the next version of the GPL? (Which might have the side effect of making the bittorrent license compatible.)

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
  6. Azureus rocks... by patniemeyer · · Score: 4, Interesting

    It's Java based and seems to have every useful feature you can imagine:

    http://azureus.sourceforge.net/

    I haven't checked out the new official client yet, but Azureus has always been way ahead of the pack and I assume it still is. (Things like fast restart, nice visualizations of clients and file pieces, etc.)

    Pat

    1. Re:Azureus rocks... by slavemowgli · · Score: 4, Interesting

      BitTornado is another nice client, with the added benefit that it's not written in Java. Not that I've got much against Java personally, of course, but it's quite a resource hog that I'd rather avoid when possible.

      --
      quidquid latine dictum sit altum videtur.
    2. Re:Azureus rocks... by nzkbuk · · Score: 2, Interesting

      While it's a very nice client I've always found it to be slower (in terms of network throughput) than other clients.

    3. Re:Azureus rocks... by MicroBerto · · Score: 4, Informative
      Yes, Azureus does rock. It seems that the development has slowed down a bit recently, since the 2.2 series release.

      This makes sense though, because it simply works incredibly, and they're probably working on some bigger things now for a new version. It's stabilized quite nicely, better than any closed-source software out there lately!

      --
      Berto
    4. Re:Azureus rocks... by Anonymous Coward · · Score: 5, Insightful

      Unfortunately BitTornado runs in Python, which can get almost as slow as client-side Java when you have a lot of stuff running. I'd recommend the pure C++ BitComet.

    5. Re:Azureus rocks... by dk01 · · Score: 4, Informative

      Yes Azureus does rock. Some of the features that have been around for a while are its support for pluggins. The one that seems to be most popular is its RSS feed reader. It monitors and filters RSS feeds for files that a user wants to have downloaded. This makes going on a several day vacation quite a bit easier. I use it to download my latest Al Franken Show from Air America. -dk

    6. Re:Azureus rocks... by metamatic · · Score: 2, Informative

      Unfortunately BitComet only runs on Windows.

      --
      GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
    7. Re:Azureus rocks... by uhmmmm · · Score: 3, Informative

      If you're downloading a lot, the overhead of running the one instance of Azureus needed to do that beats that of running, say, the dozen instances of the the official client, hands down.

    8. Re:Azureus rocks... by irc.goatse.cx+troll · · Score: 2, Informative

      And doesnt report stats right. Not a problem for some, but anyone that uses empornium should know that they get no upload credit and will end up throttled

      --
      Pain lasts, kid. Its how you know you're alive. Sometimes I think this growing up thing is just pain management-TheMaxx
    9. Re:Azureus rocks... by Matt+Perry · · Score: 3, Insightful
      I'd recommend the pure C++ BitComet.
      The fact that BitComet has downloads of MPAA movies queued in their screenshot don't help to legitimize BitTorrent. I'm not bashing BitTorrent but I am bashing the BitComet people for not putting up a less incriminating screenshot. We're having a hard enough time convincing lawmakers that there are legitimate uses of BitTorrent and that they shouldn't outlaw P2P without making their case for them.
      --
      Slashdot: Failed Car Analogies. Amateur Lawyering. Anecdote Battles.
    10. Re:Azureus rocks... by honestmonkey · · Score: 2, Interesting

      Yes, to please be read the site and noticing that English is their second language. Not justifying anything, but they may look at these things differently. Also, BitComet is not open source, which makes me feel uncomfortable as well. All in all, I don't think I'd trust it, personally.

      --
      Everything you know is wrong, Just forget the words and sing along.
    11. Re:Azureus rocks... by DisKurzion · · Score: 2, Interesting

      BitComet is also not Open Source. I may be confused, but doesn't that mean that they're violating the licence?

      I use it, and it's a nice client, but it isn't open source, and that worries me.

  7. Trying to get more users? by ProdigySim · · Score: 4, Interesting

    It looks to me like this new client is adding alot of the features other clients added in themselves. The main part being the configurations from a GUI. Perhaps he's trying to get everyone using HIS client, so there's more control over the populus of BT users?

    1. Re:Trying to get more users? by Deliveranc3 · · Score: 2, Insightful

      Most people started switching away with the intrusive pop-ups.

      Sites like IsoHunt have some features that are supported in some clients and not in others like multiple trackers with backups so if the main tracker goes down it will switch over.

      He's not trying to implement any sort of eXeem crapfest at least.

      I'm a bit confused about the bulk packets thing.

      Yea there are people who will want to use over their neighbors wifi and will need some stronger restrictions (when it spikes to 300 down neighbors internet goes kablooie) but I'm not sure that making it mandatory is the best solution.

  8. Irony. by DarkHelmet · · Score: 5, Funny
    http://www.bittorrent.com/index.html

    Is it just me... but does anyone else find it ironic that there isn't a torrent available for downloading Bittorrent?

    --
    /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i
    1. Re:Irony. by cdsr · · Score: 5, Funny

      would you like to download winzip.zip too?

    2. Re:Irony. by Nermal6693 · · Score: 2, Funny

      StuffIt (essentially WinZip for Mac) was once distributed as a .sit file. :)

    3. Re:Irony. by arekq · · Score: 2, Informative

      That's probably because bittorrent isn't very efficient for small files.

  9. Great! I Love BitTorrent. by Murdock037 · · Score: 5, Funny

    Because I hate going to the theater to see... uh, Linux binaries.

  10. bulk data by vespazzari · · Score: 5, Funny

    is bulk data what fat chick pr0n is being referred to nowdays?

    --
    "Alcohol, cause of, and solution to, all of life's problems" -Homer Simpson
  11. ABC by Anonymous Coward · · Score: 5, Interesting

    has had a far better interface and featureset for years.

    1. Re:ABC by CammieCrookston · · Score: 4, Informative

      ABC is nice indeed. If you are an advocate of BitTornado, but prefer a single window for all of your downloads, ABC is the client for you. (It uses BitTornado as its core, so you get all of BitTornado + extra features + a single window).

  12. Re:meh by Wesley+Felter · · Score: 2, Informative

    No you don't, because the protocol has not changed.

  13. Indeed... by inertia187 · · Score: 2, Funny

    ...which is significant considering that about a third of all Internet traffic is currently torrent data.

    Too bad it's all broken copies of LG3D.

    --
    A programmer is a machine for converting coffee into code.
  14. Different License by Raindance · · Score: 4, Informative

    Also of note is that BT 4.0 is using a modified version of the Jabber Open Source License.

    It's complient with the Open Source Definition. Not huge shaking news it seems like.

  15. Bulk data? by IntellectualCritic · · Score: 5, Interesting
    Packets are now marked as bulk data too

    Can somebody explain what that means?

    I'm assuming that's not like bulk mail over the internet. I'd hate to accidently download viagra when I just when a torrent file.

    1. Re:Bulk data? by PxM · · Score: 2, Informative

      It's a flag at the IP level which routers use to handle different traffic classes (realtime, low-bandwith/low-lag, etc. In particular, bulk data is high-bandwith and lag tolerant so that someone using a high lag system like a sat. connection can route the packets in a manner that improves overall performance. This normally involves allowing for bigger chunks of data at a time with less feedback (the ACKs) for each chunk.

      --
      Free iPod? Try a free Mac Mini
      Or a free Nintendo DS, GC, PS2, Xbox
      Wired article as proof

    2. Re:Bulk data? by Anonymous Coward · · Score: 5, Informative
      Let's look at a few options vis-a-vis protocols that make use of TCP-IP. You have, for example Voice over IP (VoIP); Hypertext Transfer Protocol (HTTP); File Transfer Protocol (FTP); Network News Transfer Protocol (NNTP); Simple Mail Transfer Protocol (SMTP); Internet Relay Chat (IRC); and Secure Shell (SSH). (This list is not complete, but it's for illustrating the point, not to list every damn protocol on the whole Internet.)

      Now, taking these one at a time. VoIP has certain needs: it needs a certain amount of bandwidth, and its data must be transferred within a short period of time, or it becomes unusable. A VoIP connection is generally held for of the order of minutes, so quick setup of a connection is not a high priority. HTTP needs quick setup/teardown, because you have one connection for each file (typically kilobytes in size; yes, I know that later versions of HTTP can transfer multiple files within one connection), but latency is not a huge concern; bandwidth might be, depending on the data. FTP is an interesting beast: low latency and low bandwidth for commands, but high bandwidth and don't-care latency for data. Setup/teardown times not a major issue. NNTP needs high bandwidth, but latency is not a concern at all. SMTP usually needs low bandwidth, and latency isn't a major issue, as long as the message gets through. SSH needs low latency, but bandwidth needs are generally low.

      You have a relatively small pipe to the rest of the Internet. There are high demands on this pipe. How do you decide what gets pushed through, and what gets dropped, or delayed until later?

      BitTorrent marking its packets as bulk means that quality of service systems can say "These packets aren't of major importance; they can be deferred until later". So the short-term throughput of BT is reduced, for the benefit of others who need the pipe for applications like VoIP (for example). When those other applications reduce their demands, BT is able to transfer its data.

      The understanding is simple: the urgency in the transfer of data via bittorrent is low, so if bandwidth is at a premium, the routers can drop, or throttle, the bittorrent data to make room for high priority data. It's the same principle as FedEx uses: if you have stuff that needs to be moved FAST, you pay a price premium, and it gets moved on the next plane, bumping off some low-urgency, low-price cargo to the plane afterwards. If there's a lot of high priority and low priority traffic, such that the low priority traffic is building up faster than it can be moved, it's time for FedEx to buy more planes, or start not accepting low priority traffic -- or, in the ISP business, to buy a fatter pipe.

      Hope this helps.

    3. Re:Bulk data? by ikkonoishi · · Score: 2, Informative

      The protocol section in the packet header is marked 30. As such it should follow the rfc969 guidelines.

    4. Re:Bulk data? by Spy+Hunter · · Score: 4, Informative
      if bandwidth is at a premium, the routers can drop, or throttle, the bittorrent data to make room for high priority data.

      No. In order for users to voluntarily mark their packets as "bulk data", there has to be a benefit for them. That benefit is supposed to be higher overall transfer rate. The tradeoff is higher latency. So a router that receives a BitTorrent packet and a VOIP packet at the same time would send the VOIP packet first to reduce latency, and queue the BitTorrent packet for afterwards. But if the queue is full it would *not* preferentially drop the BitTorrent packet because that would reduce throughput. In fact, if the queue has many VOIP packets, the router should preferentially drop incoming VOIP packets, because it would not be able to send them with low latency anyway. This limits VOIP throughput, which is fine. In fact that's the result we want: VOIP = low latency low throughput, BitTorrent = high latency high throughput.

      At least, I hope this is how ISPs implement routing for packets marked as bulk data, because otherwise it will never be adopted.

      --
      main(c,r){for(r=32;r;) printf(++c>31?c=!r--,"\n":c<r?" ":~c&r?" `":" #");}
    5. Re:Bulk data? by Deven · · Score: 3, Informative

      In order for users to voluntarily mark their packets as "bulk data", there has to be a benefit for them. That benefit is supposed to be higher overall transfer rate.

      No, the benefit is that their Internet connection remains usable for interactive traffic instead of slowing to a crawl due to the BitTorrent traffic. (The overall transfer rate is likely to be the same either way.) You don't stop using the Internet just because you're downloading something, do you?

      If you're not using your connection for anything else, BitTorrent can max out the bandwidth, with or without the bulk data flag. If you have other traffic, the TCP/IP stack will have to make room in the stream of data for those other packets sooner or later -- and when those packets go through really won't affect the final download time because latency is of little importance. However, it may be critical to the other traffic, so it's best to label the bulk data to keep it from being prioritized before more urgent packets.

      Really, the only reason not to use the flag is because such traffic could be easily singled out for blocking. However, such action would be foolish, since people would just stop marking the data as "bulk" if that caused it to get dropped. This would cause all the bulk data to be transferred as if it were time-critical interactive traffic, defeating the value of the flag altogether. (Email can be marked as bulk email, but do spammers use that flag? Of course not! They know they'll be blocked.)

      It's best for everyone if all bulk data is labelled, the routers prioritize it intelligently, and nobody blocks bulk data transfers.

      --

      Deven

      "Simple things should be simple, and complex things should be possible." - Alan Kay

    6. Re:Bulk data? by Andy+Dodd · · Score: 2, Informative

      If your cable modem's queue supports packet prioritization, yes. Most of them don't since they're simple devices. (In the VoIP age, this might start changing.)

      Set an upload cap on your BT client if you don't want it killing your connection, or replace your router with a Linux box that has more intelligent packet filtering. (Specifically, if you know your upstream cap, you can set up the Linux box to be the actual upstream bottleneck and not the cable modem, and when the router is the upstream bottleneck, it's a lot easier to prioritize packets effectively.)

      Also some BT clients support automatic upstream detection. The way they do it is by measuring your latency to a few sites, if they see the latency spike, they throttle themselves back until latency goes down.

      --
      retrorocket.o not found, launch anyway?
  16. BitTorrent Open Source License by IvyMike · · Score: 4, Interesting

    Dear Lazyweb:

    This version of bittorrent is licensed under the BitTorrent Open Source License. Could you please compare and contrast this with other open source licenses for me?

    Thank you, Lazyweb.

  17. Great news... by jedimark · · Score: 3, Funny

    Now if only I could convince my stinking ISP that downloading linux ISO's is not illegal :-)

  18. Looks Slick by yuriismaster · · Score: 2, Informative

    NOTE: This is the windows version

    Tried it out throwing down some linux torrent simultaneously.

    Downloads save to the desktop by default (although editable) and look like Firefox's Download Manager with details, progress bars, etc. Really nice because opening up 5 torrents used to mean 5 seperate windows. Client worked fine on most of the trackers given by A Quick Google Search.

    Download it quick! I'm sure someone will torrent the executable...

    1. Re:Looks Slick by r.muk · · Score: 3, Informative

      From http://www.torrentocracy.com/blog/archives/2005/02 /bram_cohen_unde.shtml
      Bram Cohen gave a technical talk on Bit Torrent at Stanford.

      Update: 3/7/2005, The torrent in this entry was just audio only, but Thomas Winningham has gotten permission from both Bram and Stanford ("Stanford holds copyright on the material but returns the copyright immediately to the speaker, that is, Bram. Get him to agree and go ahead.") to post their video as a torrent on Prodigem. Cool! Updated again since that video posted seems to only have the first 10 minutes. Anyway, the audio is below, or just check out my notes.

      Bram Cohen gave a technical talk on Bit Torrent yesterday at Stanford. I had planned to make video from it available, but the video I captured somehow got corrupted (boo Panasonic). I salvaged the audio from the video and have released that via a torrent under a creative commons license (with Bram's approval). The audio is a bit low. It's okay, though, as I didn't realize that Stanford would be making it's video available to the general public (though in crummy windows streaming format). Here are some notes:

      - Academic setting ... so how to benchmark/measure bit torrent
      - benchmarking is hard because it needs to be like the internet (buy a bad router)
      - key problem among swarming software is how to get everyone involved to maximize upload, people don't realize

      - Single seeder problem
      - must be careful not to at first trade with people who are likely to disappear

      - Bit Torrent extremely non-cooperative
      - each peer in it for himself
      - tit for tat
      - editorial note: isn't this cooperative? Peter Kollock: tit for tat as the optimal cooperative strategy

      - How to deal with people behind and not behind NAT

      - Centralized tracker is needed to produce randomized graph so as to avoid
      network segmentation
      - gossip (peers telling peers about other peers with content) very easily segments the network such that pieces of the content get isolated into islands

      - Choking Algorithm
      - sophistication
      - people like to pretend it doesn't exit
      - lots of use of made up magic numbers
      - eg. how long to wait for reciprication?
      - motivation opaque
      - methodology (the traditional approach) is Bram firing up a client and observing behavior
      - lots of room for study

      - TCP does not look like RPC calls (BitTorrent treats TCP like a black box)
      - don't avoid making a state machine, because no matter what you'll end up with a state machine anyway
      - why threads are a bad idea

      - Magic numbers
      - makes them up based on what works
      - pulls them from his "magic ass"
      - if you need a magic number feel free to ask him for one

      - Estimated Time Left Algorithm
      - never gotten any fan mail on how well it works
      - lots of effort and thought put into making this work sanely
      - any time you see a computer telling you time left it is lieing
      - research needs to be done on better algorithms
      - would gladly place your better algorithm into bit torrent
      - problem at end about going down 2 seconds per every 1 second
      - tradeoff between smoothness now vs. smoothness later

      - Current Transfer Rate Algorithm
      - its a mess
      - very important for tit-for-tat to work

      - Bad idea to be downloading too many torrents at one time (e.g. 5)

      - Peers at first never randomly tried new connections
      - added optimistic unchoke to solve this
      - if new person recipricates then continue
      - otherwise move on to the next person
      - may unchoke 4 or 7 clients depending
      - it's voodoo
      - nobody has seriously studied this

      - Piece Selection Algorithm
      - trade off between finishing the piece you are currently downloading vs going after a more valuable piece
      - priority is currently finishing a piece you started even if many others have it
      - downloading from the beginning of the content for everyone is a maximally bad strategy

      Q: Who has w

  19. Marking Packets Correctly by Red+Pointy+Tail · · Score: 5, Funny

    I hope packets are also marked with the evil bit too, which is significant considering that most of all Torrent traffic is currently evil data.

  20. Lack of per file settings. by PxM · · Score: 2, Interesting

    My main gripe with the default BT client is the lack of per file settings. BitTornado (site's down at the moment) allows the user to download specific files in the torrent. This is useful since people can post aggregated torrents and the user can just select the files that he wants.

    --
    Free iPod? Try a free Mac Mini
    Or a free Nintendo DS, GC, PS2, Xbox
    Wired article as proof

  21. Idea: Streaming Torrent by CedgeS · · Score: 2, Interesting

    Don't know if this is new or not, but a streaming peer-to-peer protocol like bittorrent would be pretty cool. It could be used to inexpensively broadcast audio or video almost live, potentially making news reporting available to a wider selection of journalists. Checksums on data would obviously be a problem here and malicious nodes in the network would have an easier time of disrupting communications. This mechanism needs to be independent of media type, and rely on being used in combination with file formats that can be picked up and played from any small chunk. The client could decide which portions of the stream it would rather get, sacrificing liveness to get as much as possible, trying to pick up the nearest blocks in the future first to stay as smooth as possible, or minimizing buffer size and going after the most recent blocks to stay as live as possible.

    1. Re:Idea: Streaming Torrent by parcifal · · Score: 3, Interesting

      This is already happening, wired even had an article on it, and the advance comes from the porn industry which has a number of contributions to the internet to its credit.

    2. Re:Idea: Streaming Torrent by r.muk · · Score: 2, Informative

      AFAIK streaming won't work because the info. arrives in deliberately random chunks so as to even out which peers are u/l-ing and which is d/l-ing. Everyone gets to contribute within a pretty short time of joining a torrent.

  22. Hmm by pHatidic · · Score: 2, Interesting

    What ever happened to that new and decentralized torrent program?

    1. Re:Hmm by stratjakt · · Score: 5, Informative

      eXeem is a sloppy piece of crap, and a thinly veiled vehicle to get spyware and malware on your system (whse).

      Slashdot staff should be ashamed to have promoted it like they did. They did 2 or 3 articles about it, as if it were some great tech sent from the heavens.

      Besides the fact that the very notion of it is what's wrong with the internet, and why the government will eventually regulate the hell out of it. The entire point is to trade warez. I did an eXeem search for linux, and didn't get one result - so don't give me some bullshit about slackware isos. Society are like kindergarteners, they had a little freedom, and blew it. Now we're all going to be grounded.

      Actually, is that why michael left? It wasn't long after he "wrote" a couple "eXeem is great! get your warez on eXeem!" articles that he left.

      --
      I don't need no instructions to know how to rock!!!!
  23. Control? by Chuck+Chunder · · Score: 4, Informative

    Look at the licence, it seems to me that's the "control" is something he certainly isn't overly interested in.

    He probably just wants to offer a product he can be proud of, maybe so people will appreciate his work and choose to support him.

    --
    Boffoonery - downloadable Comedy Benefit for Bletchley Park
  24. Linux needs a gui alt to azureus by Sark666 · · Score: 3, Insightful

    I've tried to like azureus, and I actually still use it as there is pretty much no alternative gui wise in linux, but I really wish there was.

    Basically it brings my system to a crawl. Java vm (and yes i'm on 1.5) feels like a pig imo. We need a native gtk/qt gui that's in c/c++.

    And please don't be a smartass and point out there is the basic gui that the official comes with. It's way too lacking. AFAIK, the only way to throttle is by using the ncurses one. Never mind that you can't set ratio's (I set all of mine to 1:1.), or bind all torrents to one port instead of needing all open. Pretty much all of the other clients do that now, except the official so someone please correct me if I'm wrong.

    So as you see, there are quite a few things lacking in the official client. I've checked freshmeat periodically but couldn't find anything for linux. I know there is bitorrando and some others but they require access to a mysql server wtf?

    My windows friends used to use azureus and didn't fair much better performance wise but now they pretty much all use bitcomet.

    I don't mean to knock the azureus team, cause as it is they've made a pretty good functional gui, but java just brings the performance down too much.

    1. Re:Linux needs a gui alt to azureus by greg_barton · · Score: 3, Informative

      If you have a 3D video card, try activating opengl acceleration in java. From the script launching azureus, add the following command line property:

      -Dsun.java2d.opengl=true

      This will activate the opengl pipeline for Java2D calls. (Swing uses Java2D for all rendering...)

    2. Re:Linux needs a gui alt to azureus by greg_barton · · Score: 2, Informative

      Didn't know that, but if it touches the Java2D api at all there should be a speedup. Apparently Azureus uses SWT that does not use Java2D (as far as I know) but it can...

  25. Re:yep by commodoresloat · · Score: 5, Funny
    why bother with Firefox when we've got Safari?

    You misspelled "Camino".

  26. Initial impressions... by Rexz · · Score: 5, Interesting

    Installer doesn't give any indication it's installing until you get a "Finished!" box. No choosing paths, no status indicator, nuffin.

    Two donation nag screens.

    Steals .torrent file associations.

    No scraping the server for total seeder/peer numbers.

    No moving completed downloads. No advanced seeding rules. No selecting of individual within a torrent. No download speed capping.

    25mb memory usage running just one torrent.

    Nothing excites me about this client. I look forward to its apparent efficiency increases being incorporated into Azureus et al, though.

    1. Re:Initial impressions... by shadowmatter · · Score: 3, Informative

      There isn't much improvement to this client that will carry over to other clients. That is, this is not the second version of the BitTorrent protocol, as explained here. Bram has been pretty mum on the second version of the protocol, although the official developer forum has had some heated debates over how some of these features should be incorporated and what their parameters should be (note that, although at times heated, purely constructive ;).

      So if already content with Azureus or BitComet or whatever, nothing to see here... Move along folks.

      - shadowmatter

    2. Re:Initial impressions... by me+at+werk · · Score: 2

      Here's some initial impressions of his website.

      If you click news, it takes you to a mysearch.com search for the word bittorrent. It's hosted by hotornot. Mysearch is a spyware (Oh, sorry, don't sue me, HELPFUL TOOLBAR) company. HotOrNot is, ah who cares about that one.

      Either way, wtf is with mysearch being the news link?

      --
      For context, click Parent.
  27. Re: Long-Awaited BitTorrent 4.0 Released by yrogerg · · Score: 3, Funny

    To be honest, I haven't been waiting at all.

  28. Who cares? by Anonymous Coward · · Score: 5, Insightful

    The official client has been miles behind most of the unofficial ones, and as far as I know nobody with any sense uses it anymore. And as far as I can see, this new version only makes it slightly less inferior. So why does it matter that it's been released? For that matter, why was it even made?

    I don't see the point in reinventing the wheel as far as clients go when there are far better alternatives already out there. Let other people write the clients, and concentrate on improving the protocol.

    1. Re:Who cares? by TheAcousticMotrbiker · · Score: 2, Informative

      I care
      btdownloadmanycurses running under a screen session means that I can have my torrents up and downloading as long as my machine stays up.

      If I accidentally crash X whilst playing doom3 (or whatever) it does not hurt my torrents.

      In fact I can download .torrent files on any machine, then ftp them to the right directory on my main machine and voila yet another torrent downloading .

      Usually the stuff has downloaded by the time I get home again, and I can listen to them immediately (live concerts from easytree). Try that with any of the facny GUI clients

  29. Re:GI JOE PSAs by Wescotte · · Score: 3, Informative

    Might as well link to the joke so...

    http://media.ebaumsworld.com/index.php?e=gijoe-c om puter.mov

    and more can be found at

    http://www.ebaumsworld.com/gijoe.html

    It's one of those were either you laugh your ass off or become disturbed at the amount of free time people have. Personally I laugh my ass off.

  30. No kidding... by mindaktiviti · · Score: 2, Interesting

    Yeah no kidding, my two biggest memory hogging applications are:

    - javaw.exe @ 43,616K at the moment
    - firefox.exe @ 40,564K at the moment.

    I like Azureus enough that I'll let this slide since I don't use it all the time (newsgroups are fun), and I dislike IE enough that 50mb doesn't seem so bad, plus I have enough ram anyway.

  31. Re:...ever feature except speed by EnronHaliburton2004 · · Score: 2, Informative

    I have an old 400Mhz Dell Dimension L500cx with 512MB RAM. It does have a new 80GB hard-drive, but everything else is pretty old.

    Azureus works fine-- no big performance problems at all. I can download and my wife can still use iTunes and MS Word at the same time. Azureus maxes out our DSL connection, but that's the network, and all computers are affected.

  32. Why The Official Client Matters by EventHorizon · · Score: 4, Interesting

    1. There is actually no RFC or other detailed documentation for the BT protocol. The unofficial clients were all written based on the source code from the official client (and more recently, based on the source code of other unofficial clients). IMO Bram should create a formal RFC, but that is pretty unlikely (he's not interested and the IETF is probably too conservative to do p2p).

    2. Sadly the python clients are the only ones usable on 64MB virtual private servers. Most of the unofficial clients are platform-specific (Win32, GTK+), or require a bloated JVM that has no chance of working in less than 128MB.

    I find it tragic that noone has released a high quality POSIX C client. Maybe the OpenBSD guys will eventually get around to OpenBT?

    1. Re:Why The Official Client Matters by scotty · · Score: 2, Informative
      I find it tragic that noone has released a high quality POSIX C client.

      I use CTorrent, a console torrent client in plain C. Feature is a bit limited, but it works and has relatively small footprint.

    2. Re:Why The Official Client Matters by kosmosik · · Score: 2, Informative

      > I find it tragic that noone has released a high
      > quality POSIX C client. Maybe the OpenBSD guys
      > will eventually get around to OpenBT?

      Well there is C BitTorrent client. A bit stagnated (meaning developement/releases) but it works usually and is under GPL so it is nice base to start off.

      http://ctorrent.sourceforge.net/

      Keep in mind that this client is writen in *nix way - meaning that it does not have fancy GUI at all, it does not do queue etc. - it just gets torrents.

      I've used to use ctorrent, but now I am only using BTQueue which is very extended original BitTorrent client. It has queue abilities, gives loads of info, can do throttling etc. extremely configurable. It is a bit raw but can be used once you get used to it. :)

      http://btqueue.sourceforge.net/

      It even exports WebService with ACL for full control. :)

  33. Re:yep by Anonymous Coward · · Score: 3, Insightful

    Yeah. Second-rate, late, half-baked software that makes all of your books, all of your magazines, all of your movies, all of your newspapers, all of your music ... and that also sequences your DNA to help keep you alive. And, just for fun, does any aspect of your life depend on Oracle or Sybase? Does your employer use either of them? Do you use a bank, for instance, or do you ever buy airline tickets? I ask because in the past 2 years, both Oracle and Sybase have switched to Mac OS X exclusively for the development of their products.

    It always makes me laugh when people shit on the Mac, because it just goes to show that they don't understand just how much of their world depends on Macs.

  34. Didn't anyone else read the version changes? by mike_lynn · · Score: 2, Interesting

    What, no one is going to talk about the new BitTorrent Open Source License that has been slapped on this 4.0 version?

    Thoughts about this would be much appreciated. I'm reading through it right now.

  35. Re:GI JOE PSAs by mixmasterjake · · Score: 3, Interesting

    here's the dude in chicago that makes 'em

    http://www.fenslerfilm.com/

    --
    TODO: come up with a clever sig
  36. The new BitTorrent license isn't simple or brief. by jbn-o · · Score: 2, Informative

    If that were all he's interested in, he'd use some simple and brief non-copylefted free software license like the new BSD license or the MIT X11 license.

    There is considerably more in the new BitTorrent license than in either of those licenses. Among other things, the new BitTorrent license specifies which licenses can be used as sublicenses and how much one can charge for distributing the source code of sublicensed derivatives.

    Pride in one's work doesn't come from a license and people aren't going to give him money because of the license.

  37. DL legal stuff please :) by sla291 · · Score: 2, Informative

    If you want to follow the example of Bram who only downloads legal stuff, you can test your brand new BT 4.0 client with the excellent Wired CD, in Ogg Vorbis :

    Wired CD .torrent

  38. libtorrent by rvalles · · Score: 2, Informative
    I use and recommend libtorrent, which is a C++ implementation for *nix. From their site: "It is designed to avoid redundant copying and storing of data that other clients and libraries suffer from. Licensed under the GPL.".

    In practice, it doesn't leak resources like all the python/java/etc implementations do, and its interactive ncurses client is the best bittorrent one I know of. It does also use our well-known GP L :).

    1. Re:libtorrent by keytoe · · Score: 3, Informative

      While it doesn't include much in the way of a client, there is another C++ based library called - um - libtorrent (as opposed to LibTorrent mentioned above - note the caps) released under the BSD license. It doesn't really include a client (just a 'demo' CLI client that shows how to use the lib), but this is slashdot and we should all be able to write our own clients using other peoples' libraries, right?

      When I started writing my OS X client (Shameless plug: Hurricane. Early beta.) I shopped around for BT libraries and found libtorrent to be better documented than LibTorrent (Sheesh - could that naming issue be any more confusing?). Also, the developer community seems very receptive and active - always a good thing!

      Cool Features? Sure! It runs all torrents over a single port in a background thread, offers configuration and stats for damned near everything BT can do, 'fast resume' data for quickly restarting a download and various other niceties.

      And great documentation - a rarity for an OSS project ;)

  39. Re:Favourite torrent sites? by tooth · · Score: 4, Insightful

    You forgot to add:

    Yours truly,
    The MPAA


  40. Unix Gurus by Mark_MF-WN · · Score: 3, Interesting
    A lot of the old Unix research gurus in university positions switched to OSX. I can't count the number of professors I've had who would set their Mac laptop down on the front desk, ssh straight into their home or office computer, and run their slides and code demos remotely.

    The idea of OSX as just a pretty GUI is a gross disservice. I wouldn't touch OSX (or any other proprietary OS) with a ten foot pole myself, but credit where credit is due.

  41. License and copyright by Per+Abrahamsen · · Score: 2, Informative

    If the license isn't valid, you are not allowed to redistribute the code. That is basic copyright law.

    The *only* thing that allows you to redistribute the code is the license. So it is in your own interest to defend the license.

    Of course, if you don't redistribute the code, you don't have to accept the license. The GPL is very specific about this, but it is true for all licenses. Or used to be, apparently there is a trend in some juristictions to consider the transfer of the program from harddisk to ram in order to run the code to be covered by copyright (very much against the spirit of copyright law), which mean accepting these licenses will be needed if you just want to run the program.

  42. Have they multithreaded the client? by wowbagger · · Score: 2, Interesting

    I wonder if the new version has multithreaded the client so that receive and transmit are in separate threads?

    This is important if you are using traffic shaping on your upstream connection, as I am. I'm on ADSL, and so my upstream bandwidth is less than my downstream. To prevent BT from consuming all my upstream bandwidth I am using the tc module in the kernel to restrict the BT packets (the rate limiting in BT is next to useless, as each instance of the client will use the programmed bandwidth - there is no "global" sharing of the bandwidth, so if you have 4 clients running it will take 4 times the bandwidth of 1 client).

    The problem is that if the client is blocked sending an outbound torrent packet (because the traffic shaper queue is full), the client will not process any available incoming data packets, and this will hammer the download speed - I have expermimentally verified this.

    Now, if there were separate threads for downloading and for uploading, the uploading threads would block as the TC queue filled, but the download threads would not be blocked, and could handle the download at full speed.

  43. Comment removed by account_deleted · · Score: 2

    Comment removed based on user account deletion