160 likes | 288 Views
A Heuristic and Hybrid Hash-based Approach to Fast Lookup. Author : Gianni Antichi, Andrea Di Pietro, Domenico Ficara, Stefano Giordano, Gregorio Procissi, Fabio Vitucci Publisher: 15th IEEE Workshop on High Performance Switching and Routing (HPSR), 2009 Presenter: Hsin-Mao Chen
E N D
A Heuristic and Hybrid Hash-based Approach to Fast Lookup Author: Gianni Antichi, Andrea Di Pietro, Domenico Ficara, Stefano Giordano, Gregorio Procissi, Fabio Vitucci Publisher: 15th IEEE Workshop on High Performance Switching and Routing (HPSR), 2009 Presenter: Hsin-Mao Chen Date:2009/9/16
Outline • Introduction • Background • H-cube Idea • H-cube Data Structures • H-cube Search • Performance
Introduction • From lookup tables, there is a large prefix disparity of density within each lookup table. • The IP lookup problem can be the adoption of a Heuristic and Hybrid Hash-based technique.
Introduction • Heuristic and Hybrid Hash-based (H-cube), where different data structures store different prefix ranges according to their density.
Background • Perfect Hash Function (PHF) A perfect hash function maps a static set of n keys into a set of m integers without collisions, where m is greater than or equal to n.
Background • Minimal Perfect Hash Function (MPHF) A minimal perfect hash function is the same as perfect hash function. If m is equal to n, the function is called minimal perfect hash function.
H-cube Data Structures • 23-24(MPHF24) (1)For the range, we use a MPHF realized by means of Blooming Trees. Avoiding collision, each entry of such a table stores also the first 24 bits of the relative IP destination address. (2)To be able to use such a binary search, the range 25-32 we insert in the MPHF24 a 24 bit-long rule and a bit b which signals whether more specified rules are in the range 25-32.
H-cube Data Structures • 17-22,25-32(PHF22,PHF32) For the range, we use a PHF obtained by double hashing. Each entry stores the first 22(32) bits of the relative IP address to solve potential collisions.
H-cube Data Structures • 1-16(DA16) In this range, the number of possible rules is limited(216), a direct addressing table can be used.
Performance • Constructing time and memory
Performance • Average number of accesses in SRAM and scratchpad for lookup
Performance • Memory consumption
Performance • Memory accesses