oreilly.comSafari Books Online.Conferences.
Articles Radar Books  

Gnutella: Alive, Well, and Changing Fast
Pages: 1, 2

Download Failure

Download failure looms as one of the most serious problems according to many. Although attractive search results may come back, they are useless if the associated files cannot be downloaded. Quantitative study of the problem is complicated since users have preferences in the files they download and upload. Since all files are not equal, there is much room for inaccuracy in the results of any test that assumes otherwise. Nonetheless, there is a preponderance of perception that downloads fail too often, particularly relative to other peer-to-peer file-sharing systems.

Spurred by an August 2000 paper by Eytan Adar and Bernardo Huberman of Xerox PARC, there is belief that "freeloading" - users downloading much more than they upload - is a major source of the download failure problem, although the critical ratio of supply and demand is anyone's guess. The response to commentator Clay Shirky's counterpoint that "bandwidth over time is infinite" is that the server bandwidth available to users who want to download a file right now is too finite.

Developers are taking two major actions:

  1. removing as much friction as possible from the upload process, such as defaulting a user's upload directory to be his download directory; and
  2. blocking uploads to users who are not themselves uploading.
Web sites such as Gnute and Gnutella.it allow users to search and download from the Gnutella network without providing a direct means of contributing files back into the network. Seizing on this asymmetry, recent versions of LimeWire and BearShare have taken the offensive of denying download requests from Web site users. Instead of the file, the user finds a suggestion to download LimeWire or BearShare. The next step in this evolution may be to prioritize download requests even among users of these applications based on how much they have uploaded or made available for upload. The situation begins to resemble the model of Mojo Nation, in which downloading has a cost that is payable by providing resources back into the community. An alternative approach that might potentially be effective would be to not advertise a file -- not respond to a query for it -- so long as there is no bandwidth available to serve the file.

"Busy signals" are not the only possible cause for download failure. Hosts may be unreachable due to firewalls or intervening network address translation devices, applications may be buggy or incompatible, hosts may go offline or change their content between the point of advertising a file and the point of receiving a download request, and so on. A mechanism that enabled hosts to verify each other's ability to upload any file would address some of these issues.

Related Articles:

In Praise of Freeloaders

P2P Directory

Mojo Nation Responds

Open-Source Roundtable: Free Riding on Gnutella With audio

Gnutella and Freenet Represent True Technological Innovation

Remaking the Peer-to-Peer Meme

More from the OpenP2P.com

What Next?

"What next?" is a fitting conclusion, for it is a problem that looms over Gnutella's future. Non-compliant implementations, connectivity, a lack of search results, download failure - these are all nuts-and-bolts problems with Gnutella. Sorting them out is necessary for Gnutella to meet commonly held basic expectations of it as a usable, public, decentralized file-sharing system. What happens when these core issues are sufficiently resolved?

The answer is that users spur developers to push on to new features. But which features? The trouble of "What's next?" is the contentious issue of agreeing on what problems need to be solved. Some aspire to see Gnutella be more scalable or more secure. Some want the system to be more anonymous, some want it to be less. Some hope it becomes a more generalized distributed search medium and grow beyond its file-sharing origins. Some imagine other applications riding upon it, even commerce. It seems there is no end to the expectations.

Unfortunately, Gnutella has a history of aborted, failed or poorly supported attempts to unite developers; the analogy of herding cats has rarely been so apt. One of the most notable efforts -- Gnutella Next Generation -- never significantly advanced beyond the proposal stage. Media reports have confused a spin-off effort known as gPulp as a Gnutella organization, but as the principal behind it has recently stated, "We are not a working group on Gnutella."

As of this writing, then, there is no clear leader in terms of a working group or other form of organization. There is, however, one arbiter of innovations: the market. Gnutella developers who have experimented with "improvements" that run counter to, outsid, or in between the lines of the de facto protocol have been kept in check by the fact that their applications must be able to communicate with those produced by other developers.

When the developer of an application known as Gnotella wanted to place more information in search-response messages than existing protocol specifications called for, he made sure he did it in a way that could still be passed on by the original Gnutella application, which was dominant in terms of user base at the time. Some other applications regarded Gnotella's search responses as noncompliant and dropped or otherwise "mishandled" the messages. The ability of Gnotella users to respond to queries was impaired, but the degree of impairment depended on the popularity of applications that regarded Gnotella as noncompliant. This story is being repeated with BearShare, which has recently released a version that also places extra information in search responses.

Will this market-driven pattern continue, so that Gnutella evolves in a competitive, Darwinian, decentralized and bottom-up manner? Or will it "grow up" and follow the trajectory of many other protocols, evolving through top-down committee processes? Only time will tell.

Kelly Truelove is an independent research analyst who, via Truelove Research, covers peer-to-peer technology with a focus on P2P content search, storage, and distribution networks. He is regarded as a leading expert on consumer file-sharing systems, which he covers with a data-driven approach.

Discuss this article in the O'Reilly Network General Forum.

Return to the P2P DevCenter.


P2P Weblogs

Richard Koman Richard Koman's Weblog
Supreme Court Decides Unanimously Against Grokster
Updating as we go. Supremes have ruled 9-0 in favor of the studios in MGM v Grokster. But does the decision have wider import? Is it a death knell for tech? It's starting to look like the answer is no. (Jun 27, 2005)

> More from O'Reilly Developer Weblogs

More Weblogs
FolderShare remote computer search: better privacy than Google Desktop? [Sid Steward]

Data Condoms: Solutions for Private, Remote Search Indexes [Sid Steward]

Behold! Google the darknet/p2p search engine! [Sid Steward]

Open Source & The Fallacy Of Composition [Spencer Critchley]