We propose a new connection management architecture for clustered Internet services called Active Connection Management (ACM) to improve the availability, quality of service, and manageability of Internet services. ACM extends the API of load-balancing switches to include application-level primitives. These primitives enable Internet services to manage loadbalancing switches dynamically to control how client connections are mapped to physical resources as they enter the cluster. ACM provides several properties ideal for Internet services over static configuration. First, ACM increases availability through automated configuration, rolling reboots, and reduced server failure detection and recovery time. Second, ACM provides better load conditioning by enabling dynamic allocation of frontend resources and enabling more control over graceful degradation. Third, it provides better manageability by automating configuration, reducing human errors and improving scalability. We present a desig...
Mike Y. Chen, Eric A. Brewer