Explore chapters and articles related to this topic
Forwarding
Published in Heqing Zhu, Data Plane Development Kit (DPDK), 2020
Yipeng Wang, Jasvinder Singh, Zhe Tao, Liang Ma, Heqing Zhu
The membership library in DPDK provides a couple of different filter data structures; each data structure has a slightly different design and property. For example, a vector of bloom filters is provided to serve as an array of bloom filters. With this data structure, one can check if a key belongs to a certain data set of all the data sets represented by the multiple bloom filters. Another filter data structure is hash table-based filter, which is based on cuckoo filter (B. Fan, et al, Cuckoo Filter: Practically Better Than Bloom.). Compared to traditional hash table, cuckoo filter does not store the full key but only a signature of the key into the table. Without the full key comparison, there could be false positives while the memory requirement is much less.
Profile Matching and Recommendation Systems in Proximity Service
Published in Yufeng Wang, Athanasios V. Vasilakos, Qun Jin, Hongbo Zhu, Device-to-Device based Proximity Service, 2017
Yufeng Wang, Athanasios V. Vasilakos, Qun Jin, Hongbo Zhu
Bloom filter [2] is a time- and space-efficient probabilistic data structure for testing whether an element is a member of a set. It is composed of a vector of m bits, each of which is initially set to “0.” When adding a new element to the Bloom filter, the elements over k independent hash functions are computed to generate k hash values as the indices to the vector. The corresponding k entries are set to “1.” To insert a set of n elements, this procedure is repeated n times until all the elements are encoded in the Bloom filter. During the procedure, if a bit is already set, we leave it as “1.” To query an element against a given Bloom filter, the k hashing indices are computed: The element is a member of the set only if all the k corresponding bits are “1” in the vector. Figure 4.1 illustrates an example of inserting an interest attribute profile to a Bloom filter and two query examples.
Hashing Schemes
Published in Weidong Wu, Packet Forwarding Technologies, 2007
The Bloom filter, conceived by Bloom in 1970 [9], is a space-efficient probabilistic data structure that is used to test whether or not an element is a member of a set. A Bloom filter consists of two components: a set of k hash functions and a bit vector of m bits. Initially, all bits of the vector are set to 0. Given a set X with n members, for each member x ∈ X, k hash functions produce k values: h1i,h2i,h3i,…,hki(1≤hji≤m,1≤j≤k). Each of these values addresses a single bit in the m-bit vector. These bits in the m-bit vector are set to 1. A bit in the m-bit vector can be set to 1 multiple times, but only the first change has an effect.
Multi-keywords fuzzy search encryption supporting dynamic update in an intelligent edge network
Published in Connection Science, 2022
Xixi Yan, Pei Yin, Yongli Tang, Suwei Feng
Bloom filter (BF) (Lavanya et al., 2020) is a set composed of m-bit array, which is used to detect whether an item belongs to the group by mapping it to the binary vector via hash functions. As shown in Figure 1, CBF (Lavanya et al., 2020; Wu et al., 2021) is a data structure based on the Bloom Filter, which expands a counter for each bit in the BF. To determine whether an item belongs to the group, the item needs to be processed by hash functions. As long as the values of the corresponding position are not all 1, the element does not belong to the set. If the values of the corresponding position are all 1, there are two cases: the item belongs to the group or it is a false positive problem. The probability of the false positive case is approximately , where represents the number of hash functions, represents the number of inserted keywords and represents the number of bits of Bloom filter. As shown in Figure 1, when an item is inserted, if and are mapped to the same position by hash functions, the value of the corresponding position counter is increased by 1. When an element is deleted, the value of the corresponding position counter is decreased by 1.
An efficient and DoS-resilient name lookup for NDN interest forwarding
Published in Connection Science, 2021
Dacheng He, Dafang Zhang, Yanbiao Li, Wei Liang, Meng-Yen Hsieh
With the explosion of Big Data, update function turns increasingly critical in networks. Many algorithms include excellent update mechanisms. The proposed algorithm also supports fast updates. The update process is similar to the name lookup. When FIB changes, it locates name prefixes needed to change in the corresponding hash table first, and then it changes feature prefixes in corresponding bloom filters. However, general bloom filters do not support the delete function. If necessary, the algorithm can use count bloom filters to support it. Since the update efficiency is related to lookup efficiency, the algorithm also has good performance during the update process. Algorithm 3 shows the operations of name modification and deletion in the algorithm.
Secure medical data storage in DPOS-hyper ledger fabric block chain using PM-ECC and L2-DWT
Published in International Journal of Computers and Applications, 2023
Shinzeer C. K., Avinash Bhagat, Ajay Shriram Kushwaha
The acknowledgment Fabric authority certificate (that was issued during the registration phase) was obtained while data requesters request medical data in IPFS. From that, their personal details were obtained and shared with patients. They will share the biometric ID with the patients if the patients recognize them. This shared value is then given to SHA256 for hashing; then, the result was matched in the BC using the bloom filter. A space-efficient data, which matches elements in less time, is termed a bloom filter. If matched, data is obtained; also, the extraction and decryption occur by sharing the public key as explained in Section 3.3.