review;articles
Doi: 10.1145/1831407.1831427
Within a decade, P2P has proven to be
a technology that enables innovative new
services and is used by millions of people
every day.
BY RoDRiGo RoDRiGueS anD PeteR DRuScheL
Peer-to-Peer
Systems
Peer-tO-Peer (P2P) cOMPUtinG has attracted
significant interest in recent years, originally sparked
by the release of three influential systems in 1999:
the Napster music-sharing system, the Freenet
anonymous data store, and the SETI@home volunteer-based scientific computing projects. Napster, for
instance, allowed its users to download music
directly from each other’s computers via the Internet.
Because the bandwidth-intensive music downloads
occurred directly between users’ computers, Napster
avoided significant operating costs and was able to
offer its service to millions of users for free. Though
unresolved legal issues ultimately sealed Napster’s
fate, the idea of cooperative resource sharing among
peers found its way into many other applications.
More than a decade later, P2P technology has gone
far beyond music sharing, anonymous data storage,
or scientific computing; it now enjoys significant
research attention and increasingly widespread use
in open software communities and industry alike.
Scientists, companies, and open-software
organizations use Bit Torrent to distribute bulk data such as software updates,
data sets, and media files to many
nodes; 5 commercial P2P software allows enterprises to distribute news
and events to their employees and customers; 29 millions of people use Skype
to make video and phone calls; 1 and
hundreds of TV channels are available
using live streaming applications such
as PPLive, 17 CoolStreaming, 38 and the
BBC’s iPlayer. 4
The term P2P has been defined in
different ways, so we should clarify
what exactly we mean by a P2P system.
For the purposes of this article, a P2P
system is a distributed system with the
following properties:
High degree of decentralization.
The peers implement both client and
server functionality and most of the
system’s state and tasks are dynamically allocated among the peers. There
are few if any dedicated nodes with
centralized state. As a result, the bulk
of the computation, bandwidth, and
storage needed to operate the system
are contributed by participating nodes.
Self-organization. Once a node is
introduced into the system (typically
by providing it with the IP address of a
participating node and any necessary
key insights
;;; P2P leverages the computing resources
of cooperating users to achieve
scalability and organic growth, thus
lowering the deployment barrier for
innovative new services.
;;; originally invented for music/data
sharing and volunteer computing,
P2P systems now enjoy widespread
commercial and non-commercial use
in content distribution, iPtV, and iP
telephony.
;;; the strength of P2P—its independence
of dedicated infrastructure and
centralized control—is also its
weakness, as it presents new technical,
commercial, and legal challenges.
;;; P2P technology may turn out to be most
valuable as a low-cost deployment
vector for experimental, innovative
services; those services that prove
to be commercially viable can be
subsequently combined with centralized,
infrastructure-based components.