9212782
A reservation-based coordination protocol for Web services
Traditional transaction semantics are not appropriate for business activities that involve long-running transactions in a loosely-coupled distributed environment, in particular, for Web services that operate between different enterprises over the Internet. In this paper we describe a novel reservation-based extended transaction protocol that can be used to coordinate such business activities. The protocol avoids the use of compensating transactions, which can result in undesirable effects. In our protocol, each task within a business activity is executed as two steps. The first step involves an explicit reservation of resources. The second step involves the confirmation or cancellation of the reservation. Each step is executed as a separate traditional short-running transaction. We show how our protocol can be implemented as a reservation protocol on top of the Web services transaction specification or, alternatively, as a coordination protocol on top of the Web services coordination specification.
8961835
Design and Implementation of a Pluggable Fault-Tolerant CORBA Infrastructure
In this paper we present the design and implementation of a Pluggable Fault-Tolerant CORBA Infrastructure that provides fault tolerance for CORBA applications by utilizing the pluggable protocols framework that most CORBA ORBs provide. Our approach does not require any modification to the CORBA ORB, and requires only minimal modification to the application. Moreover, it avoids the difficulty of retrieving and assigning the ORB state by embedding the fault tolerance mechanisms into the ORB. The Pluggable Fault-Tolerant CORBA Infrastructure exhibits similar or better performance than other Fault-Tolerant CORBA systems, while providing strong replica consistency.
12760716
Making Web services dependable
Web services offer great promise for integrating and automating software applications within and between enterprises over the Internet. However, ensuring that Web services are dependable, and can satisfy their clients' requests when the clients need them is a real challenge because, typically, a business activity involves multiple Web services and a Web service involves multiple components, each of which must be dependable. In this paper, we describe fault tolerance techniques, including replication, checkpointing, and message logging, in addition to reliable messaging and transaction management for which Web services specifications exist. We discuss how those techniques can be applied to the components of the Web services involved in the business activities to render them dependable.
318699
Design and implementation of a consistent time service for fault-tolerant distributed systems
Clock-related operations are one of the many sources of replica non-determinism and of replica inconsistency in fault-tolerant distributed systems. In passive replication, if the primary server crashes, the next clock value returned by the new primary server might have actually rolled back in time, which can lead to undesirable consequences for the replicated application. The same problem can happen for active replication when the result of the first replica to respond is taken as the next clock value. In this paper we describe the design and implementation of a Consistent Time Service for faulttolerant distributed systems. The Consistent Time Service introduces a group clock that is consistent across the replicas and that ensures the determinism of the replicas with respect to clock-related operations. The groupclock is monotonicallyincreasing, is transparent to the application, and is fault-tolerant. The Consistent Time Service guaranteesthe consistency of the groupclock evenwhen faults occur, when new replicas are added into the group, and when failed replicas recover.
9870709
End-to-end latency of a fault-tolerant CORBA infrastructure
This paper presents an evaluation of the end-to-end latency of a fault-tolerant CORBA infrastructure that we have implemented. The fault-tolerant infrastructure replicates the server applications using active, passive and semi-active replication, and maintains strong replica consistency of the server replicas. By analyses and by measurements of the running fault-tolerant infrastructure, we characterize the end-to-end latency under fault-free conditions. The main determining factor of the run-time performance of the fault-tolerant infrastructure is the Totem group communication protocol, which contributes to the end-to-end latency primarily in two ways: the delay in sending messages and the processing cost of the rotating token.To reduce the delay in sending messages for passive and semi-active replication, the position of the primary server replica on the Totem ring, the token rotation time, the processing time at the client, and the processing time at the server must be considered. For active replication, the presence of duplicate messages adversely affects the performance. However, if an effective sending-side duplicate suppression mechanism is implemented, active replication is more advantageous than both passive and semi-active replication because of the automatic selection of the most favorable position of the server replica that sends the first non-duplicate reply.
41957109
End-to-end latency of a fault-tolerant CORBA infrastructure
This paper presents measured probability density functions (pdfs) for the end-to-end latency, of two-way, remote method invocations from a CORBA client to a replicated CORBA server in a fault-tolerance infrastructure. The infrastructure uses a multicast group-communication protocol based on a logical token-passing ring imposed on a single local-area network. The measurements show that the peaks of the pd/s for the latency are affected by the presence of duplicate messages for active replication, and by the position of the primary server replica on the ring for semi-active and passive replication. Because a node cannot broadcast a user message until it receives the token, up to two complete token rotations can contribute to the end-to-end latency seen by the client for synchronous remote method invocations, depending on the server processing time and the interval between two consecutive client invocations. For semi-active and passive replication, careful placement of the primary server replica is necessary to alleviate this broadcast delay to achieve the best possible end-to-end latency. The client invocation patterns and the server processing time must be considered together to determine the most favorable position for the primary replica. Assuming that an effective sending-side duplicate suppression mechanism is implemented, active replication can be more advantageous than semi-active and passive replication because all replicas compete for sending and, therefore, the replica at the most favorable position will have the opportunity to send first.
14731906
Distributed admission control for anycast flows
Anycasting has recently become an important research topic, especially for replicated servers. With anycasting, applications can request the "nearest" server for provision of desired (multimedia) service. In this paper, we study efficient distributed admission control (DAC) for anycast flows. We focus on algorithms that perform destination selection and efficient path establishment. Taking advantage of anycasting, our distributed algorithms differ from each other in their dependence on system status information. Performance data obtained through mathematical analysis and simulations show that, in terms of admission probabilities, DAC systems that are based on local status information have performance levels close to those that utilize global and dynamic status information. This renders our DAC algorithms useful not only for the network layer, but also for the application layer admission control for anycast flows.
9589474
DotSlash: A Self-Configuring and Scalable Rescue System for Handling Web Hotspots Effectively
DotSlash allows different web sites to form a mutual-aid community, and use spare capacity in the community to relieve web hotspots experienced by any individual site. As a rescue system, DotSlash intervenes when a web site becomes heavily loaded, and is phased out once the workload returns to normal. It aims to complement the existing web server infrastructure to handle short-term load spikes effectively. DotSlash is self-configuring, scalable, cost-effective, easy to use, and transparent to clients. It targets small web sites, although large web sites can also benefit from it. We have implemented a prototype of DotSlash on top of Apache. Experiments show that using DotSlash a web server can increase the request rate it supported and the data rate it delivered to clients by an order of magnitude, even if only HTTP redirect is used. Parts of this work may be applicable to other services such as Grid computational services.
6507373
The timed-token protocol for real-time communications
The timed-token protocol is a token-passing protocol in which each node receives a guaranteed share of the network bandwidth. Partly because of this property, the timed-token protocol has been incorporated into a number of network standards, including the IEEE 802.4 token bus, the Fiber Distributed Data Interface (FDDI), and the Survivable Adaptable Fiber Optic Embedded Network (Safenet). Networks based on these standards are becoming increasingly popular in new generation real-time systems. In particular, the IEEE 802.4 standard is included in the Manufacturing Automation Protocol (MAP), which has been widely used in computer-integrated manufacturing and industrial applications. Meeting message deadlines requires proper control of medium access. In the timed-token protocol, access to the communication medium is controlled by a token that is passed among the nodes in a circular fashion. Messages are segregated into two separate classes: synchronous and asynchronous. Synchronous messages, used for real-time communication, can have deadline constraints and thus are given a guaranteed share of the network bandwidth. The authors focus on meeting the deadlines of synchronous messages.<<ETX>>
12365152
A multi-access window protocol for transmission of time constrained messages
A novel window protocol for transmitting time-constrained messages in a multiaccess network is proposed that explicitly takes time constraints into account. The window is formed on the basis of latest time to send a message (LS). A newly arriving message is immediately considered for transmission if its LS is less than those of the all pending messages in the system. As a result, the protocol closely approximates the optimal minimum-laxity-first policy. A performance evaluation by simulation shows that the protocol performs well in a wide range of environments, even under overloaded conditions.<<ETX>>
2999153
Distributed policy processing in virtual private operation environment for large scale networks
VPOE (virtual private operation environment) is an infrastructure to provide customized services for applications in large-scale heterogeneous networks. In this infrastructure, the programmable network devices - called "middleware boxes" can be deployed at some functional locations in the network and provide services effectively corresponding to the service requirements. The basic functionality of middleware box is to execute customized policies. With the number of applications increasing and new services becoming popular, the policy matching and processing have been becoming a bottleneck for the middleware box performance. We focus on designing a scalable policy processing architecture, aiming to deal with this issue. Particularly, our technologies include: (1) a distributed policy processing architecture for the middleware box; (2) two policy partitioning algorithms to achieve conflict-free policies for the distributed policy processing architecture and guarantee the correctness of the policy execution. We conduct extensive performance evaluations on different architectures and algorithms. The evaluation results show that the distributed architecture can achieve over 70 percent increase of performance/price ratio with proper assignment of the policy distribution degree. The experimental results also demonstrate that to make the policy both partition capable and conflict free, more new policies have to be generated, which can be effectively reduced by using the policy compression schemes.