Highly Memory-Efficient LogLog Hash for Deep Packet Inspection

Size: px
Start display at page:

Download "Highly Memory-Efficient LogLog Hash for Deep Packet Inspection"

Transcription

1 Highly Memory-Efficient LogLog Hash for Deep Packet Inspection Masanori Bando, N. Sertac Artan, and H. Jonathan Chao Department of Electrical and Computer Engineering Polytechnic Institute of NYU Abstract Today s network line rates reach speeds of 40 Gbps and are anticipated to reach 100 Gbps in the near future. These high speeds make Deep Packet Inspection (DPI) in Network Intrusion Detection and Prevention Systems (NIDPSs) very challenging. The DPI examines each incoming packet byte-bybyte and matches them against a set of predefined malicious signatures. One way to achieve high-speed DPI is to store all the signatures on high-speed on-chip memory. However, on-chip memory is limited and space-efficient data structures are needed to leverage precious on-chip memory efficiently. A hash table addressed by a Minimal Perfect Hash Function (MPHF) is such a high-speed, space efficient data structure. In this paper, we describe a highly memory-efficient MPHF, which requires 3.5 bits per key to facilitate access to the key in on-chip memory while allowing us to perform the expensive exact match operation only once. The proposed MPHF also has a low construction time. I. INTRODUCTION To ensure reliable and secure services, network security has grown increasingly important in the Internet. Deep Packet Inspection (DPI) has been widely used in Network Intrusion Detection and Prevention Systems (NIDPSs) to detect malicious code such as viruses and worms [1] [2]. DPI examines each incoming packet byte-by-byte and matches them against a set of predefined malicious signatures. To implement DPI at 40 Gbps, or even 100 Gbps, cost effectively and scalable to a few tens of thousands keys is very challenging. Achieving the above objective requires including all the signatures on the chip to take advantage of parallelism/pipelining operations. Minimal Perfect Hash Functions (MPHFs) have been used, during the query, to access a key 1 in the hash table to compare with the incoming packet. The MPHF [3] guarantees that there will be only one key stored at each hashed location so that it needs to perform just one exact match operation (in other words, there is no hash collision). In addition, it achieves the minimum hash table size by equating the table size to the number of keys. In [4], we have proposed an on-chip trie-based framework called TriBiCa (Trie Bitmap Content Analyzer) to implement the MPHF on a Field-Programmable Gate Array (FPGA) chip at a speed of 10 Gbit/s [5]. Figure 1 shows TriBiCa with three different partitioning schemes. A simplified trie structure is illustrated in the left- 1 A key can be a whole or partial signature or some other information regarding a signature. Fig. 1: An example of trie based MPH data structure, and three partitioning schemes. hand side of the figure. TriBiCa starts with n keys at the root node of a trie and it partitions the keys into two sets (each set with n/2 keys). In the example, the root node contains eight keys (n = 8) [ABCDEFGH]. The eight keys are partitioned into two equal-sized sets in child nodes. Each child node has four keys [BDEH] and [ACFG]. We repeat this operation until we reach leaf nodes that are located in the bottom of the trie and that have only one key. As a result, an MPHF trie is constructed. 2 To query for a key, the algorithm traverses the trie until a single candidate key is located at a leaf node. When the single key is found, only one comparison between the queried key and the candidate key is needed to decide whether the queried key is actually the same as the candidate key. Although each query needs to traverse log 2 (n) levels, since the architecture is fully pipelinable the throughput is one query response per clock cycle. The right-hand side of Fig. 1 illustrates three different approaches for node partitioning; the partitioning of the root node is used as an example. In the first approach, bitmaps are used to represent the destination of keys [4] [5]. The figure shows an L as a destination to the left child node, and an R as a right child node. To allocate those input keys into the bins, a universal hash function [6] is used to distribute keys evenly. 2 If the number of keys is not a power of two (e.g., 5), the keys are pushed into the left nodes (i.e., some right nodes will be empty.). There is no need to store the empty nodes on the right, so the trie still provides an MPHF.

2 Let m be the number of bins. Then, this approach requires m bits for m bins, since bitmaps are used. The second approach, proposed in [7], uses a memory-efficient partitioning method, called a Boundary Hash, to replace the bitmaps. The Boundary Hash only keeps information of the boundary bin to partition a node (the third bin is the boundary bin in the figure). Hence, the memory requirement drops from m to log 2 (m). In this paper, we propose an even more memory-efficient approach named LogLog Hash (the third approach). In the figure, the left-most virtual bin has address 0 ( 000 in binary notation), and the right-most virtual bin has address m 1 = 7 ( 111 in binary notation). In this example, the most-significant bit is selected as a representative bit (circled by a dotted line - bit location 0 in the figure.). (log 2 (m)) = 3 bits are required to distinguish eight bins (m), and one bit is chosen out of the three bits as the representative bit. To distinguish between these three bits, ( log 2 (log 2 (m)) ) = 2 bits are required to store the representative bit. Section III discusses LogLog Hash in greater detail. The rest of the paper is organized as follows: Section II summarizes related work. Section III presents the proposed scheme. Section IV provides theoretical analysis of the memory usage and success probability of the proposed scheme. Section V summarizes the experiments executed to show the performance of the proposed scheme. Section VI concludes the paper. II. RELATED WORK Both software and hardware methods exist to implement DPI in NIDPSs. Snort [8] and Bro [9] are two software NIDPSs that support detection of sophisticated intrusions. Software NIDPSs run on general-purpose processors, which have difficulty catching up with today s line rates. To satisfy requirement of high-speed networks, we focus our discussion on hardware-based approaches. Hardware-based approaches can be classified, into off-chip memory [10] [11] and on-chip memory [12] [20] architectures. Considering speed as the first priority, off-chip memory architectures are not as tempting as on-chip approaches. The most critical drawback of the off-chip architecture is the requirement to physically connect to the matching engine(s) located on a chip. Physical pins are very expensive. Even if the external memory speed increases significantly, this physical pin problem still remains and obstructs the parallelism of engines. Thus, the off-chip approach is not suitable for very high-speed line-rate operations. For the partitioning operation, BARTS [21], a memoryefficient route lookup scheme, and our LogLog Hash choose a particular bit as a representative bit. However, BARTS selects the representative bit from the input keys, so uniformity of the input is critical for BARTS to succeed. Our approach uses the output of a universal hash function to avoid the uniformity requirement. The Perfect Hash Function proposed by Sourdis et al. [16] [20] also uses inputs as hash keys, and the hash function is hard-coded in the logic. Lu et al. [19] achieved MPHF using Bloom Filters with 8.6n bits. However, complex computations are required to locate entries in the hash table for queries. (a) A hash function h u1 results with a representative bit having equal number of zeros and ones circled by the dotted rectangle. (b) None of the bit positions has equal number of zeros and ones. Thus, no representative bit is found. Fig. 2: An example of LogLog Hash for (a) success and (b) non-success case. III. LOGLOG HASH Figure 2 shows an example of how the LogLog Hash scheme achieves equal partitioning of a set of n = 4 (K n : K 1... K 4 ) keys into two equal-sized subsets of two keys each, using the representative bit. All four keys are hashed, using universal hash function h u1 in (a) and h u2 in (b), into virtual bins (m). In this example, the hash result (location of the virtual bin (m)) can be between 0 and 7 ( in binary representation). Out of these log 2 (m) = 3 bits, the algorithm successfully finds a representative bit for this partitioning using h u1 in Fig. 2(a). b 1 is a representative bit in the example, since for half of the keys (K 1 and K 3 ) b 1 is 0, and for the remaining half (K 2 and K 4 ) b 1 is 1. In contrast, Fig. 2 (b) is a non-success case as none of bit location (b 2, b 1, b 0 ) contains an equal number of zeros and ones. We show in Section IV that the failure case is less likely to happen. The success probability of LogLog Hash is analyzed in Section IV. The simulation result is discussed in Section V. Figure 3 gives pseudo-code to implement LogLog Hash to construct a node. The algorithm first calculates a hash function for each key and stores the results. The function updatebit- Counts counts the number of ones for all bit locations and returns the value. The algorithm then searches for each bit location based on updatebitcounts results to determine whether a representa-

