2017/4/26 Rethinking Packet Classification for Global Network View of Software-Defined Networking Author: Takeru Inoue, Toru Mano, Kimihiro Mizutani, Shin-ichi.

Slides:



Advertisements
Similar presentations
Planning based on Model Checking Dept. of Information Systems and Applied CS Bamberg University Seminar Paper Svetlana Balinova.
Advertisements

Scalable Packet Classification Using Hybrid and Dynamic Cuttings Authors : Wenjun Li,Xianfeng Li Publisher : Engineering Lab on Intelligent Perception.
An Efficient Regular Expressions Compression Algorithm From A New Perspective Authors : Tingwen Liu,Yifu Yang,Yanbing Liu,Yong Sun,Li Guo Tingwen LiuYifu.
Spring 07, Feb 13 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Binary Decision Diagrams Vishwani D. Agrawal James.
Design of High Performance Pattern Matching Engine Through Compact Deterministic Finite Automata Department of Computer Science and Information Engineering.
Compact State Machines for High Performance Pattern Matching Department of Computer Science and Information Engineering National Cheng Kung University,
1 Regular expression matching with input compression : a hardware design for use within network intrusion detection systems Department of Computer Science.
ECE Synthesis & Verification - Lecture 10 1 ECE 697B (667) Spring 2006 ECE 697B (667) Spring 2006 Synthesis and Verification of Digital Systems Binary.
 2001 CiesielskiBDD Tutorial1 Decision Diagrams Maciej Ciesielski Electrical & Computer Engineering University of Massachusetts, Amherst, USA
