|
Peer-to-peer computing, at least on a conceptual level, is a genuine paradigm
shift—intelligence is at the edge, computing is completely decentralized, and
the network is just there to knit the distributed intelligence together. Indeed,
with advancements in hardware technology, proliferation of the open source
development culture, and abundant information at our fingertips, computing
power and user competence at the edge of the network has risen to an unprecedented
level. Thus, devices at the edge (not restricted to desktop PCs)
can congregate and share their resources (computing power, file data, etc.)
to provide services to participating users in a self-sufficient manner, without
the need of dedicated servers. With potentially up to millions of machines
participating simultaneously (e.g., when some hot events are occurring), the
aggregated computing resources can dwarf any powerful server farm.
Well, well, well, ... this is “conceptual level” thinking as of now. There
are still many road blocks to such a vision, even though we do see millions
of machines working together in a P2P manner (e.g., streaming live video
events). Again, as the old saying goes, the devils are in the details. Thinking
up such a gigantic scale of shared computing resources is one thing, while
implementing the idea is definitely another. Road blocks to the grand vision
of truly global P2P sharing include architectural maintenance problems arising
from the sheer scale of the system, incentives for truthful cooperation, trust
among peers when they need to accept data from remote sources, security
issues caused by the inevitable existence of malicious users, etc.
The purpose of this book is to serve as a first-rate guide to these road
blocks of a grand vision. The problems arising from these different aspects of
P2P computing are first described in detail in the respective chapters. This
is followed by a detailed survey of proposed solutions. A major conclusion of
this book is that there is still much work to do. Perhaps this should not be
a surprise because in a sense we are trying to build a self-governing crowd
of computers sharing resources at will. Sounds like a cyberspace version of
utopia? |