This is a local copy of a Red Herring article that originally was posted here:


Brand Gnu day
Gnutella's fast ascent in P2P offers insight about future successes.

By Peter Rojas

From December 2000 issue

On March 14, an innocuous posting on a popular hackers' Web site ignited a firestorm of programmer interest. The posting read: "Nullsoft just released an open-source Napster clone. It does MP3s, movies, and any other format you could want." A few months earlier, the new program, called Gnutella , would have gone largely unnoticed, but the David-and-Goliath battle taking place between the recording industry and Napster , a company that develops a program for swapping MP3 files, made the posting hot news.

Gnutella had very peculiar beginnings. After inventing the program, Nullsoft's Justin Frankel and Tom Pepper were forbidden by the company's corporate parent, America Online , to do any further work on the project or even to speak to the press about it. So Gnutella's development was then left to a loose amalgam of programmers from all over the world. It's a model of development that is just as anarchic as Gnutella's network. But the programmers have one unifying tenet: a steadfast commitment to maintain the interoperability of all of the different versions of the program.

Some believe this shared objective may be at risk. As this core group of programmers works to introduce a next-generation protocol for Gnutella, many within the programmer community are growing impatient. What's frustrating them is the overall slow pace of development, which could lead to competing versions of the software.



That day in March, thousands of programmers downloaded the software off the Internet. Then AOL intervened. The company was concerned about Gnutella's potential Napster-like legal liabilities, so it pulled the software out of circulation. The move attracted even more attention to the new file-sharing program. The idea was out; it was too late to stop Gnutella.

Bryan Mayland was one programmer who had downloaded the Gnutella software code. But once he heard that AOL had pulled the plug, he locked himself in his apartment and set to work on understanding the program. Two days later, Mr. Mayland emerged with his own version of Gnutella.

He spread the word of his accomplishments on the Web. And he became the first member of a growing worldwide community of programmers to have contributed to the erratic development of Gnutella. They're a disparate group of overwhelmingly young, highly independent male programmers and hackers who often have little contact with one another.

Gnutella's developers are typically more interested in the technology itself than using it to swap files illegally. William Wong, the inventor of a Gnutella clone called Furi, admits that he isn't particularly interested in swapping files and that he rarely uses his own program. He began working on a Gnutella clone, he says, because he was upset that big money and politics in the form of AOL was destroying a technology whose potential had not yet been demonstrated.

Although Gnutella is open-source software, its development doesn't follow the open-source model. Open-source software development is normally overseen by a person or a group that wields the ultimate authority over the direction the software takes. In terms of Linux, Linus Torvalds, the inventor of the open-source operating system, has this authority and guidance power.

Because of this lack of an overarching authority, programmers set up, a central clearinghouse for all things related to Gnutella. The portal -- operated by Gene Kan and Spencer Kimball, recent graduates of the University of California at Berkeley, teenager Nathan Moinvaziri, and the IT consultant Ian Hall-Beyer -- carries Gnutella-related news, has links to downloads of the various versions of Gnutella, and operates a mailing list and discussion forum for developers.

The source code for the original Gnutella program isn't available because of AOL's actions, but the reverse engineered protocols for connecting and swapping files are. These 100-plus versions of the protocol are essentially in the public domain, meaning that anyone who wants to can write their own version of Gnutella.

With the press invariably mentioning Gnutella in its coverage of Napster, millions of new users have downloaded the software and logged on, placing a strain on a network that isn't designed to process hundreds of thousands of peer-to-peer requests for files. is spearheading the development of next-generation Gnutella protocol, one that is expected to have better search capabilities and more efficient file transfers, as well as to be able to support more users at once.



A core group of programmers whose efforts are being coordinated by Sebastien Lambla, an 18-year-old university student, are working on developing what will become the next-generation protocol, to be known as the general purpose location protocol, or gPulp. There are plans to establish a nonprofit organization to lead development, but for the time being the project is organized into committees, with each attacking different aspects of the protocol such as anonymity, privacy, and routing.

Having a large pool of users means that Gnutella users are more likely to find the files they want online. Anyone who develops a version that operates on a different protocol will have a hard time convincing anyone to use it unless it also attracts a critical mass of users, a chicken-and-egg quandary known as the law of network effects. "As long as interoperability is preserved," contends Mr. Kan, "it's not important what the developers do."

Mr. Lambla admits that progress is slow, but he feels that achieving consensus among the community will result in a stronger protocol down the line, rather than releasing one that is rushed and incomplete. Bringing all interested parties into the process is certainly a risky tactical move. Since no one owns the Gnutella protocol, there is nothing stopping another group from developing its own next-generation protocol that would be incompatible with the existing one.

Not everyone involved in the development of gPulp is convinced that Mr. Lambla's approach is best, and some worry that it could backfire if it takes too long to establish a new protocol. "There isn't enough will among the participants to work together," says Ben Houston, a student at Carleton University in Ottawa, who has been involved with the development process. "There will be many new protocols fighting it out in the marketplace."

If that were to happen, it would be as if there were several competing versions of the World Wide Web out there, a situation that these idealistic young programmers are all eager to prevent. And while the stakes are high for these programmers, they may even be greater for the panoply of startups that are building commercial applications of Gnutella.