My Experiences

This page is a documentation of my experiences with a number of P2P programs. The programs I will discuss all make use of Gnutella as the backbone network for sharing.

By the way before loading any of this code be suspicious of the adware/spyware content of the code. Research the code before installing!!! You can read more about spyware.

Common Points of Concern

There are a number of common concerns that come up wihen using P2P programs:

Hashing of files (The plague)

Files get corrupted in transit. Sometimes people share incomplete files. Sometimes people choose to make changes to files. To combat against this programs make a hash code. This is a numeric check of the file that can be generated to attempt to find out: Good intentions but hashing can be procesor intensive to generate. Additionally there are two different types of hashes on Gnutella (maybe more). SHA1 and Bitprint. So there ends up being three combinations for a program to deal with No Hash, SHA1 hash and Bitprint HASH. It gets even worse if the program supports both. Why do you care. Well if the file has no HASH, or a different hash then the file is considered to be different. This means there will end up being a number of different offerings of the same file. So the program will not continue from a file that is different and it will also not get from multiple sources files that are different. Net result while hashing has good intentions it makes life very difficult, time consuming and bandwidth intensive to get a complete large file. Especially in a network made up of machines that turn off frequently when it can take quite sometime to download say a movie of 700MB.

Ultrapeer

Distributed networks such as Gnutella rely on special nodes called ultrapeer to form the basis of the network. The network needs Ultrapeers. Most P2P programs assume you would want to be an Ultrapeer. While it would be nice if you can not control it becoming an Ultrapeer can chew up large amounts of your bandwidth.

Program Stability

There are a number of reasons why program stability is of concern. The bvious one is you really don't want your machine crashing of having memory leaks. The unobvious one is that it can take up to a day to get into the queue of busy servers and finally begin to download. Some programs are so stupid they allow outrageous numbers of files to be queued. This on a machine that will more often than not get turned off before even a single movie might be finished. So after waiting a day in a queue having the program crash and get back in that Q is very frustrating. When you are getting files from MIRC for example you can shut down, and reboot and as long as your machine is back up and running before the download starts your still in the queue. For whatever reason this does not seem to be the case in P2P. Shutdown the program, and your back at then end of the queue. Waiting yet again.

Partial files the main plague of P2P

P2P is great for finding files, but for large files it can be difficult to get the file completed. As described above hashing makes this even worse. The net result is that you get a lot of half completed partial files. Finding way to manage your partials, and manage the queue of files you have requested is a challenge you will need to address. You can often get decent download speeds only yot have the end user shut down and never come back. This can make the partial directory become quite large and unmanagemeable.

Shareaza V1.9.9.2

Good program, no Adware. Excellent control of bandwidth for ultrapeer excellent control of upload.download bandwidth. Initial settings of this program are odd at best Go through each and make up your own mid. For example the prorgram limtis the number of files to download at once etc. Odd. Program for me was unstable crashing at least once a day. Hashing is good in that it supports only SHA1 and you you can choose to have the program be liberal in how it uses hashes. The switch called Hassh integreity control this.

If Hash Integrity is OFF:
Two files are equal if they have the same name and length, or if both have a SHA1 value and the SHA1's are equal.

If Hash Integrity is ON:
Two files are equal IF they both have SHA1's and those SHA1s are the same, OR, if neither have SHA1s but they have the same name and size.

You can not control how much processor the Hashing uses. The program without asking shares out the program itself. Not a big deal. It does show you it is doing so.

Program seems to be the worst and slowest at finding files.

Gnucleus

Program is open source so should be free from adware/spyware. Biggest negatives are:

Limewire (Adware Java)

This program uses Java so as such requires you to load Java Runtime Environment. The initial code you download is small but it is misleading because the programs imply connects and downloads the remaining peices of the code. The program is adware bigtime. Not as bad as Kazaa. Kazaa's website is so bad you don't even escape from there without realizing how much it is Adware. Limewire added 4 icons onto my desktop, asked it was ok to install Limeshop, which I refused and it installed it anyway. This program is VERY slow to do finds. It also severely limits the number of hosts you can connect to, which in effect limits the effectivenes of your searches. Like all Java based programs it is a pig from a processor and memory point of view.

Morpheus (Adware, Java)

Java program so likes processor and memory. Pretty good searching. No ability to control the location of the temp directory. Goes into the program directory.

Kazaalite (Adware)

Good program supported by ads. Search is one of the worst. Limits the searchs to 200 results, filtering is poor, and search runs once and does not refresh. You can only have one active search at a time. That said if you can find the file you want the program works well. Seems pretty stable. Program allows you to find more files shared by the same user so if you find someone with a good bandwidth you can see what else he is offering. A unique feature. Processor and memory utilization is reasonable. Ad can easily be blocked by Spystopper. Program is missing a total bandwidth meter. User interface is well done. By the way Kazaalite is a hack of Kazaa.

Kazaa

Kazaa is one of the worst most invasive most objectionable peices of code I have heard of in a long time. Stay away from it like the plague. Read more about Kazaa's haneous code and more here and finally here. Here is the text from their EULA:

You hereby grant BDE (Brilliant Digital Entertainment) the right to access the unused computing power and storage space on your computer/s and/or internet access or bandwidth for the aggregation of content and use in distributed computing. The user acknowledges and authorizes this use without the right of compensation.

Winmx (Adware, Spyware)

Mild spyware, seems stable. Good search results. Bad screen handling. Very tenacious program will try everything possible. It will re-search automatically lookiing for additional sources.

So my favs are: