DOI QR코드

DOI QR Code

Approaches for Improving Bloom Filter-Based Set Membership Query

  • Lee, HyunYong (Energy System Research Section, Honam Research Center, Electronics Telecommunications Research Institute (ETRI)) ;
  • Lee, Byung-Tak (Energy System Research Section, Honam Research Center, Electronics Telecommunications Research Institute (ETRI))
  • Received : 2017.11.29
  • Accepted : 2018.03.15
  • Published : 2019.06.30

Abstract

We propose approaches for improving Bloom filter in terms of false positive probability and membership query speed. To reduce the false positive probability, we propose special type of additional Bloom filters that are used to handle false positives caused by the original Bloom filter. Implementing the proposed approach for a routing table lookup, we show that our approach reduces the routing table lookup time by up to 28% compared to the original Bloom filter by handling most false positives within the fast memory. We also introduce an approach for improving the membership query speed. Taking the hash table-like approach while storing only values, the proposed approach shows much faster membership query speed than the original Bloom filter (e.g., 34 times faster with 10 subsets). Even compared to a hash table, our approach reduces the routing table lookup time by up to 58%.

Keywords

E1JBB0_2019_v15n3_550_f0001.png 이미지

Fig. 2. BF-based routing table lookup for L2 switching.

E1JBB0_2019_v15n3_550_f0002.png 이미지

Fig. 3. A high-level illustration of the approach using nBFs.

E1JBB0_2019_v15n3_550_f0003.png 이미지

Fig. 4. The condition to outperform BFs only case.

E1JBB0_2019_v15n3_550_f0004.png 이미지

Fig. 5. A high-level illustration of the approach using sBF.

E1JBB0_2019_v15n3_550_f0005.png 이미지

Fig. 6. False positive rate w.r.t. the storage space (600 K elements, 10 subsets, and 10% NACTIVE).

E1JBB0_2019_v15n3_550_f0006.png 이미지

Fig. 7. False positive rate w.r.t. the number of subsets (1 MB storage space, 600 K elements, and 10% NACTIVE ).

E1JBB0_2019_v15n3_550_f0007.png 이미지

Fig. 8. Bits per element for achieving the target false positive rate (1 MB storage space, 600 K elements,10 subsets, and 10% NACTIVE).

E1JBB0_2019_v15n3_550_f0008.png 이미지

Fig. 9. Comparison with existing approaches (nBF).

E1JBB0_2019_v15n3_550_f0009.png 이미지

Fig. 10. A high-level illustration of sTable.

E1JBB0_2019_v15n3_550_f0010.png 이미지

Fig. 11. The membership query error rate w.r.t the number of subsets (1 MB storage space, 600 Kelements, and 10% NACTIVE).

E1JBB0_2019_v15n3_550_f0011.png 이미지

Fig. 12. The processing time w.r.t the number of subsets (1 MB storage space, 600 K elements, and 10%NACTIVE).

E1JBB0_2019_v15n3_550_f0012.png 이미지

Fig. 13. The required amount of storage space for achieving the target error probability (1 MB storagespace, 600 K elements, 10 subsets, and 10% NACTIVE).

E1JBB0_2019_v15n3_550_f0013.png 이미지

Fig. 1. Element insertion and membership query using a BF: (a) filter initialization, (b) element insertion, and (c) membership query.

Table 1. Routing table lookup time

E1JBB0_2019_v15n3_550_t0001.png 이미지

table lookup time by 58% compared to the hash table. Table 2. Comparison of sTable and hash table

E1JBB0_2019_v15n3_550_t0002.png 이미지

