Optimal In/Out TCAM Encodings of Ranges

Ori Rottenstreich, Isaac Keslassy, Avinatan Hassidim, Haim Kaplan, Ely Porat

Research output: Contribution to journalArticlepeer-review


Hardware-based packet classification has become an essential component in many networking devices. It often relies on ternary content-addressable memories (TCAMs), which compare the packet header against a set of rules. TCAMs are not well suited to encode range rules. Range rules are often encoded by multiple TCAM entries, and little is known about the smallest number of entries that one needs for a specific range. In this paper, we introduce the In/Out TCAM, a new architecture that combines a regular TCAM together with a modified TCAM. This custom architecture enables independent encoding of each rule in a set of rules. We provide the following theoretical results for the new architecture: 1) We give an upper bound on the worst-case expansion of range rules in one and two dimensions. 2) For extremal ranges, which are 89% of the ranges that occur in practice, we provide an efficient algorithm that computes an optimal encoding. 3) We present a closed-form formula for the average expansion of an extremal range.

Original languageEnglish
Article number7005545
Pages (from-to)555-568
Number of pages14
JournalIEEE/ACM Transactions on Networking
Issue number1
StatePublished - Feb 2016


  • Optimal range encoding
  • packet classification
  • ternary content-addressable memory (TCAM)


Dive into the research topics of 'Optimal In/Out TCAM Encodings of Ranges'. Together they form a unique fingerprint.

Cite this