Transcript PPT

Measurement-Based Server Selection
within the Application-Layer Anycasting
Architecture
Mostafa H. Ammar
College of Computing
Georgia Institute of Technology
Atlanta, GA
[email protected]
Contributors
Samrat Bhattacharjee
Zongming Fei
Ellen Zegura
Server Replication
Improves service scalability
Server Selection Problem
How does a client determine which
of the replicated servers to access
Interested in Wide-Area Replication
Server Selection Alternatives
Designated Server (e.g., nearest)
Round robin assignment (e.g., DNS
rotator)
Explicit list with user selection
Server-cluster techniques
(Netdispatcher, Local Director)
Other Interesting Work
DSS -- BU
SPAND -- Berkeley
Mirror Characterization -- CMU
IDMaps -- UMich, UCLA et al ...
Anycasting
Network-Layer Anycasting in RFC 1541
Anycast IP addresses
Network-layer metrics
Per-packet selection
Application-Layer Anycasting
Group of servers identified by
Anycast Name
Clients request service from group
identified by name
Automatic connection to a “good” server
An Architecture
Server y
Go to
server y
Green
Service?
Resolver
Orange Server Group
Green Server Group
Resolver
“Close” to client
Maintains
Anycast group membership
Selection-enabling information
Client may provide filter that tells
resolver how to select
DNS-like hierarchy of resolvers
Web Server Selection
An instantiation of architecture
Criterion: Best Response Time
[client request, last byte received]
includes path and server delays
Problem:
Maintaining response time estimate for
each server in anycast group at resolver
Response Time Estimation
Alternatives
Probe
Push
User-Experience
Overview of Approach
Resolver probes for
path-dependent response time (RT)
Server measures and pushes
path-independent processing time (TUFR)
Lighter-weight push more frequent than
heavier-weight probe
Probe result used to calibrate pushed value
Oscillation prevention measures
Resolvers Probe for RT and
Associated TUFR
SF =
RT/TUFR
RT &
TUFR
Probe for well-known representative “dummy”
file maintained by server.
TUFR written in file by server
Resolver
Orange Server Group
Green Server Group
Servers Push TUFR
TUFR
RT =
SF x TUFR
Resolver
Orange Server Group
Green Server Group
Resolver and Server Interaction
Content Server
Probes
Resolver Probe
Probe
Updates
Performance
Updates
Server
Pushes
Push Daemon
Server
Anycast Resolver
Resolver
Server Push Process
Typical server response cycle
assign process to handle query
parse query
locate requested file
repeat until file is written
read from file
write to network
Measure and smooth
time until first read (TUFR)
Push if significant change
Resolver Probe Process
Request dummy file from server
Measure response time
Hybrid Push/Probe Technique
Resolver: request dummy file from server
Measure response time (RT)
Dummy file contains most recent TUFR
Each probe: compute scaling factor
SF = RT/TUFR
Each Push: estimate response time
RT = SF x TUFR
Evaluation of Hybrid Technique
Resolver: UMD, Server: GT
Probe 1/50 accesses, Push max 1/4 sec
Wide-Area Experiments
WU
3
4
UMD
5
1
5
5
5
3
4
3
UCLA
GT
Servers: UCLA, GTx2, WU,
Clients: UMDx4, GTx16,
Resolvers: UMD, GT
Anycasting VS Random Selection
Summary of Experiments
Algorithm
Random
Nearest
Anycasting
Ave. Resp.
Time (Sec).
2.13
1.12
0.49
Standard
Dev. (Sec.)
6.96
2.47
0.69
50% improvement using nearest server
Another 50% using Anycasting
More predictable Service
What if Anycasting is popular?
Avoiding Oscillations
Indicating “best” server when queried
can result in oscillations
Use set of equivalent best servers
Hysteresis to join and leave set
Choose randomly among set
Effect of Oscillation
Prevention Technique
Server Load
Basic Technique
Basic technique with
oscillation prevention
Worried about Scalability?
Me Too!
Multicast pushed data
Control frequency of push/probe -CMU’s results are encouraging
Resolver can track “most promising”
servers only
Limit number of Anycast Groups
Users pay premium for service
Concluding Remarks
Appropriate guidance of clients to
servers is an important infrastructure
function
Client-perceived as well as global
performance can be improved with the
appropriate selection technology
Emerging services and network
environment makes problem more
challenging and more important