ability and durability of data stored in
a P2P system. Even in the absence of
attacks, ensuring availability can prove
difficult due to churn. For a data object
to be available, at least one node that
stores a replica must be online at all
times. To make sure an object remains
available under churn, a system must
constantly move replicas to live nodes,
which can require significant network
bandwidth. For this reason, a practical
P2P storage system cannot simultaneously achieve all three goals of scalable
storage, high availability, and resilience to churn. 6
Another challenge is that the long-term membership of a P2P storage
system (that is, the set of nodes that
periodically come online) must be non-decreasing to ensure the durability
of stored data. Otherwise, the system
may lose data permanently, since the
storage space available among the remaining members may fall below that
required to store all the data.
Incentives. Participants in a P2P
system are expected to contribute resources for the common good of all
peers. However, users don’t necessarily
have an incentive to contribute if they
can access the service for free. Such users, called free riders, may wish to save
their own disk space, bandwidth, and
compute cycles, or they may prefer not
to contribute any content in a file-sharing system.
Free riding is reportedly widespread
in many P2P systems. For instance, in
2000 and 2001, studies of the Gnutella
system found a large fraction of free
riders. 2, 28 More recently, a study of a
DHT used in the eMule file-sharing
system found large clusters of peers
(with more than 10,000 nodes) that
had modified their client software to
produce the same node identifier for
all nodes, which means these nodes
are not responsible for any keys. 31
The presence of many free riders reduces the resources available to a P2P
system, and can deteriorate the quality
of the service the system is able to provide to its users. To address this issue,
incentive schemes have been incorporated in the design of P2P systems.
BitTorrent uses a tit-for-tat strategy, where to be able to download a file
from a peer, a peer must upload another part of the same file in return, or risk
being disconnected from that peer. 10
This provides a strong incentive for users to share their upload bandwidth,
since a peer that does not upload data
will have poor download performance.
A number of other incentive mechanisms have been proposed, which all
try to tie the quality of the service a peer
receives to how much that peer contributes. 12, 25
Managing P2P systems. Whether
P2P systems are easier to manage than
other distributed systems is an open
question.
On the one hand, P2P systems adapt
to a wide range of conditions with respect to workload and resource availability, they automatically recover
from most node failures, and participating users look after their hardware
independently. As a result, the burden
associated with the day-to-day operation of P2P systems appears to be low
compared to server-based solutions,
as evidenced by the fact that graduate
students have been able to deploy and
manage P2P systems that attract millions of users. 16
On the other hand, there is evidence that P2P systems can experience
widespread disruptions that are difficult to manage. For instance, on Aug.
16, 2007, the Skype overlay network
collapsed and remained unavailable
for several days. The problem was reportedly triggered by a Microsoft Windows Update patch that caused many
of the peers to reboot around the same
time, causing a lack of resources that,
combined with a software bug, prevented the overlay from recovering. 30
This type of problem may indicate
the lack of centralized control over
available resources and participating
nodes makes it difficult to manage
systemwide disruptions when they
occur. However, more research and
long-term practical experience with
deployed systems is needed to settle
this question.
Some of the challenges P2P systems
face (for example, data integrity and
authenticity) are largely solved, while
others (for example, membership con-
trol and incentives) have partial solu-
tions that are sufficient for important
applications. However, some problems
remain wide open (for example, data
durability and management issues).
Progress on these problems may be
necessary to further expand the range
of applications of P2P technology.
Peer-to-Peer and iSPs
Internet service providers have witnessed the success of P2P applications
with mixed feelings. On one hand, P2P
is fueling demand for network bandwidth. Indeed, P2P accounts for the
majority of bytes transferred on the
Internet. 29 On the other hand, P2P traffic patterns are challenging certain assumptions that ISPs have made when
engineering their networks and when
pricing their services.
To understand this tension, we
must consider the Internet’s structure
and pricing. The Internet is a roughly
hierarchical conglomeration of independent network providers. Local
ISPs typically connect to regional ISPs,
who in turn connect to (inter-)national
backbone providers. ISPs at the same
level of the hierarchy (so-called peer
ISPs) may also exchange traffic directly.
In particular, the backbone providers
are fully interconnected.
Typically, peer ISPs do not charge
each other for traffic they exchange directly, but customers pay for the bits
they send to their providers. An exception is residential Internet connections
that are usually offered at a flat rate by
ISPs.
This pricing model originated at a
time when client-server applications
dominated the traffic in the Internet.
Commercial server operators pay their
ISPs for the bandwidth used, who in
turn pay their respective providers.
Since residential customers rarely operate servers (in fact, their terms of
use do not allow them to operate commercial servers), it was reasonable to
assume they generate little upstream
traffic, keeping costs low for local ISPs
and enabling them to offer flat-rate
pricing.
With P2P content distribution applications, however, residential P2P
nodes upload content to each other.
Unless the P2P nodes happen to connect to the same ISP or to two ISPs that
peer directly with each other, the uploading node’s ISP must forward the
data to its own provider. This incurs
costs that the ISP cannot pass on to
its flat-rate customers. 20 As a result of
this tension, some ISPs have started to
traffic shape and even block Bit Torrent
traffic. 14 Whether network operators