20 research outputs found

    Disseminating Active Map Information to Mobile Hosts

    No full text
    Mobile computing differs from desk-top computing because of the dynamic nature of system state: as users move, the sets of stationary and mobile objects they control and the types of information they wish to access change. Navigating a mobile environment can be aided by active maps that describe the location and characteristics of objects within some region as they change over time. We describe an active map service that keeps clients informed of changes in their environment. The primary issue driving our design is the question of scale: an active map service must be able to handle updates and queries over sufficiently large regions of space to satisfy clients' interests and must be able to handle peak loads that can occur when everyone in a region is moving around, for example, to attend a meeting. Our solution detects sets of clients that wish to receive the same active map information and then dynamically assigns multicast groups to them. To guarantee clients that they and the..

    Customizing Mobile Applications

    No full text
    The dynamics of mobile systems require applications to intelligently adapt to changes in system configurations and to their environment. We describe a workplace in which users interact with a number of stationary and mobile systems through the course of a day. The relationship between systems and devices is constantly changing due to user mobility. We present a facility for mobile application customization called "dynamic environment variables." The facility allows flexible sharing of customization contexts, supports short interactions with long term services, and provides efficient notification of environment changes to applications. A sample application built in PARC's mobile computing environment and initial performance evaluations are described. 1 Introduction Mobile computing differs from desktop computing because of the dynamic nature of system state. In our research lab mobile users interact with mobile computers as well as a world of stationary and embedded systems [8]. As use..

    Dealing with Server Corruption in Weakly Consistent, Replicated Data Systems

    No full text
    Providing high availability and the ability to share data despite the weak connectivity of mobile computing raises the problem of trusting replicated data servers that may be corrupt. This is because servers must be run on portable computers, and these machines are less secure and thus less trustworthy than those traditionally used to run servers. We describe the kinds of problems one must be prepared to deal with, noting that even users of secured, non-portable computers are at risk if servers trust all authorized peers. We show that high availability through data replication on portable computers need not be mutually exclusive with various levels of data security one might want. We give three solutions to this trust problem, achieving progressively higher levels of security with progressively higher costs. 1. Introduction Several existing systems, such as Ficus [1], Lotus Notes [2], and Bayou [3, 4], address the weak connectivity characteristics of mobile computing environments by a..

    Designing and Implementing Asynchronous Collaborative Applications with Bayou

    No full text
    Asynchronous collaboration is characterized by the degree of independence collaborators have from one another. In particular, collaborators working asynchronously typically have little need for frequent and fine-grained coordination with one another, and typically do not need to be notified immediately of changes made by others to any shared artifacts they are working with. We present an infrastructure, called Bayou, designed to support the construction of asynchronous collaborative applications. Bayou provides a replicated, weakly-consistent, data storage engine to application writers. The system supports a number of mechanisms for leveraging application semantics; using these mechanisms, applications can implement complex conflict detection and resolution policies, and choose the level of consistency and stability they will see in their databases. We present a number of applications we have built or are building using the Bayou system, and examine how these take advantage of the Bayo..

    The Case for Non-transparent Replication: Examples from Bayou

    No full text
    Applications that rely on replicated data have different requirements for how their data is managed. For example, some applications may require that updates propagate amongst replicas with tight time constraints, whereas other applications may be able to tolerate longer propagation delays. Some applications only require replicas to interoperate with a few centralized replicas for data synchronization purposes, while other applications need communication between arbitrary replicas. Similarly, the type of update conflicts caused by data replication varies amongst applications, and the mechanisms to resolve them differ as well. The challeng

    Flexible Update Propagation for Weakly Consistent Replication

    No full text
    Bayou's anti-entropy protocol for update propagation between weakly consistent storage replicas is based on pair-wise communication, the propagation of write operations, and a set of ordering and closure constraints on the propagation of the writes. The simplicity of the design makes the protocol very flexible, thereby providing support for diverse networking environments and usage scenarios. It accommodates a variety of policies for when and where to propagate updates. It operates over diverse network topologies, including low-bandwidth links. It is incremental. It enables replica convergence, and updates can be propagated using floppy disks and similar transportable media. Moreover, the protocol handles replica creation and retirement in a light-weight manner. Each of these features is enabled by only one or two of the protocol's design choices, and can be independently incorporated in other systems. This paper presents the anti-entropy protocol in detail, describing the design decisions and resulting features
    corecore