EDonkey network
Encyclopedia
The eDonkey network is a decentralized, mostly server-based, peer-to-peer
Peer-to-peer
Peer-to-peer computing or networking is a distributed application architecture that partitions tasks or workloads among peers. Peers are equally privileged, equipotent participants in the application...

 file sharing
File sharing
File sharing is the practice of distributing or providing access to digitally stored information, such as computer programs, multimedia , documents, or electronic books. It may be implemented through a variety of ways...

 network best suited to share big files among users, and to provide long term availability of files. Like most sharing networks, it is decentralized, as there is not any central hub for the network; also, files are not stored on a central server but are exchanged directly between users based on the peer-to-peer principle.

Currently, the eD2k network is not supported by any organization (in the past it was supported by the MetaMachine Corporation, its creator, which now is out of business) and development and maintenance is being fully provided by its community and client developers.

The server part of the network is proprietary
Proprietary software
Proprietary software is computer software licensed under exclusive legal right of the copyright holder. The licensee is given the right to use the software under certain conditions, while restricted from other uses, such as modification, further distribution, or reverse engineering.Complementary...

 freeware
Freeware
Freeware is computer software that is available for use at no cost or for an optional fee, but usually with one or more restricted usage rights. Freeware is in contrast to commercial software, which is typically sold for profit, but might be distributed for a business or commercial purpose in the...

. There are two families of server software for the eD2k network: the original one from MetaMachine, written in C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

, closed-source and proprietary, and no longer maintained; and eserver, written from scratch by a person named Lugdunum
Lugdunum
Colonia Copia Claudia Augusta Lugdunum was an important Roman city in Gaul. The city was founded in 43 BC by Lucius Munatius Plancus. It served as the capital of the Roman province Gallia Lugdunensis. To 300 years after its foundation Lugdunum was the most important city to the west part of Roman...

 in pure C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

, also closed-source and proprietary, although available free of charge and for several operating systems and computer architectures. The eserver family is currently in active development and support, and almost all eD2k servers now (2008) run this server software.

There are many programs that act as the client part of the network. Most notably, eDonkey2000
EDonkey2000
eDonkey2000 was a peer-to-peer file sharing application developed by US company MetaMachine, using the Multisource File Transfer Protocol...

, the original client by MetaMachine, closed-source but freeware, and no longer maintained but very popular in its day; and eMule
EMule
eMule is a free peer-to-peer file sharing application for Microsoft Windows. Started in May 2002 as an alternative to eDonkey2000, eMule now connects to both the eDonkey network and the Kad network...

, a free
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

 program for Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

 written in Visual C++
Visual C++
Microsoft Visual C++ is a commercial , integrated development environment product from Microsoft for the C, C++, and C++/CLI programming languages...

 and licensed under the GNU GPL
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

. eMule is in constant development and currently represents about 90% of all clients in the eD2k network.

The original eD2k protocol has been extended by subsequent releases of both eserver and eMule programs, generally working together to decide what new features the eD2k protocol should support. However, the eD2k protocol is not formally documented (especially in its current extended state), and it can be said that in practice the eD2k protocol is what eMule and eserver do together when running, and also how eMule clients communicate among themselves. As eMule is open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

, its code is freely available for peer-review of the workings of the protocol. Examples of eD2k protocol extensions are "peer exchange among clients", "protocol obfuscation" and support for files bigger than 4 Gigabyte
Gigabyte
The gigabyte is a multiple of the unit byte for digital information storage. The prefix giga means 109 in the International System of Units , therefore 1 gigabyte is...

s, etc. The other eD2k client programs, given time, generally follow suit adopting these protocol extensions.

eDonkey client
Client (computing)
A client is an application or system that accesses a service made available by a server. The server is often on another computer system, in which case the client accesses the service by way of a network....

 programs connect to the network to share files. eDonkey server
Server (computing)
In the context of client-server architecture, a server is a computer program running to serve the requests of other programs, the "clients". Thus, the "server" performs some computational task on behalf of "clients"...

s act as communication hubs for the clients, allowing users to locate files within the network. Clients and servers are available for Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

, Mac OS X
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...

, Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

, and other Unix-like
Unix-like
A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....

 operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

s. By running an eDonkey server program on a machine connected to the Internet, any user can add a server to the network. As the number of servers and their addresses change frequently, client programs update their server lists regularly.

