Frequently Asked Questions:
Q: What is Gnutella?
A: Gnutella is one of the more popular peer-to-peer file-sharing protocols which emerged in the wake of Napster. Many popular peer-to-peer clients, such as Limewire, Gnucleus, and BearShare, use the Gnutella protocol. The Gnutella network is decentralized; there are no central servers but rather a web of interconnected client computers.
While Gnutella has mostly been used to swap music, it can (and is) used to transfer almost any kind of data. The framers of the protocol had (and still have) much more lofty visions in mind; if you're curious, you may wish to look at: http://www.limewire.com/index.jsp/manifesto.
Q: What is Auralization?
A: Auralization (also called sonification or audification) is the representation of data through sound. An airplane cockpit may give pilots aural feedback on the readings of gauges so that they may track them while using their eyes for other tasks. A biologist may auralize seven-dimensional experimental data using pitch, volume, timbre, and other qualities of sound in order to aurally grasp a space which has too many dimensions to construct visually. Or a computer programmer may use an aural debugger to continuously track the values of several different variables while testing a program.
For more information on the field, visit http://www.icad.org, the website for the International Community for Auditory Display.
Q: What is Network Auralization?
A: Network auralization is the use of auralization techniques to monitor computer network information. Its practical application is for network administrators who must continuously monitor the health of their corporate networks. While vital network statistics could be represented visually, network auralization permits administrators to listen in the background while their eyes help them do other tasks.
Q: Why auralize network data from the Gnutella network?
A: For two reasons. First, the decentralized structure of the Gnutella network makes it fascinating to observe. Second, most of the data transfered over the Gnutella network is audio data, meaning that the data itself can be rendered directly as sound. (In most other cases, auralization techniques translate data values into unrelated sound characteristics.)
Q: How exactly does the auralization algorithm work?
A: N.A.G. continuously checks the status of all downloading songs and calculates the data throughput of each. It then uses a weighted randomization algorithm to pick a "winner" for each cycle; the higher the data throughput of a song, the more likely it is to win. The winning song is then played (if it is not already playing).
Depending on user settings, N.A.G. often plays multiple songs at a time. In this case, N.A.G. will play the songs which have most recently won.
Q: Why doesn't N.A.G. just literally play the bits as the come through the network?
A: This was my initial plan in developing N.A.G., but as I began to write the software, some practical and conceptual problems forced me to reconsider. First, the rate at which data is received varies significantly; sometimes, far more bits of data are received per second than can be played, while sometimes not enough bits of data arrive to fill the time. I wanted users to at least have the option of hearing continuous sound.
Second, and more importantly, I wanted to give users control over many different parameters of the auralization algorithm. Simply playing the bits in the order received would have left little room for variations controlled by user interaction.
Q: I hear audio dropouts, sudden changes in volume, and/or loud clicks in the sound. What's wrong?
A: N.A.G. requires a lot of CPU power, hard disk access, and memory to work well. If you have an older machine, or if you are running other programs at the same time as N.A.G., audio quality may suffer. First, try quitting all other applications. You can also lower the maximum number of songs N.A.G. will play at once (on the "Mix" tab) and the maximum number of songs N.A.G. will download at once (on the "Network" tab).
Q: I did a keyword search and no results were found. What's wrong?
A: First, be patient. Because the Gnutella network is decentralized, it can take a while (as long as a minute!) for search results to come back. Second, try again. Because the makeup of the Gnutella network is constantly changing, the same search query often yields very different results when sent a second time. If your search term still yields no results after repeated attempts, then you should try a less specific search.
Q: I did a keyword search and results came back which don't seem to relate to my search words at all. What's wrong?
A: Nothing is wrong. Individual Gnutella clients have different criteria for finding matches to search keywords. They may examine MP3 tags which N.A.G. does not display (such as album names). They may count approximate matches (in which only a portion of the word matches) as sufficient. Or they may maliciously provide you with results that have no connection to your keyword search. It's all part of the chaos and fascination of a decentralized network such as Gnutella.
Q: Why don't you support Mac OS 9, Linux, or Windows 95/98/ME?
A: There are several technical aspects of the implementation of N.A.G. which would have made it difficult to port to these platforms. I have limited time and resources, and so chose to create a better, more feature-rich program which runs on the most popular current operating systems, rather than create an inferior program compatible with older operating systems as well.