An Introduction to BitTorrent Clients Part 2

A month ago I performed a comparison between Azureus and uTorrent that tried to answer the question of which client is better. If you read it you would have noticed that I came to the conclusion that both clients were about equal with Azureus having more features while uTorrent consumed less resources. When I performed that test I only tested by downloading a 3GB Linux ISO with an older computer with only 512MB of ram. This time around I plan on testing 3 different files, and then running both programs simultaneously and separately. Hopefully this will be thorough enough to satisfy you, the reader, yet not be an information overload.

Test Bed

I always thought the phrase “test bed” was a funny term. Either way, here are the specs for this test bed.

  • Processor: AMD Athlon 64 3200+ Winchester @ 2800MHz–280MHzx10
  • Motherboard: MSI K8N Neo2 Platinum
  • Memory: 2×512MB OCZ PC3200 Platinum Rev.2 @ 280MHz–2.5-4-3-6-1T
  • Video Card: ATi x700Pro 256MB
  • Storage: Seagate 7200.9 300GB 8MB Buffer

Compared to my previous test bed this computer excels in all fields which will hopefully remove the computer from this equation. I will be running my tests on a fully patched Windows XP with Service Pack 2 with most of my extraneous programs killed and running the minimum amount of processes. Here is a shot of the task manager showing the idle settings.

The Connection

I ran three bandwidth tests from three different websites to show a broad range of what my connection was capable of. The first entry came from dslreports.com, the second entry from speakeasy.net, and the third test from bandwidthplace.com. As you can see from the results, my bandwidth is all over the place with the download ranging from 33mbps to 3mbps. My only explanation for this would be the location of the servers with the speakeasy.net server being the only server located within Atlanta. Either way, the connection is very capable of handling whatever Bittorrent will be throwing at it. I think all the hardware has been covered, let�s review the software.

Azureus

Of the three clients I am testing today, Azureus is definitely the heavy-weight. Since Azureus requires the Java Runtime Environment and the installation package, the combined download weighs in at 14.7MB. However since most computers should have the JRE already installed, installing Azureus should consist of just downloading the installation package. The JRE can be found here and the Azureus Installer can be found here. Once both applications are installed you can start configuring Azureus.

In Azureus I configured the client in a fashion that I would normally use it. I set both the download and upload limits to unlimited, set the cache to 32MB, set the GUI to update every 5 seconds, and enabled the RC4 encryption with support for legacy connections. I then installed the Safepeer plug-in that adds most suspicious IP blocks to the IP blacklist. Once all these settings were enabled I restarted Azureus to ensure that these settings were enabled. I am sure there are many other options that can be configured within Azureus but these are the only settings that I worry about that give me decent security and performance. I highly suggest using the disk cache feature and bumping it up a bit, I usually set the cache between 32MB and 64MB and I find it to be very effective on keeping Azureus from writing/reading to the hard disk more than necessary.

uTorrent

uTorrent is a solid program with a tiny memory footprint and a very portable nature. For this test I am using the 1.5.1 Build 462 beta executable which features an adjustable disk cache. Weighing in at 169KB, uTorrent is definitely a tiny program, downloaded almost before I clicked the link. The great thing about uTorrent is that you don’t need to install anything, the executable is completely contained making upgrades very easy. This also opens up the possibility of taking this program with you on a thumb drive and saving your torrents to the thumb drive if the files are small enough.

I configured uTorrent with nearly the same setting as Azureus. I set the upload/download to unlimited, randomized the port for each load, enabled encryption, set the cache to 32MB, and set the GUI update to 5 seconds. The only difference between Azureus and uTorrent would be the random port selection, theoretically this helps with security. Once all the settings were saved I closed down uTorrent and then re-opened it to ensure that everything was saved.

Official Bittorrent Client

I have tried and tried to get the download link to work for me but no matter what I do I can’t get the downloads to work from the official website. The only other file I can find is the version 3.3 which is nearly 2 years old and therefore obsolete. If I can get the v4.4.1 working then I will include it in this review, otherwise it will receive an honorable mention.

The Torrents

Unlike the previous test in which I only tested a 3GB Linux ISO, this time I will test 3 file sizes. Here is a small disclaimer, I don’t condone piracy however I couldn’t think of a file that was around 100MB in size and heavily seeded so don’t sue me over this, I don’t even like Pearl Jam. With that said the first file I will test will be Pearl Jam’s self title album. I used TorrentBox.com to pick up the Pearl Jam torrent. I then switched over to LinuxTracker.org and picked up a 3.5GB Suse Linux DVD and a 640MB Debian Linux CD. I figured that a good portion of the files downloaded would fall near one of these brackets so hopefully this will provide enough variety for this test. If there is a desire for the torrent files to perform your own test I can possibly host the files or post the individual links. With that said, let�s begin some tests.

