80 research outputs found

    Decentralized Replication Mechanisms in Deno

    Get PDF
    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

    Get PDF
    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

    Get PDF
    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

    Get PDF
    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

    No full text
    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

    No full text
    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

    No full text
    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
    corecore