5,889 research outputs found
CATS: linearizability and partition tolerance in scalable and self-organizing key-value stores
Distributed key-value stores provide scalable, fault-tolerant, and self-organizing
storage services, but fall short of guaranteeing linearizable consistency
in partially synchronous, lossy, partitionable, and dynamic networks, when data
is distributed and replicated automatically by the principle of consistent hashing.
This paper introduces consistent quorums as a solution for achieving atomic
consistency. We present the design and implementation of CATS, a distributed
key-value store which uses consistent quorums to guarantee linearizability and partition tolerance in such adverse and dynamic network conditions. CATS is
scalable, elastic, and self-organizing; key properties for modern cloud storage
middleware. Our system shows that consistency can be achieved with practical
performance and modest throughput overhead (5%) for read-intensive workloads
RamboNodes for the Metropolitan Ad Hoc Network
We present an algorithm to store data robustly in a large, geographically distributed network by means of localized regions of data storage that move in response to changing conditions. For example, data might migrate away from failures or toward regions of high demand. The PersistentNode algorithm provides this service robustly, but with limited safety guarantees. We use the RAMBO framework to transform PersistentNode into RamboNode, an algorithm that guarantees atomic consistency in exchange for increased cost and decreased liveness. In addition, a half-life analysis of RamboNode shows that it is robust against continuous low-rate failures. Finally, we provide experimental simulations for the algorithm on 2000 nodes, demonstrating how it services requests and examining how it responds to failures
Permission-based fault tolerant mutual exclusion algorithm for mobile Ad Hoc networks
This study focuses on resolving the problem of mutual exclusion in mobile ad hoc networks. A Mobile Ad Hoc Network (MANET) is a wireless network without fixed
infrastructure. Nodes are mobile and topology of MANET changes very frequently and unpredictably. Due to these limitations, conventional mutual exclusion algorithms
presented for distributed systems (DS) are not applicable for MANETs unless they attach to a mechanism for dynamic changes in their topology.
Algorithms for mutual exclusion in DS are categorized into two main classes including token-based and permission-based algorithms. Token-based algorithms depend on circulation of a specific message known as token. The owner of the token has priority for entering the critical section. Token may lose during communications, because of link failure or failure of token host. However, the processes for token-loss detection and token regeneration are very complicated and time-consuming. Token-based algorithms are generally non-fault-tolerant (although some mechanisms are utilized to increase their level of fault-tolerance) because of common problem of single token as a single point of failure. On the contrary, permission-based algorithms utilize the permission of multiple nodes to guarantee mutual exclusion. It yields to high traffic when number of nodes is high. Moreover, the number of message transmissions and energy consumption increase in MANET by increasing the number of mobile nodes accompanied in every decision making cycle.
The purpose of this study is to introduce a method of managing the critical section,named as Ancestral, having higher fault-tolerance than token-based and fewer message
transmissions and traffic rather that permission-based algorithms. This method makes a tradeoff between token-based and permission-based. It does not utilize any token, that is similar to permission-based, and the latest node having the critical section influences
the entrance of the next node to the critical section, that is similar to token-based algorithms. The algorithm based on ancestral is named as DAD algorithms and
increases the availability of fully connected network between 2.86 to 59.83% and decreases the number of message transmissions from 4j-2 to 3j messages (j as number of nodes in partition).
This method is then utilized as the basis of dynamic ancestral mutual exclusion algorithm for MANET which is named as MDA. This algorithm is presented and evaluated for different scenarios of mobility of nodes, failure, load and number of nodes. The results of study show that MDA algorithm guarantees mutual exclusion,dead lock freedom and starvation freedom. It improves the availability of CS to minimum 154.94% and 113.36% for low load and high load of CS requests respectively
compared to other permission-based lgorithm.Furthermore, it improves response time up to 90.69% for high load and 75.21% for low load of CS requests. It degrades the
number of messages from n to 2 messages in the best case and from 3n/2 to n in the worst case. MDA algorithm is resilient to transient partitioning of network that is
normally occurs due to failure of nodes or links
Programming your way out of the past: ISIS and the META Project
The ISIS distributed programming system and the META Project are described. The ISIS programming toolkit is an aid to low-level programming that makes it easy to build fault-tolerant distributed applications that exploit replication and concurrent execution. The META Project is reexamining high-level mechanisms such as the filesystem, shell language, and administration tools in distributed systems
LHView: Location Aware Hybrid Partial View
The rise of the Cloud creates enormous business opportunities for companies to provide
global services, which requires applications supporting the operation of those services
to scale while minimizing maintenance costs, either due to unnecessary allocation of
resources or due to excessive human supervision and administration. Solutions designed
to support such systems have tackled fundamental challenges from individual component
failure to transient network partitions. A fundamental aspect that all scalable large
systems have to deal with is the membership of the system, i.e, tracking the active components
that compose the system. Most systems rely on membership management protocols
that operate at the application level, many times exposing the interface of a logical overlay
network, that should guarantee high scalability, efficiency, and robustness.
Although these protocols are capable of repairing the overlay in face of large numbers
of individual components faults, when scaling to global settings (i.e, geo-distributed
scenarios), this robustness is a double edged-sword because it is extremely complex for
a node in a system to distinguish between a set of simultaneously node failures and a
(transient) network partition. Thus the occurrence of a network partition creates isolated
sub-sets of nodes incapable of reconnecting even after the recovery from the partition.
This work address this challenges by proposing a novel datacenter-aware membership
protocol to tolerate network partitions by applying existing overlay management techniques
and classification techniques that may allow the system to efficiently cope with
such events without compromising the remaining properties of the overlay network. Furthermore,
we strive to achieve these goals with a solution that requires minimal human
intervention
Conflict-Free Replicated Data Types in Dynamic Environments
Over the years, mobile devices have become increasingly popular and gained improved
computation capabilities allowing them to perform more complex tasks such as
collaborative applications. Given the weak characteristic properties of mobile networks,
which represent highly dynamic environments where users may experience regular involuntary
disconnection periods, the big question arises of how to maintain data consistency.
This issue is most pronounced in collaborative environments where multiple users interact
with each other, sharing a replicated state that may diverge due to concurrency
conflicts and loss of updates.
To maintain consistency, one of today’s best solutions is Conflict-Free Replicated Data
Types (CRDTs), which ensure low latency values and automatic conflict resolution, guaranteeing
eventual consistency of the shared data. However, a limitation often found on
CRDTs and the systems that employ them is the need for the knowledge of the replicas
whom the state changes must be disseminated to. This constitutes a problem since it is
inconceivable to maintain said knowledge in an environment where clients may leave
and join at any given time and consequently get disconnected due to mobile network
communications unreliability.
In this thesis, we present the study and extension of the CRDT concept to dynamic
environments by introducing the developed P/S-CRDTs model, where CRDTs are coupled
with the publisher/subscriber interaction scheme and additional mechanisms to
ensure users are able to cooperate and maintain consistency whilst accounting for the
consequent volatile behaviors of mobile networks. The experimental results show that
in volatile scenarios of disconnection, mobile users in collaborative activity maintain
consistency among themselves and when compared to other available CRDT models, the
P/S-CRDTs model is able to decouple the required knowledge of whom the updates must
be disseminated to, while ensuring appropriate network traffic values
- …