Header image alt text

Morning Seditionists

BitTorrent

A lot of folks are curious about something called BitTorrent, but they don’t know what the hell it is or how it works, so I thought I’d try and explain a little bit. If you don’t give a shit, and just want information about downloading clients and torrents, you can skip down a bit.

First, what the hell is it? BitTorrent is the name of a peer-to-peer (P2P) file distribution client application and also the name of the file sharing protocol itself, created by a guy named Bram Cohen. Now, don’t get intimidated by words like “client” and “protocol” and “P2P” and “Cohen.”

P2P file distribution (or file “sharing”), made famous by Napster, I guess, is just folks like you and me (peers) sitting around, sharing files with each other. You’re not going out to some big server and downloading things, but instead are sharing what you have with others, and they are sharing with you. Remember in kindergarten when they told you sharing was good? Well, this is what they were talking about.

A protocol is just a set of rules used so two things can figure out how to talk to each other. You know, like, when the phone rings and (unless you’re me), you answer it. You indicate that you’re there and available to talk by picking up the phone and saying, “hello?” The caller says “hello” back, indicating that he or she is there and isn’t a heavy breather or one of those goddamn recorded messages, and then you talk for a while, and finally, you say “goodbye” and they say “goodbye,” and then you hang up. It’s the same thing with computers, except computers are dumb, and the protocols have to be written and followed precisely (if a computer calls you up and says hello, and you say “yo, ‘sup?” it will have no idea what to do, and will probably soil itself).

You, sitting at home, are a client (or, your computer is a “client computer”), and you use client applications all the time. You might be connected to the Internet, but you can’t get your e-mail without an e-mail client, you can’t surf the web without a web browser (another client application – or “app” as the cool kids says), and you can’t listen to streaming audio without some sort of a client app (like RealPlayer, which sucks, so you should get RealAlternative instead). The same is true with BitTorrent. You can download a torrent (which I’ll talk about in a bit), but your computer has no freakin’ clue what to do with it, unless you have a BitTorrent client app installed on your computer.

So, anyway, back in the Napster days, you’d connect to them (as would others), and they’d keep track of who had what files to share, and who was looking for what, and then they’d hook you up, and you’d happily share with each other. Sharing is good. One problem with this was it gave the RIAA (they were the asshole whiny kids who never shared anything) a central entity to sue the shit out of, which they did, and Napster had to go away (but it seems to be working out well for Apple, which supposedly doesn’t make any money off the overpriced songs you buy from them at crappy bitrates and locked into their technology – man, buy the damn CD and rip it to mp3 or Ogg, or even FLAC at whatever bitrate you want – but it sells a lot of iPods). A decentralized solution came about (I was a BearShare fan, myself, but there were other clients) that still made it possible for the RIAA to track who was sharing copyright protected material (which is, of course, bad, so you should never share anything but your own creations, or use it to get anything other than freeware and open source stuff). Of course, the problem with this was that you were still, in effect getting your file from one person (and others from you), so you needed to already have a complete copy of the file, and you were tying up your bandwidth and theirs quite a bit while you were sharing. Plus, the more people who wanted a given file the slower the download was – or you’d have to queue up and wait in line. Enter BitTorrent.

BitTorrent is designed to widely distribute large amounts of data without incurring the corresponding consumption in costly server and bandwidth resources. So, how the hell does it work?

The bittorrent protocol breaks the file into smaller fragments (like, 256 KB). The torrent file that you download is a small “pointer” file that includes: the filename, size, and the hash (kind of a checksum, so you know you’ve got the right little chunk, and not an imposter) of each block in the file, the address of a “tracker” (a tracker is a server that keeps track – get it? – of information about who’s sharing and stuff. Clients report information to the tracker periodically and in exchange receive information about other clients that they can connect to), and some other shit (“shit” and “stuff” are two technical terms that I tend to use interchangeably). So, anyway, if you don’t have a client app that knows what the hell this torrent file is, you aren’t going to get very far.