Hash identification

Files on the eDonkey network are uniquely identified using MD4
MD4
The MD4 Message-Digest Algorithm is a cryptographic hash function developed by Ronald Rivest in 1990. The digest length is 128 bits. The algorithm has influenced later designs, such as the MD5, SHA-1 and RIPEMD algorithms....

 root hash of an MD4 hash list
Hash list
In computer science, a hash list is typically a list of hashes of the data blocks in a file or set of files. Lists of hashes are used for many different purposes, such as fast table lookup and distributed databases...

 of the file. This treats files with identical content but different names as the same, and files with different contents but same name as different.

Files are divided in full chunks of 9,728,000 bytes (9500 KiB) plus a remainder chunk, and a separate 128-bit MD4 checksum is computed for each. That way, if a transmission error is detected, only one chunk is corrupted instead of the whole file. Furthermore, valid downloaded chunks are available for sharing before the rest of the file is downloaded, speeding up the distribution of large files throughout the network.
A file's identification checksum is computed by concatenating
Concatenation
In computer programming, string concatenation is the operation of joining two character strings end-to-end. For example, the strings "snow" and "ball" may be concatenated to give "snowball"...

 the chunks' MD4 checksums in order and hashing the result. In cryptographic terms, the list of MD4 checksums is a hash list
Hash list
In computer science, a hash list is typically a list of hashes of the data blocks in a file or set of files. Lists of hashes are used for many different purposes, such as fast table lookup and distributed databases...

, and the file identification checksum is the root hash, also called top hash or master hash.

It is possible for two different chunks or files to have the same checksum and thus appear the same (see birthday attack
Birthday attack
A birthday attack is a type of cryptographic attack that exploits the mathematics behind the birthday problem in probability theory. This attack can be used to abuse communication between two or more parties...

), but the chance of that happening is so small that for all practical purposes it never happens, and checksums are considered unique identifiers.

Search

The eDonkey network supports searching of files by name and a number of secondary characteristics such as size, extension, bitrate, etc. The Lugdunum versions of eserver (eDonkey server software) support complex boolean searches like 'one AND two AND (three OR four) AND ("five four three" OR "two one") NOT seven'.

To ease file searching, some websites list the checksums of sought-after files in the form of an eD2k link. Some of these websites also have lists of active servers for users to update.

History

In 2004, the eDonkey network overtook FastTrack to become the most widely used file sharing network on the Internet. While figures vary from hour to hour, it is believed, as of mid-2005, to host on average approximately two to three million users sharing 500 million to two billion files via 100 to 200 servers. The network’s most popular server was at one time Razorback2, which usually hosted about one million users. Sometime around February 21, 2006, the Razorback2 servers were raided and seized by the Federal Belgian Police. DonkeyServer No1 and DonkeyServer No2 currently combine for over one and a half million users. However, around July 16, 2007, both servers together with several others were shut down after a temporary injunction was issued.

By 2007, BitTorrent
BitTorrent
BitTorrent is a peer-to-peer file sharing protocol used for distributing large amounts of data over the Internet. BitTorrent is one of the most common protocols for transferring large files, and it has been estimated that it accounted for roughly 43% to 70% of all Internet traffic .Programmer...

 had overcome eDonkey network as the most widely used file sharing network on the Internet. In 2009, it was reported that eDonkey is still the 2nd most popular P2P protocol, but is rapidly declining.

Successor protocols

The original eDonkey network relied on central servers run by users willing to donate the necessary bandwidth and processing/disk usage overhead. Such servers could be subject to heavy traffic and, consequently, more vulnerable to attacks.

To overcome this problem, MetaMachine, the developer of the original eDonkey client, developed Overnet
Overnet
Overnet was a decentralized peer-to-peer computer network, usually used for sharing large files . Overnet implements the Kademlia algorithm. In late 2006, Overnet and all Overnet-owned resources were taken down as a result of legal actions from the RIAA and others...

 as a successor to the eDonkey protocol. The eMule Project also developed a Kademlia
