Gnutella crawler
   HOME

TheInfoList



OR:

Gnutella is a
peer-to-peer network Peer-to-peer (P2P) computing or networking is a distributed application Distributed computing is a field of computer science that studies distributed systems, defined as computer systems whose inter-communicating components are located on d ...
protocol. Founded in 2000, it was the first decentralized peer-to-peer network of its kind, leading to other, later networks adopting the model. In June 2005, Gnutella's population was 1.81 million computers increasing to over three million nodes by January 2006.On the Long-term Evolution of the Two-Tier Gnutella Overlay
. Rasti, Stutzbach, Rejaie, 2006. See Figure 2a.
In late 2007, it was the most popular file-sharing network on the Internet with an estimated market share of more than 40%.


History

The first client (also called Gnutella) from which the network got its name was developed by
Justin Frankel Justin Frankel (born 1978) is an American computer programmer best known for his work on the Winamp media player application and for inventing the Gnutella peer-to-peer network. Frankel is also the founder of Cockos Incorporated, which create ...
and
Tom Pepper Tom Pepper (born August 24, 1975, in Des Moines, Iowa Iowa ( ) is a U.S. state, state in the upper Midwestern United States, Midwestern region of the United States. It borders the Mississippi River to the east and the Missouri River and Bi ...
of
Nullsoft Nullsoft, Inc. was an American software house founded in Sedona, Arizona in 1997 by programmer Justin Frankel. Its products included the Winamp media player and the SHOUTcast MP3 streaming media server. History In 1997, Justin Frankel, ...
in early 2000, soon after the company's acquisition by
AOL AOL (formerly a company known as AOL Inc. and originally known as America Online) is an American web portal and online service provider based in New York City, and a brand marketed by Yahoo! Inc. The service traces its history to an online ...
. On March 14, the program was made available for download on Nullsoft's servers. The event was prematurely announced on
Slashdot ''Slashdot'' (sometimes abbreviated as ''/.'') is a social news website that originally billed itself as "News for Nerds. Stuff that Matters". It features news stories on science, technology, and politics that are submitted and evaluated by site ...
, and thousands downloaded the program that day. The
source code In computing, source code, or simply code or source, is a plain text computer program written in a programming language. A programmer writes the human readable source code to control the behavior of a computer. Since a computer, at base, only ...
was to be released later, under the
GNU General Public License The GNU General Public Licenses (GNU GPL or simply GPL) are a series of widely used free software licenses, or ''copyleft'' licenses, that guarantee end users the freedom to run, study, share, or modify the software. The GPL was the first ...
(GPL); however, the original developers never got the chance to accomplish this purpose. The next day, AOL stopped the availability of the program over legal concerns and restrained Nullsoft from doing any further work on the project. This did not stop Gnutella; after a few days, the protocol had been
reverse engineered Reverse engineering (also known as backwards engineering or back engineering) is a process or method through which one attempts to understand through deductive reasoning how a previously made device, process, system, or piece of software accompl ...
, and compatible
free and open source Free and open-source software (FOSS) is software available under a license that grants users the right to use, modify, and distribute the software modified or not to everyone free of charge. FOSS is an inclusive umbrella term encompassing free ...
clones began to appear. This parallel development of different clients by different groups remains the ''
modus operandi A (often shortened to M.O. or MO) is an individual's habits of working, particularly in the context of business or criminal investigations, but also generally. It is a Latin phrase, approximately translated as . Term The term is often used in ...
'' of Gnutella development today. Among the first independent Gnutella pioneers were
Gene Kan Gene Kan (September 6, 1976 — June 29, 2002) was a British-born Chinese American peer-to-peer file-sharing programmer who was among the first programmers to produce an open-source version of the file-sharing application that implemented the Gnute ...
and Spencer Kimball, who launched the first portal aimed to assemble the open-source community to work on Gnutella and also developed "GNUbile", one of the first open-source (GNU-GPL) programs to implement the Gnutella protocol. The Gnutella network is a fully distributed alternative to such semi-centralized systems as
FastTrack FastTrack is a peer-to-peer (P2P) protocol that was used by the Kazaa, Grokster, iMesh and Morpheus file sharing programs. FastTrack was the most popular file sharing network in 2003, and used mainly for the exchange of music MP3 files. The ne ...
(
KaZaA Kazaa Media Desktop ( ) (once stylized as "KaZaA", but later usually written "Kazaa") was a peer-to-peer file sharing application using the FastTrack protocol licensed by Joltid Ltd. and operated as Kazaa by Sharman Networks. Kazaa was subsequ ...
) and the original
Napster Napster was an American proprietary peer-to-peer (P2P) file sharing application primarily associated with digital audio file distribution. Founded by Shawn Fanning and Sean Parker, the platform originally launched on June 1, 1999. Audio shared ...
. The initial popularity of the network was spurred on by Napster's threatened legal demise in early 2001. This growing surge in popularity revealed the limits of the initial protocol's scalability. In early 2001, variations on the protocol (first implemented in
proprietary {{Short pages monitor *
Morpheus Morpheus ('Fashioner', derived from the meaning 'form, shape') is a god associated with sleep and dreams. In Ovid's ''Metamorphoses'' he is the son of Somnus (Sleep, the Roman counterpart of Hypnos) and appears in dreams in human form. From the ...
differs significantly and may have completely independent code from the GnucDNA engine. Morpheus can function as a ''modern'' ultrapeer whereas other GnucDNA clients cannot. *
Gnucleus GnucDNA was a software library for building peer-to-peer applications. It provides developers with a common layer to create their own Gnutella or Gnutella2 client or network. As a separate component, GnucDNA can be updated independently of the cli ...
and Kiwi Alpha use the
GnucDNA GnucDNA was a software library for building peer-to-peer applications. It provides developers with a common layer to create their own Gnutella or Gnutella2 client or network. As a separate component, GnucDNA can be updated independently of the cli ...
engine. * BearFlix, a functionally limited version of the BearShare 5.2 series, can search only for images or videos and shared videos are limited to a relatively short length. * giFTcurs, Apollon, FilePipe, giFToxic, giFTui, giFTwin32, KCeasy, Poisoned, and Xfactor are GUI front-ends for the
giFT A gift or present is an item given to someone (who is not already the owner) without the expectation of payment or anything in return. Although gift-giving might involve an expectation of reciprocity, a gift is intended to be free. In many cou ...
engine. * etomi uses outdated
Shareaza Shareaza is a peer-to-peer file sharing client running under Microsoft Windows which supports the Gnutella, Gnutella2 (G2), eDonkey, BitTorrent, FTP, HTTP and HTTPS network protocols and handles magnet links, ed2k links, and the now deprecated ...
networking code. * MP3 Rocket, 360Share, LemonWire, MP3Torpedo, and DexterWire are variants of
LimeWire LimeWire was a free peer-to-peer file sharing client for Windows, macOS, Linux, and Solaris. Created by Mark Gorton in 2000, it was most prominently a tool used for the download and distribution of pirated materials, particularly pirated m ...
. * FrostWire (up to version 4.21.8) is nearly identical to LimeWire 4.18 but versions greater than 5.00 no longer use gnutella. * Acquisition and Cabos are custom front-ends overlaying the
LimeWire LimeWire was a free peer-to-peer file sharing client for Windows, macOS, Linux, and Solaris. Created by Mark Gorton in 2000, it was most prominently a tool used for the download and distribution of pirated materials, particularly pirated m ...
engine. * LimeWire Pirate Edition (5.6.2) is a resurrected version of the unreleased
LimeWire LimeWire was a free peer-to-peer file sharing client for Windows, macOS, Linux, and Solaris. Created by Mark Gorton in 2000, it was most prominently a tool used for the download and distribution of pirated materials, particularly pirated m ...
5.6.1 alpha, thus has similar features minus automatic updates (with nags) and centralized remote controls to disable core functions like searches and downloads were removed.


Gnutella2

The Gnutella2 protocol (often referred to as G2), despite its name, is not a successor protocol of Gnutella nor related to the original Gnutella project, but rather is a completely different protocol that forked from the original project and piggybacked on the Gnutella name. A sore point with many Gnutella developers is that the ''Gnutella2'' name conveys an upgrade or superiority, which led to a flame war. Other criticism included the use of the Gnutella network to bootstrap G2 peers and poor documentation of the G2 protocol. Additionally, the more frequent search retries of the
Shareaza Shareaza is a peer-to-peer file sharing client running under Microsoft Windows which supports the Gnutella, Gnutella2 (G2), eDonkey, BitTorrent, FTP, HTTP and HTTPS network protocols and handles magnet links, ed2k links, and the now deprecated ...
client, one of the initial G2 clients, could unnecessarily burden the Gnutella network. Both protocols have undergone significant changes since the fork in 2002. G2 has advantages and disadvantages compared to Gnutella. An advantage often cited is that Gnutella2's hybrid search is more efficient than the original Gnutella's
query flooding {{short description, Search method on a peer-to-peer network Query flooding is a method to search for a resource on a peer-to-peer network. It is simple and scales very poorly and thus is rarely used. Early versions of the Gnutella protocol opera ...
. However, Gnutella replaced query flooding with more efficient search methods, starting with Query Routing in 2002. This was proposed in 2001 by Limewire developers. An advantage of Gnutella is its large user base, which numbers in the millions. The G2 network is approximately an
order of magnitude In a ratio scale based on powers of ten, the order of magnitude is a measure of the nearness of two figures. Two numbers are "within an order of magnitude" of each other if their ratio is between 1/10 and 10. In other words, the two numbers are ...
smaller.G2 Network Statistics
Population ~200,000 January 2010.
It is difficult to compare the protocols in their current form. The choice of client, on either network, probably affects the end user just as much.


See also

* Bitzi * Gnutella crawler *
GNUnet GNUnet is a software framework for decentralized, peer-to-peer networking and an official GNU package. The framework offers link encryption, peer discovery, resource allocation, communication over many transports (such as TCP, UDP, HTTP, ...


References

* Dye, Mark. McDonald, Rick. Rufi, Antoon W., 'Network Fundamentals', Cisco Networking Academy, Cisco Press, Ch 3. p91 * Dye, Mark. McDonald, Rick. Rufi, Antoon W., 'Network Fundamentals', Cisco Networking Academy, Cisco Press, Ch 3. p90


External links


Gnutella official website
(on Internet Archive) {{File sharing protocols File sharing networks Application layer protocols Hash-based data structures