Anyhow, you and your friends out there on the on the Internet (“peers,” remember?) download missing pieces from each other and upload those that you (and they) already have to other peers that request them. So, way before you have all the pieces, you’re already sharing and playing nice with others, just like your mom told you you should. The BitTorrent protocol is “smart” enough to choose the peer with the best network connections for the pieces that it’s requesting. To increase the overall efficiency of the “swarm”(an “ad-hoc” P2P network temporarily created to distribute a particular file), the BitTorrent clients request from their peers the pieces that are most rare (those that are available on the least number of peers). These aren’t usually downloaded in sequential order and therefore (once you’ve got them all) they need to be reassembled. This is particularly useful for trading large files, and is in fact much better than conventional file serving (where high demand = busy servers = sloooooow downloads), because with BitTorrent, high demand can actually increase throughput as more bandwidth and additional “seeds” of the file become available to the group.

So, while you receive, you also give. In fact, the more you give the more you shall receive. And, once you have the whole file, as long as you leave your BitTorrent client up and running (that is, “seeding”), you’ll keep sharing (or you could be a pig and just shut it down right away and say “screw everybody ele,” but that’s not how you are, is it?).

If you want more information on BitTorrent, read Magoo’s Complete Guide to BitTorrent.

So, in order to be of any use, you need to do two things:

1) Download and install a BitTorrent client.
2) Find torrents to download.

    BitTorrent Clients:

There are quite a few BitTorrent clients out there, and I suggest you have a look at this BitTorrent client comparison on Wikipedia. Personally, I use a program called Azureus (named, of course, after the Blue Poison Dart frog Dendrobates azureus). Azureus runs on pretty much any OS (even OS X, saints be praised), because it’s written in JAVA. So, you need to have the appropriate JAVA Runtime Environment (JRE; don’t get scared, it’s just the thingie that makes JAVA go) installed on your computer. There’s a link to download the latest JRE right there on the Azureus download page. There are some cool plugins you can download, too, but you don’t really need them.

Whatever client you decide to go with, it probably comes with help and directions, and “how to” and all that. Now, I’m not much for reading the directions either, but you’d be surprised how much they can actually help, so you might want to give them a try. Just sayin’.

    Finding Torrents

OK, so you’ve got your client up and running, and now you need to find some torrents, damnit! First, a couple of things. While the BitTorrent protocol itself isn’t inherently dangerous, you will be downloading files from other people and running them on your computer. There are bad and stupid people out there, so take all the precautions you normally would (anti-virus, anti-spyware, trusted sources, read before you click, if you run an executable, watch out, etc.). If you think you’re not susceptible because you use a Mac, well, good luck with that.

Next, Morning Seditionists does not encourage the downloading or sharing of copyright protected content. Just thought I’d get that out there.

Now, where the hell do you find torrents. Google, of course, is a good way to find just about anything. Do a search for, oh, I dunno “marc maron show” torrent, and you’ll probably come up with something useful. Or you can go straight to places like MiniNova, ChomskyTorrents, ThePirateBay (you get the idea; there are lots of places), etc., and do the same search. You’ll tend to get better results with torrents that have more seeds (people with the complete file) than leechers (people trying to download, but don’t have all the pieces yet), and a newer one tends to be shared more than the older ones.

So, I hope that’s been of some help. There really isn’t anything difficult or mysterious about BitTorrent (well, not from the user’s perspective; Bram Cohen sure did a nice job thinkin’ this shit up, though), and there are lots of places to get more information (and probably better explanations, too). But it really beats the hell out of trying to e-mail large files back and forth. For instance, with Azreus (and others, no doubt), you can run your own private tracker, so if you want to share photos and home videos with grandma, you don’t have to screw with e-mail – of course, you have to get grandma hooked up with BitTorrent, but you’re an expert by now, right?

Any tips tricks, corrections, suggestions, feel free to comment below.

2 thoughts on “BitTorrent”

  1. travisdem_04

    :yawn:I have good news and I’ve got bad news. The good news is that I have the Marc Maron show. The Bad news is that I can’t put it on my minidisc player because of some formatting issues or something. My OpenMG Jukebox says this: “OMG only support raw audio of 2 channel, 44.1Khz and 16bit.” I have no idea what this means :doh: Is there any other way to convert the show to the mini:bow:

    Oh, and I’ve already thought about using this:jason: It just ain’t gonna cut it

Leave a Reply