Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


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

1 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

2 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

3 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

4 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

5 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

6 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

7 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

8 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

9 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

10 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

11 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

12 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

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

14 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

15 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

16 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

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

18 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

19 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

20 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

21 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

22 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

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

24 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

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


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

Similar presentations


Ads by Google