180 likes | 418 Views
Dynamic Load Balancing on Web-server Systems. Valeria Cardellini, Michele Colajanni, and Philip S. Yu Presented by Sui-Yu Wang. Distributed Web-server System. Consisting of multiple Web-server hosts, distributed on LANs and WANs Spread incoming requests among these servers
E N D
Dynamic Load Balancing on Web-server Systems Valeria Cardellini, Michele Colajanni, and Philip S. Yu Presented by Sui-Yu Wang
Distributed Web-server System • Consisting of multiple Web-server hosts, distributed on LANs and WANs • Spread incoming requests among these servers • Each server can respond to any request • Successful load-balancing approaches make the distributed system appear as a single host
Distributed Web-server Architectures • Client-based • Web clients • Client-side proxies • Web-server based • DNS-based • Dispatcher-based • Server-based
DNS-based approach • Architecture transparency • DNS has limited control on requests reaching the Web cluster • TTL • Scheduling algorithms • Constant TTL • Adaptive TTL
Scheduling algorithms • Constant TTL algorithms • System-stateless algorithms • Round-Robin DNS • Server-state-based algorithms • Client-state-based algorithms • Hidden load weight • Multitier round-robin policy • Consider relative server-to-client topology and client-to-server link latency • Network proximity information, round trip delays • Server-and client-state-based algorithms
Scheduling algorithms • Adaptive TTL algorithms • Select server similar to the hidden load weight algorithms • Assign appropriate TTL • Can scale from LANs to WANs
Dispatcher-based Approach • Centralized request scheduling • Packet rewriting • Single-rewriting • Double-rewriting • Packet forwarding • HTTP redirection
Packet forwarding • Network Dispatcher • Works with LANs and WANs • Client and server transparent • ONE-IP Address • Routing-based dispatching • Broadcast-based dispatching • No dynamic load-balancing based on server load
HTTP redirection • Centralized dispatcher • Does not require modification of packet IP address • Server-state based dispatching • Location-based dispatching
Server-based approach • Two-level dispatching • No centralized dispatching • HTTP redirection • Packet redirection • Static routing • Load-balancing
Performance evaluation • Exponential model: the number of page requests per session and the time between two page requests from the same client were assumed to be exponentially distributed
Performance evaluation • Client load variability is represented by some heavy-tailed function