215 research outputs found

    Fault-recovery and Coherence in Internet of Things Choreographies

    Get PDF
    International audienceFacilitating the creation of Internet of Things (IoT) applications is a major concern to increase its development. D-LITe, our previous work, is a framework for that purpose. In D-LITe, Objects are considered as part of a whole application. They offer a REST web service that describes Object capabilities, receives the logic to be executed, and interacts with other stakeholders. Then, the complete application is seen as a choreography dynamically deployed on various objects. But the main issue of choreographies is the loss of coherence. Because of their unreliability, some networks used in IoT may introduce de-synchronization between Objects, leading to errors and failures. In this paper, we propose a solution to re-introduce coherence in the application, in order to keep the advantages of choreography while dealing with this main issue. An overlay of logical check-points at the application layer defines links between the coherent states of a set of objects and triggers re-synchronization messages. Correcting statements are thus spread through the network, which enables fault recovery in Choreographies. This paper ends with a comparison between the checking cost and the reliability improvement

    A Decentralized Latency-Aware Task Allocation and Group Formation Approach with Fault Tolerance for IoT Applications

    Get PDF
    © 2013 IEEE. Development of internet of things (IoT) and smart devices eased life by offering numerous applications targeting to provide real-time low latency services, but they also brought challenges in handling huge data generated from the powerful computations, to get a job done. Decentralized edge computing could help to achieve latency requirements of the applications by executing them closer to the user at edge of network, but most of the current studies actually deployed centralized approaches for cluster computing at edge, which put extra overhead of cluster formation and management. In this article, we propose to group heterogeneous edge nodes on task arrival with a more decentralized method and execute tasks in parallel to meet their deadline. On the other hand, to guarantee successful execution of critical IoT application running in an edge network, fault tolerance has to be significantly considered. For resource limited edge devices, there is a great need for efficient fault tolerance techniques, which can provide reliability based on device's local information, without worrying about overall network topology. In this article, our novel method is to increase task reliability being executed in distributed edge computing environment through finding reliability of an edge node locally, and by providing fault tolerance to increase overall application availability. Our proposed fault tolerance technique works in decentralized mode by executing new algorithms to handle above mentioned problems. Our experiment results show that our approach is effective as well as providing desired goals of achieving deadline for latency-aware IoT applications, with staggering decrease in overall network traffic along with ensuring reliability and availability

    Flexible modeling and execution of choreographies

    Get PDF
    Approaches to address domain specific problems often share overlapping requirements but typically satisfy them in a unique manner for example using service-oriented concepts. The notion of Collaborative, Dynamic & Complex (CDC) systems has been proposed in literature to address the requirements of application domains such as eScience and Collective Adaptive Systems in a unified, generic manner. CDC systems are characterized by dealing with potentially large amounts of data and/or participating applications which engage in complex interactions specified by some collaboration protocol. Furthermore, the need for adaptation mechanisms is a common requirement and users from these application domains are typically no IT experts. The choreography concept originally known from collaborations in the business domain captures the interaction between independent parties from a global perspective. Each party is denoted as a choreography participant, which is implemented by a workflow or a service. This concept provides a way to model and execute for example complex eScience experiments involving multiple scientific fields, scientific methods, and time and/or length scales as a set of coupled workflows. However, typical choreography concepts as described in literature do not provide the desired level of flexibility and ease of use in both modeling and execution to address the requirements of users in CDC system application domains such as eScience. Thus, existing choreography concepts have to be considerably extended by introducing the Model-as-you-go for Choreographies approach in this thesis as a central notion providing capabilities for the flexible modeling and execution of choreographies. In the context of this approach, we provide a concept for fostering reuse in choreography modeling in the form of so-called choreography fragments. Such fragments can be extracted from existing and inserted into new choreography models in order to save time as well as reuse established and approved logic by inexperienced modelers in a less error-prone manner. Furthermore, we provide support for the user-driven control of the complete choreography life cycle. This effectively allows users to automatically deploy the workflow models implementing a choreography as well as starting, pausing, resuming, and terminating a choreography instance, which is formed through the collective execution of workflow instances. Most importantly, the underlying complexity of managing a set of coupled workflow instances is completely hidden from the users. Additional flexibility is given by a concept that allows to re-run already executed choreography logic in order to enforce the convergence of a calculation towards a particular result or to react to errors with parameter changes. The proposed concepts are implemented in a message-based system, the ChorSystem, which is able to handle the challenges of choreography life cycle management from deployment, to run time control and the re-run of logic. Furthermore, the modeling and run time monitoring are integrated into one graphical tool supporting the seamless transition from modeling to execution of choreographies. The concepts, their supporting algorithms, and the prototypical ChorSystem are validated by a set of case studies from different CDC system application domains and evaluated by performance measurements showing the practical applicability
    corecore