3 tive bit exists for the particular hash result in this set of keys. If so, the algorithm returns the location of the representative bit; otherwise, it returns null. The algorithm has a worstcase run time of O(n log 2 (log 2 (m))) to determine whether a representative bit exists for a node using one hash function. If no representative bit is found (null as the return value), the operation is repeated with another hash function. 1: LogLogHash (S, h u, A ) 2: // S is a set of n keys (K 1...K n ) 3: // h is a universal hash function with range [0, m 1] 4: // A is an array of m bins 5: // l = log 2 (log 2 (m)) 6: // L is an array of l counters 7: 8: // Programming 9: for i = 1 to n do 10: insert K i to A[h(K i )] 11: updatebitcounts(l, l, A[h(K i )]) 12: end for 13: // Determine the representative bit 14: for j = 0 to l 1 do 15: if L[j] = n/2 then 16: return (j) 17: end if 18: end for 19: return (null) // No representative bit, return null 20: 21: updatebitcounts (L, l, location) 22: for j = 0 to l 1 do 23: if location[j] = 1 then 24: L[j]++ 25: end if 26: end for 27: return (L[ ]) Fig. 3: Pseudo-code for partitioning a node using LogLog Hash. IV. ANALYSIS A. Space Complexity of LogLog Hash This section discusses the space complexity of LogLog Hash and compares it with Boundary Hash. For Boundary Hash, the space complexity derived in [7] is shown in (2). In each level (l), there are 2 l nodes and each node requires log 2 (M R /2 l ) bits; root node is at level l = 0. The sizes of the nodes are determined by the size of the root node M R. M Bl = 2 l log 2 (M R /2 l ) (1) From (1), the total memory for the Boundary Hash trie with log 2 (n) levels is M B = log 2 (M R /n) n + 2 n log 2 (M R ) 2 (2) To analyze the memory requirement of LogLog Hash, let us start with the space complexity of each level. Each node reserves log 2 (log 2 (m V )) bits of memory where m V is the number of virtual bins at each node. It is called virtual, since the nodes do not keep information of individual bins. In Boundary Hash, the size of the virtual bin is adjusted by the size of the keys in a node to maintain success probability. LogLog Hash eliminates this restriction by a higher success probability. M Ll = 2 l log 2 (log 2 (m V )) (3) From (3), the total memory for the LogLog Hash trie with log 2 (n) levels is M L = log 2 (n) 1 l=0 2 l log 2 (log 2 (m V )) (4) = log 2 (log 2 (m V )) (n 1) From (4), the space complexity to store the representative bit for the entire trie is O(n). LogLog Hash also requires space for storing hash functions, since our scheme uses a pool of hash functions. Let H w be the size of each hash function and H be the total number of universal hash functions used in the system. Then, the complexity of storing hash functions is given as O(n (log 2 ( H )+H w )). In the worst case, H = (n 1) different hash functions are required. (In the worst case, all nodes use different hash functions.) Thus, worst-case complexity is O(n (log 2 (n)+h w )). However, the simulation results in Section V show that the requirement is much lower in practice. B. Success Probability of LogLog Hash Success probability of a node is the probability of finding a representative bit to partition the keys in the node into two equal-sized sets. A higher success probability implies fewer hash functions required by the system, leading to less memory consumption. For a partitioning to be successful, the LogLog Hash algorithm needs to find at least one representative bit. The probability s for a particular bit to be a representative bit is derived as follows. From a set of n keys, if we pick a particular bit location to form an n-bit sequence, the number of possible bit sequences is 2 n (any n has a choice of two values: either 0 or 1). Out of these possible sequences, only a particular bit location with exactly n/2 ones (or zeros) is qualified as a representative bit. There are ( n n/2) such combinations. Therefore, s is given as: ( n ) n/2 s = 2 n (5) Then, for a set of n keys using m bins, the probability that none of the bits is a representative bit is given as: q = (1 s) log 2 (mv ) (6) Finally, from (6) the probability of successfully partitioning this set using LogLog Hash, p = 1 q (equally, the probability of finding at least one representative bit) is derived as:

