VOICE Home Page: http://www.os2voice.org
July 2001

[Newsletter Index]
[Previous Page] [Next Page]
[Features Index]


File Sharing on the Gnutella Network using LimeWire

By Frank Berke ©June 2001

Payware or Painware?

Many Napster users may have noticed over the past months that sharing files has become more and more difficult. Especially searching for popular chart breakers and famous artists has become a real pain. Moreover, Bertelsmann, who now owns Napster, is slowly turning it into a commercial direction, which means that sooner or later you'll have to pay for your music. Details are not out yet, but it is likely to become a mixture of free downloads (mostly unknown groups, i. e. newcomers) and commercial ones (all the hits you hear on radio or in the TV music channels). All this wouldn't be that problematic and I feel that many people around here are willing and able to pay a little fee to support the artists and to support good music.

However, Bertelsmann joined the current hype about protecting the 'intellectual property' of its clients, and it is more than likely that the songs you download from Napster once it has turned fully commercial, aren't 'pure' MP3s: probably you'll need a special player for it, you can't make wave files from it in order to burn a CD for your car, you can be tracked down if you allow copying of the files, and so on.


Personally, I don't think this is attractive to me, so I sought out alternatives, and luckily, there are a few out there. Over the past 2 years, a new concept of sharing files over the Internet has become popular, namely P2P, or Person to Person. The concept behind it is quite simple: in order to share files you don't need a centralized model like Napster, you can simply build something that resembles of Peer Networks in a local LAN. There are several different flavors of P2P models, all of which don't run in OS/2 - except for the probably most popular one, Gnutella.

Actually, OS/2 users benefit from the cross-platform strategy of many developers, so they can use Java programs which give them access to the Gnutella Network, or more frequently referred to as gNet. Using such a 'Java program', you turn your PC into a server, which means that, according to the Peer philosophy, you act as server and client at the same time.

Limewire - general

A very good, if not one of the more popular clients to access gNet is LimeWire, which is developed by an US American company called LimeWire LLC. I have used LimeWire since version 1.2, and with 1.4 being their latest release now, the LimeWire people constantly managed to improve their software - visibly and invisibly. The main advantage of the Java implementation of LimeWire is that it is available on any platform with at least a 1.1.8 runtime, so if you have to switch operating systems for any reason, you will have exactly the same LimeWire client available. For the most popular platforms, LimeWire offers separate installers, you will find them on their download site.

