Taxonomy of P2P Applications
Total Page:16
File Type:pdf, Size:1020Kb
Taxonomy of P2P Applications E.H.T.B. Brands and G. Karagiannis University of Twente, the Netherlands [email protected], [email protected] Abstract—Peer-to-peer (p2p) networks have gained immense on these characteristics developers can select existing popularity in recent years and the number of services they solutions provided by other applications with similar provide continuously rises. Where p2p-networks were formerly characteristics. Researchers can use the identified known as file-sharing networks, p2p is now also used for services characteristics of an application for doing a qualitative like VoIP and IPTV. With so many different p2p applications comparison among other applications with similar and services the need for a taxonomy framework rises. This characteristics. paper describes the available p2p applications grouped by the To create such taxonomy the following research question will services they provide. A taxonomy framework is proposed to be answered in this paper: classify old and recent p2p applications based on their • characteristics. How can p2p applications be accurately classified? In order to answer this question correctly and completely four Keywords- p2p, applications, taxonomy, characteristics sub questions are proposed. These sub questions will provide a step-by-step answer to the main question: I. INTRODUCTION 1. What p2p applications are currently available? Peer-to-peer networks (also known as p2p) have gained 2. What are the main characteristics of the available p2p immense popularity in recent years. Their ability to harness applications? the computing power and resources of a large number of 3. How could the p2p characteristics be used to generate the network computers makes them much more powerful than a p2p taxonomy? centralized server. The number of p2p applications is growing 4. How could new p2p applications be categorized in this fast and so is the number of different services p2p provides. taxonomy? Where p2p networks were formally known as file sharing This research will mainly be based on literature study, analysis networks, p2p networks are nowadays used for, for example, of requirements and taxonomy design. The four research Voice over IP (VoIP), IPTV and distributed data storage. questions are answered in four corresponding sections. The With so many different services provided by p2p applications first two sections are based on literature study to the state of their characteristics vary widely. The questions arise: what the art of p2p networking. The first section gives an overview characteristics make an application a p2p application and is a of the p2p applications currently available. The second section certain application really a p2p application? The Internet addresses the main characteristics of these applications. In Research Task Force (IRTF) [1] defines p2p as: “a way of section three a framework is proposed for classifying available structuring distributed applications such that the individual and new p2p applications. This framework will be derived nodes have symmetric roles, rather than being divided into from the answers of question one and two. Section four clients and servers with quite distinct roles. A key concept for provides a way to use the framework, illustrated by an p2p systems is therefore to permit any two peers to example. At the end there is a final section for conclusions and communicate with one another in such a way that either ought identified areas for future work. to be able to initiate the contact.” II. CURRENTLY AVAILABLE P2P APPLICATIONS In the past, several taxonomies and frameworks for p2p applications have been developed; see [2] [3] [4] [5]. The In early 2000 Napster [7] was at its peak with nearly sixty problem here is that all this research dates from several years million users [4]. At this time the phrase peer to peer came to ago. In a field of science like p2p networks, which is be associated with systems such as Napster. People thought experiencing rapid growth, research is quickly outdated. This that p2p computing was really a new paradigm. Experts, who is why p2p-based VoIP is only barely described in the knew more about distributed systems, knew better; Usenet and taxonomies listed above and IPTV is not described at all. some email systems used the same decentralization concept This paper describes a way to classify available and new p2p back in the 1980’s. applications based on their different characteristics. New Over the last years, the number of services that p2p systems services in the field of p2p networks, like IPTV, are also taken provide has grown rapidly. Nowadays, p2p networking is also into account. In this way this paper answers the call from the used in for example IPTV, VoIP and distributed data storage. Peer-to-Peer Research Group, part of the IRTF, for a new There is however a distinction between p2p systems and taxonomy on p2p applications [6]. The taxonomy can help distributed systems in general. Grid computing for example identifying the main characteristics of an application. Based are distributed systems, but not p2p systems, because grids are often managed at a single location or at multiple ones in a 978-1-4244-5626-0/09/$26.00 ©2009 IEEE Authorized licensed use limited to: UNIVERSITEIT TWENTE. Downloaded on January 20, 2010 at 05:50 from IEEE Xplore. Restrictions apply. federated manner [4]. The definition of p2p systems used in network. Another example is that a lot of Gnutella2 (G2) this paper is: clients also connect to the original Gnutella network. “Peer-to-peer systems are distributed systems consisting of B. Content Publishing and Storage Systems interconnected nodes able to self organize into network topologies with the purpose of sharing resources such as These systems create a distributed storage medium, where content, CPU cycles, storage and bandwidth, capable of users are able to publish, store and distribute content in a adapting to failures and accommodating transient populations secure and persistent manner [5]. In some aspects this looks of nodes while maintaining acceptable connectivity and similar to p2p file sharing systems received earlier, but there is performance, without requiring the intermediation or support however a major difference. “Where p2p file sharing systems of a global centralized server or authority”, from [5]. are most of the time light weight applications that adopt a Old and recent p2p applications are grouped below by the best-effort approach without addressing security, availability service they provide. Because of the large number of p2p and persistence, p2p content publishing and storage systems applications available, only the most popular are listed. focus on security and persistence”, from [5]. Other aspects these systems frequently feature are incorporated provisions A. File Sharing for accountability, anonymity and censorship resistance, as File sharing applications are probably the most popular p2p well as persistent content management (updating, removing applications available, although in recent years other p2p and version control) facilities. Table 2 contains a list of the services, like VoIP and IPTV, are catching up on them. The most popular p2p content publishing and storage systems with most famous file sharing application is probably Napster [7], a brief description of their purpose. especially because it was shut down in 2001 due to legal issues. Napster had a number of successors which offered TABLE 2. POPULAR P2P CONTENT PUBLISHING AND STORAGE more or less the same service but tried to avoid the legal SYSTEMS issues. P2p application Brief Description File sharing applications are often part of a network with a Freehaven [25] A system for distributed, anonymous, persistent number of different applications connecting to it. For example, data storage which is robust against attempts by BitTorrent [8] is a well known p2p file sharing network and powerful adversaries to find and destroy any stored data [25]. applications like uTorrent [9], Vuze [10] and BitTornado [11] Freenet [26] A system which lets you publish and obtain are all connecting to the network. Table 1 contains a list of information on the Internet without fear of popular p2p file sharing networks and applications running on censorship [26]. them. Groove [27] A collaboration software program that helps teams work together dynamically and effectively [27]. TABLE 1. P2P FILE SHARING NETWORKS AND APPLICATIONS Mnet [28] A shared virtual space onto which you can put, and RUNNING ON IT from which you can retrieve, files. (created from the source code of MojoNation [32]) [28]. P2p network Popular Applications OceanStore [29] An architecture for global scale persistent storage. Ares Ares Galaxy [12] Scalable, provides security and access control [29]. BitTorrent BitTorrent [8], uTorrent [9], Vuze [10], BitTornado [11] These systems or projects are still in ongoing use. In the past DirectConnect DC++ [13] there have been a number of other projects concerning p2p- eDonkey20001 eDonkey2000 [14], eMule [15] based content publishing and data storage, but these remained FastTrack KaZaa [16], Kazaa Lite [17] scientific or are not deployed anymore. Examples of such Gnutella LimeWire [18], Shareaza [19] projects are Intermemory [30], Mnemosyne [31], MojoNation Gnutella2 (G2) Morpheus [20], Gnucleus [21], Shareaza [19] [32], PAST [33], Publius [34], SCAN [35] and Tangler [36]. Kad Network aMule [22], eMule [15], MLDonkey [23] OpenNap Napster [7] C. Voice over IP WPNP WinMX [24] Something which has become very popular in recent years is Not all applications connecting to each network are listed, Voice over IP (VoIP). Many ISPs offer VoIP services to let because some networks have a large amount of applications people call over the internet instead of over the “old” Public running on it. BitTorrent, for example, has over fifty Switched Telephone Network (PSTN). Many of these VoIP- applications, called clients, using the network. All these clients networks use standardized protocols like SIP [37], H.323 [38] have some different properties, but all of them are part of the and IAX [39], but do not run over a peer-to-peer network.