As part of the research for a new product, I took a look at some existing P2P networks, specifically those networks using the BitTorrent technology. The entry below will provide you with a basic understanding of what you need in order to access and use existing P2P BitTorrent networks.
Safeguarding the test system
Before I got my hands dirty, I dug out my old PowerBook G4 laptop and created a new user account without system administration rights. I wanted to contain the risks to a computer that can be easily re-formatted, and to an account that has no personal data.
What is it?
What's BitTorrent? From Wikipedia: BitTorrent is the name of a peer-to-peer (P2P) file distribution client application, its related file sharing protocol, and a company that maintains these, BitTorrent Inc., all of which were created by programmer Bram Cohen. BitTorrent is designed to distribute large amounts of data widely without incurring the corresponding consumption in costly server and bandwidth resources.
There are various clients for the Mac, but I only looked at three different one during my research.
Installation of the programs is simple, but configuration of your network requires expert knowledge beyond the average computer user. The instructions in one of the programs said it best: "BitTorrent clients work best when running completely open to the Internet." Great advice! - NOT! While I am sure this is true as far as the BitTorrent client is concerned, it would not be wise to leave your PC directly connected to the internet without a router/firewall in place.
My home computers all run a software firewall, and they all sit behind a router with its own additional firewall. To make my little experiment work, I had to
- Assign a fix IP address to my PowerBook G4
- Open a port for UDP and DHT on my router and forward it to my G4 IP Address
- Tell the BitTorrent client which port number to use for its outside connection
Not a process that most computer users would feel conformable following.
Where is all of the content?
When it was all done, I had a client ready to receive or send files, but no list of files to download.
Note: a lot of the content on torrent sites are copyrighted materials. I do not copy nor use copyrighted content of any kind (music, video, movies, software, etc...).
After I found what I was looking for it came the long process to download the file. While BitTorrent technology is intended to make the download fast, I was only able to achieve a maximum speed of 60 kB/s, often much lowers . As a result, most of my downloads and uploads would take several hours, and even days to complete. Not a great user experience.
Usability wise, these clients are made for geeks, and intended to be used by geeks. Seeds, Peers, Swarm, Hash, Tracker, NAT, Vivaldi, Cache are all terms that are prominently featured in the UI. It makes it fascinating to watch if you a technology guy, but completely over-whelming and complicated for ordinary folks.
I got the file, now what?
Once the file was eventually downloaded I needed to figure out a proper way to play it. Many files were RAR encoded, which required an additional software to
decode it. You can use Gumby, UnRarX, StuffIt to properly unpack the file. In my case, about 20% of my downloads where corrupted and would refuse to unpack - major bummer after waiting multiple hours for the download to complete.
Once the file is unpacked, you will most likely need a new video player, or at least new codecs, to be able to play the file. To play most video files on my Mac, I use VLC, a great open source, multiple format video player (MPEG, MPEG-2, MPEG-4, DivX, mp3, ogg, AVI, DVD, VCD, ...)
Ironically, many of the downloaded files are intended for you to burn them to a CD or DVD. I don't know about you, but we are moving almost exclusively to a digital world in our house, and we are quickly abandoning all physical media. The thought of downloading a file on my Mac only to burn it back to a DVD to play it on a TV is arcane and backwards.
If you do want to burn the file back to a physical media, you need to use Roxio Toast - in this case, a commercial software.
The quality for most of the files that I tried was very poor, even though they were rated high by the community at large. Those people who have complained about iTunes TV show quality haven't really played around with Torrent files that much, iTunes videos are much better than the 10 different files I tried - your results may vary.
Overall, my early look into BitTorrent networks has proven frustrating, with poor quality content, even fewer legal content, a high technical barrier to entry, and an overall disconnected process involving multiple clients/tools/web sites in order to be experienced end-to-end.
For now at least, BitTorrent networks are the domains of the technology geeks; much must be done before this technology can be productized and used by regular computer users with any degree of success.