Range Enhanced Packet Classification Design on FPGA Author: Yeim-Kuan Chang, Chun-sheng Hsueh Publisher: IEEE Transactions on Emerging Topics in Computing.

Slides:



Advertisements
Similar presentations
Scalable Packet Classification Using Hybrid and Dynamic Cuttings Authors : Wenjun Li,Xianfeng Li Publisher : Engineering Lab on Intelligent Perception.
Advertisements

An Efficient Regular Expressions Compression Algorithm From A New Perspective Authors : Tingwen Liu,Yifu Yang,Yanbing Liu,Yong Sun,Li Guo Tingwen LiuYifu.
1 TCAM Razor: A Systematic Approach Towards Minimizing Packet Classifiers in TCAMs Department of Computer Science and Information Engineering National.
1 Author: Ioannis Sourdis, Sri Harsha Katamaneni Publisher: IEEE ASAP,2011 Presenter: Jia-Wei Yo Date: 2011/11/16 Longest prefix Match and Updates in Range.
1 FPGA-based ROM-free network intrusion detection using shift-OR circuit Department of Computer Science and Information Engineering National Cheng Kung.
1 DRES:Dynamic Range Encoding Scheme for TCAM Coprocessors Authors: Hao Che, Zhijun Wang, Kai Zheng and Bin Liu Publisher: IEEE Transactions on Computers,
An Efficient and Scalable Pattern Matching Scheme for Network Security Applications Department of Computer Science and Information Engineering National.
1 Performance Improvement of Two-Dimensional Packet Classification by Filter Rephrasing Department of Computer Science and Information Engineering National.
1 An innovative low-cost Classification Scheme for combined multi-Gigabit IP and Ethernet Networks Department of Computer Science and Information Engineering.
OpenFlow-Based Server Load Balancing GoneWild Author : Richard Wang, Dana Butnariu, Jennifer Rexford Publisher : Hot-ICE'11 Proceedings of the 11th USENIX.
High-Performance Packet Classification on GPU Author: Shijie Zhou, Shreyas G. Singapura and Viktor K. Prasanna Publisher: HPEC 2014 Presenter: Gang Chi.
HybridCuts: A Scheme Combining Decomposition and Cutting for Packet Classification Authors : Wenjun Li, Xianfeng Li Publisher : 2013 IEEE 21st Annual Symposium.
Packet Classification using Rule Caching Author: Nitesh B. Guinde, Roberto Rojas-Cessa, Sotirios G. Ziavras Publisher: IISA, 2013 Fourth International.
Fast forwarding table lookup exploiting GPU memory architecture Author : Youngjun Lee,Minseon Jeong,Sanghwan Lee,Eun-Jin Im Publisher : Information and.
Packet Classification Using Multi-Iteration RFC Author: Chun-Hui Tsai, Hung-Mao Chu, Pi-Chung Wang Publisher: COMPSACW, 2013 IEEE 37th Annual (Computer.
(TPDS) A Scalable and Modular Architecture for High-Performance Packet Classification Authors: Thilan Ganegedara, Weirong Jiang, and Viktor K. Prasanna.
Multi-dimensional Packet Classification on FPGA 100 Gbps and Beyond Author: Yaxuan Qi, Jeffrey Fong, Weirong Jiang, Bo Xu, Jun Li, Viktor Prasanna Publisher:
Leveraging Traffic Repetitions for High- Speed Deep Packet Inspection Author: Anat Bremler-Barr, Shimrit Tzur David, Yotam Harchol, David Hay Publisher:
A Regular Expression Matching Algorithm Using Transition Merging Department of Computer Science and Information Engineering National Cheng Kung University,
A Hybrid IP Lookup Architecture with Fast Updates Author : Layong Luo, Gaogang Xie, Yingke Xie, Laurent Mathy, Kavé Salamatian Conference: IEEE INFOCOM,
Multi-Field Range Encoding for Packet Classification in TCAM Author: Yeim-Kuan Chang, Chun-I Lee and Cheng-Chien Su Publisher: INFOCOM 2011 Presenter:
EQC16: An Optimized Packet Classification Algorithm For Large Rule-Sets Author: Uday Trivedi, Mohan Lal Jangir Publisher: 2014 International Conference.
Scalable Many-field Packet Classification on Multi-core Processors Authors : Yun R. Qu, Shijie Zhou, Viktor K. Prasanna Publisher : International Symposium.
Deterministic Finite Automaton for Scalable Traffic Identification: the Power of Compressing by Range Authors: Rafael Antonello, Stenio Fernandes, Djamel.
Regular Expression Matching for Reconfigurable Packet Inspection Authors: Jo˜ao Bispo, Ioannis Sourdis, Jo˜ao M.P. Cardoso and Stamatis Vassiliadis Publisher:
StrideBV: Single chip 400G+ packet classification Author: Thilan Ganegedara, Viktor K. Prasanna Publisher: HPSR 2012 Presenter: Chun-Sheng Hsueh Date:
1 Fast packet classification for two-dimensional conflict-free filters Department of Computer Science and Information Engineering National Cheng Kung University,
DBS A Bit-level Heuristic Packet Classification Algorithm for High Speed Network Author : Baohua Yang, Xiang Wang, Yibo Xue, Jun Li Publisher : th.
A Dynamic Longest Prefix Matching Content Addressable Memory for IP Routing Author: Satendra Kumar Maurya, Lawrence T. Clark Publisher: IEEE TRANSACTIONS.
Memory-Efficient and Scalable Virtual Routers Using FPGA Department of Computer Science and Information Engineering, National Cheng Kung University, Tainan,
Updating Designed for Fast IP Lookup Author : Natasa Maksic, Zoran Chicha and Aleksandra Smiljani´c Conference: IEEE High Performance Switching and Routing.
TFA: A Tunable Finite Automaton for Regular Expression Matching Author: Yang Xu, Junchen Jiang, Rihua Wei, Yang Song and H. Jonathan Chao Publisher: ACM/IEEE.
Binary-tree-based high speed packet classification system on FPGA Author: Jingjiao Li*, Yong Chen*, Cholman HO**, Zhenlin Lu* Publisher: 2013 ICOIN Presenter:
Boundary Cutting for Packet Classification Author: Hyesook Lim, Nara Lee, Geumdan Jin, Jungwon Lee, Youngju Choi, Changhoon Yim Publisher: Networking,
A Fast Regular Expression Matching Engine for NIDS Applying Prediction Scheme Author: Lei Jiang, Qiong Dai, Qiu Tang, Jianlong Tan and Binxing Fang Publisher:
PC-TRIO: A Power Efficient TACM Architecture for Packet Classifiers Author: Tania Banerjee, Sartaj Sahni, Gunasekaran Seetharaman Publisher: IEEE Computer.
Cuckoo Filter: Practically Better Than Bloom Author: Bin Fan, David G. Andersen, Michael Kaminsky, Michael D. Mitzenmacher Publisher: ACM CoNEXT 2014 Presenter:
Lossy Compression of Packet Classifiers Author: Ori Rottenstreich, J’anos Tapolcai Publisher: 2015 IEEE International Conference on Communications Presenter:
Packet Classification Using Dynamically Generated Decision Trees
1 DESIGN AND EVALUATION OF A PIPELINED FORWARDING ENGINE Department of Computer Science and Information Engineering National Cheng Kung University, Taiwan.
LOP_RE: Range Encoding for Low Power Packet Classification Author: Xin He, Jorgen Peddersen and Sri Parameswaran Conference : IEEE 34th Conference on Local.
Packet Classification Using Multi- Iteration RFC Author: Chun-Hui Tsai, Hung-Mao Chu, Pi-Chung Wang Publisher: 2013 IEEE 37th Annual Computer Software.
Practical Multituple Packet Classification Using Dynamic Discrete Bit Selection Author: Baohua Yang, Fong J., Weirong Jiang, Yibo Xue, Jun Li Publisher:
Hierarchical Hybrid Search Structure for High Performance Packet Classification Authors : O˜guzhan Erdem, Hoang Le, Viktor K. Prasanna Publisher : INFOCOM,
Scalable Multi-match Packet Classification Using TCAM and SRAM Author: Yu-Chieh Cheng, Pi-Chung Wang Publisher: IEEE Transactions on Computers (2015) Presenter:
JA-trie: Entropy-Based Packet Classification Author: Gianni Antichi, Christian Callegari, Andrew W. Moore, Stefano Giordano, Enrico Anastasi Conference.
A Multi-dimensional Packet Classification Algorithm Based on Hierarchical All-match B+ Tree Author: Gang Wang, Yaping Lin*, Jinguo Li, Xin Yao Publisher:
Author: Yun R. Qu, Shijie Zhou, and Viktor K. Prasanna Publisher:
Reorganized and Compact DFA for Efficient Regular Expression Matching
2018/6/26 An Energy-efficient TCAM-based Packet Classification with Decision-tree Mapping Author: Zhao Ruan, Xianfeng Li , Wenjun Li Publisher: 2013.
Regular Expression Matching in Reconfigurable Hardware
2018/11/19 Source Routing with Protocol-oblivious Forwarding to Enable Efficient e-Health Data Transfer Author: Shengru Li, Daoyun Hu, Wenjian Fang and.
Parallel Processing Priority Trie-based IP Lookup Approach
Scalable Memory-Less Architecture for String Matching With FPGAs
2018/12/29 A Novel Approach for Prefix Minimization using Ternary trie (PMTT) for Packet Classification Author: Sanchita Saha Ray, Abhishek Chatterjee,
Memory-Efficient Regular Expression Search Using State Merging
Scalable Multi-Match Packet Classification Using TCAM and SRAM
A New String Matching Algorithm Based on Logical Indexing
Compact DFA Structure for Multiple Regular Expressions Matching
Power-efficient range-match-based packet classification on FPGA
Large-scale Packet Classification on FPGA
Authors: A. Rasmussen, A. Kragelund, M. Berger, H. Wessing, S. Ruepp
Design principles for packet parsers
A Hybrid IP Lookup Architecture with Fast Updates
A SRAM-based Architecture for Trie-based IP Lookup Using FPGA
2019/10/9 Regular Expression Matching for Reconfigurable Constraint Repetition Inspection Authors : Miad Faezipour and Mehrdad Nourani Publisher : IEEE.
Authors: Ding-Yuan Lee, Ching-Che Wang, An-Yeu Wu Publisher: 2019 VLSI
MEET-IP Memory and Energy Efficient TCAM-based IP Lookup
Towards TCAM-based Scalable Virtual Routers
Packet Classification Using Binary Content Addressable Memory
Presentation transcript:

Range Enhanced Packet Classification Design on FPGA Author: Yeim-Kuan Chang, Chun-sheng Hsueh Publisher: IEEE Transactions on Emerging Topics in Computing Presenter: Yi-Hao Lai Date: 2015/11/25 Department of Computer Science and Information Engineering National Cheng Kung University, Taiwan R.O.C.

Introduction Two schemes to process range fields The first scheme has the same characteristic as StrideBV by using specially designed codes to store the precomputed results in memory. The second scheme uses a simple subrange comparison method to find the matching result in a sequential fashion. National Cheng Kung University CSIE Computer & Internet Architecture Lab 2

Field-Split Bit Vector (FSBV) National Cheng Kung University CSIE Computer & Internet Architecture Lab 3

Field-Split Bit Vector (FSBV) National Cheng Kung University CSIE Computer & Internet Architecture Lab 4

Field-Split Bit Vector (FSBV) Since the field split method does not support ranges, direct range-to-prefix conversion is usually used. However, the direct range-to-prefix conversion suffers a problem that a single rule will be partitioned into multiple rules. National Cheng Kung University CSIE Computer & Internet Architecture Lab 5

Stride Bit Vector (StrideBV) For the other fields, TCAM/CAM is used since the number of unique values is small. But implementing TCAM on FPGA can be inefficient due to high circuit complexity and poor performance compared with pipelined architectures. Hence, the proposed field split algorithm in was applied to all the 5 fields. National Cheng Kung University CSIE Computer & Internet Architecture Lab 6

Stride Bit Vector (StrideBV) National Cheng Kung University CSIE Computer & Internet Architecture Lab 7

Range Bit Vector Encoding (RBVE) A 16-bit range is denoted by [LB, UB], where LB and UB are its lower and upper bounds. A 16-bit range is split into many d-bit subranges, where d is the fixed stride size that can be 1, 2, 4, or 8. For a fixed stride size of d, there are s d-bit subranges that can be implemented as a pipeline of s stages, where s = 16/d. National Cheng Kung University CSIE Computer & Internet Architecture Lab 8

Range Bit Vector Encoding (RBVE) National Cheng Kung University CSIE Computer & Internet Architecture Lab 9

Range Bit Vector Encoding (RBVE) We propose to use a set of output signals that are generated from each stage to perform the matching process. National Cheng Kung University CSIE Computer & Internet Architecture Lab 10

Range Bit Vector Encoding (RBVE) National Cheng Kung University CSIE Computer & Internet Architecture Lab 11

Code design for d = 8 only the first and the last stages are needed because the range fields are 16 bits. National Cheng Kung University CSIE Computer & Internet Architecture Lab 12

First stage National Cheng Kung University CSIE Computer & Internet Architecture Lab 13

Last stage National Cheng Kung University CSIE Computer & Internet Architecture Lab 14

Code design for d = 4 or 2 National Cheng Kung University CSIE Computer & Internet Architecture Lab 15

Matching process at each stage National Cheng Kung University CSIE Computer & Internet Architecture Lab 16

Code design for d = 1 The code design for d = 1 can be the same as that for d = 8, 4 or 2. However, this way seems wasting a lot of memory space since 1-bit stride is much simpler than the multibit stride. National Cheng Kung University CSIE Computer & Internet Architecture Lab 17

Matching process at each stage National Cheng Kung University CSIE Computer & Internet Architecture Lab 18

Sequential subrange compare (SSC) stores subranges directly in the memory and performs subrange match operations sequentially. The subranges split from a range are classified into three types, the first, the middle, and the last subranges. we need four types of matching results that are represented by the signals, Match, Mismatch, LBmatch, and UBmatch. National Cheng Kung University CSIE Computer & Internet Architecture Lab 19

Sequential subrange compare (SSC) National Cheng Kung University CSIE Computer & Internet Architecture Lab 20

Pipeline implementations National Cheng Kung University CSIE Computer & Internet Architecture Lab 21

Pipeline implementations National Cheng Kung University CSIE Computer & Internet Architecture Lab 22 only two d-bit memory spaces are needed for a sub-range to store its lower and upper bounds. However, four comparators are required in each stage. Each comparator for d-bit strides is implemented by a 2d-input LUT.

Block RAM Storage National Cheng Kung University CSIE Computer & Internet Architecture Lab 23 the basic unit of the block memory we use is the 18Kb block RAM which is configured as a 512x36 memory unit (i.e., an array of bit entries) in true dual-port mode.

Distributed RAM Storage d = 4 is the comparators of two 4-bit inputs can be implemented with one 4-input and one 5-input LUTs. Each range field value in the SSC scheme takes eight 4-bit memory space to store the lower and upper bounds of four 4-bit sub-ranges. Sixteen range values are grouped in a cluster and so that the distributed RAM of 8x16 bits is needed in each of the four stages for a 16-bit range field. National Cheng Kung University CSIE Computer & Internet Architecture Lab 24

super-pipeline National Cheng Kung University CSIE Computer & Internet Architecture Lab 25 The RBVE scheme for range fields is implemented by using block RAMs, where stride size is 8 bits and 36 ranges are grouped together in a range. The StrideBV scheme for prefix fields is implemented by using distRAMs, where stride size is 5 bits and 16 prefixes are grouped together in a prefix pipeline.

Comparisions of Design I and II National Cheng Kung University CSIE Computer & Internet Architecture Lab 26

Multi-pipeline National Cheng Kung University CSIE Computer & Internet Architecture Lab 27

Pipelined priority encoder National Cheng Kung University CSIE Computer & Internet Architecture Lab 28 The rules are arranged from top to bottom in the decreasing order of rule priorities. Therefore, this priority encoder outputs the index of the first set bit from top in the bitmap of the matching results.

EXPERIMENTAL RESULTS National Cheng Kung University CSIE Computer & Internet Architecture Lab 29

EXPERIMENTAL RESULTS National Cheng Kung University CSIE Computer & Internet Architecture Lab 30