O(logW) multidimensional packet classification

  • Authors:
  • Haibin Lu;Sartaj Sahni

  • Affiliations:
  • Department of Computer and Information Science and Engineering, University of Florida, Gainesville, FL and University of Missouri-Columbia, Columbia, MO;Department of Computer and Information Science and Engineering, University of Florida, Gainesville, FL

  • Venue:
  • IEEE/ACM Transactions on Networking (TON)
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

We use a collection of hash tables to represent a multidimensional packet classification table. These hash tables are derived from a trie-representation of the multidimensional classifier. The height of this trie is O(W), where W is the sum of the maximum possible length, in bits, of each of the fields of a filter. The leaves at level i of the trie together with markers for some of the leaves at levels j such that j i are stored in a hash table Hi. The placement of markers is such that a binary search of the Hi's successfully locates the highest-priority filter that matches any given packet. The number of hash tables equals the trie height, O(W). Hence, a packet may be classified by performing O(log W) hash-table lookups. So the expected lookup-complexity of our data structure for multidimensional packet classification is O(log W). Our proposed scheme affords a memory advantage over the O(log W) 1-D scheme of Waldvogel et al. For multidimensional packet classification, our proposed scheme provides both a time and memory advantage over the extended grid-of-tries scheme of Baboescu et al.