Peer-to-Peer Networks
Download
Report
Transcript Peer-to-Peer Networks
Measurements of
Peer-to-Peer Systems
Pradnya Karbhari
Nov 25th, 2003
CS 8803: Network Measurements Seminar
Introduction to Peer-to-Peer (P2P)
systems
End-systems (or peers), are capable of behaving as
clients and servers of data, hence system is scalable
and reliable
Peers participation is voluntary, membership is dynamic,
hence topology keeps changing
Most popularly used for file sharing, hence peer-to-peer
systems have become synonymous with peer-to-peer
file sharing networks
Classification of P2P systems
P2P computation (e.g. seti@home)
P2P communication (instant messaging)
P2P file-sharing networks
Centralized (e.g. Napster)
Decentralized
Structured (e.g. Chord, CAN, Pastry, Tapestry)
Unstructured (e.g. Gnutella, Kazaa, Freenet, eDonkey,
eMule, Direct Connect, …)
Popularity of unstructured
decentralized P2P networks
Gnutella host count,
maintained by Limewire
(http://www.limewire.com)
good scope for measurement
studies because:
deployed
and widely used
use a lot of bandwidth during
data transfer, hence a
concern for network operators
quite a few measurement
studies have been done on
these systems, some of
which we will discuss in this
seminar
Outline
Characterization of users of P2P systems
Effect of P2P traffic on the underlying network
Ripeanu, et.al., “Mapping the Gnutella Network: Properties of Large-Scale
Peer-to-Peer Systems and Implications for System Design”, IEEE Internet
Computing, 2002.
Searching on the P2P network
Sen, et.al., “Analyzing peer-to-peer traffic across large networks”, IMW’02
Peer-to-Peer Topologies
Saroiu, et.al., “A Measurement Study of Peer-to-Peer File Sharing
Systems”, MMCN, 2002.
Sripanidkulchai, “The popularity of Gnutella queries and its implications on
scalability”, 2001
Deciphering proprietary P2P systems (like Kazaa)
Leibowitz, et.al., “Deconstructing the Kazaa Network”, WIAPP, 2003.
Gnutella protocol overview
Connecting to the Gnutella network
Searching on the network
bootstrap using GWebCache system and locally cached hostlist
Ping/Pong messages are exchanged with potential neighbors
Query messages are flooded on the network
QueryHit messages are received (back-propagated along Query
path) from peers having the requested content
Downloading the content
peers download files directly from peers having the requested
content
Characterization of Users of P2P
systems
S. Saroiu, P. Gummadi and S. Gribble, “A Measurement
Study of Peer-to-Peer File Sharing Systems”, MMCN’02.
first paper to characterize p2p file sharing systems
Goal: To analyze the following user characteristics
latency
lifetime of peers
bottleneck bandwidth
number of files shared and downloaded
degree of cooperation
methodology: active crawling
systems studied: Napster and Gnutella
data collection: May 2001
Measurement Methodology
active crawling of the Napster and Gnutella systems
Napster: issued queries for popular content, and then queried
central server for peer information
Gnutella: used ping/pong messages in protocol to get metadata
about peers, and then their neighbors and so on
parallel measurement for:
peer lifetime- periodic probing of peers obtained from crawlers
offline if no response to TCP SYN
inactive if response to TCP SYN is a TCP RST
active if accepts the incoming TCP connection on that port
latency- RTT measurements from one host
bottleneck link bandwidth- active probing using Sprobe, a tool
they developed based on packet-pair dispersion technique
Saroiu et.al., “A Measurement Study of Peer-to-Peer File Sharing Systems”, MMCN, 2002
Host Lifetime analysis
20% peers in Napster, Gnutella have IP-level uptime of 93% or more
Napster peers have higher application uptimes than Gnutella peers
the best 20% of Napster peers have uptime of 83% or more and the
best 20% of Gnutella peers have uptime of 45% or more
median session duration is 60 minutes for Napster and Gnutella
Saroiu et.al., “A Measurement Study of Peer-to-Peer File Sharing Systems”, MMCN, 2002
Latency analysis (Gnutella)
20% peers have a latency of at most 70ms and 20% have a latency
of at least 280ms
correlation between downstream bottleneck bandwidth and latency:
two clusters for modems (20-60Kbps, 100-1000ms) and broadband
(1Mbps, 60-300ms)
Saroiu et.al., “A Measurement Study of Peer-to-Peer File Sharing Systems”, MMCN, 2002
Bottleneck Bandwidth Analysis
(Gnutella)
92% Gnutella peers
have downstream
bottleneck bandwidth
of at least 100Kbps
22% peers have
upstream bottleneck
bandwidth of 100Kbps
or less
peers are unsuitable
to serve content
Saroiu et.al., “A Measurement Study of Peer-to-Peer File Sharing Systems”, MMCN, 2002
Downloads, Uploads and Shared Files
relative number of
downloads and
uploads varies
significantly across
bandwidth classes
clear client/server
behavior of
different classes
Saroiu et.al., “A Measurement Study of Peer-to-Peer File Sharing Systems”, MMCN, 2002
Shared files v/s Shared Data
(Napster and Gnutella)
Strong correlation between number of files shared and amount of
shared MB of data
slope of both lines is 3.7MB, the size of a typical MP3 audio file
Saroiu et.al., “A Measurement Study of Peer-to-Peer File Sharing Systems”, MMCN, 2002
Degree of Cooperation (Napster)
30% of the peers
report bandwidth as
64Kbps or less, but
actually have
significantly higher
bandwidths
10% of the peers
reporting higher
bandwidths (3Mbps or
higher) actually have
significantly lower
bandwidth
Saroiu et.al., “A Measurement Study of Peer-to-Peer File Sharing Systems”, MMCN, 2002
Effect of P2P traffic on underlying
network
S. Sen and J. Wang, “Analyzing peer-to-peer traffic across
large networks”, IMW 2002.
Goal: To characterize p2p traffic at three aggregation levelsIP, prefix and AS
host distribution and host connectivity
traffic volume and mean bandwidth usage
traffic patterns over time
connection duration and on-time methodology: passive
measurements at routers (port based)
systems studied: FastTrack(Kazaa), Gnutella, Direct Connect
analysis of flow-level data collected from multiple border
routers across a large tier-1 ISP’s backbone
Measurement Methodology
flow records from multiple border routers matching ports:
processed data to eliminate
6346/6347: Kazaa
1214: FastTrack
411/412: Direct Connect
private IP addresses
invalid AS numbers
final data set contained 800 million flow records
S. Sen and J. Wang, “Analyzing peer-to-peer traffic across large networks”, IMW, 2002
Datasets used for analysis
FastTrack is most popular in terms of number of hosts participating
and average traffic volume per day
rapid growth of P2P traffic is mainly caused by increasing number of
hosts in the system
Direct Connect systems have higher traffic volume per IP address
S. Sen and J. Wang, “Analyzing peer-to-peer traffic across large networks”, IMW, 2002
Host distribution analysis
# of IP addresses in FastTrack
ranges from 0.5 to 2 million
ratio of # of IP addresses in
FastTrack:Gnutella:DirectConnect
is 150:30:1
Density of a prefix is the number
of unique active IP addresses
belonging to it
Density of an AS is the number of
unique prefixes belonging to it
FastTrack hosts are distributed
more densely than Gnutella and
Direct Connect hosts (64:16:4)
S. Sen and J. Wang, “Analyzing peer-to-peer traffic across large networks”, IMW, 2002
Host connectivity analysis (FastTrack)
48% of individual IPs
communicate with at most one IP
and 89% with at most 10 IPs
75% of prefixes and ASes
communicate with at least 2
prefixes or ASes
very few hosts have very high
connectivity and most hosts have
very low connectivity
S. Sen and J. Wang, “Analyzing peer-to-peer traffic across large networks”, IMW, 2002
Traffic volume analysis
CDF of traffic volume per
IP/prefix/AS for FastTrack (one day)
distribution of P2P upstream traffic
volume across three months
S. Sen and J. Wang, “Analyzing peer-to-peer traffic across large networks”, IMW, 2002
Mean bandwidth usage
(FastTrack and Direct Connect)
FastTrack: 33% IP addresses have mean downstream b/w 56Kbps
or less; 50% have mean upstream b/w 56Kbps or less
Direct Connect: 20% IP addresses have mean downstream b/w
56Kbps or less; 33% have mean upstream b/w 56Kbps or less
S. Sen and J. Wang, “Analyzing peer-to-peer traffic across large networks”, IMW, 2002
Traffic patterns over time (FastTrack)
traffic volume transferred every hour among FastTrack hosts
number of unique IP addresses, prefixes, ASes active every hour
number of active unique IP addresses in each bin of various sizes
system is very dynamic- hosts join and leave frequently
S. Sen and J. Wang, “Analyzing peer-to-peer traffic across large networks”, IMW, 2002
Connection duration and On-time
(FastTrack)
50% of the IPs are online for less than one minute/day
60% IPs, 40% prefixes, 30% ASes stay for less than 10 mins/day
65% of the IPs join only once
AS, prefix level- not very transient
S. Sen and J. Wang, “Analyzing peer-to-peer traffic across large networks”, IMW, 2002
Peer-to-Peer Topologies
M. Ripeanu, I. Foster and A. Iamnitchi, “Mapping the
Gnutella Network: Properties of Large-Scale Peer-toPeer Systems and Implications for System Design”,
IEEE Internet Computing Journal, 2002.
Goal: To discover and analyze the Gnutella overlay
topology and evaluate generated traffic
methodology: active crawling
datasets: Nov 2000, March 2001 and May 2001
Gnutella Network Growth
number of nodes
in the largest
connected
component in the
Gnutella network
significantly larger
network found
during Memorial
Day and
Thanksgiving
50 times increase
within 6 months
Ripeanu, et.al., “Mapping the Gnutella Network: Properties of Large-Scale Peer-to-Peer
Systems”, 2002
Distribution of node-to-node shortest
paths
more than 95%
node pairs are at
most 7 hops away
longest node-tonode path is 12
hops
Ripeanu, et.al., “Mapping the Gnutella Network: Properties of Large-Scale Peer-to-Peer
Systems”, 2002
Averag node connectivity
average number
of connections
per node remains
constant = 3.4
Ripeanu, et.al., “Mapping the Gnutella Network: Properties of Large-Scale Peer-to-Peer
Systems”, 2002
Node connectivity distribution
Nov 2000: Gnutella nodes organize themselves in a power law
March 2001: connectivity does not look like a power law for all
nodes; power law distribution is preserved for nodes with more than
10 links; for less than 10 links, the distribution is almost constant
Ripeanu, et.al., “Mapping the Gnutella Network: Properties of Large-Scale Peer-to-Peer
Systems”, 2002
Searching on the P2P network
K. Sripanidkulchai, “The popularity of Gnutella queries
and its implications on scalability”, 2001, http://www2.cs.cmu.edu/~kunwadee/research/p2p/gnutella.html
methodology: passive measurements at one or two
peers, made part of the Gnutella network, to log queries
and query messages routed through it
data sets: Dec 2000, Jan 2001
Top 20 most popular query types
17% queries contained
non-ASCII stringsfiltered them out
most queries for artists,
adult content and file
extensions (audio)
some queries for books,
software etc.
K. Sripanidkulchai, “The popularity of Gnutella queries and its implications on scalability”,
2001.
Query popularity distribution
two distinct distributions
of document popularity,
with a break at query
rank 100
most popular documents
are equally popular
less popular documents
follow a Zipf-like
distribution, with alpha
beween 0.63 and 1.24
K. Sripanidkulchai, “The popularity of Gnutella queries and its implications on scalability”,
2001.
Deciphering proprietary P2P systems
Leibowitz, M. Ripeanu and A. Wierzbicki,
“Deconstructing the Kazaa Network”, WIAPP, 2003.
methodology: passive content-based data collection at a
caching server installed at the border of a large ISP
L4 switch inspects first few packets of each TCP
connection to detect Kazaa download traffic
redirects Kazaa download traffic through caching server
focus on download traffic only, not control traffic (since it
is encrypted)
Characteristics of Collected Traces
38% of all download sessions do not use standard Kazaa port
(1214)
Leibowitz, M. Ripeanu and A. Wierzbicki, “Deconstructing the Kazaa Network”, WIAPP, 2003
File download distribution by bytes
CDF of byte popularity distribution for 10%, 1% most popular files
0.8 % of all files account for 80% of the generated traffic
0.1% of the most bandwidth hungry files (top 1% of all files)
generate 50% traffic
Leibowitz, M. Ripeanu and A. Wierzbicki, “Deconstructing the Kazaa Network”, WIAPP, 2003
File size distribution
note the log-scale on
X-axis
3 distinct modes
100KB for pictures
2-5MB for music files
700MB for movies
Leibowitz, M. Ripeanu and A. Wierzbicki, “Deconstructing the Kazaa Network”, WIAPP, 2003
Quantity and Rate of Distinct Files
new files seen at different time scales- every day, hour, minute
150,000 distinct files during a 17-day period
daily graph: new files seen continued to decrease, but no steady
state value (rate of injection of files in the network) achieved
hourly graph: time of day effect
per-minute graph: 50 new files seen every minute on an average
Leibowitz, M. Ripeanu and A. Wierzbicki, “Deconstructing the Kazaa Network”, WIAPP, 2003
Rate of change of popularity of files
percentage of files that make it to the N most popular files list- (a) in
consecutive intervals and (b) after T intervals, compared with first list
measurement interval is 24 hours
15% of the highly popular files remain popular throughout the
experiment, and the rest are popular at short time intervals
Leibowitz, M. Ripeanu and A. Wierzbicki, “Deconstructing the Kazaa Network”, WIAPP, 2003
Open Questions
Mapping a global snapshot of the entire Gnutella
topology
Bootstrapping of peers in unstructured peer-to-peer
systems (work in progress)
More efficient searching on P2P networks- efforts in this
direction include random walks, bloom-filter based
techniques etc.
End-point privacy/anonymity is absent in most of these
peer-to-peer networks
References
Papers covered in the seminar:
S. Saroiu, P. Gummadi and S. Gribble, “A Measurement Study of Peer-to-Peer File Sharing
Systems”, MMCN 2002.
S. Sen and J. Wang, “Analyzing peer-to-peer traffic across large networks”, IMW 2002.
M. Ripeanu, I. Foster, A. Iamnitchi, “Mapping the Gnutella Network: Properties of Large-Scale
Peer-to-Peer Systems and Implications for System Design”, IEEE Internet Computing, 2002.
Sripanidkulchai, “The popularity of Gnutella queries and its implications on scalability”, 2001.
N. Leibowitz, M. Ripeanu, A. Wierzbicki, “Deconstructing the Kazaa Network”, WIAPP 2003.
Papers not covered in the seminar:
J. Chu, K.Labonte and B. Levine, “Availability and Locality Measurements of Peer-to-Peer File
Systems”, SPIE, July 2002.
F. Bustamante and Y. Qiao, “Friendships that last: Peer lifespan and its role in P2P protocols”,
WCW 2003.
R. Bhagwan, S. Savage and G. Voelker, “Understanding Availability”, IPTPS 2003.
Saroiu, et.al., “An Analysis of Internet Content Delivery Systems”, OSDI 2002.
Markatos et.al., “Tracing a large-scale Peer-to-Peer System: An hour in the life of Gnutella”,
CCGrid 2002.