Kademlia
Kademlia is a distributed hash table for decentralized peer-to-peer computer networks designed by Petar Maymounkov and David Mazières in 2002. It specifies the structure of the network and the exchange of information through node lookups. Kademlia nodes communicate among themselves using UDP. A...

 network of their own (called Kad
Kad Network
The Kad network is a peer-to-peer network which implements the Kademlia P2P overlay protocol. The majority of users on the Kad Network are also connected to servers on the eDonkey network, and Kad Network clients typically query known nodes on the eDonkey network in order to find an initial node...

) to overcome the reliance on central servers. In addition, eMule
EMule
eMule is a free peer-to-peer file sharing application for Microsoft Windows. Started in May 2002 as an alternative to eDonkey2000, eMule now connects to both the eDonkey network and the Kad network...

 includes a pure P2P client source-exchange capability, allowing a client with a ‘High ID’ (i. e., with incoming eD2k connections not blocked by a firewall) to continue downloading (and uploading) files with a high number of sources for days, even after complete disconnection from the original Kad or eD2k servers that handled the original requests. (eMule does not query secondary servers when told to disconnect from the server). This source-exchange capability is designed to reduce the load on servers by two thirds or more for files that have a large number of seeds, or sources (other clients) for the files. The original eDonkey client by MetaMachine does not support source exchanges.

Legal action against eDonkey 2000

On September 13, 2006, MetaMachine Inc., the developer of the eDonkey2000
EDonkey2000
eDonkey2000 was a peer-to-peer file sharing application developed by US company MetaMachine, using the Multisource File Transfer Protocol...

 client, agreed to pay $30 million to avoid potential copyright infringement lawsuits brought by the RIAA. In accordance with the agreement, eDonkey is to discontinue distribution of their software as well as to take measures to prevent the use of previous copies of their software for file sharing.

Confiscation of Razorback 2

Razorback2 was a server of the eDonkey network, known for being able to handle 1 million users simultaneously.

On 21 February 2006, several servers (including Razorback2), located in a Belgian
Belgium
Belgium , officially the Kingdom of Belgium, is a federal state in Western Europe. It is a founding member of the European Union and hosts the EU's headquarters, and those of several other major international organisations such as NATO.Belgium is also a member of, or affiliated to, many...

 datacenter, were confiscated by the Belgian police, and their operator, who lives in Switzerland
Switzerland
Switzerland name of one of the Swiss cantons. ; ; ; or ), in its full name the Swiss Confederation , is a federal republic consisting of 26 cantons, with Bern as the seat of the federal authorities. The country is situated in Western Europe,Or Central Europe depending on the definition....

, was arrested. This was done after a local judge authorized the confiscation at the datacenter in Zaventem
Zaventem
Zaventem is a municipality in the province of Flemish Brabant, in Flanders, one of the three regions of Belgium. The municipality comprises the towns of Nossegem, Sint-Stevens-Woluwe, Sterrebeek and Zaventem proper. On January 1, 2006 Zaventem had a total population of 28,651...

 near Brussels
Brussels
Brussels , officially the Brussels Region or Brussels-Capital Region , is the capital of Belgium and the de facto capital of the European Union...

, after a denouncement of the Motion Picture Association of America
Motion Picture Association of America
The Motion Picture Association of America, Inc. , originally the Motion Picture Producers and Distributors of America , was founded in 1922 and is designed to advance the business interests of its members...

 (MPAA), in collaboration with the International Federation of the Phonographic Industry
IFPI
The International Federation of the Phonographic Industry is the organisation that represents the interests of the recording industry worldwide. It is a not-for-profit members' organisation registered in Switzerland...

.

The MPAA Chairman and CEO Dan Glickman
Dan Glickman
Daniel Robert "Dan" Glickman is an American businessman and politician. He served as the United States Secretary of Agriculture from 1995 until 2001, prior to which he represented the Fourth Congressional District of Kansas as a Democrat in Congress for 18 years. He was Chairman and CEO of the...

, presented this raid as a "major victory":
Besides having Razorback's equipment confiscated and their site shut down, copyright enforcement entities such as MPAA and IFPI
IFPI
The International Federation of the Phonographic Industry is the organisation that represents the interests of the recording industry worldwide. It is a not-for-profit members' organisation registered in Switzerland...

 have set up several "Razorback2" fake servers online, with the purpose of mimicking the original servers but which yield no useful results, hampering file-sharing traffic. Afterwards, the Swiss anti-piracy tech firm Logistep SA was hired to help further intimidate and prosecute filesharing users.

