Finding Nonequivalent Classifiers in Boolean Space to Reduce TCAM Usage

Rihua Wei, Yang Xu, H. Jonathan Chao

Research output: Contribution to journalArticle

Abstract

Packet classification is one of the major challenges today in designing high-speed routers and firewalls, as it involves sophisticated multi-dimensional searching. Ternary content addressable memory (TCAM) has been widely used to implement packet classification, thanks to its parallel search capability and constant processing speed. However, TCAMs have limitations of high cost and high power consumption, which ignite the desire to reduce TCAM usage. Recently, many works have been presented on this subject due to two opportunities. One is the well-known range expansion problem for packet classifiers to be stored in TCAM entries. The other is that there often exists redundancy among rules. In this paper, we propose a novel technique called Block Permutation (BP) to compress the packet classification rules stored in TCAMs. Unlike previous schemes that compress classifiers by converting the original classifiers to semantically equivalent classifiers, the BP technique innovatively finds semantically nonequivalent classifiers to achieve compression by performing block-based permutations on the rules represented in Boolean Space. We have developed an efficient heuristic approach to find permutations for compression and have designed its hardware implementation by using a field-programmable gate array (FPGA) to preprocess incoming packets. Our experiments with ClassBench classifiers and Internet Service Provider (ISP) real-life classifiers show that the proposed BP technique can significantly reduce 31.88% TCAM entries on average, in addition to the reduction contributed by other state-of-the-art schemes.

Original languageEnglish (US)
Article number7052427
Pages (from-to)968-981
Number of pages14
JournalIEEE/ACM Transactions on Networking
Volume24
Issue number2
DOIs
StatePublished - Apr 2016

    Fingerprint

Keywords

  • Classifier minimization
  • field-programmable gate array (FPGA)
  • logic optimization
  • packet classification
  • ternary content-addressable memory (TCAM)

ASJC Scopus subject areas

  • Software
  • Computer Science Applications
  • Computer Networks and Communications
  • Electrical and Electronic Engineering

Cite this