TY - JOUR
T1 - Dual-load Bloom filter
T2 - Application for name lookup
AU - Lee, Jungwon
AU - Byun, Hayoung
AU - Lim, Hyesook
N1 - Funding Information:
This research was supported by the National Research Foundation of Korea (NRF) , NRF-2018R1A6A3A11040736 and NRF-2017R1A2B4011254 .
Publisher Copyright:
© 2019
PY - 2020/2/1
Y1 - 2020/2/1
N2 - As a simple probabilistic data structure, a Bloom filter consumes a small amount of memory in efficiently dealing with a large set of data elements. Bloom filters stored in on-chip memories have been popularly used as pre-filters to minimize unnecessary off-chip memory accesses. This paper proposes an interesting variant of a Bloom filter, the dual-load Bloom filter (DLBF) and shows that the proposed DLBF can be effective for implementing a name lookup algorithm. While Bloom filters usually hold a single type of information, which is either the membership in a given set or the return values of elements, the proposed DLBF holds both the membership and the return values in a single Bloom filter. As one of the trie-based name lookup algorithms developed for named data networking, a path-compressed trie compresses each path in a name prefix trie by removing empty nodes with a single child. This type of trie should be designed to hold skip values to represent the numbers of removed nodes in addition to the name prefixes stored in each node. This paper shows that the proposed DLBF can hold the skip values and the name prefixes to implement a path-compressed trie in an on-chip memory. Simulation results show that the proposed name lookup structure improves search performance by 33% using a much smaller amount of memory than previous Bloom filter-based structures.
AB - As a simple probabilistic data structure, a Bloom filter consumes a small amount of memory in efficiently dealing with a large set of data elements. Bloom filters stored in on-chip memories have been popularly used as pre-filters to minimize unnecessary off-chip memory accesses. This paper proposes an interesting variant of a Bloom filter, the dual-load Bloom filter (DLBF) and shows that the proposed DLBF can be effective for implementing a name lookup algorithm. While Bloom filters usually hold a single type of information, which is either the membership in a given set or the return values of elements, the proposed DLBF holds both the membership and the return values in a single Bloom filter. As one of the trie-based name lookup algorithms developed for named data networking, a path-compressed trie compresses each path in a name prefix trie by removing empty nodes with a single child. This type of trie should be designed to hold skip values to represent the numbers of removed nodes in addition to the name prefixes stored in each node. This paper shows that the proposed DLBF can hold the skip values and the name prefixes to implement a path-compressed trie in an on-chip memory. Simulation results show that the proposed name lookup structure improves search performance by 33% using a much smaller amount of memory than previous Bloom filter-based structures.
KW - Bloom filter
KW - Dual-load Bloom filter
KW - Name lookup
KW - Name prefix trie
KW - Named data networking
KW - Path-compressed trie
UR - http://www.scopus.com/inward/record.url?scp=85076954998&partnerID=8YFLogxK
U2 - 10.1016/j.comcom.2019.12.029
DO - 10.1016/j.comcom.2019.12.029
M3 - Article
AN - SCOPUS:85076954998
SN - 0140-3664
VL - 151
SP - 1
EP - 9
JO - Computer Communications
JF - Computer Communications
ER -