The Test

I started these tests with uTorrent and followed with Azureus. Starting with the smallest file size and alternating till I had gone through 6 tests. Then I ran both programs at the same time starting with the smallest file and ending with the largest. With this much redundancy I am hoping that I can remove things such as network activity and temporarily lulls in seeders. In regards to seeders I tried to find torrents with 1000 or more seeders to ensure the file would complete quickly. With all that said, here are the results.

Test 1: Pearl Jam

I started these tests with the Pearl Jam CD using uTorrent. During the entire download CPU usage fluctuated between 0% and 2% and memory usage peaking around 11MB. The download for uTorrent hovered around 155KB/s while the upload speed around 35KB/s and the total download time of 12:56. Once the uTorrent download was complete I started up Azureus with the same torrent. During the download CPU usage fluctuated between 0% and 2% while memory usage shot straight to 140MB and stayed there. The download for Azureus quickly rose to 160KB/s and the upload hovered around 30KB/s with a total download time of 11:07. With both downloads complete, it was time to test them simultaneously. The hope of this test would be to remove all error from the network. In the simultaneous testing the CPU and memory utilizations stayed the same for both programs however the download times changed. uTorrent took 12:23 while Azureus took 14:21. In this case both clients were downloading from a similar amount of seeders and leachers so I don’t know what to say about the differences in the results other than perhaps the error came from not downloading from the same computers.

Test 2: Debian ISO

With the first test complete I moved on to the 625MB Debian test. Since this is a Linux ISO the seeds were very strong with many MBps of available bandwidth. Once uTorrent was loaded up the download shot off like a rocket. CPU usage hovered around 7% while memory usage peaked at 7MB. I don’t know what caused the memory to peak lower than the previous test, nothing had changed besides the actual torrent. The download peaked around 2.1MB/s with the average around 2MB/s while the upload never cresting above 10KB/s. This was a very fast download completing in 6:13 for 625MB. With uTorrent completed I fired up Azureus and completed the same test. With Azureus CPU usage was considerably higher at 11-13% and memory usage peaking around 140MB again. The download peaked around 2.25MB/s with the average around 2.1MB/s and the upload solidly at 0KB/s. The total download time was a quick 5:30. With the single tests complete I then ran the second simultaneous test. Once again these results were very different than the single client tests. Azureus completed the download in 7:56 while uTorrent finished in 10:19. Once again I can’t explain why the times vary by such a great time, then again we are talking about downloading 625MB so it wasn�t exactly bad.

Test 3: Suse ISO

This final test proved to be the most interesting and mind numbing. With uTorrent up and running and no dedicated seeds my download rate was jumping all over the place. CPU usage stayed around 8% but memory usage jumped up to 38MB which is probably due to the 280kb torrent file. The download speed peaked at a decent 1.9MB/s with the average around 1.3MB/s and the upload sitting around 90KB/s. The total download time ended up being a hefty 45:49. Once again with Azureus the CPU usage was around 9% and the ram fluctuated around 140MB. However in regards to the download speeds they were way off. The peak download was around 1.3MB/s while the average download was low at 800KB/s. I don’t know what was wrong with this download, perhaps the simultaneous results will be better. The entire download took 1:37:18 which took literally forever. However if I thought this Azureus download was long, the simultaneous downloads were even worse. uTorrent kept the same vital signs with the download averaging around 1.3MB/s with a download time of 59:42. However the same can’t be said for Azureus. While the resources stayed on par with the previous entries, the download crept along at 350KB/s while taking nearly 4 hours to complete. Even when uTorrent had finished downloading the Azureus download never picked up speed so once again I am stumped.

Observations

When performing these tests I noticed a few peculiar actions that occurred during the test. While the applications never consumed more resources than specified, on the high-speed downloads system memory would drop from about 650MB available down to around 150MB. In the previous test I noticed the same occurrence with Windows consuming 490MB of the 512MB of memory I had available in the previous computer. I can only guess that there is some sort of caching tool for the hard drive read/write process. While my drives didn’t sound like the heads were thrashing round, they definitely weren’t silent so there was disk activity. If that isn’t the issue then perhaps there was an issue with the Ethernet queue. Either way when the client was accepting a large volume of data the system memory would disappear.