4 P L = 1 ( 1 ( n n/2 2 n ) ) log2 (m V ) } {{ } No representative bit The success probability of LogLog Hash for different key size (n) corresponding to partitioning bits is shown in Table I (a). Those values are computed using (7). For comparison, success probability of the Boundary Hash, P B, is shown in (8) [7]. ) ǫ ( ) n b 1 m m 2 n/2 ( )( ) ( n ǫ n 1 2 ǫ ( m b P B = n b=0 ǫ=1 2 ǫ ǫ m m (8) where n is the key set size, m is the bin size, and ǫ is the number of key(s) in the boundary bin. Table I (b) shows the numerical values corresponding to the equation. Comparing Table I (a) and (b), it is clear that the success probability of LogLog Hash is always better than Boundary Hash using the same amount of memory for partitioning. TABLE I: Success probability comparison between Boundary Hash and LogLog Hash based on partitioning bits and key sizes. n=2 n=4 n=8 n=16 n=32 n=64 n=128 1-bit bits bits bits bits bits bits (a) LogLog Hash (Theoretical Result) n=2 n=4 n=8 n=16 n=32 n=64 n=128 1-bit bits bits bits bits bits bits (b) Boundary Hash (Theoretical Result) If we only consider success probability, it seems better to use the LogLog Hash scheme in every level of the trie instead of Boundary Hash. Yet, in practice there is a tradeoff. The 7-bit LogLog Hash function requires 128 bits as a hash coefficient, which increases memory consumption and hardware complexity. However, we would like to emphasize that those large hash coefficients are only required if the node has a larger number of keys (greater than n = 1024) and those nodes are much more limited in number, compared to the majority of the smaller key size nodes. (e.g., half of the nodes in the entire trie are n = 2, a quarter of the nodes are n = 4, etc.). Thus, in this paper, we focus on those smaller (7) ) n 2 nodes, and use up to five partitioning bits (i.e., 32 bits as a hash coefficient). Table II shows simulation results for the success probability of partitioning a node using LogLog Hash. Each value is based on 8192 nodes with 100 different hash functions (i.e., nodes are examined to find the success probability for each setting). Compared to our theoretical result (Table I), values are accurately matched. The error rate of those values is, at most, 0.7%. TABLE II: Success probability of partitioning a node using LogLog Hash for different numbers of keys. (Simulation Result) n=2 n=4 n=8 n=16 n=32 n=64 n=128 1-bit bits bits bits bits V. PERFORMANCE Performance of LogLog Hash is verified using a simulation program developed in C#, which runs on AMD Athlon64 (2.8 GHz) with 2 Gbytes of main memory. In this section, we focus on two parameters: (1) Memory usage, and (2) construction time. In the first experiment, the LogLog Hash and Boundary Hash are compared for various key set sizes (n = 1K... 1M) where each key is a 32-bit random number. For each key set size, 100 different key sets are examined. Then, the LogLog Hash and Boundary Hash are constructed for each of these key sets. For the Boundary Hash, configuration of M R = 2n is used, which gives the best results [7]. To be fair, we use the same or less number of virtual bins for LogLog Hash (i.e., the last level uses two bits, and the level above it uses three bits). All nodes with n = use five bits, and nodes at higher levels use Boundary Hash. Figure 4 shows the average and maximum number of hash functions required for each trie in this experiment for different n. The LogLog Hash results are shown as solid lines. The Boundary Hash results are shown as dotted lines. Following the theoretical results discussed in Section IV, LogLog Hash uses fewer hash functions in both average and maximum cases (i.e., less memory required in any key set size.). The next experiment focuses on optimizing the memory requirement of LogLog Hash. LogLog Hash is used in the last ten levels and Boundary Hash is used for higher levels. The lower levels have more significance in the total memory usage, so this assumption is realistic to show the performance of LogLog Hash. An example representation for the configuration of LogLog Hash is [ ] where the leftmost digit shows the number of bits in a node at the highest level that uses LogLog Hash (i.e., level 10) and the rightmost digit shows number of bits in a node at the last level. In other words, this configuration shows that the 10 th level uses five bits (2 32 virtual bins) and the last level uses one bit (four virtual bins).

5 a stateful detector with 3531 keys) 3 ; details are described in [5]. The experiment is repeated for 100 different hash sets. The results show that the first and second detector require a maximum of 5.50n bits and 5.42n bits using LogLog A configuration, respectively. Compared to existing schemes, our proposed LogLog Hash requires less memory to operate. For instance, our previously proposed TriBiCa [4] and Boundary Hash [7] require 11n bits and 7n bits, respectively. Moreover, [22] reported that they have a memory requirement of 8.6n-bits for Snort signatures, and [23] shows that their MPHF requires 6.86n bits. Fig. 4: Number of hash functions required for various key set sizes for LogLog Hash and Boundary Hash. Each data point shows a maximum or an average value over the 100 key sets. Memory requirements of LogLog Hash for different settings are shown in Fig. 5. The Boundary Hash results are also plotted as a comparison. LogLog A, B, and C has configurations [ ], [ ], and [ ], respectively. For smaller key set sizes, there are some fluctuations because of hash coefficient storage. However, the number of hash functions will very slowly increase proportional to the key set. Thus, the hash coefficient storage will be negligible for larger key set sizes. The number converge at 5.6n around n = 1M. Fig. 5: Memory required for various key set sizes for LogLog Hash and Boundary Hash. Each data point shows a maximum value over the 100 key sets. To show the memory usage for DPI, Snort signatures [8] are programmed in the LogLog Hash trie. The TriBiCa framework uses two detectors (a 4-byte detector with 2723 keys and TABLE III: Average LogLog Hash construction times for key sets with different sizes. Time is given in milliseconds. The table shows trie construction time and total time (including time to hash keys using universal hash functions) separately. LogLogTrie Total 1K K K K K K K K K K M Table III shows the average construction times of the LogLog Hash in milliseconds for 100 key sets. Both trie construction time and total time increase linearly proportional to input key size n. A. Hash Grouping We would like to mention one memory reduction optimization called hash grouping. Until now, we assumed all nodes could use different hash functions (i.e., memory for the hash ID needed to be reserved in each node). According to the previous simulation results, more than half of the space requirement is for hash storage. Thus, if multiple nodes (a group) can share the same hash function as in TriBiCa [4], the memory requirement can be reduced significantly. For example, if the number of keys is 1024, then there are 512 nodes in the last level. Using hash grouping with a group size of 32, only 16(= 512/32) hash IDs need to be stored instead of 512 hash IDs. Figure 6 shows the simulation results for different group sizes of G = Total memory consumption drops as group sizes become larger. For G=32, memory is reduced to nearly 3n for large key sizes. LogLog Hash is used in the last six levels [555432] and higher levels 3 When input key set size is not a power of two, at most, one of the nodes in each level is partially populated by keys. This means partitioning the node exactly in half is the right operation (e.g., if the root node contains six keys, the left child node must contain four keys and the right child nodes must have two keys.). Boundary Hash is more suitable for partitioning nodes that are partially occupied. Thus, Boundary Hash is used for those nodes. Those nodes appear, at most, in one node in each level (log 2 (n)), which is negligible. However, to be more precise, those nodes are considered in our Snort simulation results.

6 use Boundary Hash with m=8n. Due to limited space, only the simulation results are shown for the hash grouping and a detailed discussion is left as a future work. Fig. 6: Memory requirement for various key set sizes for LogLog Hash with grouping. Each data point shows a maximum value over the 100 key sets. VI. CONCLUSION This paper presents a highly memory-efficient trie-based Minimal Perfect Hash Function, called the LogLog Hash. The proposed compact and simple design allows very highspeed Deep Packet Inspection for Network Intrusion Detection and Prevention Systems. The LogLog Hash requires 5.6n bits without hash grouping for n 2K, and 3.5n bits with hash grouping for n 8K. VII. ACKNOWLEDGMENTS The authors would like to thank Yanming Shen, Najla Alfaraj, and HoYu Lam for their insightful comments. [10] F. Yu, T. Lakshman, and R. Katz, Gigabit Rate Pattern-Matching using TCAM, in Int. Conf. on Network Protocols (ICNP), Berlin, Germany, Oct [11] H. Song and J. Lockwood, Multi-pattern Signature Matching for Hardware Network Intrusion Detection Systems, in 48th Annual IEEE Global Communications Conference, GLOBECOM 2005, St Louis, MO, Nov-Dec [12] C. Clark and D. Schimmel, Scalable Pattern Matching for High- Speed Networks, in IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM), Napa, California, 2004, pp [13] Y. H. Cho and W. H. Mangione-Smith, Fast Reconfiguring Deep Packet Filter for 1+ Gigabit Network, in FCCM, 2005, pp [14] Z. K. Baker and V. K. Prasanna, High-Throughput Linked-Pattern Matching for Intrusion Detection Systems, in Proc. of the First Annual ACM Symposium on Architectures for Networking and Communications Systems, Princeton, NJ, 2005, pp [15] J. Moscola, J. Lockwood, R. P. Loui, and M. Pachos, Implementation of a Content-Scanning Module for an Internet Firewall, in FCCM, 2003, pp [16] I. Sourdis, D. Pnevmatikatos, S. Wong, and S. Vassiliadis, A Reconfigurable Perfect-Hashing Scheme for Packet Inspection, in Proc. 15th International Conference on Field Programmable Logic and Applications (FPL 2005), August 2005, pp [17] L. Tan and T. Sherwood, Architectures for Bit-Split String Scanning in Intrusion Detection, IEEE Micro, vol. 26, no. 1, pp , Jan-Feb [18] G. Papadopoulos and D. N. Pnevmatikatos, Hashing + Memory = Low Cost, Exact Pattern Matching, in Proc.15th International Conference on Field Programmable Logic and Applications (FPL), August 2005, pp [19] Y. Lu, B. Prabhakar, and F. Bonomi, Perfect Hashing for Network Applications, in IEEE Symposium on Information Theory), Seattle, WA, 2006, pp [20] I. Sourdis, D. N. Pnevmatikatos, and S. Vassiliadis, Scalable multigigabit pattern matching for packet inspection. IEEE Trans. VLSI Syst., vol. 16, no. 2, pp , [21] J. van Lunteren, Searching Very Large Routing Tables in Wide Embedded Memory, Global Telecommunications Conference, GLOBECOM 01. IEEE, vol. 3, [22] L. Tan and T. Sherwood, Architectures for Bit-Split String Scanning in Intrusion Detection, IEEE Micro, vol. 26, no. 1, pp , Jan-Feb [23] K. Chellapilla, A. Mityagin, and D. Charles, Gigahash: scalable minimal perfect hashing for billions of urls, in WWW 07: Proceedings of the 16th international conference on World Wide Web. New York, NY, USA: ACM, 2007, pp REFERENCES [1] Sourcefire 3d. [Online]. Available: [2] Fortinet. [Online]. Available: [3] P. E. Black, Minimal Perfect Hashing, in Dictionary of Algorithms and Data Structures. U.S. National Institute of Standards and Technology, July [Online]. Available: [4] N. S. Artan and H. J. Chao, TriBiCa: Trie Bitmap Content Analyzer for High-Speed Network Intrusion Detection, in 26th Annual IEEE Conference on Computer Communications (INFOCOM), 2007, pp [5] N. S. Artan, R. Ghosh, Y. Guo, and H. J. Chao, A 10-Gbps High-Speed Single-Chip Network Intrusion Detection and Prevention System, in 50th Annual IEEE Global Communications Conference, GLOBECOM 2007, Washington, DC, Nov [6] J. L. Carter and M. N. Wegman, Universal classes of hash functions (extended abstract), in STOC 77: Proceedings of the ninth annual ACM symposium on Theory of computing. New York, NY, USA: ACM, 1977, pp [7] N. S. Artan, M. Bando, and H. J. Chao, Boundary Hash for Memory- Efficient Deep Packet Inspection, in IEEE International Conference on Communications (ICC 2008), Beijing, China, May [8] [Online]. Available: [9] V. Paxson, Bro: A System for Detecting Network Intruders in Real- Time, Computer Networks, vol. 31, no. Dec, pp , 1999.

