Ew. Zegura et al., Application-layer anycasting: A server selection architecture and use in areplicated web service, IEEE ACM TN, 8(4), 2000, pp. 455-466
Server replication improves the ability of a service to handle a large numb
er of clients. One of the important factors in the efficient utilization of
replicated servers is the ability to direct client requests to the "best"
server, according to some optimality criteria, In the anycasting communicat
ion paradigm, a sender communicates with a receiver chosen from an anycast
group of equivalent receivers. As such, anycasting is well suited to the pr
oblem of directing clients to replicated servers.
This paper examines the definition and support of the anycasting paradigm a
t the application layer, providing a service that uses an anycast resolver
to map an anycast domain name and a selection criteria into an TP address.
By realizing anycasting in the application layer, we achieve flexibility in
the optimization criteria and ease the deployment of the service.
As a case study, we examine the performance of our system for a key service
: replicated web servers. To this end, we develop an approach for estimatin
g the response time that a client will experience when accessing given serv
ers, Such information is maintained in the anycast resolver that clients qu
ery to obtain the identity of the server with the best estimated response t
ime. Our performance collection technique combines server push with resolve
r probes to estimate the expected response time without undue overhead, Our
experiments show that selecting a server using our architecture and estima
tion technique can improve the client response time by a factor of two over
nearest server selection and by a factor of four over random server select
ion.