Professional Documents
Culture Documents
Degree of
Bachelor of Technology
in
P.UDAYASRI
(10191A0544)
INTRODUCTION
The Web has undergone a deep and rapid evolution such that, nowadays, browsers are no
longer a tool used just to display and navigate contents.They have become the access point to
transactional applications, such as on-line stock/equity trading, banking or auctions, for
which the level of service perceived by the endusers is an issue even more critical than in
classical content delivery. Specifically, for some of those applications, reduced
responsiveness or service unreachability may translate in loss of revenue and/or customer
loyalty, and may possibly give rise to legal implications.
BACKGROUND
The need for QoS specifications in Web services is driven by two demands. Clients aim to
experience a good service performance, e.g. low waiting time, high reliability, and
availability to successfully use the service whenever the need arises. On the other hand, when
it comes to e-business, service providers need to formulate QoS-aware offers in order to gain
the highest possible profit from their business. Examples are high throughput
guarantees and low response time through dynamic capacity allocation, resource allocation,
and load balancing in order to serve a high number of clients with assured QoS. Moreover,
crucial transactions such as payment should experience prioritized execution realized by
transaction differentiation. Service providers will strive to find an optimal relation between
user satisfaction and system utilization.
MOTIVATION
Addressing the problem of improving the user perceived QoS in transactional applications
over the Web is more complex than the case of content delivery for several reasons.One of
them is the end-user behavior. Specifically, in case of content delivery applications, low
system responsiveness might induce the end-user to simply resubmit its request, possibly to a
different edge server. This cannot be straightforwardly admitted in case of Web transactional
applications since it might result in duplicate execution of a transaction at the origin server.
In well known protocols for Web cache sharing,such as the Internet Cache Protocol (ICP,
whereeach edge server is allowed to multi-cast query messages to other servers to discover
whether they can promptly provide a valid copy of the content requested by the end-user. In
case of a transactional application, a multi-cast based approach to increase the likelihood of
promptly reaching the transactional logic residing at some, among multiple, edge servers
cannot be used without introducing additional mechanisms to avoid multiple updates of the
database at the origin server.
SCOPE:
In this paper we address the problem of how to exploit replication of the edge servers, each
one offering access to the transactional logic, to achieve higher levels of responsiveness,while
ensuring that the transaction associated with each end-user request is committed exactly one
time at the origin server. More precisely, we present a protocol that allows privileged classes
of users, i.e. those users for which we want to improve the perceived QoS, to concurrently
contactmultiple edge serves in order to activate the transactional logic they host. This allows
increasing the probability that at least one of those edge servers is promptly reached to
absence of congestion or overload on that network path.
LITERATURE REVIEW
Existing works on the simulation of web QoS provisioning abound, a review of few of these
follows:A Parallel Invocation Protocol for Transactional Applications over the Web was
designed which exploits the path-diversity along the end-to-end interaction toward the origin
sites by concurrently routing transactional requests toward multiple-edge servers. Request
processing is finally carried out by a single-edge server, adaptively selected as the most
responsive one depending on current system conditions.Romano,P,Qualia,F;Ciciani,B were
propose a simple and lightweight parallel invocation protocol for distributed transactions over
the Web, which addresses all issues such as (i) non-idempotent business logic and (ii)
increase of the workload on the data centers in a scalable manner by requiring no form of
coordination among (geographically spread) edge servers. Menasce and Bennani(2003)
reported a model that selfadjusts configuration parameters of a web server to meet QoS
requirements using C/C++ language. The model however, did not consider different classes
of requests.
ARCHITECTURE
Target System Architecture
As shown in Figure , the architecture of our target system consists of an origin Web server,
hosting a centralized database system, and of a set of geographically distributed edge servers,
connected to the origin server through a (virtual) private network, or even through the
Internet. Each edge server hosts the transactional business logic for the access to the database
on the origin server, and (possibly) performs some form of caching of the contents/query
results retrieved by the origin server. End-users access the transactional logic residing at
some edge server through a client(e.g. an applet running in a browser), which interacts with
the edge server side of the application via the Internet. The processing of the client request at
the edge server consists in the execution of a transaction on the centralized database system
residing at the origin server, and in the computation of a response to be delivered to the client
itself, which depends on the state of the database and on the transaction
outcome.
A relevant instance of such a system architecture is represented
by Application Delivery Networks (ADNs) For this type of architectures, the ASPs have the
possibility to ensure agreed levels of QoS only within the infrastructure they own and control,
typically formed by the edge servers, the (virtual) private network and the origin server.
However, as pointed out in the Introduction, the QoS perceived by end-users may be reduced
just due to the fact that the client side of the application interacts with the edge serverside
through the Internet, where load, and thus latency, are typically unpredictable. Improving the
end-user perceivedQoS by reducing the potential impact of overload on Internet
network paths is the objective of our proposal.
The Protocol
This section is devoted to the presentation of our protocol.For simplicity, we first
introduce and motivate the basic intuition underlying it. Next, we provide a detailed
description by discussing the behavior of the client, of the edge server and of the origin server
hosting the database. An infrastructure like the one described in Section 2 exhibits a large
potential of parallelism. Such an assertion is justified by simply considering that it may
replicate the access point to a given service over hundreds or thousands of geographically
distributed edge servers. the basic idea underlying our proposalconsists in allowing a client
belonging to a privileged class to submit a request concurrently to multiple (as an extreme all
the) edge servers in the proximity set. Since request messages targeted at different edge
servers are likely to be routed through different Internet network paths, the objective of
contacting multiple edge servers concurrently for a single request from a privileged client is
to increase the probability to reach at least one edge server without incurring a congested path
on the Internet, with clear benefits for the user perceived QoS in terms of system
responsiveness (e.g. prompt activation of the application business logic). this approach is
complemented by a simple and efficient mechanism ensuring that,independently of the
number of edge servers contacted by the client, the requested manipulation on the database
residing at the origin server takes place only once. More precisely, the fastest edge server that
starts the execution of the transaction on the database at the origin server (possibly due to the
fact that it is reached more quickly than the others by the client request), prevents all the other
edge servers from executing that same transaction. This is done only by exploiting standard
primary key constraints on the database at the origin server, thus no explicit coordination
among the edge servers contacted by the client is required. Overall, our solution allows the
end-to-end interaction to be completed by letting the client request be entirely processed only
by the edge server that (depending on the current state of Internet) is more responsive than all
the others that have been contacted. All the other edge servers stop processing that request
just after they have carried out very few work on it, thus producing minimal increase of the
computational load on the ASP infrastructure.
Client Behavior
The pseudo-code for the client behavior.
As the first step, the client computes a set of edge servers close to its location, namely the
proximity set.
ANALYSIS
To evaluate the performance benefits from the proposed protocol, we initially studied
the case of light system load(i.e. client requests submitted one at a time). In this study, whose
results are reported in Figure , we varied Pcongestion in the range [0.0-0.1] and measured a
set of performance parameters providing indications not only on the average values of the
user perceived (end-to-end) response time, namely E[resp time] in Figure but also on the
degradation of the system responsiveness perceived by those users who experience a response
time greater than E[resp time].At this purpose we chose to evaluate, for both Scenario-A
and Scenario-B, the mean value of the response time on all the samples which resulted
greater than the overall average response time, we denote this parameter as
E[resp time|resp time > E[resp time]],
which is an indicator of the additional delay experienced by the client in case the system
performs worse than the average.As an example, ADP=50% means that the end-to-end
latency perceived by “unlucky” clients (i.e. clients experiencing response time above the
average) is fifty percent worse than the average response time.The measures reported in
Figure show the effectiveness of this proposal in improving the user perceived QoS,
especially in the presence of network congestions.Specifically, in case of non-minimal
congestion probability(i.e. Pcongestion=0.1) the average end-to-end latency in Scenario-B
is about a half than in Scenario-A (517,95msecs in Scenario-B vs 1006.00 msecs in
Scenario-A),whereas the ADP is +384,49% in Scenario-A and only +53,71% in Scenario-B.
The advantages of simultaneously contacting a pair of edge servers remain remarkable even
for lower values of Pcongestion (i.e. Pcongestion=0.01) and are still meaningful also in
absence of congestion (i.e.for Pcongestion=0), where the average response time in
Scenario-B is about 14% less than in Scenario-A.
CONCLUSION
In this paper,an application level protocol for improving user perceived responsiveness of
Webvbased transactional applications is presented. Specifically,the problem of how to exploit
replicated access points to the transactional logic to achieve higher levels of
responsiveness,while ensuring that the transaction associated with each end-user request is
committed exactly one time at the origin server is addressed.The underlying idea is to allow
privileged classes of users to simultaneously contact multiple edge serves, thus increasing the
probability to reach at least one of those servers quickly due to absence of congestion or
overload on that network path. At the same time, we rely on the universally supported
primary key constraint mechanisms to avoid multiple updates on the database at the origin
server. We complete our proposal by introducing a technique to limit the impact of multiple
client request transmissions on the consumption of resources at the origin server,i.e. the
natural bottleneck of the considered system architecture.Roughly speaking, this protocol is
designed such in a way that only the quickest instance, among the repliecated client requests,
is allowed to be entirely processed.
REFERENCES
References
[1] http://www.akamai.com
[2] W. Almesberger, T. Ferrari and J.Y. Le Boudec, “Scalable Resource
Reservation for the Internet (work in progress)”, Internet Draft,
1997.
[3] Y. Bernet, P. Ford, R. Yavatkar, F. Baker, L. Zhang, M. Speer, R.
Braden, B. Davie, J. Wroclawski and E. Felstaine, “A Framework
for Integrated Services Operation over Diffserv Networks”, RFC
1998, November 2000.
[4] P. Bernstein, M. Hsu and B.Mann, “Implementing Recoverable Requests
Using Queues”, Proc. ACM Int. Conference on Management
of Data (SIGMOD), 1990.
[5] R. Braden, D. Clark and S. Shenker, “Integrated Services in the Internet
Architecture: an Overview”, IETF RFC 1633, June 1994.
[6] http://www.digisle.com
[7] S. Frolund and R Guerraoui, “Implementing e-Transactions with
Asynchronous Replication”, IEEE Trans. on Parallel and Distributed
Systems, vol.12, no.2, 2001.
[8] S. Frolund and R Guerraoui, “e-Transactions: End-to-End Reliability
for Three-Tier Architectures”, IEEE Trans. on Software Engineering,
vol.28, no.4, 2002.
[9] D. Grossman, “New Terminology and Clarifications for Diffserv”,
IETF RFC 3260, April 2002.
[10] “Internet Traffic Report”,
http://www.internettrafficreport.com
[11] K. Johnson, J. Carr, M. Day, and M. Kaashoek, “The Measured
Performance of Content Distribution Networks”, Proc. of Int. Web
Caching and Content Delivery Workshop, May 2000.