Boundary Hash for Memory-Efficient Deep Packet Inspection

Boundary Hash for Memory-Efficient Deep Packet Inspection Boundary Hash for Memory-Efficient Deep Packet Inspection N. Sertac Artan, Masanori Bando, and H. Jonathan Chao Electrical and Computer Engineering Department Polytechnic University Brooklyn, NY Abstract

More information

Automatic compilation framework for Bloom filter based intrusion detection

Automatic compilation framework for Bloom filter based intrusion detection Automatic compilation framework for Bloom filter based intrusion detection Dinesh C Suresh, Zhi Guo*, Betul Buyukkurt and Walid A. Najjar Department of Computer Science and Engineering *Department of Electrical

More information

TriBiCa: Trie Bitmap Content Analyzer for High-Speed Network Intrusion Detection

TriBiCa: Trie Bitmap Content Analyzer for High-Speed Network Intrusion Detection TriBiCa: Trie Bitmap Content Analyzer for High-Speed Network Intrusion Detection N. Sertac Artan ECE Department Polytechnic University Brooklyn, NY (sartan01@utopia.poly.edu) H. Jonathan Chao ECE Department

More information

Selective Boundary Cutting For Packet Classification SOUMYA. K 1, CHANDRA SEKHAR. M 2

Selective Boundary Cutting For Packet Classification SOUMYA. K 1, CHANDRA SEKHAR. M 2 ISSN 2319-8885 Vol.04,Issue.34, August-2015, Pages:6786-6790 www.ijsetr.com SOUMYA. K 1, CHANDRA SEKHAR. M 2 1 Navodaya Institute of Technology, Raichur, Karnataka, India, E-mail: Keerthisree1112@gmail.com.

More information

TriBiCa: Trie Bitmap Content Analyzer for High-Speed Network Intrusion Detection

TriBiCa: Trie Bitmap Content Analyzer for High-Speed Network Intrusion Detection Dept. of Electrical and Computer Eng. : Trie Bitmap Content Analyzer for High-Speed Network Intrusion Detection N. Sertac Artan and Jonathan H. Chao 8 May 27 26th Annual IEEE Conference on Computer Communications

More information

Hardware Implementation for Scalable Lookahead Regular Expression Detection

Hardware Implementation for Scalable Lookahead Regular Expression Detection Hardware Implementation for Scalable Lookahead Regular Expression Detection Masanori Bando, N. Sertac Artan, Nishit Mehta, Yi Guan, and H. Jonathan Chao Department of Electrical and Computer Engineering

More information

Implementation of Boundary Cutting Algorithm Using Packet Classification

Implementation of Boundary Cutting Algorithm Using Packet Classification Implementation of Boundary Cutting Algorithm Using Packet Classification Dasari Mallesh M.Tech Student Department of CSE Vignana Bharathi Institute of Technology, Hyderabad. ABSTRACT: Decision-tree-based

More information

A Framework for Rule Processing in Reconfigurable Network Systems

A Framework for Rule Processing in Reconfigurable Network Systems A Framework for Rule Processing in Reconfigurable Network Systems Michael Attig and John Lockwood Washington University in Saint Louis Applied Research Laboratory Department of Computer Science and Engineering

More information

FPGA Implementation of Lookup Algorithms

FPGA Implementation of Lookup Algorithms 2011 IEEE 12th International Conference on High Performance Switching and Routing FPGA Implementation of Lookup Algorithms Zoran Chicha, Luka Milinkovic, Aleksandra Smiljanic Department of Telecommunications

More information

Efficient Packet Classification for Network Intrusion Detection using FPGA

Efficient Packet Classification for Network Intrusion Detection using FPGA Efficient Packet Classification for Network Intrusion Detection using FPGA ABSTRACT Haoyu Song Department of CSE Washington University St. Louis, USA hs@arl.wustl.edu FPGA technology has become widely

More information

Pipelined Parallel AC-based Approach for Multi-String Matching

Pipelined Parallel AC-based Approach for Multi-String Matching 2008 14th IEEE International Conference on Parallel and Distributed Systems Pipelined Parallel AC-based Approach for Multi-String Matching Wei Lin 1, 2, Bin Liu 1 1 Department of Computer Science and Technology,

More information

Multi-pattern Signature Matching for Hardware Network Intrusion Detection Systems

Multi-pattern Signature Matching for Hardware Network Intrusion Detection Systems This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE GLOBECOM 5 proceedings. Multi-pattern Signature Matching for Hardware

More information

VARIABLE-LENGTH HASHING FOR EXACT PATTERN MATCHING

VARIABLE-LENGTH HASHING FOR EXACT PATTERN MATCHING VARIABLE-LENGTH HASHING FOR EXACT PATTERN MATCHING Dionisios Pnevmatikatos Foundation for Research and Technology-Hellas Institute of Computer Science Vasilika Vouton, Heraklion, Greece pnevmati@ics.forth.gr

More information

An Enhanced Bloom Filter for Longest Prefix Matching

An Enhanced Bloom Filter for Longest Prefix Matching An Enhanced Bloom Filter for Longest Prefix Matching Gahyun Park SUNY-Geneseo Email: park@geneseo.edu Minseok Kwon Rochester Institute of Technology Email: jmk@cs.rit.edu Abstract A Bloom filter is a succinct

More information

A Hybrid Approach to CAM-Based Longest Prefix Matching for IP Route Lookup

A Hybrid Approach to CAM-Based Longest Prefix Matching for IP Route Lookup A Hybrid Approach to CAM-Based Longest Prefix Matching for IP Route Lookup Yan Sun and Min Sik Kim School of Electrical Engineering and Computer Science Washington State University Pullman, Washington

More information

Regular Expression Acceleration at Multiple Tens of Gb/s

Regular Expression Acceleration at Multiple Tens of Gb/s Regular Expression Acceleration at Multiple Tens of Gb/s Jan van Lunteren, Jon Rohrer, Kubilay Atasu, Christoph Hagleitner IBM Research, Zurich Research Laboratory 8803 Rüschlikon, Switzerland email: jvl@zurich.ibm.com

More information

FlashTrie: Hash-based Prefix-Compressed Trie for IP Route Lookup Beyond 100Gbps

FlashTrie: Hash-based Prefix-Compressed Trie for IP Route Lookup Beyond 100Gbps FlashTrie: Hash-based Prefix-Compressed Trie for IP Route Lookup Beyond 100Gbps Masanori Bando and H. Jonathan Chao Department of Electrical and Computer Engineering Polytechnic Institute of NYU, Brooklyn,

More information

NOISE ELIMINATION USING A BIT CAMS

NOISE ELIMINATION USING A BIT CAMS International Journal of VLSI Design, 2(2), 2011, pp. 97-101 NOISE ELIMINATION USING A BIT CAMS Sundar Srinivas Kuchibhotla 1 & Naga Lakshmi Kalyani Movva 2 1 Department of Electronics & Communication

More information

Packet Inspection on Programmable Hardware

Packet Inspection on Programmable Hardware Abstract Packet Inspection on Programmable Hardware Benfano Soewito Information Technology Department, Bakrie University, Jakarta, Indonesia E-mail: benfano.soewito@bakrie.ac.id In the network security

More information

Tree-Based Minimization of TCAM Entries for Packet Classification

Tree-Based Minimization of TCAM Entries for Packet Classification Tree-Based Minimization of TCAM Entries for Packet Classification YanSunandMinSikKim School of Electrical Engineering and Computer Science Washington State University Pullman, Washington 99164-2752, U.S.A.

More information

CHAPTER 4 BLOOM FILTER