In fact, compared to other Gnutella servers, LimeWire has a very sophisticated user interface, which luckily has no negative impact on its overall performance. Though its look and feel is very different from what one might be used to, it is intuitive to use and even without reading the very good help files (which aren't part of the distribution, so you have to go online to view them) you instantly know what to do with the software.

LimeWire - appearance and use

The LimeWire main window is structured by five tabs, each of which offers access to the most needed functions during a client session. There is, however, an advanced Options dialog, which covers the not so often needed settings.

By starting LimeWire, you will find yourself in the Search tab by default, and you could start your searches almost instantly, when LimeWire is connected. It automatically connects to the LimeWire router (the reason why this is important I will explain later). You can see your connection status by observing the dot in the lower left corner: if you're connected, it's green, otherwise it's red, and even the button beneath it will change its function and say either Connect or Disconnect. The Connections tab will give you even more details about your connection status.

If you want to specify your searches, and get better results, I recommend opening the Community tab and pick either a certain content, e. g. 'Video', or (in case you're running into troubles with download speed), pick a region, e. g. Europe. Then, click on the connect button, and wait for LimeWire to connect to the appropriate group. This may take a while, but after LimeWire has discovered enough hosts, you should get better results. Personally, I'd like to connect to a group specified by TWO parameters: content and region. Hopefully, LimeWire will add this to a future release of the server.

Going back to the Search tab, you have to specify again what type of data you're searching for - IMHO LimeWire should change the standard search type according to the group you're connected to. It's possible, though, to search for images or sound in a video group, but it doesn't make much sense. You can start multiple search requests at a time, each of which shows up behind a new tab on top of the area where the search results are displayed. LimeWire allows you to group the results just by clicking on the descriptors, to easily give you an overview in alphabetically order, or list it according to the connection speed of its current owner. Double-clicking on a result starts the download - you can view the status of your downloads in the downloads section, which should be visible underneath the results section. If you can't see it: the sizes are customizable. To change the font size grab the dotted bar between them with your mouse.

Like Napster, you can browse other hosts and discover what you didn't even think of... I often got inspired to download more than I actually wanted, especially when I found a fast host.

A very useful feature, however, is the grouping function - Grouping is enabled by default, if it isn't you have to click the according checkbox. So what's it good for? With Grouping enabled, LimeWire automatically groups similar files, which has two important advantages. First, you won't have to scroll through even more results (there can be a whole lot, believe me), and secondly, LimeWire will handle these grouped files differently when you chose to download them. You need to highlight the group by clicking on it, and selecting 'Download ANY', LimeWire will try them all, starting with the highest quality down to the lowest. The chances that at least one of the hosts will respond is much higher, because LimeWire goes through the list several times, hoping that it can establish a connection even if the first attempts failed. The 'Download ALL' button will initiate downloads from ALL of the servers at the same time, and stop if any of the downloads has completed. This so-called 'Smart Download' feature of LimeWire may not work for everyone, but you should try it out at least and find out if you can achieve better download rates with it.

New with version 1.4 are the stars that appear with each search result. Guess what they do? Right, they tell you which download will most likely succeed (4 stars), and which will most likely fail, or be incredibly slow (1 star). It is, of course, possible to sort the star rankings by the number of stars they received. However, as with any such mechanism, this one can fail as well. If you desperately need a certain file, which is provided by a 33.6 modem user with only one star - just give it a try. It is astonishing how often this works, while those with 4 stars fail.

What LimeWire doesn't provide yet is a decent mechanism for resuming previous downloads. Many Napster clients (even Warpster by Brian Havard) allow resume of files even if the first part was downloaded from another host. LimeWire can do so if you use the SmartDownload feature, but there is no guarantee that it will work. It either decides to resume, or... to overwrite the previous download. This is particularly bad if you have decided to get a big one, like a video for instance. Whenever you get disconnected, or have to disconnect (most people in Europe still use expensive dial-up connections!) it's a matter of pure luck if the resume succeeds. Unless you have a really fast connection, I don't recommend attempting to download complete movies from gNet.

Searching gNet, it is quite likely that you don't get as many, or as good a result as you may have hoped for. This can be for several reasons. First, you should try to be more accurate in your search requests - i. e. provide more information to the search engine: it will return fewer results, but most often they will better match your preferences. If you have no idea how to do so, go to the monitor window, enable monitoring (default: off) by clicking on the checkbox and you can learn from other people's requests. Also, in the monitor tab you will also see what is uploaded by your server to other people on gNet. Similar to downloads, you can kill an upload by right-clicking the particular file or selection and choose from the context menu.

The least important tab, in my opinion, is the Library tab. This window provides an overview of the files you're currently sharing on gNet, grouped by the folders they're in (and which you have chosen to be visible to others). All you can do is to delete certain file from the sharing list, but since LimeWire scans the given directories anew at startup, you'd better move files you don't want to be spread over gNet (family photos, for instance) into a separate directory. But be aware that LimeWire is also capable of including subdirectories of a shared directory!

The last thing you should learn about is the 'Options' dialogue.Here you can provide information for LimeWire on lots of not so frequently used settings. In the 'Sharing' tab you can set and remove directories you want to share on gNet, moreover it is possible to limit file sharing to certain file extensions, like doc, html, mp3, jpg, etc. In OS/2 this will be problematic for people who tend to saving their files without extensions, since OS/2 can determine a file type in other ways than minor operating systems. Frankly speaking: files you want to share need an extension.

According to the speed of your internet connection you should also have a look at the 'Downloads' and 'Uploads' tabs - the default values seem inappropriate to me, at least for modem users, as am I.

For some people also important is the 'Filters' section. This might apply to those who have children using LimeWire (OK, I'm sure most kids will figure out sooner or later, especially if they read the VOICE Newsletter ;-). Not only can you check the 'Ignore adult content' button, it is even possible to add a personalized set of filters - or more exactly, to tell LimeWire to ignore certain results. This one really works pretty well, but as always, you should test it yourself. Per default, LimeWire allows adult contents, of course.


Gnutella is not to replace Napster... not yet. On the one hand it offers so much more, but on the other it suffers from lower speed and very, very low download success rates. Even the official LimeWire statistics says it is only 25%, but has improved from 10% in late 2000. With LimeWire, or any other Gnutella client, you have one client for all future needs, since it is not limited to a certain file type like Napster. In a single session you can download a video, a chicken recipe, and an MP3 file without the need to start another application. Moreover, Gnutella is anonymous. You don't have to register anywhere, nor do you have to log in when you connect to gNet. No one knows you are there, until you start a download, of course. Then, and only then, you make your IP address available to the host you're downloading from.

Napster may still provide better results, since it is limited to MP3s. Especially for rare / old songs, which aren't covered by the filters Napster had to implement in order to prevent sharing of popular music, this may still be your primary source.

But unlike Napster and any other centralized file sharing protocol, Gnutella is not owned by a company, nor can it be put down, because it is formed by thousands of individual servers. Any programmer can write her/his own Gnutella client, since the protocol is freely available. However, it can be improved, and there is definitely a need to do so: for this purpose, the leaders of the Gnutella community created the Gnutella Development Forum, which aims at improving the Gnutella protocol.

To explain what these improvements will be and what they mean to you as a normal user of gNet can't be explained without some further knowledge of gNet, its technique, its development, and its specific problems. These items will be subject of a followup article.

Gnutella: http://www.google.de/search?q=gnutella&hl=de&meta=
Limewire: http://www.limewire.com
Download: http://www.limewire.com/index.jsp/download
Documentation: http://www.limewire.com/index.jsp/userguide
Napster: http://www.napster.com
Warpster: http://silk.apana.org.au/warpster/

[Previous Page ] [Index] [Next Page ]
VOICE Homepage: http://www.os2voice.org