Full text | Click to download. |
Citation | PhD Thesis, Stanford University, 2004
|
Author | Beverly Yang
|
In a peer-to-peer (P2P) system, distributed computing
nodes of equal roles or capabilities exchange information and services
directly with each other. At the application level, P2P systems have
recently become a popular and effective means to pool together and
harness large amounts of resources across organizations. Examples of
existing and emerging applications include grid computing,
file-sharing, and digital libraries. At the system level, due to their
typically large scale, loose coupling and massive replication of
resources, P2P systems offer potential strengths such as
self-organization, self-healing, and robustness to failure or attacks.
Because of these many strengths, P2P systems have become a topic of
great interest in research and industry alike.
In a
resource-sharing P2P system, many components interact to provide users
with the ability to leverage the resources available in the
system. For example, a scalable payment mechanism is required to
handle transactions, while scheduling and resource allocation
algorithms are needed by users to plan their budget. In this thesis,
we focus on resource discovery -- the key initial component required
to allow effective location of desired resources across peers.
The design of a scalable and efficient P2P resource discovery
mechanism presents several challenges in the areas of performance,
participation and correctness. With regards to performance, in this
thesis we present new algorithms for efficient query routing and data
source selection, and study the most effective application of existing
indexing techniques. With regards to participation, we propose an
incentive-compatible query-forwarding protocol, and present an
efficient micropayment scheme that may be used as a foundation for any
economic application or resource discovery mechanism. Finally, with
regards to correctness, we present possible attacks against our
techniques and show the techniques to be robust. All our techniques
are thoroughly evaluated over a file-sharing application model, which
we derive from large-scale measurement experiments over live,
operational P2P systems.