CHAPTER 4 BLOOM FILTER 54 CHAPTER 4 BLOOM FILTER 4.1 INTRODUCTION Bloom filter was formulated by Bloom (1970) and is used widely today for different purposes including web caching, intrusion detection, content based routing,

More information

Disjoint Superposition for Reduction of Conjoined Prefixes in IP Lookup for Actual IPv6 Forwarding Tables

Disjoint Superposition for Reduction of Conjoined Prefixes in IP Lookup for Actual IPv6 Forwarding Tables Disjoint Superposition for Reduction of Conjoined Prefixes in IP Lookup for Actual IPv6 Forwarding Tables Roberto Rojas-Cessa, Taweesak Kijkanjanarat, Wara Wangchai, Krutika Patil, Narathip Thirapittayatakul

More information

Parallel-Search Trie-based Scheme for Fast IP Lookup

Parallel-Search Trie-based Scheme for Fast IP Lookup Parallel-Search Trie-based Scheme for Fast IP Lookup Roberto Rojas-Cessa, Lakshmi Ramesh, Ziqian Dong, Lin Cai, and Nirwan Ansari Department of Electrical and Computer Engineering, New Jersey Institute

More information

High-throughput Online Hash Table on FPGA*

High-throughput Online Hash Table on FPGA* High-throughput Online Hash Table on FPGA* Da Tong, Shijie Zhou, Viktor K. Prasanna Ming Hsieh Dept. of Electrical Engineering University of Southern California Los Angeles, CA 989 Email: datong@usc.edu,

More information

AN FPGA BASED ARCHITECTURE FOR COMPLEX RULE MATCHING WITH STATEFUL INSPECTION OF MULTIPLE TCP CONNECTIONS

AN FPGA BASED ARCHITECTURE FOR COMPLEX RULE MATCHING WITH STATEFUL INSPECTION OF MULTIPLE TCP CONNECTIONS AN FPGA BASED ARCHITECTURE FOR COMPLEX RULE MATCHING WITH STATEFUL INSPECTION OF MULTIPLE TCP CONNECTIONS Claudio Greco, Enrico Nobile, Salvatore Pontarelli, Simone Teofili CNIT/University of Rome Tor

More information

Scalable Multi-Pipeline Architecture for High Performance Multi-Pattern String Matching

Scalable Multi-Pipeline Architecture for High Performance Multi-Pattern String Matching Scalable Multi-Pipeline Architecture for High Performance Multi-Pattern String Matching Weirong Jiang, Yi-Hua E. Yang and Viktor K. Prasanna Ming Hsieh Department of Electrical Engineering University of

More information

Large-scale Multi-flow Regular Expression Matching on FPGA*

Large-scale Multi-flow Regular Expression Matching on FPGA* 212 IEEE 13th International Conference on High Performance Switching and Routing Large-scale Multi-flow Regular Expression Matching on FPGA* Yun Qu Ming Hsieh Dept. of Electrical Eng. University of Southern

More information

Packet Classification Using Dynamically Generated Decision Trees

Packet Classification Using Dynamically Generated Decision Trees 1 Packet Classification Using Dynamically Generated Decision Trees Yu-Chieh Cheng, Pi-Chung Wang Abstract Binary Search on Levels (BSOL) is a decision-tree algorithm for packet classification with superior

More information

Resource Efficient Multi Ported Sram Based Ternary Content Addressable Memory

Resource Efficient Multi Ported Sram Based Ternary Content Addressable Memory IOSR Journal of Engineering (IOSRJEN) ISSN (e): 2250-3021, ISSN (p): 2278-8719 PP 11-18 www.iosrjen.org Resource Efficient Multi Ported Sram Based Ternary Content Addressable Memory S.Parkavi (1) And S.Bharath

More information

TOKEN-BASED DICTIONARY PATTERN MATCHING FOR TEXT ANALYTICS. Raphael Polig, Kubilay Atasu, Christoph Hagleitner

TOKEN-BASED DICTIONARY PATTERN MATCHING FOR TEXT ANALYTICS. Raphael Polig, Kubilay Atasu, Christoph Hagleitner TOKEN-BASED DICTIONARY PATTERN MATCHING FOR TEXT ANALYTICS Raphael Polig, Kubilay Atasu, Christoph Hagleitner IBM Research - Zurich Rueschlikon, Switzerland email: pol, kat, hle@zurich.ibm.com ABSTRACT

More information

Project Proposal. ECE 526 Spring Modified Data Structure of Aho-Corasick. Benfano Soewito, Ed Flanigan and John Pangrazio

Project Proposal. ECE 526 Spring Modified Data Structure of Aho-Corasick. Benfano Soewito, Ed Flanigan and John Pangrazio Project Proposal ECE 526 Spring 2006 Modified Data Structure of Aho-Corasick Benfano Soewito, Ed Flanigan and John Pangrazio 1. Introduction The internet becomes the most important tool in this decade

More information

Fast Reconfiguring Deep Packet Filter for 1+ Gigabit Network

Fast Reconfiguring Deep Packet Filter for 1+ Gigabit Network Fast Reconfiguring Deep Packet Filter for + Gigabit Network Young H. Cho and William H. Mangione-Smith {young,billms}@ee.ucla.edu University of California, Los Angeles Department of Electrical Engineering

More information

Highly Compressed Aho-Corasick Automata For Efficient Intrusion Detection

Highly Compressed Aho-Corasick Automata For Efficient Intrusion Detection Highly Compressed Aho-Corasick Automata For Efficient Intrusion Detection Xinyan Zha & Sartaj Sahni Computer and Information Science and Engineering University of Florida Gainesville, FL 32611 {xzha, sahni}@cise.ufl.edu

More information

Novel FPGA-Based Signature Matching for Deep Packet Inspection

Novel FPGA-Based Signature Matching for Deep Packet Inspection Novel FPGA-Based Signature Matching for Deep Packet Inspection Nitesh B. Guinde and Sotirios G. Ziavras Electrical & Computer Engineering Department, New Jersey Institute of Technology, Newark NJ 07102,

More information

Multi-core Implementation of Decomposition-based Packet Classification Algorithms 1

Multi-core Implementation of Decomposition-based Packet Classification Algorithms 1 Multi-core Implementation of Decomposition-based Packet Classification Algorithms 1 Shijie Zhou, Yun R. Qu, and Viktor K. Prasanna Ming Hsieh Department of Electrical Engineering, University of Southern

More information

Power Efficient IP Lookup with Supernode Caching

Power Efficient IP Lookup with Supernode Caching Power Efficient IP Lookup with Supernode Caching Lu Peng, Wencheng Lu * and Lide Duan Department of Electrical & Computer Engineering Louisiana State University Baton Rouge, LA 73 {lpeng, lduan1}@lsu.edu

More information

Performance of FPGA Implementation of Bit-split Architecture for Intrusion Detection Systems

Performance of FPGA Implementation of Bit-split Architecture for Intrusion Detection Systems Performance of FPGA Implementation of Bit-split Architecture for Intrusion Detection Systems Hong-Jip Jung, Zachary K. Baker and Viktor K. Prasanna University of Southern California, Los Angeles, CA, USA

More information

Scalable Lookup Algorithms for IPv6

Scalable Lookup Algorithms for IPv6 Scalable Lookup Algorithms for IPv6 Aleksandra Smiljanić a*, Zoran Čiča a a School of Electrical Engineering, Belgrade University, Bul. Kralja Aleksandra 73, 11120 Belgrade, Serbia ABSTRACT IPv4 addresses

More information

Hash-Based String Matching Algorithm For Network Intrusion Prevention systems (NIPS)

Hash-Based String Matching Algorithm For Network Intrusion Prevention systems (NIPS) Hash-Based String Matching Algorithm For Network Intrusion Prevention systems (NIPS) VINOD. O & B. M. SAGAR ISE Department, R.V.College of Engineering, Bangalore-560059, INDIA Email Id :vinod.goutham@gmail.com,sagar.bm@gmail.com

More information

Length Indexed Bloom Filter Based Forwarding In Content Centeric Networking