References

  1. S. Dharmapurikar, P. Krishnamurthy, and D. E. Taylor, "Longest prefix matching using bloom filters," IEEE/ACM Transactions on Networking (TON), vol. 14, no. 2, pp. 397-409, 2006. https://doi.org/10.1109/TNET.2006.872576
  2. M. Yu, A. Fabrikant, and J. Rexford, "BUFFALO: bloom filter forwarding architecture for large organizations," in Proceedings of the 5th International Conference on Emerging Networking Experiments and Technologies, Rome, Italy, 2009, pp. 313-324.
  3. H. Wu, D. Yang, and G. Zhang, "SybilBF: defending against Sybil attacks via Bloom filters," ETRI Journal, vol. 33, no. 5, pp. 826-829, 2011. https://doi.org/10.4218/etrij.11.0210.0431
  4. J. Byers, J. Considine, M. Mitzenmacher, and S. Rost, "Informed content delivery across adaptive overlay networks," ACM SIGCOMM Computer Communication Review, vol. 32, no. 4, pp. 47-60, 2002. https://doi.org/10.1145/964725.633031
  5. L. Fan, P. Cao, J. Almeida, and A. Z. Broder, "Summary cache: a scalable wide-area web cache sharing protocol," IEEE/ACM Transactions on Networking (TON), vol. 8, no. 3, pp. 281-293, 2000. https://doi.org/10.1109/90.851975
  6. B. H. Bloom, "Space/time trade-offs in hash coding with allowable errors," Communications of the ACM, vol. 13, no. 7, pp. 422-426, 1970. https://doi.org/10.1145/362686.362692
  7. Click modular router, https://github.com/kohler/click.
  8. B. Fan, D. G. Andersen, M. Kaminsky, and M. D. Mitzenmacher, "Cuckoo filter: Practically better than bloom," in Proceedings of the 10th ACM International on Conference on emerging Networking Experiments and Technologies, Sydney, Australia, 2014, pp. 75-88.
  9. A. Crainiceanu, "Bloofi: a hierarchical Bloom filter index with applications to distributed data provenance," in Proceedings of the 2nd International Workshop on Cloud Intelligence, Trento, Italy, 2013.
  10. J. Lu, T. Yang, Y. Wang, H. Dai, L. Jin, H. Song, and B. Liu, "One-hashing bloom filter," in Proceedings of 2015 IEEE 23rd International Symposium on Quality of Service (IWQoS), Portland, OR, 2015, pp. 289-298.
  11. T. Yang, A. X. Liu, M. Shahzad, Y. Zhong, Q. Fu, Z. Li, G. Xie, and X. Li, "A shifting bloom filter framework for set queries," Proceedings of the VLDB Endowment, vol. 9, no. 5, pp. 408-419, 2016. https://doi.org/10.14778/2876473.2876476
  12. Y. Liu, X. Ge, D. H. C. Du, and X. Huang, "Par-BF: a parallel partitioned Bloom filter for dynamic data sets," The International Journal of High Performance Computing Applications, vol. 30, no. 3, pp. 259-275, 2016. https://doi.org/10.1177/1094342015618452
  13. S. Tarkoma, C. E. Rothenberg, and E. Lagerspetz, "Theory and practice of bloom filters for distributed systems," IEEE Communications Surveys & Tutorials, vol. 14, no. 1, pp. 131-155, 2011.
  14. M. Zhong, P. Lu, K. Shen, and J. Seiferas, "Optimizing data popularity conscious bloom filters," in Proceedings of the 27th ACM Symposium on Principles of Distributed Computing, Toronto, Canada, 2008, pp. 355-364.
  15. J. Bruck, J. Gao, and A. Jiang, "Weighted bloom filter," in Proceedings of 2006 IEEE International Symposium on Information Theory, Seattle, WA, 2006, pp. 2304-2308.
  16. B. Donnet, B. Baynat, and T. Friedman, "Retouched bloom filters: allowing networked applications to trade off selected false positives against false negatives," in Proceedings of the 2006 ACM CoNEXT Conference, Lisbon, Portugal, 2006.
  17. C. Kim, M. Caesar, A. Gerber, and J. Rexford, "Revisiting route caching: the world should be flat," in Passive and Active Network Measurement. Heidelberg: Springer, 2009, pp. 3-12.
  18. COIN-OR Interior Point Optimizer (IPOPT) [Online]. Available: https://github.com/coin-or/Ipopt.
  19. D. Wagner, "A generalized birthday problem," in Advances in Cryptology-CRYPTO 2002. Heidelberg: Springer, 2002, pp. 288-304.