What is P2P?
“the sharing of computer resources and services by
direct exchange of information”
2
3.
What is P2P?
Various definitions seem to agree on
sharing of resources
direct communication between equals (peers)
no centralized control
3
4.
What is apeer?
“…an entity with capabilities similar to other
entities in the system.”
4
5.
Client/Server Architecture
Wellknown, powerful,
reliable server is a data
source
Clients request data
from server
Very successful model
WWW (HTTP), FTP, Web
services, etc.
Server
Client
Client Client
Client
Internet
5
6.
Client/Server Limitations
Scalabilityis hard to achieve
Presents a single point of failure
Requires administration
P2P systems try to address these limitations
6
7.
P2P Architecture
Allnodes are both clients
and servers
Provide and consume data
Any node can initiate a
connection
No centralized data source
“The ultimate form of
democracy on the Internet”
“The ultimate threat to copy-
right protection on the
Internet”
Node
Node
Node Node
Node
Internet
7
8.
P2P Network Characteristics
Clients are also servers and routers
Nodes contribute content, storage, memory, CPU
Nodes are autonomous (no administrative authority)
Network is dynamic: nodes enter and leave the network
“frequently”
Nodes collaborate directly with each other (not through well-
known servers)
8
Popular file sharingP2P Systems
BitTorrent
Large scale sharing of files.
User A makes files (music, video, etc.) on their computer
available to others
User B connects to the network, searches for files and
downloads files directly from user A
Issues of copyright violation
10
Structured
original “Napster” design
-when peer connects, it informs
central server:
IP address
content
2) User B searches for file
3) User B requests file from
User A
centralized
directory server
peers
User B
User A
1
1
1
1
2
3
12
Napster: how doesit work
Four steps:
Connect to Napster server
Upload your list of files to server.
Give server keywords to search the full list with.
Select “best” of correct answers.
14
Unstructured
Fully distributed
no central server
Used by KaZaa
Each peer indexes the files it makes available for sharing
(and no other files)
19
KaZaa
file dividedinto 256KB chunks.
while downloading, peer uploads chunks to other peers.
peers may come and go
once peer has entire file, it may leave or remain
21
Issues with P2P
Free Riding
Downloading but not sharing any data
On BitTorrent
15% of users contribute 94% of content
63% of users never responded to a query
No ranking: what is a trusted source?
23