Length Indexed Bloom Filter Based Forwarding In Content Centeric Networking Length Indexed Bloom Filter Based Forwarding In Content Centeric Networking Vishal Manghnani Rochester Institute of Technology vjm1952@rit.edu Abstract Named Data Network (NDN) is a modern networking architecture

More information

A Framework for Rule Processing in Reconfigurable Network Systems

A Framework for Rule Processing in Reconfigurable Network Systems A Framework for Rule Processing in Reconfigurable Network Systems Michael Attig and John Lockwood Department of Computer Science and Engineering Washington University Saint Louis, MO 63130 E-mail: {mea1,

More information

A Framework for Rule Processing in Reconfigurable Network Systems

A Framework for Rule Processing in Reconfigurable Network Systems A Framework for Rule Processing in Reconfigurable Network Systems Michael Attig and John Lockwood Department of Computer Science and Engineering Washington University Saint Louis, MO 63130 E-mail: {mea1,

More information

Frugal IP Lookup Based on a Parallel Search

Frugal IP Lookup Based on a Parallel Search Frugal IP Lookup Based on a Parallel Search Zoran Čiča and Aleksandra Smiljanić School of Electrical Engineering, Belgrade University, Serbia Email: cicasyl@etf.rs, aleksandra@etf.rs Abstract Lookup function

More information

Design of a High Speed FPGA-Based Classifier for Efficient Packet Classification

Design of a High Speed FPGA-Based Classifier for Efficient Packet Classification Design of a High Speed FPGA-Based Classifier for Efficient Packet Classification V.S.Pallavi 1, Dr.D.Rukmani Devi 2 PG Scholar 1, Department of ECE, RMK Engineering College, Chennai, Tamil Nadu, India

More information

Efficient hardware architecture for fast IP address lookup. Citation Proceedings - IEEE INFOCOM, 2002, v. 2, p

Efficient hardware architecture for fast IP address lookup. Citation Proceedings - IEEE INFOCOM, 2002, v. 2, p Title Efficient hardware architecture for fast IP address lookup Author(s) Pao, D; Liu, C; Wu, A; Yeung, L; Chan, KS Citation Proceedings - IEEE INFOCOM, 2002, v 2, p 555-56 Issued Date 2002 URL http://hdlhandlenet/0722/48458

More information

Extensible Network Configuration and Communication Framework

Extensible Network Configuration and Communication Framework Extensible Network Configuration and Communication Framework Todd Sproull and John Lockwood Applied Research Laboratory Department of Computer Science and Engineering: Washington University in Saint Louis

More information

Automated Incremental Design of Flexible Intrusion Detection Systems on FPGAs 1

Automated Incremental Design of Flexible Intrusion Detection Systems on FPGAs 1 Automated Incremental Design of Flexible Intrusion Detection Systems on FPGAs 1 Zachary K. Baker and Viktor K. Prasanna University of Southern California, Los Angeles, CA, USA zbaker@halcyon.usc.edu, prasanna@ganges.usc.edu

More information

LONGEST prefix matching (LPM) techniques have received

LONGEST prefix matching (LPM) techniques have received IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 14, NO. 2, APRIL 2006 397 Longest Prefix Matching Using Bloom Filters Sarang Dharmapurikar, Praveen Krishnamurthy, and David E. Taylor, Member, IEEE Abstract We

More information

Advanced Pattern Based Virus Detection Algorithm for Network Security

Advanced Pattern Based Virus Detection Algorithm for Network Security National Conference on Emerging Trends in VLSI, Embedded and Communication Systems-2013 37 Advanced Pattern Based Virus Detection Algorithm for Network Security T.B. Binroy and B. Lakshmanan Abstract---

More information

Design and Implementation of DPI Mechanism for NIDS on FPGA

Design and Implementation of DPI Mechanism for NIDS on FPGA Design and Implementation of DPI Mechanism for NIDS on FPGA Veena M P 1, Divya Prabha 2, Dr. M Z Kurian 3 M.Tech [Digital electronics], Sri Siddhartha Institute of Technology, Tumkur, Karnataka, India

More information

REGULAR expressions are widely used in the network intrusion

REGULAR expressions are widely used in the network intrusion IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, VOL. 15, NO. 12, DECEMBER 2007 1303 Optimization of Pattern Matching Circuits for Regular Expression on FPGA Cheng-Hung Lin, Student Member,

More information

Project Proposal. ECE 526 Spring Modified Data Structure of Aho-Corasick. Benfano Soewito, Ed Flanigan and John Pangrazio

Project Proposal. ECE 526 Spring Modified Data Structure of Aho-Corasick. Benfano Soewito, Ed Flanigan and John Pangrazio Project Proposal ECE 526 Spring 2006 Modified Data Structure of Aho-Corasick Benfano Soewito, Ed Flanigan and John Pangrazio 1. Introduction The internet becomes the most important tool in this decade

More information

IP packet forwarding, or simply, IP-lookup, is a classic

IP packet forwarding, or simply, IP-lookup, is a classic Scalable Tree-based Architectures for IPv4/v6 Lookup Using Prefix Partitioning Hoang Le, Student Member, IEEE, and Viktor K. Prasanna, Fellow, IEEE Abstract Memory efficiency and dynamically updateable

More information

SSA: A Power and Memory Efficient Scheme to Multi-Match Packet Classification. Fang Yu, T.V. Lakshman, Martin Austin Motoyama, Randy H.

SSA: A Power and Memory Efficient Scheme to Multi-Match Packet Classification. Fang Yu, T.V. Lakshman, Martin Austin Motoyama, Randy H. SSA: A Power and Memory Efficient Scheme to Multi-Match Packet Classification Fang Yu, T.V. Lakshman, Martin Austin Motoyama, Randy H. Katz Presented by: Discussion led by: Sailesh Kumar Packet Classification

More information

FPGA Implementation of Token-Based Clam AV Regex Virus Signatures with Early Detection

FPGA Implementation of Token-Based Clam AV Regex Virus Signatures with Early Detection IOSR Journal of Electronics and Communication Engineering (IOSR-JECE) e-issn: 2278-2834,p- ISSN: 2278-8735 PP 54-61 www.iosrjournals.org FPGA Implementation of Token-Based Clam AV Regex Virus Signatures

More information

DESIGN AND IMPLEMENTATION OF OPTIMIZED PACKET CLASSIFIER

DESIGN AND IMPLEMENTATION OF OPTIMIZED PACKET CLASSIFIER International Journal of Computer Engineering and Applications, Volume VI, Issue II, May 14 www.ijcea.com ISSN 2321 3469 DESIGN AND IMPLEMENTATION OF OPTIMIZED PACKET CLASSIFIER Kiran K C 1, Sunil T D

More information

Advanced Pattern Based Virus Detection Algorithm for Network Security

Advanced Pattern Based Virus Detection Algorithm for Network Security Advanced Pattern Based Virus Detection Algorithm for Network Security Binroy T.B. M.E. Communication Systems Department of Electronics and Communication Engineering RVS College of Engineering & Technology,

More information

Scalable Lookahead Regular Expression Detection System for Deep Packet Inspection

Scalable Lookahead Regular Expression Detection System for Deep Packet Inspection IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 20, NO. 3, JUNE 2012 699 Scalable Lookahead Regular Expression Detection System for Deep Packet Inspection Masanori Bando, Associate Member, IEEE, N. Sertac Artan,

More information

Packet Header Analysis and Field Extraction for Multigigabit Networks

Packet Header Analysis and Field Extraction for Multigigabit Networks Packet Header Analysis and Field Extraction for Multigigabit Networks Petr Kobierský Faculty of Information Technology Brno University of Technology Božetěchova 2, 612 66, Brno, Czech Republic Email: ikobier@fit.vutbr.cz

More information

Design of a Weighted Fair Queueing Cell Scheduler for ATM Networks

Design of a Weighted Fair Queueing Cell Scheduler for ATM Networks Design of a Weighted Fair Queueing Cell Scheduler for ATM Networks Yuhua Chen Jonathan S. Turner Department of Electrical Engineering Department of Computer Science Washington University Washington University

More information

Scalable Packet Classification on FPGA

Scalable Packet Classification on FPGA Scalable Packet Classification on FPGA 1 Deepak K. Thakkar, 2 Dr. B. S. Agarkar 1 Student, 2 Professor 1 Electronics and Telecommunication Engineering, 1 Sanjivani college of Engineering, Kopargaon, India.

More information

Design of a Near-Minimal Dynamic Perfect Hash Function on Embedded Device

Design of a Near-Minimal Dynamic Perfect Hash Function on Embedded Device Design of a Near-Minimal Dynamic Perfect Hash Function on Embedded Device Derek Pao, Xing Wang and Ziyan Lu Department of Electronic Engineering, City University of Hong Kong, HONG KONG E-mail: d.pao@cityu.edu.hk,

More information

Switch and Router Design. Packet Processing Examples. Packet Processing Examples. Packet Processing Rate 12/14/2011

Switch and Router Design. Packet Processing Examples. Packet Processing Examples. Packet Processing Rate 12/14/2011 // Bottlenecks Memory, memory, 88 - Switch and Router Design Dr. David Hay Ross 8b dhay@cs.huji.ac.il Source: Nick Mckeown, Isaac Keslassy Packet Processing Examples Address Lookup (IP/Ethernet) Where

More information

Routing Lookup Algorithm for IPv6 using Hash Tables

Routing Lookup Algorithm for IPv6 using Hash Tables Routing Lookup Algorithm for IPv6 using Hash Tables Peter Korppoey, John Smith, Department of Electronics Engineering, New Mexico State University-Main Campus Abstract: After analyzing of existing routing

More information

Efficient Packet Classification using Splay Tree Models

Efficient Packet Classification using Splay Tree Models 28 IJCSNS International Journal of Computer Science and Network Security, VOL.6 No.5B, May 2006 Efficient Packet Classification using Splay Tree Models Srinivasan.T, Nivedita.M, Mahadevan.V Sri Venkateswara

More information

Hierarchical Intelligent Cuttings: A Dynamic Multi-dimensional Packet Classification Algorithm

Hierarchical Intelligent Cuttings: A Dynamic Multi-dimensional Packet Classification Algorithm 161 CHAPTER 5 Hierarchical Intelligent Cuttings: A Dynamic Multi-dimensional Packet Classification Algorithm 1 Introduction We saw in the previous chapter that real-life classifiers exhibit structure and

More information

MULTI-MATCH PACKET CLASSIFICATION BASED ON DISTRIBUTED HASHTABLE

MULTI-MATCH PACKET CLASSIFICATION BASED ON DISTRIBUTED HASHTABLE International Journal of Science, Environment and Technology, Vol. 4, No 4, 2015, 1098 1106 ISSN 2278-3687 (O) 2277-663X (P) MULTI-MATCH PACKET CLASSIFICATION BASED ON DISTRIBUTED HASHTABLE 1 Neeshma K

More information

AN EFFICIENT AND SYSTEMATIC VIRUS DETECTION PROCESSOR FOR EMBEDDED NETWORK SECURITY

AN EFFICIENT AND SYSTEMATIC VIRUS DETECTION PROCESSOR FOR EMBEDDED NETWORK SECURITY AN EFFICIENT AND SYSTEMATIC VIRUS DETECTION PROCESSOR FOR EMBEDDED NETWORK SECURITY P.MUTHU KUMARAN 1, R.V.ASHOK PRATHAP 2 & D.MATHAVAN 3 1,2&3 Sasurie Academy of Engineering Email:muthukumaran23@gmail.com

More information

Highly Compact Virtual Maximum Likelihood Sketches for Counting Big Network Data

Highly Compact Virtual Maximum Likelihood Sketches for Counting Big Network Data Highly Compact Virtual Maximum Likelihood Sketches for Counting Big Network Data Zhen Mo Yan Qiao Shigang Chen Department of Computer & Information Science & Engineering University of Florida Gainesville,

More information

Scalable Automaton Matching for High-speed Deep Content Inspection

Scalable Automaton Matching for High-speed Deep Content Inspection Scalable Automaton Matching for High-speed Deep Content Inspection Ying-Dar Lin, Kuo-Kun Tseng and Chen-Chou Hung National Chiao Tung University, Taiwan {ydlin@cis, kktseng@cis and bry@cis} nctuedutw Yuan-Cheng

More information

Dynamically Configurable Online Statistical Flow Feature Extractor on FPGA

Dynamically Configurable Online Statistical Flow Feature Extractor on FPGA Dynamically Configurable Online Statistical Flow Feature Extractor on FPGA Da Tong, Viktor Prasanna Ming Hsieh Department of Electrical Engineering University of Southern California Email: {datong, prasanna}@usc.edu

More information

Coding and Scheduling for Efficient Loss-Resilient Data Broadcasting

Coding and Scheduling for Efficient Loss-Resilient Data Broadcasting Coding and Scheduling for Efficient Loss-Resilient Data Broadcasting Kevin Foltz Lihao Xu Jehoshua Bruck California Institute of Technology Department of Computer Science Department of Electrical Engineering

More information

An Ultra High Throughput and Memory Efficient Pipeline Architecture for Multi-Match Packet Classification without TCAMs

An Ultra High Throughput and Memory Efficient Pipeline Architecture for Multi-Match Packet Classification without TCAMs ANCS 2009 An Ultra High Throughput and Memory Efficient Pipeline Architecture for Multi-Match Pacet Classification without TCAMs Yang Xu, Zhaobo Liu, Zhuoyuan Zhang, H. Jonathan Chao Polytechnic Institute

More information

Performance Evaluation and Improvement of Algorithmic Approaches for Packet Classification

Performance Evaluation and Improvement of Algorithmic Approaches for Packet Classification Performance Evaluation and Improvement of Algorithmic Approaches for Packet Classification Yaxuan Qi, Jun Li Research Institute of Information Technology (RIIT) Tsinghua University, Beijing, China, 100084

More information

Lecture 11: Packet forwarding

Lecture 11: Packet forwarding Lecture 11: Packet forwarding Anirudh Sivaraman 2017/10/23 This week we ll talk about the data plane. Recall that the routing layer broadly consists of two parts: (1) the control plane that computes routes

More information

Design and Implementation of CVNS Based Low Power 64-Bit Adder

Design and Implementation of CVNS Based Low Power 64-Bit Adder Design and Implementation of CVNS Based Low Power 64-Bit Adder Ch.Vijay Kumar Department of ECE Embedded Systems & VLSI Design Vishakhapatnam, India Sri.Sagara Pandu Department of ECE Embedded Systems

More information

A Scalable Approach for Packet Classification Using Rule-Base Partition

A Scalable Approach for Packet Classification Using Rule-Base Partition CNIR Journal, Volume (5), Issue (1), Dec., 2005 A Scalable Approach for Packet Classification Using Rule-Base Partition Mr. S J Wagh 1 and Dr. T. R. Sontakke 2 [1] Assistant Professor in Information Technology,

More information

Dynamic Routing Tables Using Simple Balanced. Search Trees

Dynamic Routing Tables Using Simple Balanced. Search Trees Dynamic Routing Tables Using Simple Balanced Search Trees Y.-K. Chang and Y.-C. Lin Department of Computer Science and Information Engineering National Cheng Kung University Tainan, Taiwan R.O.C. ykchang@mail.ncku.edu.tw

More information

Two Level State Machine Architecture for Content Inspection Engines

Two Level State Machine Architecture for Content Inspection Engines Two Level State Machine Architecture for Content Inspection Engines Mohammadreza Yazdani Wojciech Fraczak Feliks Welfeld Ioannis Lambadaris Department of Systems and Computer Engineering Carleton University,

More information

Performance Improvement of Hardware-Based Packet Classification Algorithm

Performance Improvement of Hardware-Based Packet Classification Algorithm Performance Improvement of Hardware-Based Packet Classification Algorithm Yaw-Chung Chen 1, Pi-Chung Wang 2, Chun-Liang Lee 2, and Chia-Tai Chan 2 1 Department of Computer Science and Information Engineering,

More information

An Architecture for IPv6 Lookup Using Parallel Index Generation Units

An Architecture for IPv6 Lookup Using Parallel Index Generation Units An Architecture for IPv6 Lookup Using Parallel Index Generation Units Hiroki Nakahara, Tsutomu Sasao, and Munehiro Matsuura Kagoshima University, Japan Kyushu Institute of Technology, Japan Abstract. This

More information

Configurable String Matching Hardware for Speeding up Intrusion Detection

Configurable String Matching Hardware for Speeding up Intrusion Detection Configurable String Matching Hardware for Speeding up Intrusion Detection Monther Aldwairi, Thomas Conte, Paul Franzon Dec 6, 2004 North Carolina State University {mmaldwai, conte, paulf}@ncsu.edu www.ece.ncsu.edu/erl

More information

Improving the Database Logging Performance of the Snort Network Intrusion Detection Sensor

Improving the Database Logging Performance of the Snort Network Intrusion Detection Sensor -0- Improving the Database Logging Performance of the Snort Network Intrusion Detection Sensor Lambert Schaelicke, Matthew R. Geiger, Curt J. Freeland Department of Computer Science and Engineering University

More information

Improving Range Query Performance on Historic Web Page Data

Improving Range Query Performance on Historic Web Page Data Improving Range Query Performance on Historic Web Page Data Geng LI Lab of Computer Networks and Distributed Systems, Peking University Beijing, China ligeng@net.pku.edu.cn Bo Peng Lab of Computer Networks

More information

Automation Framework for Large-Scale Regular Expression Matching on FPGA. Thilan Ganegedara, Yi-Hua E. Yang, Viktor K. Prasanna

Automation Framework for Large-Scale Regular Expression Matching on FPGA. Thilan Ganegedara, Yi-Hua E. Yang, Viktor K. Prasanna Automation Framework for Large-Scale Regular Expression Matching on FPGA Thilan Ganegedara, Yi-Hua E. Yang, Viktor K. Prasanna Ming-Hsieh Department of Electrical Engineering University of Southern California

More information

RECENTLY, researches on gigabit wireless personal area

RECENTLY, researches on gigabit wireless personal area 146 IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS II: EXPRESS BRIEFS, VOL. 55, NO. 2, FEBRUARY 2008 An Indexed-Scaling Pipelined FFT Processor for OFDM-Based WPAN Applications Yuan Chen, Student Member, IEEE,

More information

Keywords: Networking; hardware; reconfiguration; power optimization; FPGA.

Keywords: Networking; hardware; reconfiguration; power optimization; FPGA. Characterization of Power-Aware Reconfiguration in FPGA-Based Networking Hardware Sándor Plósz 1, István Moldován 1, László Kántor 2, Tuan Anh Trinh 1 Budapest University of Technology and Economics Dept.

More information

A Robust Bloom Filter

A Robust Bloom Filter A Robust Bloom Filter Yoon-Hwa Choi Department of Computer Engineering, Hongik University, Seoul, Korea. Orcid: 0000-0003-4585-2875 Abstract A Bloom filter is a space-efficient randomized data structure

More information

AN ASSOCIATIVE TERNARY CACHE FOR IP ROUTING. 1. Introduction. 2. Associative Cache Scheme

AN ASSOCIATIVE TERNARY CACHE FOR IP ROUTING. 1. Introduction. 2. Associative Cache Scheme AN ASSOCIATIVE TERNARY CACHE FOR IP ROUTING James J. Rooney 1 José G. Delgado-Frias 2 Douglas H. Summerville 1 1 Dept. of Electrical and Computer Engineering. 2 School of Electrical Engr. and Computer

More information

Highly Space Efficient Counters for Perl Compatible Regular Expressions in FPGAs

Highly Space Efficient Counters for Perl Compatible Regular Expressions in FPGAs Highly Space Efficient Counters for Perl Compatible Regular Expressions in FPGAs Chia-Tien Dan Lo and Yi-Gang Tai Department of Computer Science University of Texas at San Antonio {danlo,ytai}@cs.utsa.edu

More information

One Memory Access Bloom Filters and Their Generalization

One Memory Access Bloom Filters and Their Generalization This paper was presented as part of the main technical program at IEEE INFOCOM 211 One Memory Access Bloom Filters and Their Generalization Yan Qiao Tao Li Shigang Chen Department of Computer & Information

More information

Two-Stage Decomposition of SNORT Rules towards Efficient Hardware Implementation

Two-Stage Decomposition of SNORT Rules towards Efficient Hardware Implementation Two-Stage Decomposition of SNORT Rules towards Efficient Hardware Implementation Hao Chen, Douglas H. Summerville, Yu Chen* Dept. of Electrical and Computer Engineering, SUNY Binghamton, Binghamton, NY

More information

DBS: A Bit-level Heuristic Packet Classification Algorithm for High Speed Network

DBS: A Bit-level Heuristic Packet Classification Algorithm for High Speed Network 9 15th International Conference on Parallel and Distributed Systems : A Bit-level Heuristic Packet Classification Algorithm for High Speed Network Baohua Yang *,, Xiang Wang, Yibo Xue, and Jun Li, * Dept.

More information

SWM: Simplified Wu-Manber for GPU-based Deep Packet Inspection

SWM: Simplified Wu-Manber for GPU-based Deep Packet Inspection SWM: Simplified Wu-Manber for GPU-based Deep Packet Inspection Lucas Vespa Department of Computer Science University of Illinois at Springfield lvesp@uis.edu Ning Weng Department of Electrical and Computer

More information

Efficient TCAM Encoding Schemes for Packet Classification using Gray Code

Efficient TCAM Encoding Schemes for Packet Classification using Gray Code Efficient TCAM Encoding Schemes for Packet Classification using Gray Code Yeim-Kuan Chang and Cheng-Chien Su Department of Computer Science and Information Engineering National Cheng Kung University Tainan,

More information

Accelerating String Matching Algorithms on Multicore Processors Cheng-Hung Lin

Accelerating String Matching Algorithms on Multicore Processors Cheng-Hung Lin Accelerating String Matching Algorithms on Multicore Processors Cheng-Hung Lin Department of Electrical Engineering, National Taiwan Normal University, Taipei, Taiwan Abstract String matching is the most

More information

Decision Forest: A Scalable Architecture for Flexible Flow Matching on FPGA

Decision Forest: A Scalable Architecture for Flexible Flow Matching on FPGA Decision Forest: A Scalable Architecture for Flexible Flow Matching on FPGA Weirong Jiang, Viktor K. Prasanna University of Southern California Norio Yamagaki NEC Corporation September 1, 2010 Outline

More information

Gated-Demultiplexer Tree Buffer for Low Power Using Clock Tree Based Gated Driver

Gated-Demultiplexer Tree Buffer for Low Power Using Clock Tree Based Gated Driver Gated-Demultiplexer Tree Buffer for Low Power Using Clock Tree Based Gated Driver E.Kanniga 1, N. Imocha Singh 2,K.Selva Rama Rathnam 3 Professor Department of Electronics and Telecommunication, Bharath

More information

A Configurable Packet Classification Architecture for Software- Defined Networking

A Configurable Packet Classification Architecture for Software- Defined Networking A Configurable Packet Classification Architecture for Software- Defined Networking Guerra Pérez, K., Yang, X., Scott-Hayward, S., & Sezer, S. (2014). A Configurable Packet Classification Architecture for

More information

Difference Bloom Filter: a Probabilistic Structure for Multi-set Membership Query

Difference Bloom Filter: a Probabilistic Structure for Multi-set Membership Query Difference Bloom Filter: a Probabilistic Structure for Multi-set Membership Query Dongsheng Yang, Deyu Tian, Junzhi Gong, Siang Gao, Tong Yang, Xiaoming Li Department of Computer Secience, Peking University,

More information