Chisel: A Storage-efficient, Collision-free Hash-based Network Processing Architecture

  • Authors:
  • Jahangir Hasan;Srihari Cadambi;Venkatta Jakkula;Srimat Chakradhar

  • Affiliations:
  • Purdue University, West Lafayette, IN;NEC Laboratories America Inc., Princeton, NJ;NEC Laboratories America Inc., Princeton, NJ;NEC Laboratories America Inc., Princeton, NJ

  • Venue:
  • Proceedings of the 33rd annual international symposium on Computer Architecture
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Longest Prefix Matching (LPM) is a fundamental part of various network processing tasks. Previously proposed approaches for LPM result in prohibitive cost and power dissipation (TCAMs) or in large memory requirements and long lookup latencies (tries), when considering future line-rates, table sizes and key lengths (e.g., IPv6). Hash-based approaches appear to be an excellent candidate for LPM with the possibility of low power, compact storage, and O(1) latencies. However, there are two key problems that hinder their practical deployment as LPM solutions. First, naïve hash tables incur collisions and resolve them using chaining, adversely affecting worst-case lookup-rate guarantees that routers must provide. Second, hash functions cannot directly operate on wildcard bits, a requirement for LPM, and current solutions require either considerably complex hardware or large storage space. In this paper we propose a novel architecture which successfully addresses for the first time, both key problems in hash based LPM — making the following contributions: (1) We architect an LPM solution based upon a recently-proposed, collision-free hashing scheme called Bloomier filter, by eliminating its false positives in a storage efficient way. (2) We propose a novel scheme called prefix collapsing, which provides support for wildcard bits with small additional storage and reduced hardware complexity. (3) We exploit prefix collapsing and key characteristics found in real update traces to support fast and incremental updates, a feature generally not available in collision-free hashing schemes.