ECE 667 Synthesis & Verification - BDD 1 ECE 667 ECE 667 Synthesis and Verification of Digital Systems Binary Decision Diagrams (BDD)
Memory-Efficient Regular Expression Search Using State Merging Department of Computer Science and Information Engineering National Cheng Kung University,
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.
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,
EQC16: An Optimized Packet Classification Algorithm For Large Rule-Sets Author: Uday Trivedi, Mohan Lal Jangir Publisher: 2014 International Conference.
StriD 2 FA: Scalable Regular Expression Matching for Deep Packet Inspection Author: Xiaofei Wang, Junchen Jiang, Yi Tang, Bin Liu, and Xiaojun Wang Publisher:
Regular Expression Matching for Reconfigurable Packet Inspection Authors: Jo˜ao Bispo, Ioannis Sourdis, Jo˜ao M.P. Cardoso and Stamatis Vassiliadis Publisher:
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.
Memory-Efficient Regular Expression Search Using State Merging Author: Michela Becchi, Srihari Cadambi Publisher: INFOCOM th IEEE International.
SwinTop: Optimizing Memory Efficiency of Packet Classification in Network Author: Chen, Chang; Cai, Liangwei; Xiang, Yang; Li, Jun Conference: Communication.
Binary decision diagrams (BDD’s) Compact representation of a logic function ROBDD’s (reduced ordered BDD’s) are a canonical representation: equivalence.
Memory-Efficient and Scalable Virtual Routers Using FPGA Department of Computer Science and Information Engineering, National Cheng Kung University, Tainan,
Early Detection of DDoS Attacks against SDN Controllers
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:
Lightweight Traffic-Aware Packet Classification for Continuous Operation Author: Shariful Hasan Shaikot, Min Sik Kim Presenter: Yen-Chun Tseng Date: 2014/11/26.
Range Enhanced Packet Classification Design on FPGA Author: Yeim-Kuan Chang, Chun-sheng Hsueh Publisher: IEEE Transactions on Emerging Topics in Computing.
PC-TRIO: A Power Efficient TACM Architecture for Packet Classifiers Author: Tania Banerjee, Sartaj Sahni, Gunasekaran Seetharaman Publisher: IEEE Computer.
Lossy Compression of Packet Classifiers Author: Ori Rottenstreich, J’anos Tapolcai Publisher: 2015 IEEE International Conference on Communications Presenter:
LaFA Lookahead Finite Automata Scalable Regular Expression Detection Authors : Masanori Bando, N. Sertac Artan, H. Jonathan Chao Masanori Bando N. Sertac.
Packet Classification Using Dynamically Generated Decision Trees
GFlow: Towards GPU-based High- Performance Table Matching in OpenFlow Switches Author : Kun Qiu, Zhe Chen, Yang Chen, Jin Zhao, Xin Wang Publisher : Information.
LOP_RE: Range Encoding for Low Power Packet Classification Author: Xin He, Jorgen Peddersen and Sri Parameswaran Conference : IEEE 34th Conference on Local.
Binary Decision Diagrams Prof. Shobha Vasudevan ECE, UIUC ECE 462.
SRD-DFA Achieving Sub-Rule Distinguishing with Extended DFA Structure Author: Gao Xia, Xiaofei Wang, Bin Liu Publisher: IEEE DASC (International Conference.
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,
IT 60101: Lecture #121 Foundation of Computing Systems Lecture 13 Trees: Part VIII.
LightFlow : Speeding Up GPU-based Flow Switching and Facilitating Maintenance of Flow Table Author : Nobutaka Matsumoto and Michiaki Hayashi Conference:
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:
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.
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
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
Virtual TCAM for Data Center Switches
Scalable Multi-Match Packet Classification Using TCAM and SRAM
A New String Matching Algorithm Based on Logical Indexing
2019/5/2 Using Path Label Routing in Wide Area Software-Defined Networks with OpenFlow ICNP = International Conference on Network Protocols Presenter:Hung-Yen.
Power-efficient range-match-based packet classification on FPGA
Large-scale Packet Classification on FPGA
A Hybrid IP Lookup Architecture with Fast Updates
2019/7/26 OpenFlow-Enabled User Traffic Profiling in Campus Software Defined Networks Presenter: Wei-Li,Wang Date: 2016/1/4 Author: Taimur Bakhshi and.
2019/9/14 The Deep Learning Vision for Heterogeneous Network Traffic Control Proposal, Challenges, and Future Perspective Author: Nei Kato, Zubair Md.
2019/9/3 Adaptive Hashing Based Multiple Variable Length Pattern Search Algorithm for Large Data Sets 比對 Simple Pattern 的方法是基於 Hash 並且可以比對不同長度的 Pattern。
Authors: Ding-Yuan Lee, Ching-Che Wang, An-Yeu Wu Publisher: 2019 VLSI
MEET-IP Memory and Energy Efficient TCAM-based IP Lookup
Packet Classification Using Binary Content Addressable Memory
Presentation transcript:

2017/4/26 Rethinking Packet Classification for Global Network View of Software-Defined Networking Author: Takeru Inoue, Toru Mano, Kimihiro Mizutani, Shin-ichi Minato, Osamu Akashi Conference: 2014 IEEE 22nd International Conference on Network Protocols Presenter: Chih-Hsun Wang Date: 2015/10/07 Department of Computer Science and Information Engineering National Cheng Kung University, Taiwan R.O.C. CSIE CIAL Lab 1

2017/4/26 Introduction In software-defined networking, applications are allowed to access a global view of the network. Unlike the conventional classification problem to search for the action taken at a single switch, the global network view requires to identify the network-wide behavior of the packet. Conventional classification methods, however, fail to well support network-wide behaviors, since the search space is complicatedly partitioned due to the combinations. National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

Single switch packet behavior 2017/4/26 Single switch packet behavior Search space defined by packet header and network-wide packet behaviors. The example network at the top includes three switches (A, B, and C), each of which has three ports. Each switch has a table that maintains several rules, and each rule associates two header fields (field1 and field2 of 3-bit) with actions. The two-field header space (a square) is divided into only seven blocks at switch A National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

Network-wide packet behavior 2017/4/26 Network-wide packet behavior it is partitioned into 17 blocks for the twelve network-wide behaviors as shown in the bottom. National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

Binary Decision Diagram 2017/4/26 Binary Decision Diagram A Binary Decision Diagram (BDD) is a finite DAG with an unique initial node, where all terminal nodes are labeled with 0 or 1. all non-terminal nodes are labeled with a Boolean Variable. Each non-terminal node has exactly two edges from that node to others; one labeled 0 and one labeled 1; represent them as a dashed line and a solid line respectively. DAG: directed acyclic graph National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

Binary Decision Diagram 2017/4/26 Binary Decision Diagram f a b c f 1 a b c 1 DAG: directed acyclic graph Binary decision tree and truth table for the function  f = ac + bc National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

BDD Reduction Rules -1 Eliminate duplicate terminals 2017/4/26 BDD Reduction Rules -1 Eliminate duplicate terminals If a BDD contains more than one terminal 0-node, then we redirect all edges which point to such a 0-node to just one of them. Similarly, we proceed for nodes labeled with 1. 去掉重複的terminal node a b c 1 a b c 1 National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

BDD Reduction Rules -2 Eliminate redundant nodes 2017/4/26 BDD Reduction Rules -2 Eliminate redundant nodes (with both edges pointing to same node) a b b National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

BDD Reduction Rules -3 Merge duplicate nodes Nodes must be unique a b 2017/4/26 BDD Reduction Rules -3 Merge duplicate nodes Nodes must be unique 兩個 a=0 -> b, a=1 -> c a b c b a c National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

BDD Reduction Reduction Rules 3 Reduction Rules 2 a a a b b b c c c 1 2017/4/26 BDD Reduction Reduction Rules 3 Reduction Rules 2 a b c 1 a b c 1 a b c 1 觀察這三點, 當c=0, f=0, c=1, f=1, 所以這三點是一樣的 這兩node的兩邊都到同一個node National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

2017/4/26 Proposed Method X: packet header bits展開 x: packet header, 對應header space的一個點 Fi是multi-valued func, 所以packet進去對應出來的值就是這packet所對應的behavior National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

2017/4/26 Proposed Method These two incomplete multi-valued functions can be unified into a single one without conflict, by introducing the following unification operation 因為Fi, Fj是互斥, 所以x只會滿足其中一個function, 所以透過unified National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

Multi-valued Decision Diagram 2017/4/26 Multi-valued Decision Diagram x = 010111 一個BDD是用來表示Boolean function對應到的一個behavior, 如圖例 左圖是對應behavior 1, 右圖是對應所有12個behavior National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

Multi-valued Decision Diagram 2017/4/26 Multi-valued Decision Diagram An MDD, which is shown in Fig. 3 (right), is also an acyclic directed graph with a single root, but it can have more than two terminal nodes, nil, I, II, · · · , |P| . Each non-terminal node is labeled by aggregated bits, and it can have more than two children arcs, 0, 1, · · · , 2K − 1. The maximum height is L/K. Other properties are the same as those of BDD. National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

Multi-valued Decision Diagram 2017/4/26 Multi-valued Decision Diagram In our method, a BDD is used to represent a Boolean function that maps the header space to a single packet behavior, while an MDD is used to express a multi-valued function. BDD of fi(x) is easily converted to MDD of Fi(x),by replacing ⊥ - and -terminals with nil- and i-terminals, respectively. National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

MDD Unified with Aggregation 2017/4/26 MDD Unified with Aggregation f1 f2 F(2) 2 I 3 4 1 5 1 3 4 II 0,1 2,3 4,5 00 01 10 11 I II 主要演算法是根據 [22], 那大概是會去看兩個要做合併的diargam的同構(isomorphic)情況 National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

2017/4/26 Bit Aggregation National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

2017/4/26 Bit Aggregation 遞回去create MDD nodes, F’是F走x’可以到的子孫 This algorithm assumes that all terminal nodes would have been set to the cache in advance. National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

2017/4/26 Search F(K)視為1個node, packet header進來會利用pkt array表示 當這node不是terminal時, 由於每個node都會紀錄當前bit長, 所以x’得到之值為child node之index A packet header is represented as an array of K-bit elements; i.e., i-th K-bit element on the header can be accessed by index i, like pkt[i]. National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

Experiments Environment 2017/4/26 Experiments Environment Language C++ CPU Xeon 3.5 GHz Core i7 1.7 GHz Cache size 8MB 4MB Memory 16GB 8GB National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

2017/4/26 Experiments Result FIB: Forwarding Information Base, 指定 Des IP field only. ACL: 5-tuple National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

2017/4/26 Experiments Result The memory usage of an MDD is the product of MDD size and node size. Fig. 6. Memory usage of MDD. The horizontal line is memory usage of HybridCuts for Internet2. National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

2017/4/26 Experiments Result Optimal : Huffman方式 Ascending: 將min MDD和現在的MDD合併 National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

2017/4/26 Experiments Result Xeon 3.5G, i7 1.7G, 30次 每次處理萬個packet 水平線是HybridCut 一般throughput是訂成number of memory accesses per packet, 但現今processor有多層level cache的複雜架構, 對throughput影響很大 所以這邊的throughput是根據實際處理的packet header數量做測量 National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab

2017/4/26 Experiments Result National Cheng Kung University CSIE Computer & Internet Architecture Lab CSIE CIAL Lab