system. To achieve such a distribution, the system can randomize both
the choice of block to download and
the choice of a neighbor from whom
to request the block. In one possible
strategy, a node chooses to download
the rarest block among all blocks held
by its overlay neighbors. 10
The best known and original
swarming protocol for bulk content
distribution is BitTorrent. 10 Examples
of swarming protocols used for streaming content include PPLive17 and the
original version of CoolStreaming. 38
challenges
Much of the promise of P2P systems
stems from their independence of dedicated infrastructure and centralized
control. However, these very properties also expose P2P systems to some
unique challenges not faced by other
types of distributed systems. Moreover,
given the popularity of P2P systems,
they become natural targets for misuse
or attack. Here, we give an overview of
challenges and attacks that P2P systems may face, and corresponding defense techniques. As you will see, some
of the issues have been addressed to
varying degrees, and others remain
open questions.
Controlling membership. Most P2P
systems have open or loosely controlled
membership. This lack of strong user
identities allows an attacker to populate a P2P system with nodes under
his control, by creating many distinct
identities (such action was termed a
Sybil attack15). Once he controls a large
number of “virtual” peers, an attacker
can defeat many kinds of defenses
against node failure or misbehavior,
for example, those that rely on replication or voting. For instance, an attacker
who wishes to suppress the value associated with some key k from a DHT can
add virtual nodes to the system until
he controls all of the nodes that store
replicas of the value. These nodes can
then deny the existence of that key/
value pair when a get operation for key
k is issued.
Initial proposals to address Sybil
attacks required proof of work (for ex-
ample, solving a cryptographic puzzle
or downloading a large file) before a
new node could join the overlay. 15, 34
While these approaches limit the rate
at which an attacker can obtain iden-
tities, they also make it more difficult
for legitimate users to join. Moreover,
an attacker with enough resources or
access to a botnet can still mount Sybil
attacks.