270 likes | 385 Views
Measurement-Based Server Selection within the Application-Layer Anycasting Architecture. Mostafa H. Ammar College of Computing Georgia Institute of Technology Atlanta, GA ammar@cc.gatech.edu. Contributors. Samrat Bhattacharjee Zongming Fei Ellen Zegura. Server Replication.
E N D
Measurement-Based Server Selection within the Application-Layer Anycasting Architecture Mostafa H. Ammar College of Computing Georgia Institute of Technology Atlanta, GA ammar@cc.gatech.edu
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
Server y Go to server y Green Service? Resolver Orange Server Group Green Server Group An Architecture
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
SF = RT/TUFR RT & TUFR Resolver Probe for well-known representative “dummy” file maintained by server. TUFR written in file by server Orange Server Group Green Server Group Resolvers Probe for RT and Associated TUFR
TUFR RT = SF x TUFR Resolver Orange Server Group Green Server Group Servers Push TUFR
Resolver and Server Interaction Probes Resolver Probe Content Server Probe Updates Performance Updates Server Pushes Anycast Resolver Push Daemon Server 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 UMD 4 5 1 5 5 5 3 4 3 GT Servers: UCLA, GTx2, WU, Clients: UMDx4, GTx16, Resolvers: UMD, GT UCLA
Summary of Experiments • 50% improvement using nearest server • Another 50% using Anycasting • More predictable Service
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 with oscillation prevention Basic Technique
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