I also noticed that in a couple of instances that uTorrent would take up to 4 minutes for the download to initialize. Even by manually updating the tracker uTorrent would still seem to stall out and then slowly begin to connect to seeders and leachers. Azureus never had this trouble however in many instances Azureus was considerably slower which isn’t understandable. I do believe that in the two smaller instances Azureus was faster because it had a few minutes head start due to uTorrents stalling.

Conclusion

Once again I arrive at the same conclusion with these two clients. One client has a large list of features and the ability to support plug-ins while the other client specializes in leaving a small memory footprint while provided a quick and easy experience. If you have spare system memory then you probably won�t notice the hit however if you run any processor and memory intensive programs then you will definitely feel the pinch. No matter what though, comparing Azureus to uTorrent would be like comparing a tangerine to an orange. While both applications perform the same function, they do it in slightly different ways. Pick the client that fits your needs and you will be happy. I think that puts this argument to rest, let me know if there is something you would like to see performed.

If you enjoyed this, please Digg me here!

The Buzz {3 trackbacks/pingbacks}

  1. Pingback: Opera 9, another choice. at Gomeler.com on June 20, 2006
  2. Pingback: jdboss.co.uk » Blog Archive » Opera 9, another choice. on December 16, 2006
  3. Pingback: jdboss.co.uk » Blog Archive » Opera 9 on December 16, 2006

The Conversation {11 comments}

  1. Chris Morrell {Friday June 2, 2006 @ 3:16 am}

    It has come to my attention that my downloading of the Pearl Jam CD as data for my analysis has come under fire from a few people. Let me reiterate what I said above. I don’t condone piracy, I in no way, shape, or form will use this website to promote acts of piracy and no I don’t want a phone call or email from the MPAA/RIAA. I searched for a linux distribution that was both available as a torrent, under 100MB, and had over 1000 seeders and leachers and I couldn’t find a single file. With no available Linux ISO I turned to the file sharing industry for a file and this was one of the most heavily seeded files at the time of my tests. I’m sorry that people get strung out over the fact that I used a CD to perform this test, if you can point me out to a file that meets my criteria I will re-test the clients with that file instead. Thanks for reading and please come back around.

  2. Ahmer {Monday June 5, 2006 @ 8:04 am}

    “I searched for a linux distribution that was both available as a torrent, under 100MB, and had over 1000 seeders and leachers and I couldn’t find a single file.”

    What about Damn Small Linux (DSL)

    Congrats on the 9Rules acceptance! You really deserve it!

  3. Chris Morrell {Monday June 5, 2006 @ 8:18 am}

    I checked out the DSL distros and none of the torrents I could find had enough seeders and leachers to push out enough bandwidth, the downloads would just trickle in.

  4. lars koudal {Tuesday June 6, 2006 @ 12:26 am}

    Interesting post with good explanations and stats. For now I will stick with Azureus, since I have more than enough of ram on my trusty laptop, but if the need comes, I will update to uTorrent.

    Congratulations on the 9Rules acceptance!

  5. Robert {Monday August 14, 2006 @ 8:46 am}

    I had a heck of a time trying to find a bittorrent client that made me happy. Amazingly, I didn’t try uTorrent until I almost gave up and that was the winner. Even with a mass of RAM, I was stunned at how Azureus would slow me down. With uTorrent, I barely feel like the program is open, and with a little tweaking, it barely affects my browsing abilities.

    Definately a uTorrent guy here.

  6. Quintin Riis {Tuesday November 14, 2006 @ 8:31 pm}

    “only” 512m of ram.

    kids these days.

  7. ramona {Thursday May 3, 2007 @ 4:55 pm}

    I used to use Azureus then switched to uTorrent because of memory problems. I still have the same memory issues with uTorrent but I prefer it.

  8. Oscar {Saturday August 11, 2007 @ 4:40 pm}

    Damn!! I Really apreciate the job you have DONE =) So much thanks to you.

    Really apreciate it :)

  9. Cheap cat supplies {Monday November 16, 2009 @ 2:29 pm}

    Great article gomeler. Im new to all this bittorrent stuff and appreciate the in depth look.

  10. Teach Yourself Violin {Wednesday December 16, 2009 @ 10:47 am}

    Thanks for the great bittorrent article.

  11. iphone fix {Tuesday January 5, 2010 @ 10:38 am}

    I had a terrible time trying to find a BitTorrent client that made me happy. Surprisingly I have not tried uTorrent, until I almost gave up and was the winner. Even with a lot of RAM, I was amazed how Azureus Slow Me Down. With uTorrent, I feel like the program is open, and with a little tweaking, it almost does not affect my browsing capabilities.

Speak Your Mind

  • Comment Policy: No flaming unless directed at the author for good reason. All other flaming will be turned into a comment about ponies and rollerskates.