TY - JOUR
T1 - Hierarchical packet classification using a Bloom filter and rule-priority tries
AU - Alagu Priya, A. G.
AU - Lim, Hyesook
N1 - Funding Information:
This work was supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MEST) (2010-0000483). This research was also supported by the MKE (The Ministry of Knowledge Economy), Korea, under the HNRC (Home Network Research Center) – ITRC (Information Technology Research Center) support program supervised by the National IT Industry Promotion Agency (NIPA-2010-C1090-1011-0010).
PY - 2010/6/15
Y1 - 2010/6/15
N2 - Packet classification techniques have received significant attention in the network literature over the past 10 years, due to its fundamental role in the Internet routers. In recent years, Bloom filter, which is an efficient data structure for membership queries, becomes popular in the network applications. Though Bloom filter allows an error called "false positives," the efficiency and the space saving overweigh this drawback when the false positive rate is properly controlled. In this paper, we proposed a packet classification algorithm based on a hierarchical approach. While the same data structure is used both for the source and the destination prefix fields in most of other hierarchical packet classification algorithms, our proposed hierarchical packet classification algorithm uses a Bloom filter for the source prefix field and a trie structure for the destination prefix field. The Bloom filter is primarily employed to pre-filter the sub-strings of the source address which have no match for the source prefixes of a given rule set. For the sub-strings with a positive result from the Bloom filter, rule-priority tries constructed based on a destination prefix field determine the highest priority rule matching the input packet for entire rule fields. Since the Bloom filter requires a small amount of memory, it is implemented with an on-chip memory or a fast cache, and hence the off-chip memory accesses are not occurred in the first stage of the hierarchical approach in the proposed algorithm. The proposed packet classification algorithm also provides incremental update. To compare the performance of the proposed packet classification algorithm with other related algorithms, extensive simulations for various algorithms are performed. The simulation result shows that the proposed algorithm renders a better performance in terms of average and worst-case search performance and memory requirement.
AB - Packet classification techniques have received significant attention in the network literature over the past 10 years, due to its fundamental role in the Internet routers. In recent years, Bloom filter, which is an efficient data structure for membership queries, becomes popular in the network applications. Though Bloom filter allows an error called "false positives," the efficiency and the space saving overweigh this drawback when the false positive rate is properly controlled. In this paper, we proposed a packet classification algorithm based on a hierarchical approach. While the same data structure is used both for the source and the destination prefix fields in most of other hierarchical packet classification algorithms, our proposed hierarchical packet classification algorithm uses a Bloom filter for the source prefix field and a trie structure for the destination prefix field. The Bloom filter is primarily employed to pre-filter the sub-strings of the source address which have no match for the source prefixes of a given rule set. For the sub-strings with a positive result from the Bloom filter, rule-priority tries constructed based on a destination prefix field determine the highest priority rule matching the input packet for entire rule fields. Since the Bloom filter requires a small amount of memory, it is implemented with an on-chip memory or a fast cache, and hence the off-chip memory accesses are not occurred in the first stage of the hierarchical approach in the proposed algorithm. The proposed packet classification algorithm also provides incremental update. To compare the performance of the proposed packet classification algorithm with other related algorithms, extensive simulations for various algorithms are performed. The simulation result shows that the proposed algorithm renders a better performance in terms of average and worst-case search performance and memory requirement.
KW - All-length Bloom filter
KW - Best matching rule
KW - Hashing
KW - Packet classification
KW - Rule-priority trie
UR - http://www.scopus.com/inward/record.url?scp=77955273948&partnerID=8YFLogxK
U2 - 10.1016/j.comcom.2010.03.009
DO - 10.1016/j.comcom.2010.03.009
M3 - Article
AN - SCOPUS:77955273948
SN - 0140-3664
VL - 33
SP - 1215
EP - 1226
JO - Computer Communications
JF - Computer Communications
IS - 10
ER -