July 2024
·
11 Reads
This page lists works of an author who doesn't have a ResearchGate profile or hasn't added the works to their profile yet. It is automatically generated from public (personal) data to further our legitimate goal of comprehensive and accurate scientific recordkeeping. If you are this author and want this page removed, please let us know.
July 2024
·
11 Reads
May 2023
·
9 Reads
March 2023
·
26 Reads
Application services often support mobile and web applications with REST interfaces, implemented using a set of distributed components that interact with each other. This approach allows services to have high availability and performance at a lower cost than a monolithic system. However, the existence of multiple components makes the development process of these systems more complex and therefore susceptible to errors. In this paper, we present JepREST, a system that automates the use of Jepsen libraries to test the correctness of distributed applications that provide a REST interface. Based on a service interface specification, JepREST generates and executes a set of tests with multiple clients performing operations concurrently, subsequently verifying if the system behaviour is linearizable. The preliminary evaluation shows that JepREST simplifies the testing of REST applications.
December 2022
·
37 Reads
·
1 Citation
Future Generation Computer Systems
The implementation of collaborative applications in highly volatile environments, such as the ones composed of mobile devices, requires low coordination mechanisms. The replication without coordination semantics of Conflict-Free Replicated Data Types (CRDTs) makes them a natural solution for these execution contexts. However, the current CRDT models require each replica to know all other replicas beforehand or to discover them on-the-fly. Such solutions are not compatible with the dynamic ingress and egress of nodes in volatile environments. To cope with this limitation, we propose the Publish/Subscribe Conflict-Free Replicated Data Type (PS-CRDT) model that combines CRDTs with the publish/subscribe interaction model, and, with that, enable the spatial and temporal decoupling of update propagation. We implemented PS-CRDTs in Thyme, a reactive storage system for mobile edge computing. Our experimental results show that PS-CRDTs require less communication than other CRDT-based solutions in volatile environments.
September 2022
·
9 Reads
·
8 Citations
July 2022
·
6 Reads
·
1 Citation
May 2022
·
27 Reads
May 2022
·
71 Reads
Prototyping and implementing distributed algorithms, particularly those that address challenges related with fault-tolerance and dependability, is a time consuming task. This is, in part, due to the need of addressing low level aspects such as management of communication channels, controlling timeouts or periodic tasks, and dealing with concurrency issues. This has a significant impact for researchers that want to build prototypes for conducting experimental evaluation; practitioners that want to compare different design alternatives/solutions; and even for practical teaching activities on distributed algorithms courses. In this paper we present Babel, a novel framework to develop, implement, and execute distributed protocols and systems. Babel promotes an event driven programming and execution model that simplifies the task of translating typical specifications or descriptions of algorithms into performant prototypes, while allowing the programmer to focus on the relevant challenges of these algorithms by transparently handling time consuming low level aspects. Furthermore, Babel provides, and allows the definition of, networking components that can capture different network capabilities (e.g., P2P, Client/Server, phi-accrual Failure Detector), making the code mostly independent from the underlying communication aspects. Babel was built to be generic and can be used to implement a wide variety of different classes of distributed protocols. We conduct our experimental work with two relevant case studies, a Peer-to-Peer application and a State Machine Replication application, that show the generality and ease of use of Babel and present competitive performance when compared with significantly more complex implementations.
May 2022
·
11 Reads
An increasing number of mobile applications share location-dependent information, from collaborative applications and social networks to location-based games. For such applications, peer-to-peer architectures where mobile devices share information directly may grant lower latency and reduce server load. In this work, we propose a framework to support these applications, providing location-dependent replication. Data has an associated location and is replicated in the mobile devices that show interest and are close to that location. Our proposal combines peer-to-peer synchronisation among mobile devices and replication at edge servers. Our preliminary results are promising.
February 2022
·
3 Reads
... Outros trabalhos abordaram a verificação da correção de serviços Web existentes [17] e de bases de dados [27]. Ao contrário destes, o nosso trabalho foca-se no teste de sistemas distribuídos genéricos que apresentam interfaces REST. ...
June 2016
... Synchronization is achieved by transmitting either a serialized representation of the operation, in the case of operation-based CRDT, or the complete state of a particular partition, in the case of state-based CRDT. The application is built in independent modules inspired by [29] and [14]: membership determines the actual network connections between nodes; broadcast applies diffusion strategies, such as overlays to the actual network, and determines diffusion trees while ensuring preconditions such as causality; replication provides an interface to the CRDT data store; application maintains the state of the data store using CRDT. ...
September 2022
... Barreto et al. [23] provided an overview of the use of CRDTs for synchronization in rapidly changing distributed systems. The authors proposed a PS-CRDT (publisher/subscriber) model to provide spatial and temporal decoupling of update dissemination. ...
December 2022
Future Generation Computer Systems
... Amazon's DynamoDB [19], Microsoft's Azure Cosmos DB [46], Apache Hadoop [51], etc. are examples of platforms that provide data replication support. Among the family of algorithms for optimistic data replication, Conflict-Free Replicated Data Types (CRDTs) [45], Explicitly Consistent Replicated Objects (ECROs) [17], Mergeable Replicated Data Types (MRDTs) [27] are some popular solutions. ...
October 2021
Proceedings of the ACM on Programming Languages
... Security concerns associated with CRDTs, as noted in prior research [59,60,77], are also pertinent to DEGSs. Ensuring the integrity and confidentiality of state information is paramount, especially given the critical nature of electrical grid infrastructure. ...
January 2021
... Emulated -composed of one or more Sage source node emulators, each running multiple nodes. We have used this emulation environment to evaluate other works such as [17,16,6]. In this particular setting, each emulator and server runs in a dedicated physical node of a computing cluster. ...
December 2020
Future Generation Computer Systems
... On the other hand, the edge use case poses new security challenges. Information is exposed on compromised edge nodes [LLaP20]; security policy changes and data updates are concurrent [WRT10; WBP16]; and decentralized key management is problematic [KKB19]. We alleviate these difficulties by leveraging the cloud, e.g., for authentication and key management. ...
August 2020
Proceedings of the VLDB Endowment
... Este modeloé capaz de suportar membership dinâmico e introduz uma estratégia de sincronização para entrada e saída de nós. Para garantir causalidade o modelo explora a entrega First In, First Out (FIFO) de operações por um canal de entrega confiável na topologia deárvore conforme [van derLinde et al. 2020]. O sistemaé utilizado em conjunto de CRDTs que representam uma estrutura de dados distribuída e implementa estratégias como garbage collection para atingir melhores resultados de latência e custo de comunicação, quando todos os mecanismos mencionados atuam em conjunto determina-se o ECO SYNC Tree, queé a versão otimizada do protocolo. ...
April 2020
... This article builds on the work presented in [21] and extends it. Here, we present an in-depth definition of the timeaware reactive storage abstraction (Section 3); and also a more comprehensive description of the design of our time-aware reactive storage system, Thyme (Section 4), and of its two different approaches, Thyme-LS (Section 5) and Thyme-DCS (Section 6). ...
November 2019
... The rationale for choosing a data consistency protocol for updates initiated by end-users in multicloud systems is currently an open research task. A variety of data consistency models in distributed systems generates a variety of relevant protocols and options for their implementation [1][2][3][4]. The choice of the entire architecture of a multicloud system is inextricably linked with the methods for implementing the chosen data consistency protocol. ...
March 2019