eDonkey poisoning

edonkey poisoning method explained

faked servers :
Servers have appeared on the eDonkey network that censor shared content searches and information about files by the type of the file (such as video or MP3
MP3
MPEG-1 or MPEG-2 Audio Layer III, more commonly referred to as MP3, is a patented digital audio encoding format using a form of lossy data compression...

) or by keywords.. These servers report large numbers of users (up to 1.5 million) connected to them, thus raising the number of users in the network to 10—13 million; however, it is impossible to determine how many people are actually connected to them. Such servers often disseminate advertisements disguised as commonly searched-for music/video files.

Server software

The main server software used for eD2k network is known as Lugdunum server. It was created by reverse engineering edonkey protocol and redesigned from scratch. (MetaMachine abandoned development of eD2k server software and revealed the source code to Lugdunum in late 2002, but was never used). Lugdunum has extended the eD2k protocol while maintaining backward compatibility. Lugdunum server software is gratis
Gratis versus Libre
Gratis versus libre is the distinction between two meanings of the English adjective "free"; namely, "for zero price" and "with little or no restriction"...

, but not open source. The stated reason for not opening the source is to prevent the easy creation of fake servers and to prevent attacking the server itself.

In September 2007 a new server software was announced on the eMule web site forums, called satan-edonkey-server. Given the shut down of major eMule servers due to legal action against them just days earlier, the new server was accepted with suspicion. It was feared that the software may transmit information about the clients to unknown third parties. Some trusted eMule developers received the source code of satan-edonkey-server and stated that no spy-code is built in. The satan server software was created by reverse engineering edonkey protocol. The software comes in two versions (C++ and Java). Satan-eDonkey-server software is also gratis
Gratis versus Libre
Gratis versus libre is the distinction between two meanings of the English adjective "free"; namely, "for zero price" and "with little or no restriction"...

.

Client software

Numerous clients, including several that are free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

