Survey on Architecture of Peer-To-Peer Network
Total Page:16
File Type:pdf, Size:1020Kb
ISSN:2229-6093 Kaushik Adhikary et al,Int.J.Comp.Tech.Appl,Vol 2 (6), 3089-3096 Survey on Architecture of Peer-to-Peer Network Kaushik Adhikary#1, Amit Bindal#2 , Gurmanjeet Kaur #3 #1, #2, #3 Dep’t. of CSE, MMU, Mullana, India [email protected] #1, [email protected]#2, [email protected]#3 Abstract In recent times peer-to-peer networking has gained In a peer-to-peer network all nodes are equivalent since popularity since users can share files without having to P2P is decentralized and distributed. communicate with a dedicated server. Peer-to-peer In a peer-to-peer network resources are distributed all over. network have a scalable and fault-tolerant system that can Any centralized control or organizations are not present in locate nodes on a network with no need to maintain routing a pure P2P network. Hence, traditional client-server is state having a lot of information. As the bandwidth of different from P2P network. The nodes have an equal role internet connection has increased as well as the low cost, it as well as no hierarchy or central servers are needed as well has resulted in increase use of peer-to-peer networks. Peer- as resources are fully decentralized. Nodes in Peer-to-peer to-Peer networks have the ability to deliver contents and can function simultaneously as client and server and are services to other users easily. In this paper we discuss called as peers. The data is distributed and transferred in a about the various architecture of peer-to-peer networks. P2P manner and between these models lay the hybrid model where the server is used for lookups of resources. Keywords An example of hybrid model is a Napster. Many P2P systems are used for file sharing nowadays. But file sharing Peer-to-peer network, structured P2P, unstructured through peer-to-peer often involve illegal and copyright violations of sharing movies, music etc. Due to the P2P excessive network load that P2P file sharing causes, many 1. INTRODUCTION operators obstruct P2P traffic in their network. 2. P2P APPLICATIONS The traditional client-server architecture can be replaced by peer-to-peer network. In peer-to-peer architecture each • Instant Messaging (IM): technologies for sending nearly machine refered to as a peer can work as client with its instantaneous messages between users. Examples of own functions as that of a server and can use a such software are Microsoft's MSN Messenger, Trillian decentralised model.At the same time a peer can function and ICQ [1]. as a client as well as a server. It means that a peer can send • File Sharing: technologies for sharing data between request to other peer and at the same time can respond to equal peers in large networks; one identifying other incoming peer request. This differs from a traditional characteristic of such networks is the lack of any central client server model in which a client sends request to server entity. Examples of such software are Kazaa , Shareaza and then has to wait for server’s response. In a peer-to-peer and Limewire [1]. network, a peer is one of the entities connected with a P2P • Grid Computing: technologies for sharing computer application. So while referring a peer it can be both the resources, most commonly CPU cycles, among many applicaion and the user of the application being different systems. This can be used to perform refered.There are only peers in P2P application. Some peers processing of large amounts of data distributed over a are called super nodes in which a P2P networks relies on a large number of computers. An example of such centralized server in one form or the other. These super software is the SETI@home project [2]. nodes are not refered to as peers while discussing their 3. PROPERTIES OF P2P NETWORK concepts. The following desirable properties: Peer-to-peer networks have become increasingly popular in Decentralization: The data structure should be distributed recent times. A part of harware resouces such as processing among all the participants of the system. A central server, power,storage capacity or network bandwidth are shared by or even a cluster of such servers, may prove to be intolerant the Peer-to-peer participants. Without passing intermediary to faults, and will require considerable investment for high- entities, the service or content provided by the P2P network performance hardware and high bandwidth. Scalability: is accessible by other peers. Harnessing resourses such as The Internet user community has grown to be so large that storage, bandwidth and computing power of large distributed systems need to cope with millions of users. In populations of networked computers in a cost effective an ideal peer-to-peer system, the cost borne by each manner can be made possible by the peer-to-peer network. IJCTA | NOV-DEC 2011 3089 Available [email protected] ISSN:2229-6093 Kaushik Adhikary et al,Int.J.Comp.Tech.Appl,Vol 2 (6), 3089-3096 participant should not depend too much on the size of the virtual links of the overlay. The protocol also determines entire system [3]. the lookup mechanism of the P2P overlay, as the resources Load balancing: It is like the cost of maintaining the have to be found somehow in the absence of a centralized system to be uniformly shared between all the peers. entity. The protocols for network maintenance and search Similarly, the system should be able to manage flash operation can also be separate, like in Gnutella [7]. crowds i.e., high data request volume due to temporal locality, when a particular resource becomes extremely popular for a short period of time. Dynamic maintenance: The massive parallelism in peer-to-peer systems, due to high rate of machine arrival and departures, presents some very challenging issues that are trivially solved in a system with fixed membership. The system should be self- configuring, and machines and resources should be added and deleted from the system quickly without manual intervention or oversight[3]. Fault tolerance: The data structure should be resilient to both machine and link failures in the system. Even if a part of the system has failed, the data available in the surviving machines should still be accessible, as long as it is located in the same connected component as the requesting peer. Further, the system should gracefully degrade with increasing failures[3][4]. Self-stabilization: Not only should the system survive disruptions due to failures, but it should also heal Figure 1: Peer-to-Peer overlay Architecture automatically to restore ideal performance. The system The absence of a centralized entity also presents the should have a repair mechanism that detects local problem of how to join some P2P overlay. The process of inconsistencies such as machine failures or link outages, finding some node of a P2P overlay is called bootstrapping. and triggers maintenance operations with minimal overhead There are different ways to locate a bootstrap node, such as in terms of network traffic[4]. multicasting, cached addresses and pre-configuration. Efficient searching: The primary goal of a peer-to-peer The network architecture of Peer-to-Peer overlay is system is to locate resources efficiently, and hence support essentially different when compared to the conventional CS for searching using a variety of specifications is a very architecture. The main goal of P2P overlay networks is to desirable property. Complex queries to locate resources share the resources such as bandwidth, storage, such as range queries, near matches to a key, and keyword computation power of participating peers. Thus, taking matches should be supported by a rich query language [3]. advantage of this distributed resource network, the usage of Security: The system should be secure against attacks such centralized servers can be avoided. However, even though as a denial-of-service attack, where some miscreant good scalability is possible with P2P systems, P2P systems participants may "flood" the system, thereby preventing with poor scalability also exist. There are different lookup legitimate traffic. In some applications, it may also be mechanisms and they also depend on how their overlay desirable to maintain anonymity of the users, or provide topologies are arranged and managed. There are thus many resistance to censorship by preventing certain data items to different ways to implement a P2P overlay network, and be deleted from the system [4][5]. many different protocols with their algorithms have been Topologically-sensitive construction: Routing should be developed for P2P systems. P2P overlay networks can be sensitive to network locality such as distance traveled or divided into two subgroups, unstructured and structured latency along transmission paths. Two possible approaches overlay networks depending on how the peers are are: (i) Proximity routing where machines are placed in the connected with each other. The fundamental problem of network to exploit the underlying topology, and (ii) decentralization is resource discovery, e.g. finding a Proximity neighbor selection where the closest neighbors particular node, service or file. This is done differently in are chosen among the set of potential neighbors [4][6]. unstructured and structured networks. Today, structured 4. CONCEPT OF PEER-TO-PEER overlay networks are more common among the P2P systems [8]. OVERLAY NETWORKS 5. P2P ARCHITECTURE There are several ways to classify P2P networks. One Peer-to-Peer (P2P) networks are overlay networks on top of the IP network topology. The topology of an overlay is approach considers the application a P2P network is used logical, so the underlying physical topology is usually for (e.g., file sharing, telephony, media streaming etc.). Another approach includes the degree of centralization and different from the overlay topology.