DESIGN AND ANALYSIS OF CLUSTER-BASED WEB SERVERS

Open Access
Author:
Kim, Jin-ha
Graduate Program:
Computer Science and Engineering
Degree:
Doctor of Philosophy
Document Type:
Dissertation
Date of Defense:
October 24, 2005
Committee Members:
  • Thomas La Porta, Committee Member
  • Wang Chien Lee, Committee Member
  • Chitaranjan Das, Committee Chair
  • Dongwon Lee, Committee Member
  • C Lee Giles, Committee Member
Keywords:
  • NIC memory
  • SSL
  • cluster-based Web server
  • User-level communication
  • multi-tier datacenters
Abstract:
As cluster-based Web servers are increasingly adopted to host a variety of network-based services, improving the performance of such servers has become critical to satisfy the customers demand.Since user-level communication is an effective technique to reduce the intra-cluster communication overhead, design of cluster-based Web server with user-level communication has been a recent research focus. In this context, the overall thesis of the investigation is to explore several design issues to maximize the performance of cluster-based network servers based on the user-level communication.First, we propose a coscheduled server model, which coschedules the communication processes of a request. The main objective of this is to improve the latency of requests that need intra-cluster communication for completion. The coscheduled server will be modeled using two known coscheduling techniques, called Dynamic Coscheduling (DCS) and DCS with immediate blocking. Second, we propose a NIC data caching scheme, which uses the available NIC memory for caching recently accessed data blocks to improve the distributed Web server's performance. Although the NIC memory is traditionally used for communication, since recent programmable NICs come with a large memory, we believe it can be used for improving performance as well. Next, we investigate the impact of the Secure Socket Layer (SSL) offering in cluster-based application servers and propose a SSL backend forwarding scheme, called SSL_with_bf. Although SSL is the most popular protocol to provide a secure channel between a client and an application server, its high overhead degrades the server performance considerably, and thus, affects the server scalability. Therefore, improving the performance of SSL-enabled application servers is critical for designing scalable and high performance data centers. To investigate the proposed techniques, we plan to develop a comprehensive simulation testbed that captures the underlying communication layer in a cluster, the characteristics of various coscheduling algorithms, and the characteristics of a distributed Web server model. Using the simulation testbed, we plan to conduct in-depth performance evaluation of proposed schemes with several workloads to explore the cluster-based Web server design space.