, are available for the eDonkey/eDonkey2000 network:
  • aMule
    AMule
    aMule is a free peer-to-peer file sharing application that works with the EDonkey network and the Kad Network, offering similar features to eMule and adding others such as GeoIP . It was forked from the xMule source code on August 18, 2003, which itself is a fork of the lMule project, which was the...

    : a successful fork
    Fork (software development)
    In software engineering, a project fork happens when developers take a legal copy of source code from one software package and start independent development on it, creating a distinct piece of software...

     from lMule, it fully copied the interface and feel of eMule, and now it shares code with eMule project.
  • eDonkey2000
    EDonkey2000
    eDonkey2000 was a peer-to-peer file sharing application developed by US company MetaMachine, using the Multisource File Transfer Protocol...

    : an original MetaMachine client, since discontinued
  • eMule
    EMule
    eMule is a free peer-to-peer file sharing application for Microsoft Windows. Started in May 2002 as an alternative to eDonkey2000, eMule now connects to both the eDonkey network and the Kad network...

    : a free
    Free software
    Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

     Windows
    Microsoft Windows
    Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

     client, can also be run on Linux under Wine
    Wine (software)
    Wine is a free software application that aims to allow computer programs written for Microsoft Windows to run on Unix-like operating systems. Wine also provides a software library, known as Winelib, against which developers can compile Windows applications to help port them to Unix-like...

    ); numerous mods are also available
  • eMule Plus
    EMule Plus
    eMule Plus is an open source eMule P2P compatible client created to improve its abilities and features, in both work efficiency and GUI.-Enhancements over eMule:* A modified GUI* Releaser Support eMule Plus is an open source eMule P2P compatible client created to improve its abilities and features,...

     is a free
    Free software
    Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

     (GPL) Windows
    Microsoft Windows
    Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

     client loosely based on eMule
    EMule
    eMule is a free peer-to-peer file sharing application for Microsoft Windows. Started in May 2002 as an alternative to eDonkey2000, eMule now connects to both the eDonkey network and the Kad network...

    , but doesn't have KAD or obfuscation support while adding other features such as automated fake checks and enhanced GUI. eMule Plus has no direct association with the original eMule.
  • Hydranode: a free
    Free software
    Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

    , multi-network, cross-platform, core-GUI-separated client http://hydranode.com/
  • iMule
    IMule
    iMule is a free open source anonymous P2P file sharing software which connects through the anonymous I2P network and the Kad network.- Description :...

    : an anonymous eMule using the I2P network
  • JMule
    JMule
    JMule is an open source file sharing client written in Java for eDonkey2000 networks. JMule is released under the terms of the GNU General Public License, it is based on Java platform and requires at least Java SE 6.0 for operation. At a more general level this is a project that try to accomplish...

    : a free open source multi platform java client. Currently under an active development.
  • Jubster
    Jubster
    Jubster is a Windows-based peer-to-peer client which supports the Gnutella, Gnutella2, eDonkey Network, FastTrack, and other P2P networks. As of now, Jubster's primary use is finding music mp3s. It was, and is, developed and maintained by Anthony Kristovich III. Jubster contains...

    : a multi-network client for Windows
  • lMule
    LMule
    lMule was an early attempt to bring an eMule-like client to Linux started in January 2003 by Timo Kujala, who ported all eMule code to Linux by himself...

     (Linux Mule): A very raw eDonkey client based in eMule, targeted to Linux platforms.
  • Lphant
    Lphant
    Lphant is a peer-to-peer file sharing client for the Microsoft Windows, Linux and Mac OS operating systems, which supports the eDonkey Network and the BitTorrent protocol. It is available in 19 languages...

    : an eDonkey and BitTorrent, cross-platform, core-GUI-separated client that runs on the Microsoft .NET and Mono
    Mono (software)
    Mono, pronounced , is a free and open source project led by Xamarin to create an Ecma standard compliant .NET-compatible set of tools including, among others, a C# compiler and a Common Language Runtime....

     platforms
  • eAnt: a successful fork
    Fork (software development)
    In software engineering, a project fork happens when developers take a legal copy of source code from one software package and start independent development on it, creating a distinct piece of software...

     from Lphant with significative improvements made to keep the source code open. Currently inactive.
  • MLDonkey
    MLDonkey
    MLDonkey is an open source, multi-protocol, peer-to-peer file sharing application that runs as a back-end server application on many platforms. It can be controlled through a user interface provided by one of many separate front-ends, including a Web interface, telnet interface and over a dozen...

    : a free
    Free software
    Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

    , multi-network, cross-platform client
  • Morpheus
    Morpheus (computer program)
    Morpheus was a file sharing and searching peer-to-peer client for Microsoft Windows, developed and distributed by the company StreamCast, that originally used the Opennap protocol, but later supported many different peer-to-peer protocols...

    : a file sharing client for Windows
  • Pruna (formerly, MediaVAMP): a Korean-language client based on eMule
  • Shareaza
    Shareaza
    Shareaza is a peer-to-peer file sharing client running under Microsoft Windows which supports the gnutella, Gnutella2 , eDonkey, BitTorrent, FTP, HTTP and HTTPS network protocols and handles magnet links, ed2k links, and the now deprecated gnutella and Piolet links...

    : a free
    Free software
    Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

     open source
    Open source
    The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

     multi-network file-sharing client that supports the Gnutella2
    Gnutella2
    Gnutella2, often referred to as G2, is a peer-to-peer protocol developed mainly by Michael Stokes and released in 2002. While inspired by the gnutella protocol, G2 shares little of its design with the exception of its connection handshake and download mechanics. It adopts an extensible binary...

     and Gnutella
    Gnutella
    Gnutella is a large peer-to-peer network which, at the time of its creation, was the first decentralized peer-to-peer network of its kind, leading to other, later networks adopting the model...

     P2P networks, as well the BitTorrent protocol, additionally to eD2k. It allows network-spanning search of content and has web browser integration to operate as a download manager
    Download manager
    A download manager is a computer program dedicated to the task of downloading possibly unrelated stand-alone files from the Internet for storage...

    . Supports user profiles, remote file browsing, chat and advanced search filtering. Under active development and continuously growing user community.
  • xMule
    XMule
    xMule — the X11 Mule — is a client for the eDonkey peer-to-peer file sharing network, originally intended to bring it to virtually all the major Unix platforms, with a particular emphasis on Linux...

    (X11 Mule): a fork from lMule. Deviating from copying eMule, it has more controls than lMule but is less user-friendly. Discontinued on January 2009.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK