A Memory-optimized Bloom Filter using An Additional Hashing Function Author: Mahmood Ahmadi, Stephan Wong Publisher: IEEE GLOBECOM 2008 Presenter: Yu-Ping Chiang Date: 2009/04/29
Outline Related work Regular bloom filter Pruned bloom filter BFAH (bloom filter with an additional hashing function) Performance
Regular bloom filter Address Bit-array R0 R2 R3 R1 H1(R1) H2(R1) H3(R1) R0 R1 R0 R1 R2 R3 R2 R3 R0
Regular bloom filter - search Address Bit-array Input: X H1(X) H3(X) R0 R1 R0 R1 R2 R3 R2 R3 H2(X) R0 NO match any rule !! Disadvantages: ‧ Can’t delete rule ‧ Duplicate rules in memory
Pruned bloom filter Bit-array Address R0 R2 R3 R1 R0 R1 R2 R Counter ‧ After set bit-array for all rules, save rule only in smallest counter position.
Outline Related work Regular bloom filter Pruned bloom filter BFAH (bloom filter with an additional hashing function) Performance
BFAH Determine which place will use to insert item. Address Bit-array R0 R2 R3 R1 H1(R1) H2(R1) H3(R1) Additional hash function
BFAH - example Address Bit-array R0 H1(R1) H2(R1) H3(R1) Additional hash function rule_num mod 3 Input : 0 Output : 0 R0
BFAH - example Address Bit-array R0 R1 Additional hash function rule_num mod 3 Input : 1 Output : 1 R0 R1
BFAH - example Address Bit-array R0 R2 R3 R1 Additional hash function rule_num mod 3 R0 R1 R3 R2
Outline Related work Regular bloom filter Pruned bloom filter BFAH (bloom filter with an additional hashing function) Performance
R.B : Regular Bloom filter P.C.B : Pruned Counting Bloom filter M.B : BFAH k = # of hash functions m = size of bit array n = # of items (rules)
Performance R.B : Regular Bloom filter P.C.B : Pruned Counting Bloom filter M.B : BFAH k = # of hash functions m = size of bit array n = # of items (rules)
Performance Average number of collisions for all rule-set.