A new TCB cache to efficiently manage TCP sessions for web servers

  • Authors:
  • Guangdeng Liao;Laxmi Bhuyan;Wei Wu;Heeyeol Yu;Steve R. King

  • Affiliations:
  • University of California, Riverside;University of California, Riverside;Intel Corporation;Cisco Systems, Inc.;Intel Corporation

  • Venue:
  • Proceedings of the 6th ACM/IEEE Symposium on Architectures for Networking and Communications Systems
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

TCP/IP, the most commonly used network protocol, consumes a significant portion of time in Internet servers. While a wide spectrum of studies has been done to reduce its processing overhead such as TOE and Direct Cache Access, most of them did studies solely from the per-packet perspective and concentrated on the packet memory access overhead. They ignored per-session data TCP Control Block (TCB), which poses a challenge in web servers with a large volume of concurrent sessions. In this paper, we start with challenge studies and show that the TCB data should be efficiently managed. We propose a new TCB cache addressed by session identifiers to address the challenge. We carefully design the TCB cache along two important axes: cache indexing and cache replacement policies. First, we study the performance of various hash functions and propose a new indexing scheme for the TCB cache by employing two Universal hash functions. We analyze session identifiers and choose some important bits as indexing bits to reduce hashing hardware complexity. Second, by leveraging characteristics of web sessions, we design a speculative cache replacement policy, which can effectively work on the TCB cache with two cache banks. Experimental results show that the new cache efficiently manages the per-session data. When it is used in TOEs or integrated into CPUs to manage the per-session data, TCP/IP processing time is significantly reduced, thus saving web server response time.