Chapter 2: Literature Review

Read Complete Research Material



Chapter 2: Literature Review

Chapter 2: Literature Review

Introduction

Clusters of workstations are becoming an increasingly popular hardware platform for cost-effective high performance network servers. Typically, a cluster-based web server consists of a front-end server, responsible for request distribution, and a number of back-end servers, responsible for request processing. Back-end servers can handle several incoming requests concurrently. However, to ensure high performance, cluster-based web servers should satisfy two requirements: load balancing and high cache hit rate. Load balancing solutions can be classified as: DNS based approaches, and IP/TCP/HTTP redirection based approaches.

The second approach employs a specialized front-end node and a load balancer, which traditionally determines the least loaded server to which the packet has to be sent . Previous request distribution methods, such as round robin, have focused mainly on load balancing to maximize the utilization of the cluster. When the front-end server distributes incoming requests in this manner, each back-end server is likely to cache identical set of data in its main memory. If the size of the working set exceeds the size of the main memory cache, back-end servers tend to suffer from the expensive disk I/O. Recent work has focused on the content or type of requests sent to servers. These request distribution methods aim to achieve both load balancing and high cache hit rate.

While it takes load balancing into account, these methods attempt to dispatch the same kinds of requests to only one back-end server in order to reduce the number of disk accesses. There are three main components comprising a cluster configuration with content-aware request distribution strategy: (a) a dispatcher that specifies which web server will process a given request, (b) a distributor, which interfaces with the client and implements the mechanism that distributes the client requests to a specific web server, and (c) a web server, which processes HTTP requests. In order to distribute requests based on the requested content, the distributor should implement some mechanisms such as TCP handoff or TCP splicing .

There are three typical cluster configurations: with single front-end distributor, co-located distributor and server, and co-located dispatcher, distributor and server . Under a load balancing policy in a k-node cluster, each node will statistically serve only 1/k of the incoming requests locally and will forward (kK1)/k of the requests to the other nodes using the TCP handoff mechanism. TCP handoff is an expensive operation.

This could lead to a significant forwarding overhead, decreasing the potential performance benefits of the proposed solution . On the other hand, when a back-end server becomes overloaded, it moves some contents to an under-loaded back-end server. That is, some incoming requests are re-assigned to another less busy backend server. Then, the re-assigned back-end server will process the subsequent requests. Locality-aware request distribution (LARD) has been proposed as one framework of the content-based strategy. Other research has focused on the high cache hit rate, where cooperative caching may be applied to cluster-based web servers. Cooperative caching treats all back-end server memory systems as a large file ...
Related Ads