80 research outputs found
Decentralized Replication Mechanisms in Deno
We are currently finalizing the design of Deno, a new shared-object system
intended for use with repli-cated mobile and wide-area data. The broad aim
of our research is to develop a framework for highly-available,
decentralized shared-object protocols. The key idea is that our protocols
will support high availability through a distributed voting
scheme. Specifically, we will investigate (a) peer-to-peer up-dates, which
will allow incremental progress to be made in the absence of full
connectivity between com-ponent servers, (b) voting rather than centralized
schemes for committing updates, ensuring that no sin-gle point of failure
can prevent updates from being committed, and (c) application-specific
consistency control, allowing applications to relax coherency constraints
in ways that do not break the application's notion of consistency.
Distribution and multiple connectivity modes are becoming the norm rather
than the exception in current computing environments. Thus, we expect the
impact of our research to be felt in areas as disparate as mobile computing
and collaborative data warehousing on the Internet. (Also cross-referenced
as UMIACS-TR-98-54
A Security Infrastructure for Mobile Transactional Systems
In this paper, we present an infrastructure for providing secure transactional
replication support for peer-to-peer, decentralized databases. We first
describe how to effectively provide protection against external threats,
malicious actions by servers not authorized to access data, using conventional
cryp-tography-based mechanisms. We then classify and present algorithms that
provide protection against internal threats, malicious actions by authenticated
servers that misrepresent protocol-specific infor-mation. Our approach to
handling internal threats uses both cryptographic techniques and modifica-tions
to the update commit criteria. The techniques we propose are unique in that
they not only enable a tradeoff between performance and the degree of tolerance
to malicious servers, but also allow for indi-vidual servers to support
non-uniform degrees of tolerance without adversely affecting the performance of
the rest of the system.
We investigate the cost of our security mechanisms in the context of Deno: a
prototype object replica-tion system designed for use in mobile and
weakly-connected environments. Experimental results reveal that protecting
against internal threats comes at a cost, but the marginal cost for protecting
against larger cliques of malicious insiders is generally low. Furthermore,
comparison with a decentralized Read-One Write-All protocol shows that our
approach performs significantly better under various workloads.
(Also cross-referenced as UMIACS-TR-2000-59
Matching Jobs to Resources in Distributed Desktop Grid Environments
Desktop grids use opportunistic sharing to exploit large collections
of personal computers and workstations across the Internet and can
achieve tremendous computing power with low cost.
However, current systems are typically based on a traditional client-server
architecture, which has inherent shortcomings with respect to robustness,
reliability and scalability. In this paper, we propose a decentralized,
robust, highly available, and scalable infrastructure to match incoming
jobs to available resources. The key idea behind our proposed system is to
leverage information provided by an underlying peer-to-peer system to
create a hierarchical Rendezvous Node Tree, which performs the matching
efficiently. Our experimental results obtained via simulation show that we
can effectively match jobs with varying levels of resource constraints to
available nodes and maintain good load balance in a fully decentralized
heterogeneous computational environment
Using Content-Addressable Networks for Load Balancing in Desktop Grids
Desktop grids combine Peer-to-Peer and Grid computing techniques to improve
the robustness, reliability and scalability of job execution
infrastructures.
However, efficiently matching incoming jobs to available system resources
and achieving good load balance in a fully decentralized and heterogeneous
computing environment is a challenging problem.
In this paper, we extend our prior work with a new decentralized algorithm
for maintaining approximate global load information, and a job pushing
mechanism that uses the global information to push jobs towards
underutilized portions of the system.
The resulting system more effectively balances load and improves overall
system throughput.
Through a comparative analysis of experimental results across different
system configurations and job profiles, performed via simulation, we show
that our system can reliably execute Grid applications on a distributed set
of resources both with low cost and with good load balance
Decentralized Replicated-Object Protocols
We describe a new replicated-object protocol designed for use in mobile and weakly-connected environments. The protocol differs from previous protocols in combining epidemic information propagation with voting, and in using fixed per-object currencies for voting. The advantage of epidemic protocols is that data movement only requires pairwise communication. Hence, there is no need for a majority quorum to be available and simultaneously connected at any single time. The protocols increase availability by using voting, rather than primary copy or primary commit schemes. Finally, the use of per-object voting currencies allows votes to take place in an entirely decentralized fashion, without any server having complete knowledge of group membership. We show that currency allocation can be used to implement diverse policies. For example, uniform currency distributions emulate traditional dynamic voting schemes, while allocating all currency to a single server emulates a primary-copy scheme..
A High-Level Abstraction of Shared Accesses
ion of Shared Accesses Peter J. Keleher [email protected] Department of Computer Science University of Maryland College Park, MD 20742 Key words: shared memory, DSM, programming libraries, update protocols We describe the design and use of the tape mechanism, a new high-level abstraction of accesses to shared data for software DSMs. Tapes consolidate and generalize a number of recent protocol optimizations, including update-based locks and record-replay barriers. Tapes are usually created by "recording" shared accesses. The resulting recordings can be used to anticipate future accesses by tailoring data movement to application semantics. Tapes-based mechanisms are layered on top of existing shared memory protocols, and are largely independent of the underlying memory model. Tapes can also be used to emulate the data-movement semantics of several update-based protocol implementations, without altering the underlying protocol implementation. We have used tapes to create the Tape..
1. Overview
My research is primarily in the field of “distributed systems”. Loosely defined, this encompasses work in operating systems, runtime systems, and distributed object and database systems. In all cases, my approach is to identify problems, propose solutions in the form of specific policies and mechanisms, and then empirically evaluate them. I am a systems builder: very few projects end in analysis or simulation. The systems that I study often operate in fluid, dynamic environments. Simply put, I try to make systems operate better in such circumstances. Central to my approach is the notion of building systems that transparently adapt applications to changing conditions. In the CVM (Coherent Virtual Machine) and Deno (Decentralized Network Objects) projects, the barriers to such adaptation derive from consistency constraints of replicated state. Strong consistency requirements force all copies of shared state to be maintained in identical, or nearly identical, versions. These requirements are relaxed by letting the underlying system temporarily leave copies inconsistent, thereby allowing expensive network communication operations to be delayed, aggregated, and possibly even omitted altogether. In the Active Harmony project, the barriers to adaptation are rigid execution models that statically define all parameters of application execution. We break these barriers down by allowing applications to export detailed application alternatives to the system, which can then adapt the application to available resources either at application startup or during execution. The Sections 2-4 discuss each of my three major projects, and Section 5 concludes with current and future work. Note that references to papers written by other researchers are included only when absolutely necessary to establish context. This is in no way an attempt to construe my work as the only relevant work in these areas. The purpose of this document is to discuss the work that I have done, not to review entire fields
- …