Peer-to-Peer (P2P) is not a new concept but it is not just limited to file distributed resources to perform a critical function in a decentralized manner. P2P aims at avoiding the dependency on centralized points, providing direct communication between peers, enabling resource aggregation and exchange of services. With the growth of unstructured P2P networks like Napster, Gnutella etc., large scale distributed applications such as distributed data storage and cooperative backup are gaining interest
Peer to Peer Technologies
Peer-to-peer (P2P) computing or networking is a distributed application architecture that partitions tasks or work loads between peers. Peers are equally privileged, equipotent participants in the application. They are said to form a peer-to-peer network of nodes.
Peers make a portion of their resources, such as processing power, disk storage or network bandwidth, directly available to other network participants, without the need for central coordination by servers or stable hosts. Peers are both suppliers and consumers of resources, in contrast to the traditional client–server model where only servers supply, and clients consume
What is P2P?
Peer-to-Peer computing put in a simple way is described is the sharing of computer resources and services by direct exchange between systems.
Peer (Servent) - this is defined as a computer that has both Client and Server roles. It is also called a Servent with the same meaning as above.
All peers in P2P network are the same.
Data and computation is decentralized.
Search for information in P2P networks is more relevant compared to static searches (such as Google or Yahoo).
Peers and their connections are volatile
– no central coordination
– no central database
– no peer has a global view of the
– global behavior emerges from local
– all existing data and services are
accessible from any peer
– peers are autonomous
– peers and connections are unreliable
Types of P2P System (Apps)
– eBay, B2B market places…
File sharing systems
– Napster, Gnutella, Freenet, …
– Mariposa [Stonebraker96], …
– Mobile ad-hoc networks
Easy to modify or upgrade the system with minimum effort
A high need for performance quality
A high ask on the Usability quality
Flexible enough to handle infinite requests form peers - scalability
The principle of remote access
Each peer provides a basic set of core services.
Using the some protocols(http, ftp…) peers link together in networks to share information and services
Call and Return Style
- Object Oriented system (wait until the other component replies)
- Layered Architecture
(when the task can be divided )
Examples of P2P Systems
Existing P2P systems Napster
OceanStore Farsite FastTrack Tornado Chord CAN Gridella
A.Vidya Sagar Reddy
PEER-TO-PEER (P2P) technology is heavily used for content distribution applications. P2P technology tries to solve the issue of scalability by making the system distributed. Each computer (peer) in the network can act as both a server and a client at the same time. When a peer completes downloading some files from the network, it can become a server to service other peers in the network. It is obvious that as time goes on, the service capacity of the entire network will increase due to the increase in the number of servicing peers. With this increasing service capacity, theoretical studies have shown that the average download time for each user in the network is much shorter than that of a centralized network architecture in ideal cases . In other words, users of a P2P network should enjoy much faster downloads
Scope of the Project
The system is effectively used in out sourcing service(BPO), Network in LAN connection.
Data consists of text, documents, image are transmitted through network, which increases the packet transmission that led to increases the traffic.
So traffic is nothing but increasing the packet information that information should be analysis and displays it graphically.
It is a network based project and it reduces the network traffic which transfer the speed.
Content distribution is a centralized one, where the content is distributed from the centralized server to all clients requesting the document.
Clients send request to the centralized server for downloading the file.
Server accepts the request and sends the file as response to the request.
In most client-server setups, the server is a dedicated computer whose entire purpose is to distribute files
• Present Widely Used System
Peer-to-peer content distribution provides more resilience and higher availability through wide-scale replication of content at large numbers of peers.
A P2P content distribution community is a collection of intermittently-connected nodes with each node contributing storage, content and bandwidth to the rest of the community
The peer-to-peer file sharing networks had a centralized server system. This system controls traffic amongst the users.
Peer to Peer Network
• Limitations of Approach via Average Capacity
• Heterogeneity of Service Capacity
• Correlations in Service Capacity
• Suppose that a downloading peer wants to download a file of size F from N possible source peers
• Let ci be the average end-to-end available capacity between the downloading peer and its source peer
• Here we need to remember that the actual value of ci is unknown before the downloading peer actually connects to the source peer I
the avg service capacity c--=sumi=1 to n (ci/N)
avg down load time T= F/ c—
Here F is file size
Impact of Heterogeneity
• Consider two source peers with service capacities of c1=100 kbps and c2=150kbps
• Assume one downloading peer in the n/w
• In this situation, the average capacity that the download peer expects from the n/w is
• if the file size F is 1MB
• The actual download time is
• Hence the spital heterogeneity actually makes the average download time longer
• Impact of Correlations in Service Capacity
• Assume now the average service capacity can be known before the downloading peer makes the connection
• To minimize the download time, we choose the source peer2 as its average capacity is higher than1.
• Assume that service capacity of source peer2 is not constant, but it is 50 or 250kbps with equal probability
• but really the time taken is
• If we choose source peer1 it takes only 80sec
• Hence capacity fluctuation in time will need to be taken into account, ever for finding a source peer with minimum download time.
• Minimizing Average Download Time
• Since the service of each source peer is different and fluctuates over time, utilizing different source peers either simultaneously or sequentially within one download session would be a good idea to diversify the risk.
• Parallel downloading improves the performance by reducing the file size over the “worst” source peer and also may increase the service capacity one receives from the network by utilizing “unused” capacity of the source peers.
• Here we want analyze three situations
Random chunk based switching
Random time-based (periodic) switching
Effect of parallel downloading
• Parallel downloading is one of the most noticeable way to reduce the download time.
• If the file F is divided into k chunks of equal size and k simultaneous connections are used, the capacity for this download session becomes
• Hence download time for parallel downloading is given by
Max(t1,t2,t3…tk) rather than F/(c1+c2+….+ck)
• So parallel download is better than single download
Random Chunk-Based Switching
• In the random chunk-based switching scheme, the file of interest is divided into many small chunks just as in the parallel download scheme.
• A user downloads chunks sequentially one at a time, when ever a user completes a chunk from its current source peer, the user randomly selects a new source peer and connects to it retrieve a new chunk.
• In this way, if the downloader is currently strut with a bad source peer, it stay there for only the amount of time required for finishing one chunk.
• Intuitively switching source peers based on chunk can reduce the correlation in service capacity between chunks and hence the average download time
Processor : Pentium-IV
RAM : 512MB
Hard Disk : 40GB
Operating System : Windows XP
Software : JAVA (JDK 1.5.0),Swings
Protocol : UDP