Context consistency checking, the checking of specified constraint on properties of contexts, is essential to context-aware applications. In order to delineate and adapt to dynamic changes in the pervasive computing environment, context-aware applications often need to specify and check behavioral consistency constraints over the contexts. This problem is challenging mainly due to the distributed and asynchronous nature of pervasive computing environments. Specifically, the critical issue in checking behavioral constraints is the temporal ordering of contextual activities. The contextual activities usually involve multiple context collecting devices, which are fully-decentralized and interact in an asynchronous manner. However, existing context consistency checking schemes do not work in asynchronous environments, since they implicitly assume the availability of a global clock or relay on synchronized interactions. To this end, we propose the Ordering Global Activity (OGA) algorithm, which detects the ordering of the global activities based on predicate detection in asynchronous environments. The essence of our approach is the message causality and its on-the-fly coding as logic vector clocks in asynchronous environments. We implement the Middleware Infrastructure for Predicate detection in Asynchronous environments (MIPA), over which the OGA algorithm is implemented and evaluated. The evaluation results show the impact of asynchrony on the checking of behavioral consistency constraints, which justifies the primary motivation of our work. They also show that OGA can achieve accurate checking of behavioral consistency constraints in dynamic pervasive computing environments.
Many existing studies on context-aware computing are concerned with middleware infrastructures that support collection and management of contexts @cite_31 @cite_27 @cite_25 @cite_17 @cite_11 @cite_35 @cite_15 . Various schemes have been proposed for context consistency checking over context-aware middleware infrastructures. In @cite_12 , consistency constraints were modeled by tuples, and consistency checking was based on comparison among elements in the tuples. In @cite_7 , consistency constraints were expressed in first-order logic, and an incremental consistency checking algorithm was proposed. In @cite_6 , a probabilistic approach is proposed to further improve the effectiveness of consistency checking. In @cite_21 @cite_37 , consistency constraints were expressed by assertions. However, existing schemes do not sufficiently consider the temporal relationships among the contexts. It is implicitly assumed that the contexts being checked belong to the same snapshot of time. Such limitations make these schemes do not work in asynchronous pervasive computing environments @cite_16 @cite_3 @cite_29 .
@cite_35 @cite_37 @cite_7 @cite_15 @cite_29 @cite_21 @cite_17 @cite_6 @cite_3 @cite_27 @cite_31 @cite_16 @cite_25 @cite_12 @cite_11
2141246182 2167404850 2104301421 2115806861
Contexts, the pieces of information that capture the characteristics of computing environments, are often inconsistent in the dynamic and uncertain pervasive computing environments. Various schemes have been proposed to check context consistency for pervasive applications. However, existing schemes implicitly assume that the contexts being checked belong to the same snapshot of time. This limitation makes existing schemes do not work in pervasive computing environments, which are characterized by the asynchronous coordination among computing devices. The main challenge imposed on context consistency checking by asynchronous environments is how to interpret and detect concurrent events. To this end, we propose in this paper the Concurrent Events Detection for Asynchronous consistency checking (CEDA) algorithm. An analytical model, together with corresponding numerical results, is derived to study the performance of CEDA. We also conduct extensive experimental evaluation to investigate whether CEDA is desirable for context-aware applications. Both theoretical analysis and experimental evaluation show that CEDA accurately detects concurrent events in time in asynchronous pervasive computing environments, even with dynamic changes in message delay, duration of events and error rate of context collection. Context-awareness is a key issue in pervasive computing. Context-aware applications are prone to the context consistency problem, where applications are confronted with conflicting contexts and cannot decide how to adapt themselves. In pervasive computing environments, users are often willing to accept certain degree of context inconsistency, as long as it can reduce the consistency maintenance cost, e.g., query delay and battery power. However, existing consistency maintenance schemes do not enable the users to make such tradeoffs. To this end, we propose the probabilistic consistency checking for pervasive context (PCCPC) algorithm. Detailed performance analysis shows that PCCPC enables the users to check consistency over arbitrarily specified ratio of context. We also conduct experiments to study the cost reduced by probabilistic checking. The analytical and the experimental results show that PCCPC enables the users to efficiently make tradeoffs between context consistency and the associated checking cost. Applications in pervasive computing are typically required to interact seamlessly with their changing environments. To provide users with smart computational services, these applications must be aware of incessant context changes in their environments and adjust their behaviors accordingly. As these environments are highly dynamic and noisy, context changes thus acquired could be obsolete, corrupted or inaccurate. This gives rise to the problem of context inconsistency, which must be timely detected in order to prevent applications from behaving anomalously. In this paper, we propose a formal model of incremental consistency checking for pervasive contexts. Based on this model, we further propose an efficient checking algorithm to detect inconsistent contexts. The performance of the algorithm and its advantages over conventional checking techniques are evaluated experimentally using Cabot middleware. The tradeoffs between consistency, performance, and availability are well understood. Traditionally, however, designers of replicated systems have been forced to choose from either strong consistency guarantees or none at all. This paper explores the semantic space between traditional strong and optimistic consistency models for replicated services. We argue that an important class of applications can tolerate relaxed consistency, but benefit from bounding the maximum rate of inconsistent access in an application-specific manner. Thus, we develop a conit-based continuous consistency model to capture the consistency spectrum using three application-independent metrics, numerical error, order error, and staleness. We then present the design and implementation of TACT, a middleware layer that enforces arbitrary consistency bounds among replicas using these metrics. We argue that the TACT consistency model can simultaneously achieve the often conflicting goals of generality and practicality by describing how a broad range of applications can express their consistency semantics using TACT and by demonstrating that application-independent algorithms can efficiently enforce target consistency levels. Finally, we show that three replicated applications running across the Internet demonstrate significant semantic and performance benefits from using our framework.