Following WhatWindowsUsersWant, this document attempts to look at the options for P2P file sharing on Ubuntu. With over 377 million downloads on downloads.com, this is a key reason for many people to use the internet and choose an operating system. Good P2P support should be a cornerstone of Ubuntu. Also see [[P2PHowTo]] for installation instructions. == Key Protocols and Clients (Windows and Linux) == === BitTorrent === BitTorrent is one of the most popular and well-known protocols at the moment: * Decentralized network - instead of having one single person uploading to another person, all involved computers share with each other - even if they haven't fully completed the download yet. * Generally very fast transfer rates (but it still depends on the number of people downloading/uploading as well as their connection speed) * No integrated search function. In order to download, users must first download a "torrent" (file ending in .torrent) from the Internet, and then open it with a BitTorrent Client. E.g. Ubuntu [[http://releases.ubuntu.com/7.04/|can be downloaded]] using BitTorrent (by downloading the corresponding .torrent-file and then opening it with a BitTorrent Client. * Already implemented in Ubuntu - Ubuntu is shipped with the GNOME BitTorrent, and has several other clients in the official repositories. ==== Clients ==== Among the most used BitTorrent clients are Azureus, KTorrent (the KDE equivalent of GNOME BitTorrent), MLDonkey and BitTornado. Of these, '''Azureus''' is often considered the most beginner-friendly and flexible client. For more info about how to install and configure Azureus, see AzureusHowTo. === DirectConnect === Direct``Connect is another example of a well-known file-sharing protocol. Among the supported clients are: * valknut (KDE-native client) * dc_gui2 (available from universe) * MLDonkey (not fully supported - available from universe) === EDonkey 2000 === The E``Donkey network (abbr. ed2k) is a decentralized, server-based network mainly used to share audio, video and software. Ubuntu supports several ed2k clients, among them MLDonkey, aMule and xMule. * Both aMule and MLDonkey can be found in the Universe repository. === FastTrack === Fast``Track was perhaps one of the first networks to become 'famous' because of the success of one it its clients: Kazaa. While Fast``Track was one of the first large networks, today it consists mostly of corrupted files, virii and malware, and therefor it is not recommended to use it for anything - unless you want to test the security of Ubuntu :) Still, should anyone consider using Fast``Track, Ubuntu supports a couple of clients: * [[http://apollon.sourceforge.net/index.html|apollon]] (multi-protocol client) * MLDonkey * giFT also has [[http://gift-fasttrack.berlios.de|a FastTrack plugin]] available === OpenFT === Open``FT is a file-sharing protocol developed by the guys over at the giFT project. giFT is the major client on this network. === Freenet === [[http://freenetproject.org/|Freenet]] is a protocol which differs from most other protocols in the sense that it has focus on anonymity rather than efficiency. * Absolute anonymity ensuring that nobody is able to track what a given user is sharing or downloading * VERY slow connections because data is routed back and forth between several computers to ensure anonymity * Not very many users (est. ~5000) * Still in early stages of development (0.7) === Gnutella === {i} gtk-gnutella in the repositories is very old, requires updating and may not work. PhilWyett (2008-07-08). Gnutella is seen by many as the successor to Fast``Track. Its userbase is larger than 1.2 million users. * Easy to use * Mostly used to download audio, video, small software and other small (< 1 GB) files * Supported clients include gtk-gnutella (included in universe), [[http://www.limewire.com|LimeWire]], [[http://www.frostwire.com/|FrostWire]], MLDonkey, apollon and gnewtellium. === Gnutella2 === Gnutella2 is a protocol developed by the Shareaza Project - the only Linux client known to support it is MLDonkey (included in universe). == Table of comparison == || '''Network Protocol''' || '''Average # of Online Users''' || '''Windows Clients''' || '''Ubuntu Universe Clients''' || '''Other Linux Clients''' || '''Comments''' || || BitTorrent || 30% of internet traffic || Bit``Torrent, Bit``Tornado, Azureus, Bit``Comet, Shareaza, MLDonkey, Morpheus, others || Bit``Torrent, Gnome BitTorrent, MLDonkey, BitTornado || [[AzureusHowTo|Azureus]], BT++, Flash! Torrent, Yet ABC || Downloading from several users gives fast transfer rates, already integrated (Gnome Bit``Torrent is included in Ubuntu from [[Hoary]] and onwards), no integrated search-function - relies on external websites. [[AzureusHowTo|Azureus]] is a good complement to Gnome Bit``Torrent. || || ed2k || 3 million + || eDonkey2000, eDonkey, eMule, Shareaza, lphant, Morpheus, Xolox || MLDonkey, aMule, xMule || eDonkey || || || FastTrack || 2.4m+ || Kazaa, Kazaa Lite K++, iMesh, Grokster, Xolox || apollon, MLDonkey || There is a fastTrack plugin for gift : /|| p2p pioneer, carries many fakes || || OpenFT (FastTrack) || ? || KCeasy, giFT || giFT || || || || Freenet || 5000 || Freenet || || http://freenet.sourceforge.net/ || anonymous, secure, slow || || Gnutella || 1.2m+ || LimeWire, BearShare, Shareaza, XoloX, Morpheus || MLDonkey, apollon, gtk-gnutella || LimeWire, FrostWire, gnewtellium || gtk-gnutella works great for rare songs. FrostWire is an open source alternative of LimeWire || || Gnutella2 || ? || Shareaza, Nucleus, Morpheus || MLDonkey || || || || DirectConnect || 0.7m+ || DirectConnect, DC++ || dcgui-qt, MLDonkey (alpha), valknut, || Linux DC++ || Linux DC++ can be installed from the [[P2PHowTo]] page || || OpenNap || ? || WinMX, XNap, Lopster, SlavaNap || kNapster2, OpenNap, MLDonkey (alpha) || GnomeNapster, XNap, Lopster, SlavaNap || || || Ares || ? || Ares Galaxy, Warex P2P, FileCroc || || || || || MP2P/Manolito || 0.2m+ || Piolet, Blubster || || || || || Soulseek || ? || Soulseek || Nicotine, MLDonkey (alpha) || || great for special music files. || || Overnet || ?ed2k || eDonkey, eDonkeyHybrid, MLDonkey, Morpheus || MLDonkey || eDonkey || no servers, direct p2p, closed protocol kademlia implementation || || MP2P/Manolito || 0.2m+ || Piolet, Blubster || || || || || eXeem || ? || eXeem, eXeem Lite || || || || || WPNP || ? || WinMX || || || || || Hotline || ? || Hotline || fidelio || || ||