PBC: Effective Prefix Caching for Fast Name Lookups

Chuwen Zhang,Yong Feng,Haoyu Song,Beichuan Zhang,Yi Wang,Ying Wan,Wenquan Xu,Bin Liu
2020-01-01
Abstract:Name lookup based on the Longest Prefix Match (LPM) is a basic function in many network applications. Caching is usually used to speed up the lookups. However, caching prefixes for LPM has a unique challenge: one needs to guarantee a cached prefix is indeed the longest for correctness. To achieve this, existing solutions have to cache either the entire prefix triebranch or only the leaf nodes, which undermines cache utilization and thus reduce the hit ratio. In this paper, we propose PlusBitmap Caching (PBC), which associates a bitmap to each cached prefix to denote the existence or absence of any longer prefix in the main table. This bitmap not only guarantees the correctness of LPM lookup, but also minimizes the extra information stored in cache. Meanwhile, cache consistency for prefix updates can be efficiently maintained. Experimental results show that, compared with previous work, PBC increases cache hit ratio by 16% over a wide range of cache size, and exhibits a more steady performance when more non-leaf prefixes are hit or a prefix is hit by more different names. PBC is a general approach that can be applied to other LPM-based applications
What problem does this paper attempt to address?